Ahmad Fatoum
1841afad11
Refactor all #define SUPPORT_* into a config.h
...
That way, a user needs only to touch a single file to configure what
features raylib is built with.
Include guards are left out intentionally, because config.h should only
be included in source files, not headers.
Later on, config.h can also define the raylib version (#461 ).
2018-04-07 23:37:48 +02:00
lumaio teon
d2cc5b88df
Removed useless GetCollisionRayMesh and libraylib.a
2018-04-07 03:49:56 -04:00
lumaio teon
d003c23ecf
Added GetCollisionRayModel
2018-04-06 12:04:09 -04:00
Ray
6edf15b9f9
Added funtion: ExportMesh()
2018-04-04 12:00:54 +02:00
Ray
3e0de31424
Merge pull request #504 from Martinfx/master
...
Fix potential bugs from static analysis
2018-04-02 18:10:38 +02:00
raysan5
375adf86a6
Review math usage to reduce temp variables
2018-04-02 15:16:45 +02:00
maficccc@gmail.com
201007e426
Fix sscanf() without field limits can crash with huge input data
2018-04-02 13:30:20 +02:00
Ray
61e0e4b4f3
Complete review of raymath for API consistency
2018-03-16 13:47:01 +01:00
raysan5
fd5e457bb4
Correct issue with triangleCount
2018-03-11 10:41:49 +01:00
Ray
fd2adbe62d
Renamed CalculateBoundingBox() to MeshBoundingBox()
...
Renamed function for consistency with a possible Mesh manipulation functions (maybe added in a future). Naming follows Image*() manipulation functions.
2018-02-26 12:10:45 +01:00
Ray
a7207dc6d4
Removed tangents generation
...
It has no sense to be inside LoadOBJ(), mesh processing moved to own functions: MeshTangents() and MeshBinormals(). Not exposed to user yet.
2018-02-26 12:02:05 +01:00
Ray
077bef4286
Support 4 components mesh.tangent data
...
Added struct Vector4 for convenience
2018-02-24 12:31:32 +01:00
Ray
6d64327a87
Reviewed unloading model data
...
When UnloadModel() --> UnloadMaterial(), avoid unloading default shader (if used) and avoid unlaoding default texture (if used), that data is managed by raylib internally. The question is... should UnloadModel() also UnloadMaterial()?
2018-02-22 12:39:17 +01:00
raysan5
e7cf03b1e4
Minor tweaks
2017-12-28 19:27:02 +01:00
Ray San
00c34a035c
Updated copyright year
2017-12-20 12:37:08 +01:00
Ray San
86df9168e7
Updated raylib VS2015 project
2017-10-19 14:14:18 +02:00
raysan5
20968830c0
Added mesh generation functions
2017-09-18 00:59:22 +02:00
Ray
fb334e2fd1
Testing shapes generation using additional library
2017-09-02 17:42:22 +02:00
raysan5
eeca607506
Review transforms to match OpenGL 1.1
2017-08-04 18:34:51 +02:00
raysan5
c764b3d03e
Some tweaks
2017-07-25 18:10:07 +02:00
raysan5
a766e2c480
Updated Vector math to new naming
2017-07-22 22:15:50 +02:00
raysan5
00d2768bc9
Corrected bug on MatrixPerspective()
...
Some other tweaks...
2017-07-22 10:35:49 +02:00
raysan5
c6cd07c373
Some tweaks raymath related
2017-07-21 17:46:44 +02:00
raysan5
e52032f646
Complete review of raymath
...
Now it should be coherent with OpenGL math standards
2017-07-21 17:19:28 +02:00
raysan5
2679c4ae9b
Review mesh loading and textures generation
2017-07-21 09:34:09 +02:00
raysan5
4c06725461
Removed useless functions
...
SetMaterialTexture() and UnsetMaterialTexture()... too shader
dependant...
2017-07-20 14:27:17 +02:00
raysan5
52cd5c6324
Corrected some issues
...
Corrected compilation for OpenGL 1.1
Review mesh data uploading to GPU
2017-07-20 12:26:25 +02:00
raysan5
76c6f0b1e6
Working on PBR system
...
Moved PBR material loading to example, right decision?
2017-07-19 18:55:32 +02:00
raysan5
d368403a13
Working on PBR materials, renamed some data
2017-07-19 10:09:34 +02:00
raysan5
e893f3629e
Corrected some issues
2017-07-17 12:02:46 +02:00
Ray
6546474fa4
Manual integration of material-pbr into develop
2017-07-17 00:33:40 +02:00
raysan5
9f09f6f550
Rename enum LogType names...
...
...to avoid possible conflicting symbols
2017-07-02 12:35:13 +02:00
Joel Davis
e0c95ede50
Prevent bogus triangle being added when there is whitespace at end of .OBJ file
2017-06-30 23:37:19 -07:00
Ray
0880be638e
Renamed RayHitInfo variables
2017-05-10 00:57:48 +02:00
Ray
3bdf367711
Support model.transform
...
Combine it with transform introduced as function parameters
2017-05-04 17:42:24 +02:00
raysan5
3c99093aed
Rename variables for consistency
2017-04-23 12:30:36 +02:00
victorfisac
82577ededc
Comment unused variables from tangent calculations
2017-04-06 15:34:04 +02:00
victorfisac
4b7ea25603
Remove testing binormals implementation
2017-04-06 15:33:20 +02:00
victorfisac
0c2a58cf96
Add tangents calculation when loading OBJ file
2017-04-06 15:31:48 +02:00
Ray
080a79f0b0
Added IsFileExtension()
...
Replaced old GetExtension() function
Make IsFileExtension() public to the API
2017-03-29 00:35:42 +02:00
Ray
b7a8a40e71
Work on configuration flags
2017-03-26 22:49:01 +02:00
Ray
59652c75b4
Review some comments
2017-03-20 20:34:44 +01:00
raysan5
8f5ff64420
Working on file header comments...
2017-03-19 12:52:58 +01:00
Ray
05cff44d0a
Improved modules description -IN PROGRESS-
...
Working in modules configuration flags...
2017-02-16 00:50:02 +01:00
Ray
c85dfd4bc6
Remove unecessary spaces...
2017-01-28 23:02:30 +01:00
Ray
37a64df7b9
Move lighting system out of raylib
...
Lighting is implemented as a raylib example now
2017-01-27 23:03:08 +01:00
raysan5
658c280669
Lattest PR review
...
Function names, code formatting...
2017-01-05 19:33:05 +01:00
Joel Davis
d5d391faaf
Added RaycastMesh function and example test case
2017-01-02 21:56:25 -08:00
raysan5
d8bf84f118
Added mesh loading functions
2016-12-25 01:59:23 +01:00
Ray
814507906f
Improving rRES custom format support -IN PROGRESS-
...
Start removing old rRES functions.
2016-12-17 19:05:40 +01:00
Ray
377dcb025f
Corrected some warnings
2016-12-05 01:14:18 +01:00
raysan5
f7b706263a
Some code tweaks
...
Correcting details that pop-up when testing the different platforms
2016-11-18 13:39:57 +01:00
raysan5
bee283b12b
Some tweaks around
2016-11-17 12:55:30 +01:00
raysan5
6d1b712a96
Reviewed modules comments
2016-11-16 18:46:13 +01:00
Ray
4245237892
Corrected SIGSEV bug
2016-11-13 23:47:28 +01:00
Ray
f16f39e8aa
code tweaks to avoid some warnings
2016-11-02 00:50:08 +01:00
raysan5
673dcf9436
Comments tweaks
2016-10-31 20:39:03 +01:00
Ray
8f60996b64
Corrected some warnings
2016-10-17 00:03:38 +02:00
raysan5
b082807b0b
Removed function: ResolveCollisionCubicmap()
...
Function was inefficient and should be rewritten from scratch, it
probably neither belongs to this module but an example...
2016-10-03 13:29:01 +02:00
raysan5
7f0880a735
Review spacing formatting
...
raylib uses spaces between '+' and '-' signs but not between '*' and '/'
signs, it's a chosen convention
2016-09-12 19:36:41 +02:00
raysan5
a9ab516dae
Formatting tweaks
2016-08-31 10:27:29 +02:00
Teodor Stoenescu
384602e5b5
Merge remote-tracking branch 'upstream/develop' into develop
2016-08-31 09:32:08 +03:00
Teodor Stoenescu
d0cf19e035
Greater LoadOBJ() flexibility
...
LoadOBJ can now load objects with having no texture coordinates or
objects having texture coordinates specified as tuples.
2016-08-31 09:24:39 +03:00
raysan5
959a228815
Removed useless spacing
2016-08-16 11:09:55 +02:00
raysan5
852813bdf1
Reviewed formatting
2016-08-15 16:35:25 +02:00
Teodor Stoenescu
6e20037f7d
Small fix for GenMeshCubicmap()
...
This fix allows GenMeshCubicmap() to create cubic maps having cells of
arbitrary sizes.
2016-08-12 21:42:17 +03:00
Ray
eb9072a2f1
Renamed functions for consistency
2016-08-10 12:20:46 +02:00
Ray
2f9abe6e13
Review ResolveCollisionCubicmap()
...
This function needs to be redesigned or removed...
2016-07-04 01:30:07 +02:00
raysan5
5f7ac64c44
Removed function SetModelTexture()
...
It's more educational to go through new material system, so, I decide to
remove this function to avoid students confusion...
2016-06-24 19:49:36 +02:00
raysan5
68a02e567d
Avoid external variable whiteTexture
...
To get it, use GetDefaultTexture()
2016-06-11 12:41:03 +02:00
raysan5
3e8427799c
Corrected bug on cubemap generation
2016-06-11 10:56:20 +02:00
Ray
17878550b1
Review heades usage
...
This is a first step toward a bigger project. Some modules could be
ported to header-only to be used as standalone.
2016-06-02 01:26:44 +02:00
raysan5
302ec438dd
Removed colTint, tint color is colDiffuse
...
Tint color could be applied to colDiffuse... but what's the best way?
Replace it? Multiply by? A point to think about...
2016-05-31 18:15:53 +02:00
Ray
caa7bc366b
Reviewed DrawLight() function and some tweaks
2016-05-31 00:51:55 +02:00
victorfisac
b0a0c5d431
Added tint color attribute to material data type
...
It tints all fragments, ignores lighting. Useful for some features like
feedback (damage color, ...).
2016-05-30 19:55:13 +02:00
victorfisac
f2d61d4043
Remove normal depth
...
Scaling normal depth (y axis) makes disappear the specular of
fragments... So I think it can be removed, it is not a very
useful/important attribute.
2016-05-30 19:43:35 +02:00
victorfisac
2e26ce235d
Add Draw3DCircle function and update raylib and rlgl header
...
Draw3DCircle is useful to draw point lights radius.
2016-05-30 19:18:11 +02:00
victorfisac
dcd6942ed1
Fix small bug and spacing
2016-05-21 18:22:15 +02:00
victorfisac
30941c0dd1
Add Draw3DLine function and fixed MLT glossiness import value
...
In standard shader, material glossiness is a value from 0 to 1000 like
in MLT files. So, it doesn't need to be normalized.
2016-05-21 18:10:06 +02:00
victorfisac
30c8058fca
Add standard lighting (1/3)
...
- Ambient and lambert lighting added.
- Ambient and diffuse colors linked to standard shader.
- Single light linked to standard shader.
- LoadStandardMaterial() and depending functions added.
2016-05-20 17:18:07 +02:00
victorfisac
3fa6fdacf2
Improved MTL loading shininess value
2016-05-20 14:24:53 +02:00
victorfisac
90c62c4cc0
Fix small warning
...
Material glossiness is a float type value...
2016-05-20 14:07:50 +02:00
raysan5
dcf5f45f68
Add lighting system -IN PROGRESS-
...
Improved materials
2016-05-20 12:28:07 +02:00
raysan5
7d1d9ff143
Support DYNAMIC_DRAW mesh loading
2016-05-20 09:36:02 +02:00
raysan5
037edbaa13
Reorganize data for consistency
2016-05-18 13:22:14 +02:00
raysan5
aee5d9a390
Code tweak
2016-05-10 19:24:05 +02:00
raysan5
1ddf594d15
Added support for indexed mesh data
2016-05-10 18:24:28 +02:00
Ray
ac44db26a2
Added reference
2016-05-09 13:16:44 +02:00
Ray
3d0208223a
First implementation of MTL loading
...
Not tested yet
2016-05-09 12:40:59 +02:00
Ray
dc4d5dabcd
Added MTL loading info
2016-05-09 01:18:46 +02:00
Ray
f7d4951165
Improved vertex attribs support for models
2016-05-08 23:50:35 +02:00
raysan5
0bcb873cbb
Improved mesh support
...
Depending on mesh data, it can be loaded and default vertex attribute
location points are set, including colors, tangents and texcoords2
2016-05-08 15:24:02 +02:00
raysan5
7ab008878a
Library redesign to accomodate materials system
2016-05-07 18:07:15 +02:00
raysan5
a66c8531d6
Some code simplifications
2016-04-03 18:31:42 +02:00
raysan5
136408d8b8
Corrected bug on bounding box
...
if mesh is not loaded properly it breaks the game!
2016-03-27 19:42:57 +02:00
raysan5
956a6e6f77
Corrected bug and comments on model unloading
2016-03-27 18:34:05 +02:00
raysan5
c9d22c7a14
Redesign to use Material type -IN PROGRESS-
...
Requires Shader access functions review
2016-03-06 02:05:16 +01:00
raysan5
0d911127d7
Split mesh generation from model loading
2016-03-05 16:17:54 +01:00
raysan5
d8bd8634ab
3d Camera: Added support for field-of-view Y
2016-03-05 13:05:45 +01:00
raysan5
4011c13d4b
Updated BoundingBox collision detections
2016-03-01 20:54:02 +01:00
raysan5
6106ab8a2e
Added color to DrawBoundigBox()
2016-03-01 20:26:01 +01:00
raysan5
1674465bdc
Adjust buffers usage
...
- Removed DrawQuad() function
- DrawBillboard() uses DrawBillboardRec()
- DrawPlane() uses RL_TRIANGLES
- DrawRectangleV() uses RL_TRIANGLES, that way, [shapes] module uses
only TRIANGLES buffers.
2016-03-01 19:00:12 +01:00
raysan5
8ca6f8c6ec
Do not free model mesh
2016-03-01 15:37:01 +01:00
raysan5
823abf666e
Reviewed code TODOs
2016-02-12 12:22:56 +01:00
raysan5
685273675b
Improved LoadHeightmap()
2016-02-11 15:51:04 +01:00
Ray
df5c64d0be
Functions parameters reorganize: Axis and Angle
...
sin(), cos() functions cached and replaced by float c99 versions sinf(),
cos()
2016-02-02 18:41:01 +01:00
raysan5
3113a20390
Added bounding box calculation
2016-01-25 11:12:31 +01:00
raysan5
08da91047e
Some code tweaks
2016-01-23 13:22:13 +01:00
victorfisac
fcd30c5649
Added ray-sphere collision detection
2016-01-20 19:28:47 +01:00
raysan5
efa1c96d19
Adapted raymath as single header library
...
Added support for single header implementation and also inline functions
support
2016-01-20 18:20:05 +01:00
raysan5
29c618a35e
Added some functions (incomplete)
2016-01-19 20:27:41 +01:00
raysan5
fd05d3e353
Rename VertexData struct to Mesh
...
Reviewed vertex type variables
2016-01-18 13:36:18 +01:00
raysan5
3b4d8442e0
Corrected some float values
2016-01-13 19:30:35 +01:00
victorfisac
1793f2c3b8
Added collision check between ray and box
...
- Added CheckCollisionRayBox() function.
- Updated and improved core 3d picking example (currently working as
expected).
2016-01-07 16:18:24 +01:00
raysan5
5659249dfa
Some tweaks and details review
2015-12-30 13:35:03 +01:00
victorfisac
4db2da9185
Added new matrix location points and extra functions
...
- New model and view transformation matrix added, useful for shaders.
Modelview matrix not deleted to keep opengl 1.1 pipeline compatibility.
- New extra function added DrawModelWiresEx() to set a rotation and
scale transformations to a wire model drawing.
- Other writing and little audio.c bug fixed.
2015-12-21 16:42:13 +01:00
Ray
2fa7e00f16
Variables initialization
2015-11-05 12:28:45 +01:00
raysan5
94d0e83207
Corrected crazy bug about model textures
...
On OpenGL ES it was set to use GL_CLAMP_TO_EDGE wrap mode for textures.
On LoadOBJ() texture coordinates were wrongly Y-flipped
2015-09-02 20:36:05 +02:00
raysan5
4879106096
Reviewed to work on Raspberry Pi
...
[rlgl] Extensions strings loading was redone to avoid a Segmentation
Fault on Raspberry Pi
2015-09-02 01:08:41 +02:00
Ray
a42bfa7794
Added trace log for data unloading
2015-08-05 19:17:56 +02:00
raysan5
36552ff995
Added security check if file not found
2015-08-03 17:27:04 +02:00
raysan5
7834a4e2fc
Replaced old mail by twitter user
2015-07-29 21:43:30 +02:00
raysan5
66556b8b47
Added some functions and renamed some others
...
Added:
- LoadImageRaw()
- ImageCopy()
Renamed:
- GetPixelData() -> GetImageData()
2015-07-13 18:19:29 +02:00
raysan5
bae1bf7b0a
Corrected bug on UnloadModel()
2015-06-18 03:08:21 +02:00
raysan5
9572d6c063
Updated postpro shaders system
2015-06-16 20:02:01 +02:00
raysan5
6a4afae5cc
Improved ResolveCollisionCubicmap()
...
Now it supports multiple maps one next to the other
2015-06-02 09:54:51 +02:00
raysan5
eae98e1c34
Big batch of changes, check description:
...
- Camera system moved to a separate module [camera.c]
- WIP: Added customization functions for camera controls
- Added custom shaders support on batch drawing
- Complete redesign of textures module to support multiple texture
formats (compressed and uncompressed)
2015-05-04 23:46:31 +02:00
raysan5
7d2318c167
WIP on shaders and textures
...
Moved functions: LoadShader(), UnloadShader()
Add support for PVR textures compressed/uncompressed
WIP: Detect available extensions for compressed textures
2015-04-13 20:15:28 +02:00
raysan5
a632a04a30
Big batch of changes! Check description:
...
Support multiple texture formats (uncompressed and compressed)
Postprocessing shaders support
Model struct redefined and improved
Extended loading functions for Textures and Models
Simplified functions: DrawPlane(), DrawQuad()
Deleted functions: DrawPlaneEx(), DrawGizmoEx()
Now Text module only depends on Textures module
Shapes: Reviewed functions to low lines/triangles usage
Removed useless tabs and spaces around code
2015-04-06 14:02:29 +02:00
Marc Palau
3cad094edd
Changes integration (some WIP, view details)
...
Corrected GetMouseWheelMove()
Corrected camera system
Reviewed cubicmap resolution (collision detection)
Added QuaternionTransform()
WIP: Raycast system (not working)
WIP: Reviewing axis-angle rotations...
2015-03-02 20:52:58 +01:00
raysan5
c062f8d4fe
Redesign shader system and more
...
Shader system has been completely redesigned
Added support for multiple texture color modes
2015-03-01 16:00:52 +01:00
raysan5
ee4b553c2a
Renamed some functions
2015-02-26 13:52:03 +01:00
Marc Palau
3cb4edcbc3
Corrected camera system
2015-02-09 18:35:43 +01:00
raysan5
e1353b9f7d
Removed some TODO already done
2015-02-09 18:29:32 +01:00
Marc Palau
77eda6494e
Added cubicmap collision detection and resolution
2015-02-04 20:24:23 +01:00
Marc Palau
b926765ce0
Added functions and improvements
...
LoadCubicmap() supports custom texture rectangle (from texture atlas)
for every cubic-face.
CheckCollision*() for spheres and bounding-boxes.
2015-02-02 20:05:18 +01:00
raysan5
b9e53cd135
Removed useless spaces
2015-02-02 00:53:49 +01:00
raysan5
5104567a24
Some code tweaks
2015-01-18 10:57:30 +01:00
raysan5
0bfd283526
Added support for model color tint
...
Also, added support for normals on models
2015-01-02 20:59:54 +01:00
raysan5
905b6ec53d
Added full support for HTML5 (emscripten)
...
Corrected some bugs on the way...
Automatically convert textures to POT on RPI and WEB
2014-12-31 18:03:32 +01:00
raysan5
db1ad74ef2
[models] file open error check
2014-12-17 19:32:54 +01:00
raysan5
2e5f58255a
Working on rotation math...
...
[models] Added DrawQuad()
2014-12-16 11:15:56 +01:00
raysan5
d3cf316e40
Added features and corrected bugs...
...
[core] Added SetMousePosition()
[models] LoadHeightmap() - Corrected textures bug
[raymath] Functions renaming
[WEB] Prepare environment for emscripten!
2014-12-09 13:21:55 +01:00
Palaui
a2c8ddca13
Revert "Corrected some bugs..."
...
This reverts commit 29d8b48503 .
2014-12-09 13:10:28 +01:00
Palaui
29d8b48503
Corrected some bugs...
...
[core] Added SetMousePosition()
[models] LoadHeightmap() - Corrected textures bug
[raymath] Functions renaming
[WEB] Prepare environment for emscripten!
2014-12-09 13:10:05 +01:00
Palaui
63ed471ed2
Corrected bug on billboards
2014-11-24 17:23:05 +01:00
raysan5
9d27bba23f
Small Fixes Update (1.2.1)
...
View CHANGELOG for description on small fixes and add-ons
2014-10-17 21:11:58 +02:00
raysan5
fc6081fe70
raylib 1.2
...
This is a huge update. Check CHANGELOG for details
2014-09-16 22:51:31 +02:00
raysan5
d2b98fbb5c
Removed useless spaces
2014-09-03 16:51:28 +02:00
raysan5
0b03431c95
Update to version 1.1.1
...
Check CHANGELOG for a detailed list of changes
2014-07-23 00:06:24 +02:00