Commit Graph

5714 Commits

Author SHA1 Message Date
ptarabbia
5ac07122bd
Add panning to raudio and update audio_raw_stream example. (#2205)
* Add panning to raudio and update audio_raw_stream example.

* remove pan smoothing, code formatting changes following pull request comments

Co-authored-by: Ray <raysan5@gmail.com>
2022-01-16 12:49:58 +01:00
Ray
48a463cca8 REVIEWED: Vector2Transform(() 2022-01-15 22:19:48 +01:00
Ray
8ee0eb8f36 ADDED: Vector2Transform() 2022-01-15 22:12:58 +01:00
Jeffery Myers
f4dea6919a
[CORE] Bug and formating fixes for GetApplicatonDir (#2285)
* Fix formating problems with GetApplicationDir.
Don't ever return an empty string

* always return a valid path even if it's ./

* remove the need for the dll and just use the normal GetModuleFileName function
2022-01-14 20:16:25 +01:00
raysan5
f57727995a REVIEWED: rlLoadShaderCode() 2022-01-13 19:05:45 +01:00
Matthew Owens
e621efe79f
rlLoadShaderCode - set ShaderId variables to RLGL.State.default[VF]ShaderId if repesctive Code is NULL (#2281) 2022-01-13 18:42:44 +01:00
Ray
464026f15c Update rcore.c 2022-01-12 12:00:47 +01:00
Ray
b61c9afd04 Update Makefile, simplified 2022-01-11 11:57:26 +01:00
Ray
cabb5518e5 Improve Makefile organization 2022-01-11 11:20:04 +01:00
hartmannathan
aaf0175d07
Fix typo in comment: s/simluate/simulate/ (#2277) 2022-01-11 09:04:09 +01:00
Ray
8db56cfc3b Added minimal web shell 2022-01-10 22:31:30 +01:00
Ray
b4e0ed6007 Review formating 2022-01-10 13:54:51 +01:00
Nikolas
a6aa5a1e4c
Make zig build functionality available to zig programs (#2271) 2022-01-08 22:13:44 +01:00
Ray
7a159664bc Improved shader loading code 2022-01-08 20:12:03 +01:00
Ray
612c4ad1dc Reviewed possible issue with shaders detaching 2022-01-08 19:55:14 +01:00
Jeffery Myers
fbf34f7c0d
[CORE] Add a function to return the application directory. (#2256)
* Add a function to return the application directory.

* CI fixes
2022-01-08 19:47:52 +01:00
Ray
2116a98745 ADDED: ExportFontAsCode() 2022-01-03 20:45:56 +01:00
Ray
62858e11f7 Review tracelogs 2022-01-03 20:45:19 +01:00
Gerber Lóránt Viktor
ba1e91b4d7
Change comment about custom blend modes in rlgl.h (#2260) 2022-01-02 22:50:39 +01:00
Ray
7eb341ccaf WARNING: REVIEWED: A big bug with GetMouseWheelMove() 2022-01-01 17:49:07 +01:00
raysan5
a940f41b4b Update year to 2022 2021-12-31 20:06:22 +01:00
raysan5
bb875b1db7 Update rcore.c 2021-12-31 18:18:27 +01:00
raysan5
8f2d9838a3 Reviewed fullscreen switch on PLATFORM_WEB
The previous implementation somewhat break the expected behaviour for games and examples when pressing the `Fullscreen` button in the provided `shell.html`.

Just reverted for the moment for further investigation.
2021-12-31 17:46:31 +01:00
Ray
4bb894f171 tweaks 2021-12-31 11:01:43 +01:00
Tushar Singh
d91b9171fa
[Feature] Added SetWindowOpacity(float opacity) (#2254)
* Added drawing text with shadow

* Added SetWindowOpacity()

* Edited Mis-spell

* Fixed conventions
2021-12-30 13:13:50 +01:00
raysan5
c862c4bdf2 Support CUSTOM_CFLAGS 2021-12-29 19:06:43 +01:00
raysan5
e222209732 Reviewed CFLAGS 2021-12-29 18:22:31 +01:00
raysan5
c9db9e6bb7 Updated version number to avoid confusions with release 2021-12-28 15:40:26 +01:00
raysan5
803ce9f44b Detected some pixel-errors due to rounding issues on position 2021-12-28 15:39:57 +01:00
Ray
611e54e67e Reviewed makefiles 2021-12-27 19:01:07 +01:00
Ray
5f2bc20191 Update Makefile 2021-12-27 16:49:01 +01:00
Ray
8844ad6f0b Update Makefile 2021-12-27 16:38:11 +01:00
Ray
bf0fed8431 Update Makefile 2021-12-27 16:14:58 +01:00
raysan5
423fdb320a Update raudio.c 2021-12-24 19:57:32 +01:00
Antonis Geralis
dcc0791502
check not null before accessing by index (#2243) 2021-12-24 19:54:25 +01:00
Ray
4874c45ebf REVIEWED: ExportWaveAsCode() 2021-12-23 11:02:20 +01:00
Ray
9e5a9892be REVIEWED: PlaySoundMulti() #2231 2021-12-21 23:57:13 +01:00
raysan5
58f2bf4181 REVIEWED: Export format for float 32bit 2021-12-21 20:32:58 +01:00
raysan5
a7bc5196cc Update dr_wav.h 2021-12-21 20:21:00 +01:00
Uneven Prankster
588de4d095
Re-enable QOI support (#2236)
* Updated QOI to latest version.

* Enable back QOI support!

* Stray extra space! Should be good now.
2021-12-21 14:42:27 +01:00
raysan5
22d0baa896 Review makefiles debug flag 2021-12-21 12:24:03 +01:00
Laurentino Luna
dcb0e62095
Remove TODO on Makefile (#2232)
Justification: original comment said the following
"TODO: Add other platforms. Remove sudo requirement, i.e. add USER mode."

For the other platforms part, installing is included on unix-like
systems, so for example Windows doesn't have a path where to install
libraries.

Removing the requirement for sudo is also quite contradictory since
we're writing files to directories which require root. Not sure what the
original commiter meant by USER mode.
2021-12-20 17:04:36 +01:00
Ray
5499388a4c REVIEWED: GenMeshCylinder() #2225 2021-12-19 13:40:55 +01:00
Ray
278c9fa5bd REVIEWED: LoadTextureCubemap() #2224 2021-12-19 13:17:37 +01:00
Ray
76daf6e364 REVIEWED: LoadTextureCubemap() #2223 2021-12-19 13:10:43 +01:00
Ray
05428df667 ADDED NOTE: ImageDraw() does not support f32bit #2222
Added a note for a future improvement
2021-12-19 12:48:06 +01:00
Jeffery Myers
f5e951145a
Add a comment to LoadFontEx to specify how to get the default character set. (#2221)
Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-12-18 19:33:19 +01:00
raysan5
ef5be632fe REVIEWED: ExportMesh() #2220 2021-12-17 20:55:38 +01:00
Tomas S
87fa23beee
Fix build results path on Linux and RPi (#2218)
Built files should be put into src/ not into the project root
as it was now on these platforms
2021-12-16 17:10:13 +01:00
Tomas S
60b1f29783
Fix RPi make install (#2217) 2021-12-16 16:29:09 +01:00
ptarabbia
2db44bc34a
Turn on interpolation for XM playback (#2216) 2021-12-16 16:28:30 +01:00
ptarabbia
86611e6459
Fix issue #2092 (#2215) 2021-12-16 16:27:31 +01:00
Ray
48918ca5c6 REVIEWED: DrawMesh*() issue #2211 2021-12-16 00:19:41 +01:00
Ray
1653fc5bb5 Update rcore.c 2021-12-16 00:19:09 +01:00
raysan5
0454acaacf REVIEWED: Clear SSBO buffers on loading #2185 2021-12-15 13:09:24 +01:00
Ray
20f4d8c147 Reviewed typo 2021-12-10 11:41:45 +01:00
Andrea Fontana
c0715c1225
Fixed functions Vector2Angle and Vector3Angle (#2203)
* Fixed functions Vector2Angle and Vector3Angle

* typo

* Unrolled everything.
2021-12-09 22:30:52 +01:00
Ray
fd0e3a4fdd REVIEWED: GetCodepoint() #2201 2021-12-09 20:13:53 +01:00
Ray
f09a916587 Update raudio.c 2021-12-08 14:02:54 +01:00
Ray
ed1e1f35df REVIEWED: GenImageCellular() #2178 2021-12-08 11:01:41 +01:00
raysan5
7d25480723 REVIEWED: DrawTextureTiled() #2173 2021-12-07 19:06:18 +01:00
raysan5
81240fe960 REVIEWED: vox_loader.h, 64bit issue #2186 2021-12-07 19:00:58 +01:00
Jaedeok Kim
72f3b00b00
Fix Vector2Angle() not working as expected (#2196) 2021-12-07 10:45:36 +01:00
Ray
ef6959ed54 ADDED: raylibVersion symbol #2190 2021-12-06 19:53:09 +01:00
Ray
e7f48eb16b Tweaks 2021-12-06 19:08:06 +01:00
HarriP
3cb4ef2599
Fix inverse length in Vector2Normalize (#2189)
Following the pattern in Vector3Normalize.
2021-12-06 19:07:05 +01:00
Steven Schveighoffer
fa7337e19c
Vector2Angle returns degrees instead of radians, but all other raymath (#2193)
functions use radians, making this awkward to use.
2021-12-06 19:05:28 +01:00
Ray
c5eaaed873 Update Makefile 2021-12-06 12:09:44 +01:00
Ray
c4a62ca1e4 ADDED: Modules info at initialization 2021-12-06 12:02:57 +01:00
Ray
e637ad9d2a Support custom modules inclusion
Allow to choose which modules are compiled with raylib, if some modules are excluded from compilation, required functionality is not available but smaller builds are possible.
2021-12-04 19:56:02 +01:00
Ray
930941e85e Added a couple of notes 2021-12-03 00:30:27 +01:00
raysan5
ba8c73a327 Added some reference code to load bones id and weight data for animations 2021-12-02 20:48:12 +01:00
raysan5
59c4facd90 Disabled QOI image format 2021-12-01 20:56:39 +01:00
Ray
d1b8d4f2c7 REVIEWED: Updated QOI to first official release 2021-11-28 01:22:56 +01:00
Anders Holmberg
71f2e2b1e4
Add macos support to zig build system (#2175) 2021-11-27 10:46:18 +01:00
Ray
2b2141902b ADDED: Support for QOI image format 2021-11-27 10:35:00 +01:00
Ray
9088135b49 REVIEWED: Formating and comments 2021-11-25 01:07:54 +01:00
Arnaud Valensi
b248a00c90
Fix scissor on macos (#2170)
* Expose GetRenderWidth and GetRenderHeight functions

* Fix scissor on macos

* Fix typo
2021-11-25 01:03:20 +01:00
Novaleaf
c5fc7c7640
allow physac to be built as a shared library (#2168)
if `BUILD_LIBTYPE_SHARED` is defined allow build as a shared dll
2021-11-23 22:21:01 +01:00
めぐみ発動機 (isVowel / GreenWing)
924b1c7b0c
fixed typo: aproximation to approximation (#2164) 2021-11-21 18:06:52 +01:00
めぐみ発動機 (isVowel / GreenWing)
478b70e53e
fixed typo: aproximation to approximation (#2163) 2021-11-21 18:06:20 +01:00
raysan5
7755cd0019 Tweak to minimize buffer overflow possibility 2021-11-18 10:25:28 +01:00
WilledgeR
e24443bbbc
Fixes CC while compiling for ANDROID_ARCH x86 (#2148)
* Override CC while compiling for ANDROID_ARCH x86

* REfix Override CC while compiling
2021-11-17 20:45:07 +01:00
raysan5
03f55d8f9e Minor tweaks 2021-11-17 13:36:28 +01:00
Ray
be371ebf99 REVIEWED: LoadTextureFromImage()
Allow texture loading with no data transfer (in case image.data = NULL)
2021-11-15 11:41:05 +01:00
Ray
b7bf220598 REVIEWED: rlUpdateTexture() 2021-11-15 10:25:24 +01:00
Ray
5a6aa52a7c REVIEWED: ExportMesh() #2138 2021-11-15 10:14:00 +01:00
Ray
2c38dad214 Merge branch 'master' of https://github.com/raysan5/raylib 2021-11-11 18:26:28 +01:00
Ray
c8f029dba9 Expose MAX_KEYBOARD_KEYS and MAX_MOUSE_BUTTONS #2127 2021-11-11 18:26:25 +01:00
lib-omar
91135c8799
Fixed file/alloc limitation in GetDirectoryFiles() (#2126)
MAX_DIRECTORY_FILES macro removed.
ClearDirectoryFiles() tweaked to reflect changes.
2021-11-10 19:52:30 +01:00
Ray
da7e0ba9d9 ouch 2021-11-10 13:37:50 +01:00
Ray
c82390e3f1 Reviewed descriptions and notes 2021-11-10 13:31:42 +01:00
Ray
4853082a4f REVIEWED: DrawRectanglePro(), support TRIANGLES drawing 2021-11-10 13:28:43 +01:00
Ray
f6180efd35 REVIEWED: CheckCollision*() consistency 2021-11-10 13:28:05 +01:00
Ray
7158c80448 tweak 2021-11-10 13:26:50 +01:00
Uneven Prankster
35cbacc68b
Allow GL4.3 capabilities to be shown (#2124)
Now that 4.3 was added this can be enabled with the compile flag.
2021-11-09 15:24:39 +01:00
Ray
14e4992d73 REVIEWED: rlGetCompressedFormatName() 2021-11-09 11:53:18 +01:00
Ray
21ec8c38ae Review variables initialization
- All variables are initialized on declaration, some arrays were not properly initialized
 - Static array buffers require memset() for re-initialization on every function call
2021-11-09 11:49:03 +01:00
Luke Krasnoff
8ec5b2dc2f
Protect TextIsEqual from NULLs (#2121) 2021-11-09 11:37:55 +01:00
KonPet
34f9f51835
Fix Render Batch Limit not being checked in DrawRectangleGradientEx() (#2111) 2021-11-07 11:50:15 +01:00
raysan5
7f4ae653f3 Review display output order 2021-11-03 13:24:56 +01:00
raysan5
703df42586 Avoid duplicate output info on PLATFORM_RPI 2021-11-03 12:55:46 +01:00
Ray
5e3db0aa83 Updated some scripts paths
NOTE: New raylib release installer uses `w64devkit`, smaller and more updated than regular `mingw64-w64` default project. Paths are updated properly.
2021-11-02 18:40:45 +01:00
Ray
e930ad3102 Reviewed spelling mistake 2021-11-01 23:06:26 +01:00
Ray
2fe488a71c Update version in CMake 2021-11-01 23:05:23 +01:00
raysan5
70a2118c49 REMOVED: rnet.h
It was not working properly... recommended to use `nbnet` instead.
2021-11-01 20:08:14 +01:00
raysan5
b02e737074 Update raygui.h 2021-11-01 20:07:22 +01:00
raysan5
bba035c20c Minor type tweak 2021-11-01 19:14:55 +01:00
Ray
8c0f9c7f5a Update miniaudio.h 2021-11-01 11:37:47 +01:00
Ray
8abba960c7 Review comments 2021-11-01 11:26:13 +01:00
Ray
8649032428 Update comment 2021-11-01 01:08:55 +01:00
Ray
1fac09d0f4 REVIEWED: example: Compute shader Game-of-life 2021-10-31 12:28:04 +01:00
Ray
b7240d6a36 Update raygui.h 2021-10-27 11:25:24 +02:00
Ray
65076464d5 REVIEWED: KeyCallback()
Register keys independently of the actions
2021-10-26 22:27:18 +02:00
Ray
72758de6ea Reviewed warnings 2021-10-26 22:26:28 +02:00
Ray
25642cff36 Update comments for OpenGL 4.3 2021-10-26 22:23:16 +02:00
Jeffery Myers
daeccd03ac
Fix VC warnings for examples (#2085) 2021-10-25 10:21:16 +02:00
Jeffery Myers
086f76ba7a
Fix warnings in raylib build (#2084) 2021-10-25 10:18:42 +02:00
mandar1jn
affb707dd9
fixing the library so the workflows compile (#2082) 2021-10-24 18:24:01 +02:00
TheSergey496
08441e8b2d
When one of the colliding lines is vertical or horizontal, not all collisions were correctly detected due to floating point error. (#2081) 2021-10-24 17:31:13 +02:00
raysan5
62965aa6d7 Comments tweaks 2021-10-23 14:17:26 +02:00
raysan5
04a4efb591 Added some comments on LoadGLTF() 2021-10-23 14:00:05 +02:00
raysan5
c4f0e80895 REVIEWED: Size of bones id supported, max 255 bones per mesh 2021-10-23 13:59:20 +02:00
raysan5
ebee8ba3bb REVIEWED: LoadGLTF() #2075 2021-10-23 11:42:02 +02:00
mausimus
8f5bd3e185
web: clear resizedLastFrame (#2077) 2021-10-23 10:52:36 +02:00
Richard Smith
fcc6a61d9e
replace hardcoded number of mouse buttons with MAX_MOUSE_BUTTONS (#2076) 2021-10-23 10:52:04 +02:00
raysan5
18db2c4f01 REVIEWED: LoadGLTF()
Reorganized code and added some feature and listed restrictions. Some gltf models do not work yet.
2021-10-22 21:27:11 +02:00
raysan5
83b6cd00c6 Reviewed VS2019 projects 2021-10-22 15:41:28 +02:00
raysan5
ebad28d831 REVIEWED: gltf models loading, reverted to a previous version (with some tweaks) 2021-10-22 14:53:11 +02:00
raysan5
befdb5963e REMOVED: IsGamepadName()
This function is not required, users can check it with `GetGamepadName()`
2021-10-22 12:21:31 +02:00
raysan5
83cd22ee5a Minor tweaks 2021-10-22 12:20:42 +02:00
raysan5
dd6e006d78 Reviewed multitouch example #1988 2021-10-22 11:53:47 +02:00
Ray
317db34059 Reviewed to support raygui and physac on building 2021-10-21 21:17:25 +02:00
Ray
13bb656a91 Update Makefile 2021-10-21 21:09:40 +02:00
Ray
9afda9359b Reviewed physac building 2021-10-21 21:04:28 +02:00
raysan5
fec0ce34c5 Remove trailing spaces 2021-10-19 14:57:12 +02:00
raysan5
719c1551cc Reviewed latest PR formatting and details 2021-10-19 13:30:23 +02:00
warzes
9f2ff3e4d6
Support create OpenGL debug context in OpenGL 4.3 (#2068)
* - support create OpenGL debug context in OpenGL 4.3

* - additional events in debug message
- fixed glEnable(GL_DEBUG_OUTPUT)

* Reviewed OpenGL Debug Context
2021-10-19 12:43:27 +02:00
raysan5
6ac3043e88 WARNING: REMOVED: glTF loading
Actually, it was broken and it that code has no maintainer.
2021-10-18 14:11:56 +02:00
raysan5
2ec8ce649a ADDED: EncodeDataBase64() and DecodeDataBase64() 2021-10-18 14:10:51 +02:00
raysan5
1c9093fd24 Avoid GRAPHICS_API_OPENGL_* defines
Those defines are only used inside `rlgl` module
2021-10-18 13:25:59 +02:00
raysan5
b28e353626 Reviewed glDisableVertexAttribArray() issue #2068 2021-10-18 13:22:52 +02:00
raysan5
a3f9ba8704 Removed useless GL calls #2068 2021-10-18 13:16:07 +02:00
Ray
ccf4329792 Review comments 2021-10-18 00:23:26 +02:00
Uneven Prankster
a6fb2dafc6
Fix rlLoadComputeShaderProgram define (#2067)
Now uses correct version.
2021-10-17 23:11:42 +02:00
raysan5
7a16834124 UPDATE: Officially support OpenGL 4.3 2021-10-17 21:41:19 +02:00
raysan5
f437f7b405 Reviewed makefile and examples building 2021-10-17 21:00:52 +02:00
raysan5
cf12992b6a Remove trailing spaces 2021-10-17 21:00:20 +02:00
Sage Hane
16d015d81e
build.zig: Use addCSourceFiles (#2066) 2021-10-17 19:04:08 +02:00
warzes
d47d7c0001
Fixing the error of loading VOX models. (#2065)
* - Fixing the error of loading VOX models.

* - fixed spaces
2021-10-17 10:22:58 +02:00
michaelfiber
c87e91d27a
Update SetupViewport so that it doesn't subtract offset from render dimensions when calling rlViewport (#2064)
Co-authored-by: Michael <michael@cubeofb.org>
2021-10-17 10:21:51 +02:00
Ray
99f6707e2c Support OpenGL 4.3
- Support Compute Shaders by rlgl API
 - Support SSBO by rlgl API
2021-10-16 23:49:31 +02:00
Ray
e36dc01b91 Support GRAPHICS_API_OPENGL_43 2021-10-16 23:39:21 +02:00
Ray
8523d13683 Update rlgl.h 2021-10-16 23:30:30 +02:00
Astie Teddy
dba29e4405
Compute shaders support (#2061)
* Add basic compute shader and ssbo support in rlgl.

* Add rlBindImageTexture (untested), now requires SUPPORT_COMPILE_SHADERS

* Delete glad.c

* Delete glad.h

* Delete khrplatform.h

* Revert to previous glad.h

* Remove "glad.c"

Co-authored-by: Ray <raysan5@gmail.com>
2021-10-16 23:26:25 +02:00
Ray
0aefe256d0 REVIEWED: rlLoadDrawQuad() description #2058 2021-10-16 22:39:22 +02:00
Ray
1b793e76dc Reviewed memory usage 2021-10-16 22:36:47 +02:00
Ray
226c0e362c Merge branch 'master' of https://github.com/raysan5/raylib 2021-10-15 11:25:28 +02:00
Ray
84edd22612 Reviewed unsigned int issue (discussion #2054) 2021-10-15 11:25:17 +02:00
raysan5
2a6bd973bd Review some comments 2021-10-14 15:38:50 +02:00
Ray
9ac5a96408 Update rmodels.c 2021-10-14 10:52:24 +02:00
Ray
8a5bc933de Starting to review glTF loading -WIP- 2021-10-14 10:43:29 +02:00
Ray
3e604a8645 Remove trailing spaces 2021-10-14 00:11:37 +02:00
Ray
83b3478fe4 Reviewed some TODO 2021-10-13 23:45:57 +02:00
raysan5
4390d3a122 Avoid raylib dependency 2021-10-13 20:47:57 +02:00
raysan5
a77afd5c8f Reviewed some MSVC warnings 2021-10-13 20:47:42 +02:00
raysan5
32c9d411b2 REVIEWED LoadVOX() -WIP-
It seems vox loader is not working properly...
2021-10-13 20:28:58 +02:00
raysan5
1350361f58 Reviewed formatting 2021-10-13 19:34:37 +02:00
Horrowind
e545286369
Fix issue with empty cylinder (#2050)
* Add DrawCylinderEx and DrawCylinderWiresEx

* Modify examples/models/models_geometric_shapes.c to show the
usage of DrawCylinder(Wires)Ex

* Simplified DrawCylinder and DrawCylinderWires to use the -Ex versions.

* This reverts commits f49b2598dd and
4542b32e4e.

* Fixed formatting.
Renamed base_angle to baseAngle.
Remove most of the raymath.h calls.

* Added check for empty cylinder.

* Added check for empty cylinder.

* Fix bug.

Co-authored-by: Horrowind <you@example.com>
2021-10-13 19:32:30 +02:00
raysan5
4e88160e78 Update raylib.h 2021-10-13 19:22:47 +02:00
Ray
a1db0220a1 REVIEWED: LoadFontFromImage()
Avoid crash on wrong sprite font
2021-10-12 23:00:00 +02:00
raysan5
f1659d78d3 Reviewed models examples paths 2021-10-12 21:01:49 +02:00
raysan5
252bd22738 Merge branch 'master' of https://github.com/raysan5/raylib 2021-10-12 20:22:12 +02:00
raysan5
0b0711027a Remove unimplemented function 2021-10-12 20:21:56 +02:00
Horrowind
526e68afa8
Add DrawCylinder(Wires)Ex (#2049)
* Add DrawCylinderEx and DrawCylinderWiresEx

* Modify examples/models/models_geometric_shapes.c to show the
usage of DrawCylinder(Wires)Ex

* Simplified DrawCylinder and DrawCylinderWires to use the -Ex versions.

* This reverts commits f49b2598dd and
4542b32e4e.

* Fixed formatting.
Renamed base_angle to baseAngle.
Remove most of the raymath.h calls.

Co-authored-by: Horrowind <you@example.com>
2021-10-12 19:36:06 +02:00
raysan5
599d6e810f REVIEWED: models resources structure 2021-10-12 12:47:50 +02:00
raysan5
4a1bd12e2d REVIEWED: DrawCubeTextureRec() formatting 2021-10-12 12:08:12 +02:00
Ray
282ec9bb76 Formatting tweak 2021-10-10 23:48:16 +02:00
Ray
a91f61262e Review RLAPI to avoid warnings 2021-10-10 23:24:05 +02:00
Ray
f8719e7ec3 Reviewed latest PR formatting 2021-10-10 22:38:58 +02:00
Arnaud Valensi
7c36f3f6b8
Fix dpi issues (#1987) 2021-10-10 22:34:56 +02:00
Jeffery Myers
3d6d5558c9
Add CheckCollisionPointLine to the header, it appears to have been missed (#2042) 2021-10-10 17:06:15 +02:00
Jeffery Myers
62554db48d
Add missing #endif to windows API defines (#2038) 2021-10-08 19:12:21 +02:00
Ray
94650f0def Simplified RLAPI preprocessor branching 2021-10-08 17:22:58 +02:00
Jeffery Myers
33ed452439
Fix dll exports so that raylib builds in visual studio again. (#2037) 2021-10-07 20:17:45 +02:00
raysan5
3e71232a04 WARNING: BREAKING: REMOVED: GenImagePerlinNoise()
raylib was using `stb_perlin.h` library to generate perlin noise, it seems that recently this library has been flagged as it could be infringing some algorythm patent. For security, it has been removed from raylib.
2021-10-06 21:20:36 +02:00
raysan5
700d448d75 Updated external libraries 2021-10-06 21:13:17 +02:00
raysan5
8722ff7043 REVIEWED: RLGL.State.vertexCounter (See detailed comment)
`RLGL.State.vertexCounter` is a generic counter and it's reused for all `rlRenderBatch`, actually, once render batch is filled, required vertex count is provided through the draw calls, so, the total accumulated count of vertices is not directly registered inside the rlRenderBatch.

`RLGL.State.vertexCounter` keeps that count but one possible improvement(?) could be moving the `vertexCounter` inside `rlRenderBatch` to always keep a register of the total accumulated vertices in that batch (despite that info is provided by the accumulated `draws[i].vertexCount`.

Simplifying, `RLGL.State.vertexCounter = SUM(draws[i].vertexCount)`

The decision to move the counter out of `rlVertexBuffer` is to keep only the data that I think should belong to `rlVertexBuffer` and make it more generic, aligned with raylib `Mesh` structure.

The decision to not add it to `rlRenderBatch` is because it could contain multiple `rlVertexBuffer` and it would be confusing (because it would only register the count of the last filled one).
2021-10-06 11:44:57 +02:00
Ray
8d7f97ee04 Remove trailing spaces 2021-10-06 01:20:46 +02:00
Ray
9a4fb25285 REDESIGNED: Simplify vertex data recording
Instead of registering vertex texcoords and colors on every call, we keep the last defined value and we record everything on `glVertex*()`. Actually that behavior is aligned with OpenGL 1.1 standard.
2021-10-06 01:17:20 +02:00
raysan5
7439c7547b Review functions specifiers 2021-10-05 19:20:21 +02:00
raysan5
b972b8d324 REVIEWED: API functions specifiers 2021-10-05 18:33:41 +02:00
mausimus
6541895901
Revert "reset resizedLastFrame on web platform (#2020)" (#2032) 2021-10-04 09:47:41 +02:00
tomarigr
5d8c477d12
[rcore] fix rpi4 Failed to get DRM resources (#2031)
* [rcore] fix rpi4 Failed to get DRM resources

card1 is not always the the correct card to use on rpi4
rpi os finds the correct card and links it to /dev/dri/by-path/platform-gpu-card during boot.
this fix makes sure that we always point to the correct card on rpi4

* Update rcore.c
2021-10-04 01:59:59 +02:00
Ray
79f36799e7 REVIEWED: Avoid raymath dependency
Still, it depends on Matrix type... rcamera module should be completely reviewed...
2021-10-03 14:08:21 +02:00
Ray
369cb0a3c5 Format tweak 2021-10-03 13:51:53 +02:00
Ray
9b3d74db6b ADDED: GetImageColor() #2024 2021-10-03 12:55:52 +02:00
Ray
92417c4485 Update raylib.h 2021-10-03 12:33:40 +02:00
Ray
22345ff62a Minor format tweak 2021-10-03 12:17:15 +02:00
SAOMDVN
3fc4a4c974
Added DrawLineBezierCubic() (#2021)
Co-authored-by: SAOMDVN <saomdvn@users.noreply.github.com>
2021-10-03 12:15:56 +02:00
Laurentino Luna
9fce26bb06
Supress most warnings on rmodels.c (#2029)
* Supress most warnings on rmodels.c

NOTE: unused symbols have been deleted and the following report will show in what location they were previously.

Unused symbols:
- ArrayInt - vox_loader.h: line 84
- initArrayInt - vox_loader.h: line 168
- insertArrayInt - vox_loader.h: line 175
- freeArrayInt - vox_loader.h: line 186
- offsetX, offsetY, offsetZ - vox_loader.h: line 610
- chunkTotalChildSize - vox_loader.h: line 623

Other warnings:
- initialization discards 'const' qualifier - vox_loader.h: line 572
- incompatible types for VoxVector3 and Vector3 - rmodels.c: line 5748
- incompatible types for VoxColor and Color - rmodels: line 5749

* Remove ToVector3 and ToColor functions and assign values directly
2021-10-03 12:11:20 +02:00
Ray
f869229b7f Minor format tweaks 2021-10-03 12:09:59 +02:00
Ray
239c37246a WARNING: REVIEWED: Follow a set of conventions
CONVENTIONS:
  - Functions are always self-contained, no function use another raymath function inside, required code is directly re-implemented inside
  - Functions input parameters are always received by value
  - Functions use always a "result" variable for return
  - Functions are always defined inline
  - Angles are always in radians (DEG2RAD/RAD2DEG macros provided for convenience)
2021-10-03 11:44:59 +02:00
Chris
9882796df0
Rename BRDG typo to BDRF (#2028) 2021-10-02 14:07:42 +02:00
mausimus
93efa565f9
reset resizedLastFrame on web platform (#2020) 2021-09-29 23:27:10 +02:00
mausimus
dfbb134bfe
RLGL: restore draw batch state after limit check (#2018) 2021-09-29 23:26:29 +02:00
Ray
2474d50dba
Update raylib.h 2021-09-27 17:52:15 +02:00
Ray
e40ece55d5
Update raylib.h 2021-09-27 17:51:57 +02:00
raysan5
18c92b3104 ADDED: Vector3Angle() 2021-09-27 13:57:06 +02:00
raysan5
dd7d65a6b4 Remove tabs 2021-09-27 13:55:45 +02:00
Tommi Sinivuo
206e1def6f
Add Zig build file (#2014)
The build file builds Raylib as a static library for either
Windows or Linux.
2021-09-25 19:24:48 +02:00
Tristan Schulz
b7063ab879
[models] Animation System Fix Part 1 (#2009)
* Fixed gltf missing transforms on load

mend

* extracted Matrix calculation in to static method and added skinning check

* fixed formatting

* Fixed write to access to nullptr when animation has no normals

* Refactored UpdateModelAnimation to only update changed vertices when needed (allows for multi animation playing)

* add check for models that were missed during BindGLTFPrimitiveToBones to not segfault the program

* fixed id mismatch between animation and model

* draft on fixing the mesh to skin mapping

* dont look at this

* removing debug info
2021-09-23 21:06:51 +02:00
raysan5
10d7718011 UPDATED: raylib resource files 2021-09-23 20:53:31 +02:00
raysan5
ddc1fdf6d5 REVIEWED: SeekMusicStream() formating 2021-09-23 18:11:24 +02:00
Uneven Prankster
7fa521fae4
Fix + Return if attempting to seek on a module format (#2008) 2021-09-23 17:38:37 +02:00
Ray
08ea5e419e REVIEWED: LoadImageAnim() #2005 2021-09-23 00:23:57 +02:00
Ray
00a763ea44 Reviewed some TODO comments 2021-09-23 00:18:47 +02:00
Laurentino Luna
dcd289d931
Modify TODO to NOTE on Makefile (#2007)
'# TODO: see 'install' target.' should be a note rather than something
to do.
2021-09-22 23:49:11 +02:00
Timon de Groot
025246620f
Add function DrawCubeTextureRec (#2001)
* Add function DrawCubeTextureRec

* Add EOF newline

* Remove unneeded example
2021-09-22 21:56:38 +02:00
Uneven Prankster
19ef765382
SeekMusicStream initial implementation (#2006) 2021-09-22 21:55:13 +02:00
Ryan Roden-Corrent
9607ea5c0a
Use unsigned int for animation count. (#2002)
LoadModelAnimations takes an `int` for the animation count parameter.
The animation count should never be negative, so it makes sense to
specify it as unsigned in the API. This matches the API for
UnloadModelAnimations, which expects an unsigned int. Both GLTF and IQMM
also store the animation count internally as unsigned, and we were
casting to a signed int for no reason.

GLTF actually uses `size_t` internally, so we're technically risking
overflow, but having 2^32 animations seems unlikely.
2021-09-22 13:04:10 +02:00
Ray
8a434b4fd4 Update rmodels.c 2021-09-22 13:02:44 +02:00
Ray
0e037555fe Update raylib.h 2021-09-22 12:59:40 +02:00
Ray
de173a93c8 Update rmodels.c 2021-09-22 12:19:25 +02:00
Ray
37c047eabc Update rmodels.c 2021-09-22 11:28:52 +02:00
Ray
c1432386a5 Update Makefile 2021-09-22 11:13:10 +02:00
Ray
99ab4d6cb8 WARNING: MODULES RENAMING!!!
raylib modules have been slightly renamed to add some identity and note that they are independent modules that can be used as standalone separate parts of raylib if required.

The renamed modules are:
 - `core` -> `rcore`
 - `shapes` -> `rshapes`
 - `textures` -> `rtextures`
 - `text` -> `rtext`
 - `models` -> `rmodels`
 - `camera` -> `rcamera`
 - `gestures` -> `rgestures`
 - `core` -> `rcore`

All the build systems has been adapted to this change.
2021-09-22 00:15:06 +02:00
Ray
8b3d054408 Minor reviews 2021-09-21 23:49:42 +02:00
raysan5
7d995d95eb Merge branch 'master' of https://github.com/raysan5/raylib 2021-09-21 15:31:35 +02:00
raysan5
a09311a8fc Tweaks 2021-09-21 15:31:26 +02:00
Uneven Prankster
339fdf4c31
Add up argument to DrawBillboardPro (#1941)
* Add `up` argument to `DrawBillboardPro`

* Replace tab with proper spaces
2021-09-21 15:22:30 +02:00
raysan5
c96de3a23a ADDED: GetTouchPointId(index) #1972 2021-09-21 15:11:33 +02:00
raysan5
1627f34032 Reviewed some compilation issues #1997 2021-09-21 15:06:06 +02:00
Chris
89f031673b
Fix mappings.h issue from glfw update (#1995)
- Ran GenerateMappings.cmake to restore mapping changes
2021-09-19 20:33:18 +02:00
Tommi Sinivuo
3c55f067a8
Add SetRandomSeed(unsigned int seed) function (#1994)
Specifying a fixed seed for the random number generator is often
used in games for various reasons.

By adding an api function for seeding the random number generator
we solve two different problems regarding the seeding:

1) The underlying RNG implementation does not leak to client code
   (as would be the case if we called srand directly from the
   client code)
2) Seeding the RNG would be simple from other programming languages
   (especially in cases where calling libc functions is non-trivial)
2021-09-17 21:26:21 +02:00
MrSwedish
23fabb1d67
Prevent INVALID_SOCKET to be defined twice on linux (#1993)
i got an error because of this lol
2021-09-17 01:05:38 +02:00
Neil Barkhina
e9d3d4fa1f
Implemented GetGamepadName() for emscripten (#1986)
* implemented GetGamepadName for emscripten

* updated gamepad to use existing name as arary

* removed unnecessary platform_web check
2021-09-12 18:02:54 +02:00
raysan5
72983d4e20 Typo 2021-09-10 19:01:24 +02:00
raysan5
b63c2619e3 Update Makefile for web compilation
Some flags are only for the linker, not the compiler
2021-09-10 19:01:09 +02:00
Ray
40ec7a6236 Update core.c 2021-09-10 17:23:48 +02:00
Ray
352ea80a1f REVIEWED: Vox loader 2021-09-10 15:37:31 +02:00
procfxgen
a422d2fc8b
Vox loaded (#1981)
* new models_magicavoxel_loading example

* Portable header-only file "magicavoxel_loader.h" for MagicaVoxel loader example.

* models_magicavoxel_loading example added to CMakeLists.txt and Makefile

* fix models_magicavoxel_loading example for linux.

* * vox_loader into "src/external/vox_loader.h"
 * vox file support for "models.c"
 * updated example "models/models_magicavoxel_loading.c"

* * Fix Vox_FreeArrays (removed memory leak)

* * removed magicavoxel_loader.h

* * Revert vs2019 solution

* * vox_loader.h -> Support custom memory allocators
* vox_loader.h -> Reverse Y<>Z for left to right handed system
* models/models_magicavoxel_loading.c -> fix model center

* * vox_loader.h -> Removed Raylib dependencies

* * Changed Vox_LoadFileName to Vox_LoadFromMemory
2021-09-10 15:24:01 +02:00
Ray
803094f41f REVIEWED: Touch input system #1975 #1960
- ADDED: `GetTouchPointCount()` to core module, removed from gestures module.
 - Support multiple touch points: `MAX_TOUCH_POINTS`.
2021-09-10 15:19:12 +02:00
Ray
2c13e43c32 Review font loading log info 2021-09-10 15:16:34 +02:00
Nikolay Krasheninnikov
18d73eef19
Fixes target direction for first person camera mode. (#1977)
Co-authored-by: Nikolai Krasheninnikov <nikolai.krasheninnikov@kronshtadt.ru>
2021-09-10 11:51:59 +02:00
Tristan Schulz
7bf31dd468
Fixed loading obj models with no materials (#1984) 2021-09-09 18:14:15 +02:00
Steven Schveighoffer
1a6adc5f74
Fix dynamic library issues on Macos (#1978) 2021-09-06 23:17:12 +02:00
raysan5
b15715ca80 Merge branch 'master' of https://github.com/raysan5/raylib 2021-09-05 21:49:49 +02:00
raysan5
8d3ff3fda8 Updated Makefile for latest Android NDK r32 LTS
It seems now it's required to use archiver `llvm-ar`
2021-09-05 21:49:47 +02:00
Tristan Schulz
24a38dbd3f
[models] LoadGLTF fixed missing transformations and nonroot skinning problem (#1964)
* Fixed gltf missing transforms on load

mend

* extracted Matrix calculation in to static method and added skinning check

* fixed formatting
2021-09-05 21:15:40 +02:00
raysan5
4120f12375 REVIEWED: Vox loading, mostly formating 2021-09-05 20:39:34 +02:00
procfxgen
dfc465ca6d
new models_magicavoxel_loading example (#1940)
* new models_magicavoxel_loading example

* Portable header-only file "magicavoxel_loader.h" for MagicaVoxel loader example.

* models_magicavoxel_loading example added to CMakeLists.txt and Makefile

* fix models_magicavoxel_loading example for linux.

* * vox_loader into "src/external/vox_loader.h"
 * vox file support for "models.c"
 * updated example "models/models_magicavoxel_loading.c"

* * Fix Vox_FreeArrays (removed memory leak)

* * removed magicavoxel_loader.h

* * Revert vs2019 solution
2021-09-04 19:55:09 +02:00
raysan5
93168304cd Update shell.html 2021-09-03 15:24:05 +02:00
Ray
9ff8ad853c Update raygui.h 2021-09-02 00:39:47 +02:00
Ray
fa79ae8a3d Merge branch 'master' of https://github.com/raysan5/raylib 2021-09-01 23:41:00 +02:00
Ray
9362eaf9c6 REVIEWED: Naming: length vs size 2021-09-01 23:40:51 +02:00
atticus
dfadb3ee37
fix various memory leaks (#1969) 2021-09-01 23:15:32 +02:00
Ray
6e76baa6a9 WARNING: BREAKING: RENAMED: Font struct variables
RENAMED: GetCodepointsCount() -> GetCodepointCount()
RENAMED: GetTouchPointsCount() -> GetTouchPointCount()
2021-09-01 23:11:31 +02:00
Ray
a0f8682905 REVIEWED: <name>Count for consistency
Following english rules, it should be singular name before Count.
2021-09-01 23:09:30 +02:00
Tristan Schulz
e8fa7ceb79
[models] Fixed counting loop for face amount per material (#1967) 2021-09-01 21:29:20 +02:00
raysan5
d98e61c6eb Minor format tweaks 2021-08-28 12:01:16 +02:00
Ray
936199d8de Review dates 2021-08-27 18:50:02 +02:00
Ray
18af18479f REVIEWED: ExportWaveAsCode() 2021-08-27 18:49:03 +02:00
Ray
b7ae0df3d9 REVIEWED: Decouple DrawMesh() and DrawMeshInstanced() #1958 2021-08-27 12:13:44 +02:00
Richard Smith
cac856119c
Change GetColor to take unsigned int (#1954) 2021-08-26 17:31:01 +02:00
Ray
14e443afba REVIEWED: OpenGL 1.1 compilation issue 2021-08-25 23:41:33 +02:00
Ray
7749a2805c UPDATED: raygui to latest version -WIP-
Note this new raygui version embeds ricons and `GuiTextBoxMulti()` is not working properly
2021-08-25 00:51:37 +02:00
Laurentino Luna
6575d31379
Fix tcc not finding emmintrin.h (#1947)
* Fix tcc not finding emmintrin.h

This allows to compile raylib with tcc with no errors.

* Remove __TINYC__ check from stb_image.h

This will be placed under textures.c

* Move tcc check to textures.c

Avoiding to change stb_image.h
2021-08-24 16:34:52 +02:00
raysan5
7c1889c282 REVIEWED: Support mouse wheel on x-axis #1948 2021-08-24 15:26:59 +02:00
Ray
b154bc33f5 Added note on GLFW custom allocators for the future 2021-08-22 01:08:11 +02:00
Ray
d98779abef Minor tweak to avoid false error logs 2021-08-22 01:07:37 +02:00
Ray
aefdb9f9cf REMOVED: Old function names defines
As far as next raylib version will be 4.0, no backward compatibility hacks will be maintained.
2021-08-21 23:57:41 +02:00
Ray
ff523d55ac Updated raygui #1939 2021-08-20 11:56:25 +02:00
atticus
6d20430ccc
add NULL check (#1925) 2021-08-20 11:47:51 +02:00
Ray
a5beb940f8 Remove trailing spaces 2021-08-16 23:23:16 +02:00
Ray
f3385b6ad2 Update rlgl.h 2021-08-16 19:52:57 +02:00
Ray
ef8526ae36 Update rlgl.h 2021-08-16 19:26:10 +02:00
Ray
92a13878dc Add some comments 2021-08-16 19:23:06 +02:00
Ray
1b4c58b66f WARNING: BREAKING: Use frameCount on audio
This is a big change for optimization and a more professional understanding of audio. Instead of dealing with samples, now we deal with frames, like miniaudio does, so, avoiding continuous conversions from samples to frames.
2021-08-16 11:06:31 +02:00
raysan5
462e7aec52 Updated RAYLIB_VERSION to 4.0-dev
Several breaking changes have been done lately so I think it's better to mark raylib for next release as 4.0.
2021-08-15 13:25:14 +02:00
raysan5
aae60e1e44 REVIEWED: extern "C" definition position for consistency
Note that `extern "C"` calling convention only affects objects that need to be seen by the linker, in our case only functions... but it would also be required by global variables exposed, if any.
2021-08-15 13:02:53 +02:00
raysan5
848cdb267a Support C++ usage as standalone library 2021-08-15 12:58:34 +02:00
raysan5
760cfd361e REVIEWED: PHYSACDEF definition and C++ issues #1918 2021-08-15 12:52:12 +02:00
630Studios
092435d51c
[Models] Fix for issue #1809 (#1917)
* GenMeshTangents Fix

* GenMeshTangents Fix - Comment Update

* GenMeshTangents Fix - Comment Update final

* Code Style Changes

* Code Style Changes Final

* Code Style Changes Final 2

* GenMeshTangents better handling for issue #1876

* GenMeshTangents better handling for issue #1876

* GenMeshTangents: Better fix for issue #1876

* vboId location fix

* rlUpdateVertexBuffer - bufferId is an unsigned int

* Fix for issue#1809 - Obj with more materials then mesh caused crash

* Fix for issue#1809 - Formatting Update
2021-08-12 21:01:40 +02:00
raysan5
1dff5814be ADDED: rlUpdateVertexBufferElements() #1915 2021-08-12 21:01:09 +02:00
raysan5
26db391576 ADDED: rlActiveDrawBuffers() #1911
- ADDED: rlEnableColorBlend()/rlDisableColorBlend()
2021-08-12 20:38:57 +02:00
630Studios
ce3214b82d
[rlgl] rlUpdateVertexBuffer (#1914)
* GenMeshTangents Fix

* GenMeshTangents Fix - Comment Update

* GenMeshTangents Fix - Comment Update final

* Code Style Changes

* Code Style Changes Final

* Code Style Changes Final 2

* GenMeshTangents better handling for issue #1876

* GenMeshTangents better handling for issue #1876

* GenMeshTangents: Better fix for issue #1876

* vboId location fix

* rlUpdateVertexBuffer - bufferId is an unsigned int
2021-08-12 09:47:00 +02:00
raysan5
621a8766a8 WARNING: BREAKING: Renamed CharInfo to GlyphInfo and more...
This commit introduces some breaking changes for library consistency, hopefully not too dramatic... Here the full list:
 - RENAMED: struct `CharInfo` to `GlyphInfo`, actually that's the correct naming for the data contained. It contains the character glyph metrics and the glyph image; in the past it also contained rectangle within the font atlas but that data has been moved to `Font` struct directly, so, `GlyphInfo` is a more correct name.
 - RENAMED: `CodepointToUtf8()` to `CodepointToUTF8()`, capitalization of UTF-8 is the correct form, it would also require de hyphen but it can be omitted in this case.
 - RENAMED: `TextToUtf8()` to `TextCodepointsToUTF8` for consistency and more detail on the functionality.
 - ADDED: `GetGlyphInfo()` to get glyph info for a specific codepoint
 - ADDED: `GetGlyphAtlasRec()` to get glyph rectangle within the generated font atlas
 - Some additional tweaks for consistency
2021-08-11 21:16:39 +02:00
raysan5
b6541b7a55 REVIEWED: DrawTextPro()
WARNING: DrawTextPro() requires including `rlgl.h`, before it was only dependant on `textures` module.
2021-08-11 19:02:15 +02:00
raysan5
7e27c2ffa8 TODO: DrawTextPro() rotation not working? 2021-08-11 18:53:06 +02:00
raysan5
b55418effd ADDED: DrawTextPro() with text rotation support 2021-08-11 18:31:56 +02:00
raysan5
5a259fa10f WARNING: REMOVED: DrawTextRec() and DrawTextRecEx()
- DrawTextRec() and DrawTextRecEx() have been moved to example, those functions could be very specific depending on user needs so it's better to give the user the full source in case of special requirements instead of allowing a function with +10 input parameters.
2021-08-11 18:31:32 +02:00
Ryan Roden-Corrent
ef9fdd0fa5
Document Get{Key,Char}Pressed return value. (#1909)
I think it is useful to know what the empty behavior is in cases where
you are enumerating key presses (e.g. implementing "press any key to
continue").
2021-08-10 18:38:32 +02:00
raysan5
311fe8f35b Replaced TABS by spaces 2021-08-08 21:09:11 +02:00
raysan5
a135d9c25d REVIEWED: Avoid conflict with bool 2021-08-08 13:23:04 +02:00
raysan5
ee72497eef REVIEWED: Some warnings... 2021-08-08 13:02:51 +02:00
raysan5
5e63cd3c97 ADDED: GenMeshCone() #1903 2021-08-08 11:29:24 +02:00
raysan5
aa67903f96 Improve rlgl description 2021-07-31 19:58:30 +02:00
raysan5
5b6d83b533 REVIEWED: rlgl defines for consistency 2021-07-31 19:46:44 +02:00
raysan5
3e75a2109d REVIEWED: rlgl module header info 2021-07-31 19:08:13 +02:00
raysan5
559f1919c6 REVIEWED: Improved font loading info 2021-07-31 18:41:44 +02:00
raysan5
b805754aa1 REVIEWED: Avoid bool type collisions 2021-07-31 18:10:26 +02:00
raysan5
dffd1435e9 Revert "REVIEWED: Avoid UBSAN warnings #1891"
This reverts commit a8e9e1387f.
2021-07-30 13:50:33 +02:00
raysan5
a8e9e1387f REVIEWED: Avoid UBSAN warnings #1891 2021-07-30 13:47:21 +02:00
raysan5
1613057881 Update raudio.c 2021-07-30 13:45:01 +02:00
raysan5
b4fddf146b REVIEWED: Added new mechanism to avoid data types collision between modules that share same data types and can be used in standalone mode 2021-07-30 13:44:52 +02:00
raysan5
aeb1a0da84 REVERTED: Removed the need for rlMatrix
Now rlgl uses the `Matrix` type, just make sure it has been previously defined somewhere... I don't like this approach but it's probably the easier one for the users... still looking for a better solution... maybe using something like
`#define MATRIX_TYPE`, so it can be checked in other modules.
2021-07-30 12:54:54 +02:00
raysan5
1cc25d1a2d Review include path that was breaking the build 2021-07-30 12:14:31 +02:00
raysan5
bd70a22412 Review some issues 2021-07-30 11:56:14 +02:00
raysan5
8b7f43f89b WARNING: BREAKING CHANGE: rlgl complete decoupling from raylib -WIP-
rlgl has been redesigned to avoid any dependency to `raylib` or `raymath`, all functions using some of those libs have been reviewed.
 - REMOVED: `Texture2D`, `Shader` structs dependency
 - REMOVED: `Vector3`, `Matrix` structs dependency
 - REMOVED: raymath functions dependency, all required math is implemented in rlgl
 - ADDED: `rlMatrix` custom rlgl type
 - ADDED: `utils.c`: `rlMatrixFromMatrix()` and `rlMatrixToMatrix()` for a safe conversion between raylib<->rlgl matrix types
 - ADDED: `rl` prefix to all `rlgl` structs
 - Other small tweaks here and there
2021-07-29 21:57:50 +02:00
raysan5
58e9a0894f Reviewed some functions to avoid calling other functions 2021-07-29 21:50:50 +02:00
iskolbin
6ef3ab3d3a
impoves raylib_parser: makes it generic, adds -d key for functions define (RLAPI for raylib.h), increases maxiumum number of fields in structs and values in enums, doubles max length of struct field names; split float3/float16 struct typedefs in raymath to allow parser to process the file (#1901) 2021-07-29 20:37:44 +02:00
raysan5
a9f6ff6fe3 Add external folder to build (just in case) 2021-07-29 20:32:30 +02:00
Kyle Appelgate
d8ca13f4c6
fixed DisableCursor() on web by registering an empty mouse click event function in emscripten (#1900) 2021-07-28 21:38:31 +02:00
raysan5
96aadec503 REVIEWED: Info on image loading failure 2021-07-28 19:47:53 +02:00
raysan5
69a82c7a0d ADDED: raygui to extras libraries for convenience 2021-07-28 13:15:43 +02:00
raysan5
0c3902b543 ADDED: GetModelBoundingBox()
Reorganized models functionality, it still needs some review...
2021-07-28 13:15:10 +02:00
raysan5
7c7ee1cdc8 REVERTED: Mesh indices issue #1891 2021-07-28 13:12:16 +02:00
raysan5
0c17d1e14f Minor formatting tweak 2021-07-28 12:58:43 +02:00
Jeffery Myers
c706b33b30
Don't normalize zero length vectors. (#1896) 2021-07-28 08:59:39 +02:00
raysan5
e9c7ab925f REVIEWED: rlDrawVertexArrayElements() #1891 2021-07-27 23:35:54 +02:00
raysan5
70ed52dd5d REVIEWED: QuaternionFromAxisAngle() #1892 2021-07-27 23:30:08 +02:00
Uneven Prankster
4e363b5479
Remove unused UWP defines (#1894)
* Unused UWP define removal

* Further removal of unusued UWP defines
2021-07-26 17:40:10 +02:00
Ray
00911b0842 Reviewed ImageDrawLine() formating 2021-07-23 23:32:20 +02:00
Alexander Buhl
ff2b8d6db1
Fixes #1873 Implemented remaining 7/8 of ImageDrawLine (#1874)
* Implemented remaining 7/8 of ImageDrawLine

The existing code was correct for one octant, it now works for all 8
Added two internal functions, _ImageDrawLineHorizontal and _ImageDrawLineVertical, whithout which it would've been 4 times as much code.

* ImageDrawLine: Replaced 3 functions with 1

Removed both freshly added internal functions
Crammed it all into one

* ImageDrawLine shortened significantly using maths

Substituted X and Y, then wrote one abstract loop instead of 4 specific loops.
Lots of comments to explain what I'm doing for future maintainers.

* Now conforms with style conventions

Also reworded a comment to sound more... fomal.
2021-07-23 23:17:04 +02:00
Ray
0fa295c72d Review formating to follow raylib style conventions 2021-07-23 18:16:08 +02:00
Luiz Pestana
5c76c33d7d
Raspberry RPI/DRM keyboard fix (#1879)
Legacy keyboard support was blocking the render loop, also it was keeping the last key status until the next key.
2021-07-17 20:27:48 +02:00
630Studios
53bb87c8fb
[Models] Better Fix for GenMeshTangents issue #1876 (#1878)
* GenMeshTangents Fix

* GenMeshTangents Fix - Comment Update

* GenMeshTangents Fix - Comment Update final

* Code Style Changes

* Code Style Changes Final

* Code Style Changes Final 2

* GenMeshTangents better handling for issue #1876

* GenMeshTangents better handling for issue #1876

* GenMeshTangents: Better fix for issue #1876

* vboId location fix
2021-07-17 01:33:49 +02:00
630Studios
9aaf7a8057
GenMeshTangents Fix (#1877)
* GenMeshTangents Fix

* GenMeshTangents Fix - Comment Update

* GenMeshTangents Fix - Comment Update final

* Code Style Changes

* Code Style Changes Final
2021-07-16 22:14:13 +02:00
raysan5
c4804c4c0c REVIEWED: Wrong normal matrix calculation #1870 2021-07-16 17:12:22 +02:00
raysan5
85dc2cc03a Minor format tweaks 2021-07-16 16:10:53 +02:00
GoldenThumbs
59acb6dbea
Updated models.c (#1871)
- fixed issue where vertex positions being passed in place of vertex normals.
2021-07-13 12:18:52 +02:00
Humberto Yeverino Jr
8277597bcf
Fix Android multi-touch (#1869) 2021-07-13 12:17:47 +02:00
raysan5
ae230dae46 Update Makefile 2021-07-09 18:49:36 +02:00
raysan5
7062415aec WARNING on emscripten_set_fullscreenchange_callback() 2021-07-09 18:49:29 +02:00
raysan5
5ed814e950 Minor tweaks and comments 2021-07-09 17:36:20 +02:00
Ray
3a74534c39 Added a note 2021-07-07 21:41:45 +02:00
raysan5
4d438ed68d REVIEWED: RPI: Keyboard stdin input #1769 2021-07-06 18:25:00 +02:00
raysan5
bfff2c432c Minor tweaks on DRM system 2021-07-06 17:16:50 +02:00
raysan5
9aedfbec69 Review formatting 2021-07-05 18:45:17 +02:00
raysan5
c0ca8a74bc WARNING: BREAKING: REMOVED PLATFORM_UWP support
After lot of investigation, I'm afraid I'm removing official UWP support from raylib, I'll keep the current implementation in a separate branch (UWP), just in case. It seems Microsoft is trying to replace UWP in the long term, they announced lack of support for the new WinUI 3 and they seem to be moving to Windows App SDK.

Also, on current implementation, the code is divided between raylib and the example, requiring multiple callback hooks, making it difficult to follow and maintain.

And realistically speaking, raylib is probably not the best option for anyone willing to target UWP, neither Xbox consoles.
2021-07-05 12:34:23 +02:00
raysan5
d432d03aea REVIEWED: Infinite loop on closing #1861 2021-07-04 20:29:20 +02:00
raysan5
c15d08d6ec Review some comments 2021-07-03 21:48:35 +02:00
raysan5
f8753bda01 Update core.c 2021-07-03 21:31:52 +02:00
raysan5
652b17d68d Review variables initialization 2021-07-03 21:25:30 +02:00
raysan5
efba81442a Update link address for miniaudio 2021-07-03 21:25:05 +02:00
raysan5
f81dfce19f Minor tweaks 2021-07-01 21:43:13 +02:00
raysan5
a6728a2203 REVIEWED: emscripten versions 2021-06-30 17:12:58 +02:00
raysan5
9e7ca41f58 Remove trailing spaces 2021-06-30 16:39:07 +02:00
masterex1000
ee24d17895
Fix DecompressData() pointer issue (#1856) 2021-06-29 23:06:09 +02:00
raysan5
da8d76d826 Review issue with pointer #1854 2021-06-29 11:26:34 +02:00
raysan5
6f30a19dd7 Update uwp_events.h 2021-06-28 14:23:55 +02:00
raysan5
2911cf2a48 Reviewed comments 2021-06-28 14:23:45 +02:00
Ray
e5cf3f9555 WARNING: BREAKING: Functions renamed for consistency
RENAMED: GetTextureData() -> LoadImageFromTexture()
RENAMED: GetScreenData() -> LoadImageFromScreen()
2021-06-28 09:39:31 +02:00
raysan5
5f03201616 Minor tweaks 2021-06-26 22:43:20 +02:00
raysan5
8eb7cf1fee REVIEWED: Enum values descriptions 2021-06-26 22:13:45 +02:00
raysan5
2f75657350 WARNING: REMOVED: Some deprecated function names mapping
Some functions/values have been deprecated for long time but some mapping was kept for convenience. Some of those mappings have been removed...
2021-06-26 21:07:00 +02:00
Ray
00c8795385 Minor tweaks to follow code conventions 2021-06-26 13:45:39 +02:00
Ray
89708edf7f REVIEWED: Latest PR to follow raylib code conventions 2021-06-26 13:45:15 +02:00
Hristo Stamenov
71700254b4
Major revamp gltf (#1849)
* Added my own model and license to Raylib exclusively created by me and provided for use in the examples (and other projects if anyone decides to)

* Use animation vertices on initial load if possible.

* Added girl model to model example

* Revamped GLTF model loading as it was wrong by default. Also updated some comments.

GLTF models were loaded only by mesh but they should be loaded recursively by hierarchical nodes because tehre are some static node transformations that are to be applied to the vertices. It also resulted in more meshes being included in some models.

It is the correct way of loading GLTF and what is suggested in the official examples.

Currenlty limiting to only one scene but more can be included later.

* Refactored the new names and structure of extracted functions.

* Safer and easier read value.

* Made reading easier for accessor->bufferView->buffer in GLTF.

Now there is no need to check for supported types or anything.

* Correct inclusion of limits.h in the cases of MSVC based compilers vs the world

* Removed weird example file
2021-06-26 13:22:00 +02:00
Ray
aa86e9d399 REVIEWED: Minor tweaks on log messages 2021-06-26 13:18:39 +02:00
Ray
4b6e6ce20e REVIEWED: Improved log info on image/textures laoding
ADDED: rlGetPixelFormatName()
2021-06-26 13:07:14 +02:00
Ray
7cbfca8bd1 REVIEWED: Simplified code to avoid extra functions calls 2021-06-26 13:06:22 +02:00
Ray
e0720a0a55 WARNING: REVIEWED: Default shader uniform names
When a shader is loaded, by default, several locations are tried to be set automatically.
2021-06-25 13:35:43 +02:00
Ray
d4c03b47ec REVIEWED: LoadShader() and default locations
Reviewed locations descriptions
2021-06-25 00:46:14 +02:00
Ruminant
f3eff740ce
fix to LoadShaderFromMemory (#1851)
- the shader.locs now match the LoadShader function

Without this change, the lighting sample looks incorrect when
using LoadShaderFromMemory

Co-authored-by: Ruminant <psp5150+git@gmail.com>
2021-06-24 18:48:48 +02:00
Ray
953882e86f REVIEWED: CORE.Storage.basePath
Simplified some code
2021-06-24 18:13:25 +02:00
Ray
46ad7b87e8 Update text.c 2021-06-24 18:11:48 +02:00
Ray
4e9afac2a5 REVIEWED: WaitTime() #1841
Avoid global variables dependency, now the function is self-contained.
2021-06-24 11:01:44 +02:00
Nikhilesh S
f7a6b94f46
Allow SetWindowSize() on web (#1847) 2021-06-23 10:02:18 +02:00
Ray
3db26f82ea WARNING: BREAKING: Functions renamed!
RENAMED: GetCodepoints() -> LoadCodepoints(), now codepoint array data is loaded dynamically instead of reusing a limited static buffer.
ADDED: UnloadCodepoints() to safely free loaded codepoints
RENAMED: GetNextCodepoint() -> GetCodepoint()
2021-06-23 09:58:49 +02:00
Ray
716e26aa37 Review BeginTextureMode() usage
Moved outside BeginDrawing()/EndDrawing() to illustrate drawing is happening to an external texture (not screen)
2021-06-23 01:25:09 +02:00
Ray
429c5a9a9a Review and un-expose InitTimer()
Actually it's not required for SUPPORT_CUSTOM_FRAME_CONTROL
2021-06-22 20:26:59 +02:00
Ray
7f2a071c51 Formatting review 2021-06-22 20:14:44 +02:00
Sky
9095dd9e82
Add support for resizing Emscripten canvas (#1840) 2021-06-22 18:25:52 +02:00
Diesirae
30a0f6f292
Fix DrawTextRec (#1843)
* fix text wrapping

* fix indent

* fix indent

* fix indent

* fix DrawTextRec
2021-06-22 18:16:04 +02:00
Guillaume DEVOILLE
52f1c7df6d
Fix missing fclose in tinyobj loader (#1842)
Missing fclose in tinyobj loader.
2021-06-22 18:12:42 +02:00
Ray
115cc7dede Review GetFPS() 2021-06-21 00:46:30 +02:00
Adrian Guerrero Vera
96d5dd24aa
core: added GetMouseDelta() (#1832)
* core: added `GetMouseDelta()`

Thanks to previousPosition added by raysan it is now possible to create the GetMouseDelta() function.

Returns a Vector2 with the difference between the current and previous position of the mouse in a frame.

Useful for creating camera scrolling, among others.

* Added changes noted by raysan
2021-06-21 00:11:27 +02:00
raysan5
28093c46a8 Disable SUPPORT_EVENTS_AUTOMATION by default 2021-06-19 19:54:36 +02:00
Ray
1dd9fbae94 Merge branch 'master' of https://github.com/raysan5/raylib 2021-06-17 18:18:26 +02:00
Ray
8be5ec2288 Avoid SUPPORT_MOUSE_CURSOR_POINT 2021-06-17 18:18:16 +02:00
Sirvoid
1a420b77e3
Fixed: Binding vertex position twice (#1835) 2021-06-17 15:42:37 +02:00
Ray
e07054d0d4 RENAMED: SwapBuffers() -> SwapScreenBuffer()
Avoid possible symbol collisions
2021-06-17 12:47:03 +02:00
Ray
b733e76c86 Update physac.h 2021-06-17 12:26:33 +02:00
Ray
19b71f5f13 WARNING: Exposed SUPPORT_CUSTOM_FRAME_CONTROL #1729 2021-06-17 12:17:50 +02:00
Ray
ab032919df RENAMED: Wait() -> WaitTime() 2021-06-17 11:47:05 +02:00
Ray
68e408474d Renamed SUPPORT_MOUSE_CURSOR_NATIVE -> SUPPORT_MOUSE_CURSOR_POINT 2021-06-17 11:17:39 +02:00
Ray
942657fc7c Remove Color struct requirement 2021-06-17 00:28:51 +02:00
Ray
4decbb2586 RENAMED: MeshTangents() -> GenMeshTangents()
RENAMED: MeshBinormals() -> GenMeshBinormals()
2021-06-17 00:04:24 +02:00
Ray
f3d38018cd Comment tweak 2021-06-17 00:03:24 +02:00
Ray
4b93feb172 Remove trail spaces 2021-06-13 17:08:30 +02:00
Ray
213c990eda Reviewed issue 2021-06-13 12:08:32 +02:00
Ray
de7b8ad551 NEW CRAZY FEATURE: EVENTS AUTOMATION!
https://youtu.be/3dZenkpmRzM
2021-06-11 12:27:46 +02:00
Ray
0b8e0f05a7 Register mouse previous position 2021-06-10 18:03:25 +02:00
Ray
b188008a1c Review code formatting 2021-06-10 18:00:44 +02:00
Ray
7bc2e922c9 Review some comments 2021-06-10 17:49:55 +02:00
Ray
b0dcdf688f Reviewed functions description
Replaced: Returns -> Get
2021-06-10 17:43:58 +02:00
Ray
d3387c952a Reviewed Input variables and comments 2021-06-10 17:11:31 +02:00
Ray
3643974949 Corrected bug on enum 2021-06-10 11:38:02 +02:00
Ray
8980bcfe4b Added some enum comments 2021-06-10 11:31:34 +02:00
Ray
97b074ac26 Update GLFW to latest version #1817 2021-06-08 21:02:24 +02:00
Ray
76a907bb79 Remove tabs 2021-06-08 21:01:17 +02:00
raysan5
246798a0ba Update Makefile 2021-06-05 20:15:03 +02:00
raysan5
e95d8bc655 Minor format tweaks 2021-06-05 12:33:05 +02:00
raysan5
6445200a93 Removed GetAudioStreamBufferSizeDefault() 2021-06-05 12:32:52 +02:00
Ray
e00d2439b9 WARNING: BREAKING: Consistency renamings
RENAMED: InitAudioStream() -> LoadAudioStream()
RENAMED: CloseAudioStream() -> UnloadAudioStream()
2021-06-03 23:36:47 +02:00
Ray
121c689b78 Review code formatting 2021-06-03 20:25:28 +02:00
Crydsch
edeaff4bd4
Better collisions (#1803)
* review collisions ray-box and ray-sphere

* Applied raysan's refactor
Improved GetRayCollisionBox

* Replace GetRayCollisionGround with GetCollisionQuad

* Update example core_3d_picking

* Update example models_loading

* Fixed issues after merge

* remove debug stuff

Co-authored-by: Cry dsch <chris.obo@gmx.net>
2021-06-03 20:15:27 +02:00
isaac553876299
d1ac38171c
Update raymath.h (#1802) 2021-06-01 17:00:40 +02:00
Marco G. Maia
1a7dace57e
Update docs for supported blend modes (#1801) 2021-06-01 15:00:19 +02:00
Ray
0870295a7c RENAMED: enum Gestures -> Gesture
Consistency tweak
2021-05-31 20:40:27 +02:00
Ray
5e3cf28642 Update raudio.c 2021-05-31 19:32:48 +02:00
Ray
8f4261e9d4 Remove unused declarations 2021-05-31 12:58:49 +02:00
Ray
2760304d66 Update CMakeLists.txt 2021-05-31 12:27:26 +02:00
Ray
9bd3d78374 WARNING: Moved some **extra** raylib libraries to /extras/ directory 2021-05-31 11:43:56 +02:00
Ray
1c5de9721a WARNING: BREAKING: RENAMED: RayHitInfo to RayCollision #1781
- RENAMED: RayHitInfo to RayCollision
- RENAMED/REDESIGNED: Multiple Ray collision functions to be more consistent and return RayCollision data -WIP-
2021-05-31 11:41:56 +02:00
Ray
7bcb2ad4f1 Update uwp_events.h 2021-05-31 11:39:20 +02:00
Ray
89e734de6b Review config flags #1784 2021-05-30 22:31:14 +02:00
Julianiolo
cc4de1d1f9
note (#1797) 2021-05-30 18:33:38 +02:00
Ray
71995d52b3 REVIEWED: exit() on LOG_FATAL instead of LOG_ERROR #1796 2021-05-30 18:02:06 +02:00
Ray
0369ec9adf Some code tweaks 2021-05-30 11:50:32 +02:00
Ray
c828e481fb Review code format 2021-05-29 13:56:08 +02:00
Ray
e3ba11bead Review some comments 2021-05-29 13:54:05 +02:00
Hristo Stamenov
beeac18eb1
Fix QuaternionToMatrix returning transposed result. (#1793) 2021-05-29 13:53:00 +02:00
Hristo Stamenov
470574517a
Implement vertex color attribute for GLTF and IQM (#1790)
Added a simple cube with vertex colors for testing both.
2021-05-26 20:23:13 +02:00
Ray
7959d95db0 Review raylib structs comments 2021-05-25 23:19:03 +02:00
Ray
9f45fea31e Remove line break in DrawTextRecEx() 2021-05-25 11:59:34 +02:00
Ray
03710c9d8e Some code tweaks for consistency 2021-05-22 16:54:04 +02:00
Ray
cb698dd37d Update Makefile 2021-05-22 16:51:51 +02:00
Ray
5765b7895c Minor comments tweaks 2021-05-22 14:35:10 +02:00
raysan5
60ca8acd0a Update version to 3.8-dev to note breaking changes
Some breaking changes were introduced lately, it's better to note that current version is not 3.7 anymore...
2021-05-21 22:59:00 +02:00
Ray
4a099c3658 Review ExportImage() to use SaveFileData() #1779 2021-05-20 20:37:46 +02:00
Ray
23a08a483e WARNING: RENAMED: IsMusicPlaying() -> IsMusicStreamPlaying() 2021-05-20 19:27:04 +02:00
Ray
f33cec64aa Use output->boneCount instead of nodes_count 2021-05-20 19:25:09 +02:00
Ray
e401d5c48e WARNING: RENAMED: MeshBoundingBox() -> GetMeshBoundingBox()
Renamed for consistency with other function in raylib.
2021-05-20 19:24:28 +02:00
Ray
9360e4e2c1 Comment minor tweak 2021-05-20 19:14:42 +02:00
Guillaume DEVOILLE
b90ac7bd31
Fixed over-allocation of buffer (#1772)
output->framePoses[frame] is over-allocated.
framePoses is a 2D array:
- first dimension: frames (allocated l. 4717)
- second dimension: nodes (allocated l. 4731)
Second dimension should be allocated of nodes_count transformations only.
2021-05-15 00:41:33 +02:00
Ray
232378ed2d Merge branch 'master' of https://github.com/raysan5/raylib 2021-05-14 14:01:51 +02:00
Ray
3baba7ffe8 Review some VS warnings and messages 2021-05-14 14:01:42 +02:00
Guillaume DEVOILLE
45b0dc63cd
Fixed GLTF boneWeights uint32 loading (#1768)
boneWeights uint32 were loaded in normals instead of boneWeights.
2021-05-13 13:58:51 +02:00
Ray
6c56fe2670 Update shell.html 2021-05-12 19:51:29 +02:00
Ray
6bd63de8d0 Reviewed latest PR
REMOVED: DrawBillboardEx()
2021-05-11 01:02:53 +02:00
nobytesgiven
ac204a11f7
Redesigned billboards - added rotation/pro functions (#1759)
* Redesigned billboards - added rotation/pro functions

* updated parameters

Co-authored-by: nobytesgiven <nobytesigiven@github.com>
2021-05-11 00:55:43 +02:00
Lambert Wang
e39e45824d
Add RenderPolyLinesEx routine (#1758)
Co-authored-by: Lambert Wang <lambert.ww@gmail.com>
2021-05-10 20:08:58 +02:00
ProphesorIks
1d0767022d
~Updated project version (#1761)
Updated to fix versioning and linking issues.
Old version would cause examples to not be linked on fresh raylib install or linked with an old library version on updated raylib install.
2021-05-10 00:51:37 +02:00
Lambert Wang
2545f62565
Added support for additional mouse buttons (#1753)
* Added support for additional mouse buttons

* Renamed mouse button enum

Co-authored-by: Lambert Wang <lambert.ww@gmail.com>
2021-05-08 18:26:24 +02:00
Antonio Jose Ramos Marquez
2565c01158
check for vao extension (#1757) 2021-05-08 18:24:14 +02:00
Jeffery Myers
133e6f097d
Convert the half sleep to a sleep that is a fraction of the target FPS (Default 95%) to reduce CPU use. (#1756)
Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-05-07 19:49:44 +02:00
Ray
b62c86572e REVIEWED: raudio_standalone #1752 2021-05-07 15:38:13 +02:00
Astie Teddy
c82d9cb89a
Unset CORE.Window.ready on CloseWindow (#1749)
Window shouldn't be considered ready when CloseWindow has been called.
2021-05-05 19:08:15 +02:00
Ray
a41ed986bd Expose RAYLIB_VERSION in raylib.h #1747 2021-05-04 11:20:47 +02:00
Ray
e5708a8f36 Comment tweak 2021-05-03 19:05:53 +02:00
Ray
2015828fc6 Security check in case of not valid font 2021-05-03 19:05:43 +02:00
Ray
a3e7664dcf Fixed bug that overrides other flags
This issue prevented enabling MSAA on several platforms
2021-04-29 00:07:28 +02:00
Ray
ffadeeeb84 Decoupling rlgl from platform layer
Now rlgl only depends on OpenGL and it's completely decoupled from platform layer libraries (EGL)
2021-04-28 23:57:46 +02:00
Ray
f516f4099b Corrected issue #1742 2021-04-28 19:27:50 +02:00
Ray
a113d3326b Disable raylib code 2021-04-27 23:12:04 +02:00
Rabia Alhaffar
399894ac90
Fixed definition of UNCOMPRESSED_R8G8B8A8 (#1740) 2021-04-27 20:17:47 +02:00
Ray
6ebe76cba7 Minor tweaks 2021-04-27 11:05:05 +02:00
Ray
1aa8a4ff90 REVIEWED: rlLoadExtensions()
On PLATFORM_ANDROID, PLATFORM_RPI, PLATFORM_DRM and PLATFORM_UWP glfwGetProcAddress() is not defines, actually those platforms use egl platform windowing system.
2021-04-27 11:04:48 +02:00
Ray
bb33033389 Merge branch 'master' of https://github.com/raysan5/raylib 2021-04-26 00:36:22 +02:00
Ray
a44815e939 REMOVED: GenMeshDefault() 2021-04-26 00:36:13 +02:00
raysan5
0e2845ec26 Review OpenGL 1.1 building #1732
It works compiling with MinGW
2021-04-25 13:32:24 +02:00
Ray
7ad17386f6 Update raylib.h 2021-04-23 17:24:25 +02:00
Ray
03815ec4fe RPI4: Improve DRM card check #1723 2021-04-22 21:01:48 +02:00
Ray
dcf52c132f Remove trail spaces 2021-04-22 18:55:24 +02:00
Ray
ac79d22a9b Reviewed file comments 2021-04-21 00:41:55 +02:00
Ray
1e65817d05 Update models.c 2021-04-20 12:19:04 +02:00
Ray
bb743e8c6e ADDED: UpdateMeshBuffer() 2021-04-20 12:16:16 +02:00
Ray
63a1bf373c Merge branch 'master' of https://github.com/raysan5/raylib 2021-04-19 19:41:41 +02:00
Ray
899afcbdca Minor tweaks 2021-04-19 19:41:32 +02:00
nathants
1c45a882f7
use bone weights for animation (#1728) 2021-04-19 18:26:40 +02:00
Ray
581bd0eb02 Remove trailing spaces 2021-04-18 23:50:32 +02:00
Ray
223091f44c Review extensions issue on macOS 2021-04-18 20:33:49 +02:00
Ray
d4ccca81db WARNING: REDESIGNED: rlLoadExtensions() #1295
Added config flag: SUPPORT_GL_DETAILS_INFO
2021-04-18 20:24:19 +02:00
Ray
640fc4d0a0 Minor tweaks 2021-04-16 21:19:28 +02:00
Ray
45823a36eb Added some OpenGL extensions comments 2021-04-14 21:07:04 +02:00
Ray
37f523fdeb Update external libraries 2021-04-14 21:06:00 +02:00
Ray
d289085ce3 Reviewed DrawLine3D() limits #1721 2021-04-13 01:08:39 +02:00
Ray
06f16f199a REVIEWED: DrawLine3D() #1721
Increased batch limit check to compensate internal buffers alignment for lines drawing
2021-04-13 00:05:21 +02:00
Ray
afb254b985 Update rlgl.h 2021-04-11 00:58:04 +02:00
Ray
d2cb628a66 Some defines simplification 2021-04-11 00:55:45 +02:00
Jon
c74230a9ea
Enable DRM platform cross compilation support (#1717)
* Log a warning if chdir failed, use agnostic CHDIR instead of chdir

* Only include libdrm directory explicitly when not cross compiling
2021-04-09 19:57:14 +02:00
Jeffery Myers
f6f9a3d925
use xm streams in the same sample sample size as the output device (#1716) 2021-04-09 11:00:21 +02:00
Chris
3cdac3e11e
Fix off by one bug with GetGamepadAxisCount on PLATFORM_DESKTOP (#1715)
- Found testing core_input_gamepad. The last axis was not drawn.
- GLFW_GAMEPAD_AXIS_LAST is defined to the last axis which is 5
not the total number which is 6.
2021-04-09 00:55:47 +02:00
Ray
8a8948780e REVIEWED: GetKeyPressed() #1712 2021-04-09 00:21:56 +02:00
Ray
49e17044c9 Update resource files 2021-04-09 00:20:43 +02:00
Ray
6719c3a1cd REVIEWED: OpenGL 2.1 compilation 2021-04-07 09:39:41 +02:00
Ergoold
85ef9d8f2e
Fix ImageClearBackground (#1711)
- Dividing by height instead of width results in missing parts of the image.
2021-04-07 00:02:37 +02:00
Ray
b3f75b91ff REDESIGNED: Vr stereo mode 2021-04-06 23:23:03 +02:00
Ray
84d0d21f23 Reviewed Vr stereo 2021-04-06 23:06:03 +02:00
Ray
71b86bf4d0 REDESIGNED: Vr stereo rendering 2021-04-06 22:49:41 +02:00
Saikyun
fd663024ea
added import in order for alloca to work on macos (#1710) 2021-04-06 21:42:00 +02:00
Ray
6d3c66a179 Merge branch 'master' of https://github.com/raysan5/raylib 2021-04-06 21:40:05 +02:00
Ray
68124599e1 Corrected issue on RPI 2021-04-06 21:39:54 +02:00
frithrah
b2545e053a
Minimum number of segments in circle sector functions changed from hard-coded to based on degree range. (#1707)
Co-authored-by: Simon <simon@frithrah.com>
2021-04-06 14:29:58 +02:00
Ray
109d00cb14 Reorganized shaders functions 2021-04-06 13:10:12 +02:00
Ray
551944e15b Minor comment tweaks 2021-04-06 13:04:15 +02:00
Ray
0a34a35403 Update miniaudio.h 2021-04-06 11:57:51 +02:00
Ray
802ca161d3 REVIEWED: Some rlgl cleaning on unused types 2021-04-06 00:43:38 +02:00
raysan5
a8dd4127f3 Added security check to avoid internal render batch overflow 2021-04-05 13:59:52 +02:00
raysan5
0e04ae561e Merge branch 'master' of https://github.com/raysan5/raylib 2021-04-05 13:48:03 +02:00
raysan5
7b37caa96c REVIEWED: Model scale #1700 2021-04-05 13:47:52 +02:00
m4ntr0n1c
abf481023b
Update to the xm player routine and support functionalities (#1701)
* Update jar_xm.h

Major bug fixes and refactoring

* Update jar_xm.h

update to version 0.31
2021-04-05 13:46:09 +02:00
raysan5
c2c141f941 Update version to raylib 3.7 2021-04-05 13:36:23 +02:00
raysan5
b52cd8f605 Reorganized functions by module 2021-04-05 13:35:59 +02:00
raysan5
5fd441969d REVIEWED: rlLoadShaderDefault()
Operate over global variable
2021-04-05 13:35:42 +02:00
raysan5
14aa29d18b Update rlgl.h 2021-04-04 15:10:39 +02:00
raysan5
4c9d2e719e Merge branch 'master' of https://github.com/raysan5/raylib 2021-04-04 14:59:29 +02:00
raysan5
66f3434571 REDESIGNED: Shapes texture/rec moved to shapes module 2021-04-04 14:59:17 +02:00
Rob Loach
d58b7b509e
Make SaveFile* callbacks return a boolean (#1697) 2021-04-03 08:56:42 +02:00
raysan5
c21baf0d92 ADDED: GenMeshDefault() #1556 2021-04-02 15:56:35 +02:00
raysan5
ccdf7ff335 REDESIGN: Move GenTexture*() functions to PBR example #721
Removed functions from rlgl module.
2021-04-02 14:29:33 +02:00
raysan5
67dda62867 REVIEWED: GenTexture*() functions #721
Avoid RLGL data dependency to allow moving the functions somewhere else
2021-04-02 14:01:30 +02:00
raysan5
7e2531fe35 REVIEWED: ToggleFullscreen() on web #1241
After some investigation, I came to the conclusion it's impossible to get a solution that works for all situations. Fullscreen mode on web depends on the browser, the canvas and also the desired scaling strategy of the user. Just choose a solution that fits me needs for now and let the user manage the canvas on their webs (hopefully not requiring ToggleFullscreen() call).

Also removed several useless related callbacks.
2021-04-02 13:46:56 +02:00
raysan5
38df0760cc Review compress/decompress logs 2021-04-02 13:43:10 +02:00
raysan5
d64f27bad1 Remove old flag 2021-04-02 13:42:07 +02:00
raysan5
2b6e7c8632 Update Makefile 2021-04-02 13:41:54 +02:00
raysan5
b54d96205f Review libc dependency 2021-04-01 21:22:18 +02:00
raysan5
aed0fee2ca Remove trailing spaces 2021-04-01 20:24:33 +02:00
raysan5
b4975619ed Review comments 2021-04-01 20:23:05 +02:00
raysan5
cdc3754449 ADDED: Support model normal matrix location #1691 2021-03-31 20:44:16 +02:00
raysan5
2488d361b6 Review formatting 2021-03-31 20:15:04 +02:00
raysan5
c772de702b REVIEWED: DrawMeshInstanced() matrix computations
Simplified some parts and reviewed for a correct computation of matrices, considering stereo render view/projection per eye transformations
2021-03-31 19:59:23 +02:00
raysan5
434a3a276d REVIEWED: Define instancing API entry points for RPI 2021-03-31 18:41:03 +02:00
raysan5
8e51e6d1df REVIEWED: CheckCollisionPointLine()
Use fabsf() instead of abs()
2021-03-31 18:40:33 +02:00
raysan5
fd3e2fda00 RENAMED: example: shaders_mesh_instancing
shaders_rlgl_mesh_instanced -> shaders_mesh_instancing
2021-03-31 18:40:04 +02:00
raysan5
8f1d81df0f Review code formatting 2021-03-31 17:55:46 +02:00
mkupiec1
3d1a05d588
[shapes] CheckCollisionPointTriangle (fix), CheckCollisionPointLine (new routine) (#1695)
* CheckCollisionPointTriangle

* New feature proposal to existing collision detection routines.
It checks if point [point] belongs to line created between two points [p1] and [p2] with defined margin in pixels[threshold].
1693
2021-03-31 16:50:05 +02:00
raysan5
98a2e16d4d REVIEWED: RPI instancing checks #1679 2021-03-31 16:44:14 +02:00
raysan5
b5aaf33058 Review matrix multiplication 2021-03-28 22:04:04 +02:00
raysan5
aaf0d8b839 REVIEWED: rlgl: Stereo render is working again
As a bonus, stereo render is compatible with mesh instancing now!
2021-03-28 21:35:58 +02:00
raysan5
6a24dd8945 REVIEWED: tinyobjloader #1568 2021-03-28 20:51:29 +02:00
raysan5
23a764190e ADDED: LoadShaderFromMemory() #1690 2021-03-28 20:12:48 +02:00
raysan5
bc6b16beb2 REVIEWED: DrawTexturePoly() 2021-03-28 20:07:59 +02:00
Carlos Hernandez Barbera
7eaeffc8d9
GetCollisionRayMesh makes use of triangle count (#1688)
Co-authored-by: Carlos Hernandez Barbera <carloshdezbarbera@gmail.com>
2021-03-27 18:24:39 +01:00
Maksymilian Mika
f38ced15e7
Fixing pointer arithmetic to avoid error [-Werror=pointer-arith] (#1685) 2021-03-27 07:54:44 +01:00
Dan Bechard
b6ca524bdd
Preserve floating point values in DrawRectangleLinesEx (#1683) 2021-03-26 20:15:19 +01:00
Ray
f9bab14fdb REVIEWED: DrawMeshInstanced() 2021-03-26 00:12:29 +01:00
Ray
fb9a437f8a REVIEWED: OpenGL 1.1 working again 2021-03-25 20:35:48 +01:00
Ray
cba412cc31 WARNING: BREAKING: rlgl redesign -WIP-
rlgl module has been completely redesigned to move Mesh/Material structures to [models] module. Still some work to do, broken elements:
 - [models] OpenGL 1.1 mesh rendering: DrawMesh()
 - [models] Mesh Instancing: DrawMeshInstanced()
 - [models] Stereo rendering: DrawMesh()
 - [models] GL_FLOAT, GL_UNSIGNED_INT exposed
 - [models] GenMeshCustom()
 - [rlgl] GenTexture*() functions removal?
2021-03-25 14:28:12 +01:00
chriscamacho
9569d6a802
Add DrawTexturedPoly and example (#1677)
* adds DrawTexturedPoly with example

* the actual example ... ahem

* moved DrawTexturePoly to textures function and example
NB function name changed to fit with other DrawTextureXXX functions
(no "d" )

Co-authored-by: codifies <you@example.com>
2021-03-25 14:22:10 +01:00
Jeffery Myers
13f97471a2
Change the color of the FPS display if the FPS is low (orange for <30, red for < 15). (#1676)
Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-03-24 17:59:05 +01:00
Ray
bb73a8089a Reviewed DrawFPS() comment 2021-03-24 17:06:32 +01:00
Ray
9bea64b5e4 REMOVED: DrawGizmo()
This is a very simple and specific implementation that should be better addressed by the users
2021-03-24 17:02:40 +01:00
Ray
9047025ab7 Update textures.c 2021-03-24 00:41:01 +01:00
Ray
c2bc3d22a1 REVIEWED: DrawRectangleRounded() performance #1523
Function analyzed using RenderDoc. It's a complex function and could require many triangles for the corners but it seems overall it's quite optimized!
2021-03-24 00:25:53 +01:00
Victor
c5b0a1f005
Fix activeTextureId to have MAX_BATCH_ACTIVE_TEXTURES elements instead of the hardcoded 4 (#1674) 2021-03-23 20:17:23 +01:00
Chris
2532c396ed
Fix 90 degree bug with DrawTexturePro and DrawRectanglePro (#1673)
- The vertices did not map to where I expected causing rotation to be
off by 90 degrees. I reorganized the vertices making it easier to
reason about which fixes this.
- The order for drawing is now topLeft, bottomLeft, bottomRight,
topRight.
2021-03-23 14:40:26 +01:00
Ray
3e6ee028e5 Update rlgl.h 2021-03-23 12:15:52 +01:00
Ray
6f5a4a9351 REVIEWED: rlgl_standalone usage 2021-03-23 11:51:09 +01:00
Dan Bechard
5325d8d2ba
Don't call sqrtf when axis already normalized (#1672) 2021-03-23 11:32:25 +01:00
Davidson Francis
81738bfa98
Fix PATH for other PLATFORM_OS's (#1671)
The Raylib root Makefile for PLATFORM=PLATFORM_WEB is assumed to
run in Windows environments, which makes it incorrectly set the
PATH variable, so Linux (and possibly other) environments are not
able to find binaries from EMSDK_PATH.

Fix this by checking which PLATFORM_OS and configure PATH
accordingly.
2021-03-23 07:53:25 +01:00
Jeffery Myers
c6dd41495b
typecast warning fixes. (#1667)
Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-03-22 20:45:46 +01:00
Ray
2ce28f75ad WARNING: BREAKING: REDESIGNED: rlgl module
- Many functions renamed to follow rl*() convention
- Some internal functions exposed in the API
- Some functionality moved to other modules
- Reorganized all functions by categories
- Make sure it keeps working with OpenGL 1.1 and 2.1
2021-03-22 20:45:04 +01:00
Ray
24dae29a03 Review latest PR and some formatting 2021-03-22 20:41:33 +01:00
Jeffery Myers
2c0a533948
[AUDIO] Music Looping enhancements (#1665)
* Add loop functions for music files.
Tell xm tracker to loop tracker when loop state changes.
Don't let looped xm tracker streams restart, they are infinite
Use modulo to make time tracker for xm looped streams work correctly.

* Remove loop functions, set XM loop in update based on flag.
Formatting cleanups.

Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-03-22 20:36:13 +01:00
Jeffery Myers
b573ff3e7a
[AUDIO] Use device native sample rates (#1660)
* Init MinAudio to a sample rate of 0 to let the device pick the rate.
Read the rate from the device after it starts up.
Convert AUDIO_DEVICE_SAMPLE_RATE from a #def into an int, that is set from the device's rate
Set all sample systems to use the AUDIO_DEVICE_SAMPLE_RATE as the target rate to minimize resampling.

* use device sample rate instead of separate var
let config define a device sample rate if it wants to, but let the default be 0 for native rate.

* Don't use fixed sample rates for tracker files.
Remove config default audio buffer size and replace with a function that computes one for a reasonable frame rate at the output sample rate.
2021-03-21 22:07:55 +01:00
Ray
c37f61d31f REVIEWED: rlgl module #1523 2021-03-21 20:31:35 +01:00
Ray
2f943aaff0 Reverting align change #1658 2021-03-21 18:32:05 +01:00
Ray
ed4ca6a7f3 WARNING: BREAKING: rlgl module redesign -WIP-
- Some rlgl functions have been moved to core
 - Some functions have been made internal to rlgl
 - rlgl functions prefixed with rl*()
2021-03-21 01:29:31 +01:00
Ray
f4f6f665f7 Fixed possible issue with memory alignment #1658 2021-03-20 21:02:20 +01:00
Ray
dcde99bbb8 Corrected issue with HighDPI on macOS 2021-03-20 20:58:24 +01:00
Ray
95f9a6171b Review HighDPI macOS support #1510 2021-03-20 20:06:38 +01:00
Sean Heber
f4d6bad607
Considering the window's scale when setting the viewport. (#1659)
This appears to fix the issue with macOS windows opening with the wrong scale.
2021-03-20 19:57:29 +01:00
Ray
a76fcaba3e BIG CHANGE: REDESIGNED: Vr device simulator #1582
Vr simulator has been moved to core module and completely redesigned. Now user is in charge of stereo-render fbo and also in full control of distortion shader. Code is a bit more complex but better aligned with other raylib examples.
2021-03-20 18:36:25 +01:00
Ray
5049137715 Added KEY_NULL #520 2021-03-20 13:08:13 +01:00
Ray
4fb6f4af75 Merge branch 'master' of https://github.com/raysan5/raylib 2021-03-20 13:02:53 +01:00
Ray
95282edaf9 REVIEWED: HighDPI support on macOS retina #1510 2021-03-20 13:02:44 +01:00
Rabia Alhaffar
96e5e0dfb2
Fixed funny typo mistake... (#1657) 2021-03-20 01:18:44 +01:00
Ray
442abaab72 Updated example assets 2021-03-19 22:39:39 +01:00
Ray
5967c1ba1a REVIEWED: BeginMode3D() 2021-03-19 21:55:47 +01:00
Ray
9909068714 Removed trailing spaces 2021-03-19 19:43:44 +01:00
Ray
e28f754fbe Reviewed latest PR: formatting and some comments 2021-03-19 19:42:36 +01:00
Chris
45670fbf2d
Optimize DrawTexturePro and DrawRectanglePro transformations (#1632)
* Optimize DrawTexturePro and DrawRectanglePro transformations
- Add check so rotation is only applied if rotation != 0.0f.
- Replace matrix usage by calculating the vertex data directly.

* Fix error with windows build and trim whitespace
2021-03-19 19:19:10 +01:00
frithrah
2f367a905e
Changed DrawRing and DrawCircleSector angle params from int to float to allow greater accuracy. (#1656)
Co-authored-by: Simon <simon@frithrah.com>
2021-03-19 19:13:55 +01:00
Ray
fe9181c1b4 REVIEWED: QuaternionFromEuler() #1651 2021-03-19 18:24:12 +01:00
Ray
3e25760950 REMOVED: GetMouseCursor()
This function could be confusing depending on the context, it's better to let the user track the current active cursor
2021-03-19 18:20:14 +01:00
Ray
8527dbc6e2 WARNING: REMOVED: GamepadNumber enum 2021-03-19 18:16:05 +01:00
Ray
07d82a91c5 WARNING: BREAKING: RENAMED: camera.type to camera.projection 2021-03-19 13:56:46 +01:00
Ray
d4e2c331b1 REVIEWED: BeginMode3D()
Simplified some code
2021-03-19 13:20:23 +01:00
Ray
a1d9987e7c WARNING: BREAKING: REVIEWED some enums naming
Now enum names are more consistent between them.
2021-03-19 13:19:54 +01:00
Ray
664fbb87f5 REVIEWED: Material params #1649
Just assigned a fixed memory size for custom Material parameters in case of being required, so we shouldn't worry about allocating/freeing them.
2021-03-18 13:57:53 +01:00
Ray
ca1f2f9078 REVIEWED: MatrixRotateZYX() #1642 2021-03-18 13:47:18 +01:00
Ray
8b0574a217 REVIEWED: DrawLine3D() #1643 2021-03-18 13:41:58 +01:00
Ray
2b9d81c9bc REVIEWED: QuaternionFromEuler() #1651 2021-03-18 13:38:56 +01:00
Ray
1cc838cef4 Update textures.c 2021-03-17 19:37:03 +01:00
Ray
aba69146f2 Support instancing in OpenGL ES 2.0 if available
Checking for extension and enabling it if available
2021-03-17 13:56:00 +01:00
Ray
3c76b5cc8e Update to latest emscripten 2021-03-17 13:53:31 +01:00
Hristo Stamenov
bc9194690c
Implement UnloadModelAnimations (#1648) 2021-03-14 19:30:18 +01:00
Ray
f7e48c95cd Added some comments on libc dependencies 2021-03-14 14:14:51 +01:00
Ray
1afd56dbf6 Use UnloadFileData() 2021-03-14 14:14:31 +01:00
Hristo Stamenov
f9b79403d1
Improve gltf support (#1647)
* Implement a load values from accessor function.
Added some more value types for the different GLTF attributes.
Fixed crash when loading animated triangle.

* Split GLTF model loading into separate functions for readability.

* Fixed the already working models that I broke when introducing GLTFReadValue.
Improved the example for gltf models to be able to switch between a few models.

* Removed license from screen. It is pu inside a license file anyway.

* Small improvements on the naming of functions
Removed (*model). and replaced it with model->
2021-03-14 12:09:31 +01:00
Ray
01e28263be WARNING: VERY BREAKING CHANGE: Renamed some enum values for consistency
Some enums values have been renamed to be more consistent and also provide a more detailed description:
 - ShaderLocationIndex:    LOC_VERTEX_POSITION -> SHADER_SHADER_LOC_VERTEX_POSITION
 - ShaderUniformDataType:  UNIFORM_VEC2 -> SHADER_UNIFORM_VEC2
 - MaterialMapType: MAP_ALBEDO -> MATERIAL_MAP_ALBEDO
 - PixelFormat: UNCOMPRESSED_GRAYSCALE -> PIXELFORMAT_UNCOMPRESSED_GRAYSCALE
2021-03-14 11:05:51 +01:00
Ray
fe3256be9f Renamed some functions to use latest raylib version 2021-03-12 18:00:36 +01:00
Ray
0872365938 Add config flag: SUPPORT_WINMM_HIGHRES_TIMER #1641
Useful to avoid WinMM requirement and useful to avoid possible performance issues.
2021-03-12 17:18:48 +01:00
Ray
755ed388b2 Minor tweak to avoid warning 2021-03-12 17:17:53 +01:00
Hristo Stamenov
5c2983f510
Gltf model and animations exploring problems (#1635)
* Added bone binding to whole mesh and not only set vertices.
+ Also added missed setting of the animation count.
+ Removed double ; on one line

* Added more of the gltf sample models

https://github.com/KhronosGroup/glTF-Sample-Models
We need to make it working for all of them.

* Binding to initial bind pose added.

* Fix cube disappearing bug because lerpPercent could be Inf.

* Fixed for rigged figure also
2021-03-09 00:11:08 +01:00
Ray
f0ab4723b9 Merge branch 'master' of https://github.com/raysan5/raylib 2021-03-09 00:07:19 +01:00
Ray
b7f2059dc3 Update miniaudio.h 2021-03-09 00:07:08 +01:00
Hristo Stamenov
ef9f67749a
Fix fullscreen resolution (#1637)
* Always try to set vsync.
Use the internal monitor function to correctly get the display for windows.

* Modified how fullscreen gets toggled.

- Removed the unsetting and setting of the resize callback function. Instead of that I moved the fullscreen flag setting into a more correct place before setting the fullscreen so that this flag can be used in the callback.
- In the resize callback now window size is only set when it is not fullscreen resulting in preserving the window size.
- When going fullscreen the larges resolution is used so that there are no problems of the type when you minimize the window you cannot use anything else in your desktop because the resolution might be too low. If a low res effect is desired one should use render texture (this is the approach all game engines use).

* Set correct return to window in case of fail to get monitor.

* Set the refresh rate on the mode.

* Made changes based on review from @raysan5

Co-authored-by: Jeffery Myers <JeffM2501@gmail.com>
2021-03-08 22:51:10 +01:00
Ray
8a30a2408c ADDED: Required callbacks
Removed memory allocation callbacks
2021-03-08 18:48:27 +01:00
Jeffery Myers
3e6f0d7372
Always try to set vsync. (#1636)
Use the internal monitor function to correctly get the display for windows.
2021-03-08 18:08:37 +01:00
Ray
0d096b43c2 Update some comments to warn users about callbacks 2021-03-04 20:44:22 +01:00
Ray
b084552808 ADDED: Config flag: SUPPORT_STANDARD_FILEIO
This new flag allows omitting stdio.h library in case of a custom implementation is used.
2021-03-04 20:36:04 +01:00
Ray
7ad1370193 Some naming tweaks 2021-03-04 20:22:58 +01:00
Ray
1ed72b7812 Minor struct organization tweak 2021-03-04 12:08:54 +01:00
Ray
c4a7c702b4 FEATURE: Several callbacks added -WIP- #1523 #1329
NOTE: This feature is still under consideration and not complete.
2021-03-04 12:06:28 +01:00
Ray
ca22a87949 REVIEWED: TextFormat() #1626 2021-03-03 19:55:09 +01:00
Ray
c938d71d15 Corrected issue with enums renamed 2021-03-03 19:51:23 +01:00
Ray
0b108c2087 Corrected bug 2021-03-03 19:49:10 +01:00
Ray
dfe797060a WARNING: BREAKING: RENAMED: enums values
RENAMED: TextureFilterMode values
RENAMED: TextureWrapMode values
2021-03-03 19:47:37 +01:00
Ray
408f5aedb8 WARNING: BREAKING: RENAMED enum values
RENAMED: CubemapLayoutType and NPatchType
2021-03-03 19:36:28 +01:00
hristo
81908f7960
Removing +1 on comparing extesnions because this way it checked the file extension without the . against the file extension with the . resulting in always false. (#1629) 2021-03-03 15:41:15 +01:00
Ray
ab36fbf24a Reviewed defines, try to avoid elif statements 2021-03-02 12:45:23 +01:00
Ray
2a5ce96047 REVIEWED: Wait() to support FreeBSD #1618 2021-03-02 12:44:53 +01:00
Ray
01b3c97c42 Some misc tweaks 2021-03-02 02:03:52 +01:00
Ray
8df56c5843 REVIEWED: rlUnloadMesh() 2021-03-02 01:41:30 +01:00
Ray
c514431e79 REVIEWED: rlUnloadMesh() 2021-03-02 01:35:30 +01:00
Ray
bcc4418ff0 REVIEWED: GetFileExtension() to include the dot #1523 2021-03-02 01:07:08 +01:00
Ray
2ff5fa73e9 REVIEWED: rlUnloadMesh() #1615 2021-03-02 00:34:10 +01:00
Ray
742206c1f2 Review formatting 2021-03-02 00:31:04 +01:00
masterex1000
4e6253b546
Add check to flip quaternion (#1624) 2021-03-02 00:29:48 +01:00
Ray
5902cc6d9b REVIEWED: GetScreen*() #1570
Now GetScreenWidth() and GetScreenHeight() return the current fbo width and height.
2021-03-01 23:51:32 +01:00
Ray
3f6a08535f REVIEWED: CheckCollisionLines() 2021-03-01 23:39:08 +01:00
Jeffery Myers
0f10c44578
Fixes gl state after HDR texture functions. (#1621)
Updates skybox demo to show how to do both HDR and non HDR skyboxes

Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-02-28 23:31:25 +01:00
Ray
58e4efbba8 Review bug on OpenGL 1.1 2021-02-26 13:40:43 +01:00
Agnis "NeZvērs" Aldiņš
ead339fa96
LoadMusicStreamFromMemory OGG support (#1613) 2021-02-25 11:55:08 +01:00
Agnis "NeZvērs" Aldiņš
24839c7cfb
jar_xm_create_context_safe requesting const char* (#1611)
Fixing compiler warning for passing (unsigned char*) to (const char*)
2021-02-24 12:23:39 +01:00
Chris Sinclair
84ab4ce007
Patch up GLTF Skeleton loading (#1610)
* Add support for u8 bone indicies when loading glTF

* Fix segfault for glTF animations not keyframed at 0

When loading glTF animations we lerp between keyframes, and previously
assume that if the frame we are considering has a later keyframe, there
must be a previous keyframe. This is not true if the animation's first
keyframe is some time into the animation. In this case we now
effectively clamp to that first keyframe for any time prior to it.

* Respect parent bones tranform when loading glTF animations

We previously assumed that when loading glTF animations, the bones were
ordered with those higher up the skeleton tree (i.e. closer to the root)
came first in the list of nodes. This may not be true, so now we
repeatedly loop, preparing each level of the skeleton tree one after the
other, starting at the root level. This ensures that any parent
transforms are applied before transforming any child bones.

We also ensure that we have forced the loading of animation data before
attempting to interpolate to generate the animation frames for use
later, without this no animations are applied.

Finally we remove the check that assumed the first node in the nodes
list is the root, and use an invalid index value as the sentinal value
for when a node has no parent. Previously this was 0, which made
distinguishing between root nodes and children of the first node
impossible.
2021-02-24 09:25:20 +01:00
Agnis "NeZvērs" Aldiņš
0cb748f30b
LoadMusicStreamFromMemory wav mp3 flac support (#1609) 2021-02-24 09:22:21 +01:00
Agnis "NeZvērs" Aldiņš
209445ccde
LoadMusicStreamFromMemory (#1606)
* define SUPPORT_FILEFORMAT_MOD in config.h

* RLAPI LoadModuleFromData() definition in raylib.h

* LoadModuleFromData() definition in raudio.h

* LoadModuleFromData implementation in raudio.c

* Rename API to LoadMusicStreamFromMemory & default unload.

* raudio.c tabs to spaces

* Styling curly bracket and removing dev debugging TRACELOG

Co-authored-by: nezvers <agnis16@inbox.lv>
2021-02-22 19:45:52 +01:00
Ray
ef8318f5e3 [models] Move vboId ALLOC/FREE to rlgl module #1603
Actually, it seems more logical that rlgl takes care of OpenGL data than the models module...

Also, models module loaded vertex data is unloaded by models module.
2021-02-21 12:09:52 +01:00
Jeffery Myers
48a7cd3c87
[Examples] Fix typecast warnings in examples. (#1601)
* Fixing typecast warnings generated by visual studio 2019 in examples.

* Changes to fixes based on feedback

Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-02-20 23:37:32 +01:00
Paul Jurczak
82cdd88ffe
Fixed DrawLineEx (#1598)
* Fixed DrawLineEx

Corrected the issue https://github.com/raysan5/raylib/issues/1596

* Removed raymath dependency for DrawLineEx
2021-02-20 23:35:43 +01:00
Jeffery Myers
0726491ef8
Fixes to make rnet and it's examples build on Windows in visual studio 2019. (#1602)
Mostly typecasts, and some int to unsigned short changes, and including the windsock 2 library in the examples.

Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-02-20 21:13:20 +01:00
Jeffery Myers
eb47cc5e93
Fix warnings generated by Visual Studio 2019 in new model loading code. (#1600)
Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-02-20 19:42:32 +01:00
Jeffery Myers
2375464213
[Physics] Fix typecast warnings generated by visual studio 2019 (#1599)
* More warning fixes for physics and math

* fix a crash introduced with the warning changed.

Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-02-20 11:15:40 +01:00
Jeffery Myers
0f5aab3a1c
check to make sure parent bone is not null before trying to compute its offset from the root (#1594) 2021-02-16 10:29:00 +01:00
Chris
ccb083af52
[raudio] Fix load and unload issues with Music (#1588)
* Add MUSIC_AUDIO_NONE to MusicContextType and format fixes
- Useful to check the context type to see if the format is recognized. Defaulting to wav causes issues where formats are assumed to
be wav.

* Fix memory issues with LoadMusicStream and UnloadMusicStream
- Set ctxType and ctxData even if the format fails to load.
- Set ctxData to NULL if it fails and check for null inside UnloadMusicStream.
- Change RL_MALLOC when loading formats to RL_CALLOC to prevent undefined behavior.
- Add NULL check when unloading xm file.
2021-02-14 17:37:34 +01:00
jpe230
c7476f0aa5
Fix support of touchscreens for RPI (#1586)
-Checks for absolute pressure in absolute events to simulate a touch or a left mouse click.
-Updates touch position on absolute events.
2021-02-14 17:36:24 +01:00
raysan5
f3df64210b Update physac.h 2021-02-14 16:47:47 +01:00
raysan5
7035435948 Update core.c 2021-02-14 16:47:19 +01:00
raysan5
0c63c7c907 Possible callbacks -WIP- 2021-02-14 16:47:08 +01:00
raysan5
2b1ec5d8d2 Review some comments 2021-02-14 16:46:33 +01:00
BrokenKeyboard
d93b8f6544
Fix spelling mistake (#1581)
Sorry if this is a bit of a useless pr
2021-02-09 22:29:01 +01:00
raysan5
9619e5cbf8 Review some warnings and formatting 2021-02-09 13:23:06 +01:00
raysan5
4e68524871 REMOVED: GetGamepadButton() internal func 2021-02-09 12:14:50 +01:00
masterex1000
52d0e86cc6
Poll inputs after frame sleep (#1573) 2021-02-08 16:57:19 +01:00
hristo
70965f20d5
Disabling WindowSizeCallback around fullscreen toggle. (#1480)
* Disabling WindowSizeCallback around fullscreen toggle.

#1294 fixed the issue that toggle fullscreen changes the screen size because of the WindowSizeCallback. The proposed edit by @raysan5 was to comment out WindowSizeCallback which I essentially simplified to disable the callback around the set window monitor functions.

The developers using the ToggleFullscreen function should be aware that they need to size the screen correctly on that same frame. Otherwise they should check if fullscreen and size properly using the GetMonitorWidth and GetMonitorHeight functions.

* Update core.c

Fix issue from merge
2021-02-07 20:55:27 +01:00
raysan5
67206a5415 Review latest PR formating 2021-02-07 20:52:11 +01:00
Gil Barbosa Reis
9081defd46
Fix initialize GLFW's Joystick subsystem before window is created on Desktop platforms (#1554) (#1572) 2021-02-07 20:49:37 +01:00
raysan5
090c790e50 Review formating for latest PR 2021-02-07 20:47:40 +01:00
hristo
6be1be4573
Fix wrong values shown for monitor width and height in pixels when fullscreen is toggled. (#1479)
This solves issue #1322 which in my opinion was prematurely closed. As the monitor resolution is expected to be the maximum that the monitor supports. My change is that as per GLFW documentation you can get all current video modes sorted by max resolution. When you toggle fullscreen the first video mode returned would be the current screen resolution setup but that doesn't help if you want to know the maximum supported.
2021-02-07 20:44:38 +01:00
raysan5
c49ce58f02 REVIEWED: Multichannel sound system #1548
I don't like this solution but I think it's valid in the meantime....
2021-02-07 19:20:30 +01:00
raysan5
b2215cf017 REVIEWED: Replace GetImageData() by LoadImageColors() 2021-02-06 13:29:22 +01:00
raysan5
0f309b9b16 REMOVED: MeshNormalsSmooth() #1421
Current implementation is probably wrong and it should be reimplemented from scratch, in the meantime, I prefer to remove the function.
2021-02-05 19:49:05 +01:00
raysan5
edb54c6cb1 REVIEWED: CloseAudioBufferPool(), uninit buffers properly #1548 2021-02-05 19:45:13 +01:00
raysan5
5663c81803 REVIEWED: raudio: Some LOG_ERROR -> LOG_WARNING #1562 2021-02-05 19:19:44 +01:00
raysan5
56ff944def Update miniaudio to v0.10.32 #1562 2021-02-05 19:18:44 +01:00
raysan5
62ccec0ac5 REMOVED: SetTraceLogExit()
I feel nobody has ever used this function...
2021-02-05 14:36:28 +01:00
raysan5
421e5d4829 REVIEWED: DecompressData() 2021-02-05 14:35:43 +01:00
kernelkinetic
e831bf02c5
removed redundant call to eglGetConfig (https://github.com/raysan5/raylib/issues/1550) (#1567) 2021-02-05 13:55:09 +01:00
raysan5
97a7875648 REVIEWED: Gamepad issues on Android 2021-02-05 13:52:25 +01:00
raysan5
4407533a41 REVIEWED: DecompressData(), memory reallocation 2021-02-05 13:52:01 +01:00
Ray
3431d58586 Designing some callbacks -WIP- 2021-02-05 10:17:21 +01:00
raysan5
005bc4c414 REVIEWED: LoadShaderProgram() #1563
Try to avoid a possible false-positive memory leak...
2021-02-02 12:33:01 +01:00
raysan5
ed9c10a3e6 Update raudio.c 2021-02-02 11:42:49 +01:00
hristo
c8e427ad23
Update loading of gltf animation. (#1561)
This is to account for GLTF info being more like instructions on how to build your animation instead of verbose description of each pose.
2021-02-02 10:49:42 +01:00
raysan5
96db787657 REVIEWED: Gamepad system, specially for RPI 2021-01-31 03:07:26 +01:00
Jeffery Myers
e818dc27cd
Use local (") includes for GLFW since it is included with the source tree. (#1557)
This change helps some platforms produce fewer errors/warnings.

Co-authored-by: Jeffery Myers <JefMyers@blizzard.com>
2021-01-30 22:22:14 +01:00
raysan5
bc332018f6 REVIEWED: SetGamepadMappings()
return value for all platforms
2021-01-28 18:37:52 +01:00
hristo
731ab15d57
Gltf animation support (#1551)
* Added example for gltf animation and split some functions for loading model animations into IQM and GLTF similar to how models are being loaded.

* Removed wrongly duplicated function

* Bone loading for gltf model (not working at this point)

* Loading info about vertex to joint connection but animation is still not working

* Skeleton and pose is correctly loaded. Need to communicate about interpolation in GLTF

* The model almost looks like a real person on animation.

* Fixed model loading with bones.

Also updated license info on the model.

* Cleaned up some code and updated examples.

* Fix identation issues

* Fix identation issues

* Fix identation issues
2021-01-28 11:29:06 +01:00
hristo
88a6f16c9a
Documentation cmake (#1549)
* Documenting the compiler flags

* Moved some android compiler flags and added documentation on them too.

* Some more restructuring.

Removed unnecessary comments that were self described by the code.
Added some more explanations around certain parts of CMake and especially around compiler flags.
2021-01-26 14:34:27 +01:00
hristo
f3ce3a6f74
Removing config.h.in file (#1546)
CMake relied on this file for configurations and also was interfering in the regular config.h by having a separate definition if building with CMake. This was not entirely correct so instead we will define compile time definitions separately through CMake (CompileDefinitions.cmake) and also will use the provided EXTERNAL_CONFIG_FLAGS that I found that will not use config.h in through the build process.

I also introduced a new compiler option (CUSTOMIZE_BUILD) that when OFF will use the default config.h and when ON will show other options for redefining your own options.

Fixed an error in rlgl.h where if you have both RLGL_STANDALONE and SUPPORT_VR_SIMULATOR you get a compile time error.
2021-01-25 10:47:53 +01:00
hristo
4bf7b00013
Removing test file. (#1545)
This test file is just testing compilation with the library works correctly but is no longer needed because:
- it is not cross platform
- it taps into the CTest system which is better suited for real unit/integration tests
- it can be incorporated into the pipeline of github actions instead in the future
2021-01-25 10:44:30 +01:00
Ray
f4f208c4ae ADDED: UploadMesh() #1529
Upload mesh data to GPU and get VAO/VBO identifiers
2021-01-22 12:16:19 +01:00
Ray
721768bdb0 Remove automatic pointer lock on mouse click #1513 2021-01-22 11:57:57 +01:00
Ray
f2c0981c57 Review typo 2021-01-22 11:57:18 +01:00
hristo
05dfbf3cd4
Remove STATIC and SHARED variables. (#1542)
As described in the official documentation https://cmake.org/cmake/help/v3.0/variable/BUILD_SHARED_LIBS.html this flag is global by default and controls if the library will be built as a shared or a static library allowing us to define only one call to the add_library function (without specifying its type). It is also added as an option to be visible in CMake GUI applications.
2021-01-22 00:07:22 +01:00
Ray
18ab694f70 ADDED: SetGamepadMappings() #1506 2021-01-21 14:39:03 +01:00
Ray
677f420bf0 REVIEWED: physac module and examples #1525 2021-01-20 20:55:12 +01:00
Ray
d20efde49d Merge branch 'master' of https://github.com/raysan5/raylib 2021-01-20 17:07:06 +01:00
Ray
01b7509a39 Review screen capture / gif recording #1540 2021-01-20 17:06:53 +01:00
hristo
6cc27e9797
Fix cmake build error dirent (#1536)
* Better ignore support for idea projects.

Added a wildcard at the end because different configurations would have a diffeerent build directory.

* Removed external from being a relative include directory for target raylib.

Fixes #1533
2021-01-16 14:04:01 +01:00
Gil Barbosa Reis
1866be0475
Fix absolute path handling in GetFileName and GetDirectoryPath (#1534) (#1535) 2021-01-16 10:33:13 +01:00
Ray
eb7820b2b0 Review comment 2021-01-15 00:20:35 +01:00
Ray
b7f275efb3 Review warning 2021-01-15 00:20:23 +01:00
Ray
186e52c4d8 REVIEWED: DecompressData()
Corrected bug!
2021-01-14 20:42:01 +01:00
hristo
9821725c6b
Big cmake changes (#1514)
* Delete emscripten.cmake

This file is not needed at this point. EMSDK provides a toolchain file that has a lot more things in it and is better supported. Project currently works fine with the documentation provided in Emscripten SDK on how to build projects.

* First pass file separation.

The main two files are cleaner now. Only important things can be seen. Major changes include:
- raylib_static is now the alias instead of raylib
- Repeating segments are removed and pulled into separate files into <root>/cmake
- File is reordered to make more sense
- Installs are better structured
- Library is build into an output directory "raylib" instead of "src"
- All public header files are now set as a public header file
- Source files need to be listed (it is a bad practice to capture them using wildcards and file globs)
- CMakeLists are better commented

* Second pass on the example dirs.

They are quite complex so I'm more hesitant to do major changes. Also it works pretty well. Noticed that I forgot one of the seperated files and added it into src/CMakeLists.txt.

* Returned the header copy as it was convenient to have the public headers copied.

* A better description to the variable RAYLIB_IS_MAIN

Co-authored-by: Rob Loach <robloach@gmail.com>

* Remove debug message

Co-authored-by: Rob Loach <robloach@gmail.com>

* Improvements based on review.

* Simplify the install condition to not be platform specific as it was before.

Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>

* Remove some CMAKE variables as they don't affect the build in any way

Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>

Co-authored-by: Rob Loach <robloach@gmail.com>
Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
2021-01-13 23:10:02 +01:00
Ray
a0a840101c Update miniaudio to v0.10.30 #1518 2021-01-12 22:51:26 +01:00
Ray
5d1d590692 REDESIGN: Compresion API
Now it compresses/decompresses valid DEFLATE streams instead of zlib streams. It uses the minimal and efficient libraries: sdefl/sinfl.
2021-01-12 21:15:11 +01:00
Ray
dfa11e22cf Add comments 2021-01-12 20:25:09 +01:00
Ray
c256b26629 Reorder function 2021-01-12 20:24:58 +01:00
Dmitry Matveyev
04a1bb1390
Reorder typedefs in physac.h to be in header part (#1528) 2021-01-12 20:12:14 +01:00
Ray
bbc09288bd rlOrtho() reverted change 2021-01-09 12:37:21 +01:00
Jeffery Myers
b76dc06297
It's top-bottom not bottom-top in GL space. (#1517) 2021-01-07 23:13:44 +01:00
badlydrawnrod
49f9bff260
Fix keyboard state change detection on RPI (#1488)
* Fix keyboard state change detection on RPI

* Rework RaspberryPi evdev keyboard input.

- Extract evdev keyboard handling into PollKeyboardEvents()
- Move keyboard polling to main thread
- Rename EventThreadSpawn() to ConfigureEvdevDevice() as it doesn't necessarily spawn threads
- Remove unused code (KeyEventFifo and lastKeyPressed)

* Replace tabs with 4 spaces.
2021-01-06 20:46:12 +01:00
Kirottu
22da9087b1
Include SUPPORT_DATA_STORAGE flag for building with CMake (#1515)
* Update CMakeOptions.txt

* Update config.h.in
2021-01-06 20:45:32 +01:00
Victor Gallet
a6cd6eedbe
Remove unused condition in 'GenerateMipmaps' function for GRAPHICS_API_OPENGL_11 (#1496) 2021-01-06 13:27:32 +01:00
raysan5
7bd33e4406 Review rlOrtho() to avoid return in the middle of the function
I usually try to avoid any return in the middle of functions, I try to keep them always at the end of the functions.
2021-01-06 13:26:55 +01:00
Jeffery Myers
5d4aada526
Don't create an ortho matrix when the viewport is 0 in any axis. (#1504)
* Don't create an ortho matrix when the viewport is 0 in any axis.
Not all compilers divide by 0 and return inf, some segfault.
The matrix is not used by anything when minimized, so it just needs to not be called.

* Better fix that always ensures the rlgl matrix is always valid

* Better fix that always ensures the rlgl matrix is always valid
2021-01-06 13:21:58 +01:00
hristo
551597d579
Removed a repeating allocation of memory (#1507)
Resolves #1495
This line allocated some memory that was already allocated in the beginning of the function and was essentially creating a leak.
2021-01-03 22:43:09 +01:00
Chris
320732ae6b
Update mappings.h in glfw using GenerateMappings.cmake (#1505) 2021-01-02 21:46:39 +01:00
raysan5
d7b4b9e485 Update year to 2021 2021-01-02 18:15:13 +01:00
Victor Gallet
57fef97433
Modify the check condition for the screen window height and width. It can't be less than zero because it's an unsigned int (#1497) 2020-12-31 13:29:35 +01:00
Victor Gallet
03278a74bf
Avoid dereferencing a null pointer in the 'LoadMaterials' function in the models module (#1498) 2020-12-31 13:28:53 +01:00
Victor Gallet
9fe153ae29
Avoid dereferencing a null pointer in the 'LoadSounsFromWave' function if the audioBuffer is null (#1499) 2020-12-31 13:28:16 +01:00
Jeffery Myers
4c8bebc0d7
Add a current monitor function for window mode windows. (#1492) 2020-12-30 17:29:39 +01:00
Jeffery Myers
24b6dcf29f
lookup the returned monitor in the list of monitors to get an index. (#1490) 2020-12-30 00:08:56 +01:00
raysan5
9ed29725a0 Review code formatting 2020-12-29 20:42:29 +01:00
Jeffery Myers
59bb759855
Faster version of ImageClearBackground and ImageDrawRectangleRec (#1487)
* Don't use DrawRect to clear an image, a pixel loop is an order of magnitude faster.

* Update ImageDrawRectangle to be faster too.
2020-12-29 20:39:53 +01:00
hristo
75c6fd047b
Monitor utilites (#1485)
* Added a new utility function to get the current monitor.

Some of the other functions rely on passing on a monitor id but we only have a function for querying the count of monitors available.

* Updated the comment to correctly reflect the function action
2020-12-29 13:37:08 +01:00
hristo
d3db690c42
I noticed that toggle fullscreen always gets the primary monitor when its more intuitive to use the monitor that the window is currently in. (#1486)
This monitor should even probably be passed as an id instead to make it more consistent with the rest of the API but this would break existing applications so I am hesitant to change the function signature directly.
2020-12-29 13:35:47 +01:00
raysan5
521ed1cef0 Review DrawLineBezierQuad(), formating and aprameters order 2020-12-26 13:09:34 +01:00
Violet White
de13fca3b1
Add Quadratic Bezier drawing (#1468)
* Add quadratic bezier to shapes.c

* Add DrawLineBezierQuad to header
2020-12-26 13:04:38 +01:00
raysan5
ea0f6c7a26 Replace TABS by 4 spaces 2020-12-24 23:07:52 +01:00
raysan5
ec3845fa9f Review some RPI4 tracelogs 2020-12-24 19:09:05 +01:00
raysan5
3e041a27b1 Update Makefile 2020-12-24 19:08:02 +01:00
raysan5
5ffce8f230 Review tracelog messages for DRM platform 2020-12-24 17:56:08 +01:00
raysan5
d9a9bacb48 Review formatting 2020-12-23 20:30:00 +01:00
raysan5
7e459dc38b Review Android Makefiles to required version 2020-12-23 17:05:51 +01:00
raysan5
f8a2903cec Review issues when compiling for Android 2020-12-23 17:05:07 +01:00
raysan5
0a9e080998 Remove trailing spaces 2020-12-23 15:03:26 +01:00
raysan5
59949bf848 Update resource file 2020-12-23 13:48:43 +01:00
raysan5
aa38532cc3 Remove unused variable 2020-12-23 13:03:13 +01:00
raysan5
9216e96315 Corrected typo 2020-12-23 13:02:40 +01:00
raysan5
0da827d754 Corrected small issue 2020-12-23 12:54:57 +01:00
raysan5
b78ee13791 ADDED: CheckCollisionLines()
Removed function from raymath
2020-12-23 12:45:53 +01:00
Victor Gallet
668b3e4cfb
[Math Feature]: Add two functions for Vector2 to know if two lines intersect and two segments intersect (#1466)
* Add a function to know if two lines intersect each other and if yes, get the intersection point

* Remove indents

* Rework the declaration of the 'Vector2LineIntersect' function, and add the 'Vector2SegmentIntersect' function

* Remove bad indents

* Fix compilation issues

* Fix compilation error

* Fix compilation error

* Replace keyword '_Bool' by 'bool'
2020-12-21 21:04:02 +01:00
Ray
976932e05e Set version for raylib 3.5 2020-12-19 20:38:49 +01:00
Ray
d82113ec34 Camera funcs, review params names
Just for a better consistency
2020-12-19 20:14:34 +01:00
Ray
9097d0b4ef REVIEW: CheckCollisionSpheres() params naming 2020-12-19 20:05:32 +01:00
Ray
f30354fc35 Minor tweak 2020-12-19 20:01:07 +01:00
Ray
d2d72b1dfb ADDED: MemAlloc() / MemFree() #1440
Exposing internal memory allocator/free, useful for advance users when required
2020-12-19 19:43:25 +01:00
Ray
cbf7369a3d Update raylib.h 2020-12-19 19:28:06 +01:00
Ray
2374281204 Avoid *Rec suffix in some variables
Pefixing/Suffixing some data type identifier in the variables is not a convention used in raylib, just reviewed it for consistency...

Still, I kept the *Rec suffix in some functions.
2020-12-19 19:27:31 +01:00
Ray
015e715278 Corrected DrawTextRecEx() bug 2020-12-19 19:12:51 +01:00
Ray
e404a18226 Support font chars padding on drawing #1432
Previous implementation did not consider any padding while drawing the characters on screen (despite being available on the font atlas), so, only minimum character area was drawn.

If some text effect shader was required (shadow, glow, outline...), there was no space in the drawn quad to draw that pixels effect.

This commit corrects that issue.
2020-12-19 12:16:23 +01:00
Ray
51e8f37688 Minimal tweak 2020-12-19 00:22:58 +01:00
Ray
c36a6f3d9f Update textures.c 2020-12-19 00:01:14 +01:00
Ray
e07bc372a1 WARNING: RENAMED several functions for consistency #1440
This is a BREAKING CHANGE!

To address the linked issue, several functions have been renamed and couterpart functions have been created to free loaded memory:
 - RENAMED: GetImageData() -> LoadImageColors()
 - RENAMED: GetImagePalette() -> LoadImagePalette()
 - RENAMED: GetWaveData() -> LoadWaveSamples()
 - ADDED: UnloadImageColors()
 - ADDED: UnloadImagePalette()
 - ADDED: UnloadWaveSamples()
2020-12-18 21:03:08 +01:00
Ray
5dd142beb6 Added some Web checks for missing GLFW functions 2020-12-18 19:32:52 +01:00
Ray
96542269d0 WARNING: GetKeyPressed() <-> GetCharPressed() #1336
Previous GetKeyPressed() method was actually returning unicode codepoints equivalent values instead of the key-code of the pressed key. So, it has been replaced by GetCharPressed(), returning unicode codepoints and GetKeyPressed() now returns key-codes.
2020-12-18 18:58:02 +01:00
hristo
0987507ef5
Add headers to install cmake (#1462)
* Changed extension for web from .bc to .a

I did this to support vcpkg expectation. When using the library from vcpkg for web you would install it using vcpkg install raylib:wasm32-emscripten but also vcpkg expects the output lib to be with .a extension instead of .bc

Doesn't make a difference for standalone builds or when raylib is used as a subdirectory dependency.

* Added headers to install targets to fix vcpkg usage

Currently vcpkg works by installing the cmake target into its packages directory. The problem is that install only copies the public header at this point so we need to add the others to the install targets.
2020-12-16 19:11:21 +01:00
Andrea Fontana
ef0dcaabf9
Changing JPG compression (#1463)
Since I don't think the purpose of raylib is to save space compressing image, I think it could be a good idea to keep quality from 90 to 100.
2020-12-16 19:07:18 +01:00
Ray
f5b4656801 Added additional charsPadding initialization #1432 2020-12-14 23:51:55 +01:00
Ray
5f690819e7 REVIEWED: Font struct, added charsPadding #1432 -WIP-
Not implemented usage of this variable yet but already setup for the future... some functions require review to consider it on drawing...
2020-12-14 23:47:11 +01:00
Ray
e69f2f0c26 REVIEWED: DrawGrid(), issue with buffer limits check #1417 2020-12-14 23:39:12 +01:00
Ray
d360a49f36 ADDED: UnloadFileData() / UnloadFileText() #1440 2020-12-14 20:47:58 +01:00
Ray
cd3eb3d8bd Added some security checks on GenMesh*() #1454 2020-12-14 20:41:58 +01:00
Jeffery Myers
7a0e73331d
Add mesh collision function so we can check meshes directly instead of having to put them in a model. (#1459)
Make model collision function call the mesh function.
2020-12-14 19:26:32 +01:00
hristo
a840d8a77d
Changed extension for web from .bc to .a (#1461)
I did this to support vcpkg expectation. When using the library from vcpkg for web you would install it using vcpkg install raylib:wasm32-emscripten but also vcpkg expects the output lib to be with .a extension instead of .bc

Doesn't make a difference for standalone builds or when raylib is used as a subdirectory dependency.
2020-12-14 19:24:56 +01:00
hristo
6e79476650
Fixed the build for web using CMake. (#1452)
* Fixed the build for web using CMake.

I found that the build for me was failing and I added some if defined checks in the core.c file where the glfwSetWindowAttrib was used. (error: implicit declaration of function 'glfwSetWindowAttrib' is invalid in C99 [-Werror,-Wimplicit-function-declaration])

I also changed some values in the toolchain file so that it correctly uses the .bat files when on windows.

* Cleaned up the additional variables (they are not important)

* Added more improvements to cmakelists

Added the option to use the system provided Emscripten toolchain to be more uniform with other libraries.

Fixed and issue which prevented example being built from cmake and also building with html extensions properly.

* Fixed ENUM to STRING because of a missed warning
2020-12-13 20:29:47 +01:00
Jeffery Myers
342d4faf14
Add options to set line width and aliasing to rlGL layer. (#1457)
* Add options to set line width and aliasing to rlGL layer.

* Don't do line smoothing in OpenGLES
2020-12-13 10:58:24 +01:00
Ray
e6ae4879f6 Added security check to pitch change #1450 2020-12-12 13:07:46 +01:00
Ray
459c4754dc Reviewed SetAudioBufferPitch() #1450 2020-12-12 13:01:31 +01:00
Jeffery Myers
039503e7c2
Add functions to enable/disable depth writes to go with functions for depth tests. (#1451) 2020-12-05 21:53:19 +01:00
Jeffery Myers
03df593263
Add function to get the position of a monitor (and fix some comments) (#1449) 2020-12-05 21:51:20 +01:00
Ray
62406259d7 Corrected minor windows flags issues 2020-12-03 20:33:46 +01:00
Ray
d1119816d7 Review comment 2020-12-03 20:16:46 +01:00
Ray
0540f0ad32 Review window flags 2020-12-03 20:16:35 +01:00
Ray
63d33d7a7a Update CMakeLists.txt 2020-12-02 08:27:43 +01:00
Ray
60928ec82c ADDED: UnloadModelKeepMeshes() #1441 2020-12-01 23:44:10 +01:00
Ray
0481053dad Review for issue #1446 2020-12-01 23:23:30 +01:00
Ray
59be7b9c29 Update CMakeLists.txt 2020-12-01 23:21:35 +01:00
Ray
83916bd3c2 Updated GLFW to latest 3.4 (github master - 16Nov2020)
WARNING: Some CMake files not changed
WARNING: glfw_native.h contains custom changes
2020-11-30 09:11:22 +01:00
Ray
23ed67cce0 Review some config options 2020-11-30 09:00:40 +01:00
Jeffery Myers
df249f5513
Fix typecast warnings in raylib code as reported by visual studio 2019 (#1443) 2020-11-30 08:14:11 +01:00
Random
0322fc28d4
optimized MatrixLookAt (#1442) 2020-11-29 10:08:22 +01:00
raysan5
d6f4f3ee88 REMOVED: GetImageDataNormalized()
Let the advance users manage it as they want...
2020-11-28 19:11:31 +01:00
raysan5
14c1ee2681 ADDED: UnloadFontData() 2020-11-28 19:07:41 +01:00
Ray
3d1ae3500c REVIEWED: Window state flags -WIP-
WARNING: Several functions removed, replaced by SetWindowState() / ClearWindowState() equivalents, only for advance users.
ADDED: ClearWindowState() to reset window state
REMOVED: HideWindow() / UnhideWindow()
REMOVED: DecorateWindow() / UndecorateWindow()
2020-11-23 23:46:05 +01:00
Ray
468a0bedd8 REDESIGNED: Window state config #1367 -WIP-
Some flags not working properly yet...
2020-11-23 00:49:27 +01:00
Ray
a560fe9a1e Added some comments 2020-11-22 10:56:17 +01:00
Ray
bb9d734f69 Exposing some file access results to user layer #1420 2020-11-22 00:10:16 +01:00
Ray
36dc302c25 Reverted to previous working version #1434 2020-11-21 14:14:25 +01:00
Ray
4eae76302f REPLACED: rgif.h by msf_gif.h
The improvement in performance is considerable!
2020-11-20 00:34:18 +01:00
Ray
7f6cd93d62 WARNING: Multiple funcs reviewed!
There were some problems about frameCount vs sampleCount that could cause some breaks.

raylib audio structs stores sampleCount = frameCount*channels.

Most libraries return framesCount instead of sampleCount.

stb_vorbis seems to refer to framesCount as samples.

All required functions have been reviewed.
2020-11-19 20:11:11 +01:00
Ray
72e51cd6de Review formating 2020-11-19 20:06:35 +01:00
Ray
700bff5fd8 Version tweak 2020-11-19 20:01:40 +01:00
Ray
9471794449 Update to latest tiniobjloader
WARNING: OBJ loading is broken at this point...
2020-11-17 00:30:12 +01:00
Ray
a54d9f734b rlUpdateTexture(): Corrected issue 2020-11-16 15:18:05 +01:00
Ray
f448542dd2 Review issues with FLAC loading 2020-11-16 12:20:50 +01:00
raysan5
4d5ee7953c Updated tinyobjloader 2020-11-15 14:31:43 +01:00
raysan5
cb517d0050 Update tinyobj_loader_c.h 2020-11-15 14:19:55 +01:00
raysan5
a3d33d9222 Update tinyobj_loader_c.h 2020-11-15 14:18:59 +01:00
raysan5
82d61a5875 Updated stb_image v2.26 and stb_image_write v1.15 2020-11-15 14:11:36 +01:00
raysan5
66f9fbaa88 Update cgltf.h
v1.8
2020-11-15 14:06:39 +01:00
raysan5
321f55bce1 Update audio libraries #1423
miniaudio -> v0.10.25
dr_wav -> v0.12.14
dr_mp3 -> v0.6.19
dr_flac -> v0.12.22
2020-11-15 14:04:28 +01:00
raysan5
8ff2b387f9 Review code formating 2020-11-15 13:17:11 +01:00
Ilya3point999K
bd287efa4c
Fixed zero-window upscaling (#1428)
There is no zero-check, so window upscales to nothing.
SetupFramebuffer() is kinda wrong, it uses not its params, but global variables. I won't touch it, maybe it has purpose
2020-11-15 13:13:21 +01:00
raysan5
9b2b660f91 Commented new feature 2020-11-15 13:10:12 +01:00
raysan5
55dc8171f8 [text] Consider characters padding -WIP- #1432 2020-11-15 12:39:59 +01:00
Ray
3e1cd487df Remove trailing spaces 2020-11-03 23:47:33 +01:00
kernelkinetic
f46514b855
Fixed keyboard stuttering but for cmake only (#1422)
* fixed mouse movements are bound to the screen resolution (https://github.com/raysan5/raylib/issues/1392)

* fixed keyboard stuttering on PLATFORM_RPI and PLATFORM_DRM (https://github.com/raysan5/raylib/issues/1392)

* fixed keyboard stuttering on PLATFORM_RPI and PLATFORM_DRM (https://github.com/raysan5/raylib/issues/1392)
2020-11-03 23:39:56 +01:00
Ray
05ab39ed9f REVIEWED: SaveFileText() error checking 2020-11-01 19:42:50 +01:00
Ray
5ac9cb04c2 Reverted ChangeDirectory() redesign
It returns true on success again
2020-11-01 19:06:21 +01:00
Ray
01d9af12f7 REDESIGNED: ChangeDirectory()
Not returning error code (or success), just log if it fails
2020-11-01 18:14:55 +01:00
Ray
8e15dae5ed Review contributed examples 2020-11-01 13:39:48 +01:00
Dominus Iniquitatis
fc1fc250e7
A couple of little comment fixes (#1416) 2020-10-31 14:40:35 +01:00
Ray
fbc51e822b REDESIGNED: Multiple sampler2D usage on batch system
New implementation allow enabling additional textures per batch only.
2020-10-31 11:48:44 +01:00
Ray
8a16348131 Support multiple sample2D on batch drawing #1333 2020-10-29 20:22:52 +01:00
Ray
60d874caf8 REVIEWED: GetWindowScaleDPI() #1086 2020-10-29 19:29:59 +01:00
Ray
d99ac093d4 Support additional texture units for default batch system #1333
This path requires some testing...
2020-10-26 20:13:08 +01:00
Ray
d9e591f235 Review some comments 2020-10-26 20:11:58 +01:00
raysan5
482b8a5e7e Some tweaks 2020-10-24 10:37:15 +02:00
Ray
f12db180cd Reviewed PR #1407 2020-10-21 11:08:37 +02:00
Chance Snow
9833fe45eb
Added desktop cursor getter and setter functions (#1407)
* [core] Added desktop cursor getter and setter functions

* Example: Set mouse cursor in text input box

* Setup standard cursors _after_ GLFW window initialization

* Remove old `int GetMouseWheelMove` declaration
2020-10-21 10:55:52 +02:00
kernelkinetic
3c9f7263e5
fixed mouse movements are bound to the screen resolution (https://github.com/raysan5/raylib/issues/1392) (#1410) 2020-10-13 22:26:40 +02:00
raysan5
c62c4df749 Updated miniaudio #1402 2020-10-10 19:25:23 +02:00
chriscamacho
6ebf6b4e72
allow for multiple materials in obj files (#1408)
* allow for multiple materials in obj files also fix obj_loader hash map issues

* minor fix for warning

Co-authored-by: codifies <nospam@antispam.com>
2020-10-08 20:31:59 +02:00
Ray
41192c6d4a Replace 0.f by 0.0f 2020-10-05 20:19:18 +02:00
Doyle
b29311c7ca
mouse: Return float movement for precise scrolling where possible (#1397) 2020-10-05 20:16:23 +02:00
Ray
a4ea9f872f Review "aggregate initializations" #1403 2020-10-05 20:04:33 +02:00
Daniel-Junior Dubé
a8685ee4fd
Add Vector2Reflect to raymath.h (#1400)
Vector3Reflect exists but not Vector2Reflect. The code is pretty much the same.
I'm not sure what RMDEF does, but I added it to match other function definitions (haven't done much C programming, maybe I'm missing something). Can someone explain to me what it does?
2020-10-04 12:12:52 +02:00
Tobias Jammer
0c29ca8166
Fix 1393 (#1395) 2020-09-29 17:57:28 +02:00
Ray
a850246030 Review Texture type
Texture type also maps to Texture2D and TextureCubemap
2020-09-28 00:40:32 +02:00
raysan5
446f9fff00 Added note 2020-09-27 11:14:49 +02:00
seanpringle
4bcddc3b15
[wip] rlDrawMeshInstanced (#1318)
* rlDrawMeshInstanced first attempt

* rlDrawMeshInstanced OpenGL 3.3 and VAO checks

* rlDrawMeshInstanced GetShaderAttribLocation; comments

* example instanced shader

* RLGL_STANDALONE RAYMATH_STANDALONE Vector4

* apply suggested naming changes; add instanced mesh example

* remove orphan variables
2020-09-27 10:29:05 +02:00
kernelkinetic
e90b4d8915
Platform DRM (#1388)
* updated README.md

* fixed CMakeLists.txt to allow building and debugging with Visual Studio Code and CMAKE Tools extension

* added PLATFORM_DRM
contains mouse pointer code from https://github.com/chriscamacho

* removed redundant cleanup in InitGraphicsDevice

* fixed DRM connector mode selection

* added choosen DRM connected mode to log output

* added respecting TargetFPS on DRM mode selection, default to 60

* added support for GetMonitorRefreshRate

* changed SUPPORT_MOUSE_CURSOR_RPI to SUPPORT_MOUSE_CURSOR_NATIVE

* changed avoidProgressive to allowInterlaced

* cleanup, function extraction and improved mode selection

* README reverted to original for PR

* line endings fixed for core.c

* removed old code

* mouse pointer reverted to small square

* replaced SetGraphicDeviceName() by DEFAULT_GRAPHIC_DEVICE_DRM

Co-authored-by: kernelkinetic <kernelkinetic@outlook.com>
2020-09-27 10:18:43 +02:00
raysan5
c2e56f2604 REVIEW: GenTextureCubemap(), avoid using models.c functions
- DrawCube() belongs to models.c -> rl*() alternative should be used
2020-09-26 11:51:42 +02:00
raysan5
b9053eebe7 Added new GIF recording library (not used yet) 2020-09-26 11:41:49 +02:00
raysan5
eef82b04ac REVIEW: Replace rlglDraw() calls by DrawRenderBatch() internal calls 2020-09-25 18:19:19 +02:00
raysan5
fe8bf2fa55 REVIEWED: GenTextureCubemap(), use rlgl functionality only
Function has been reviewed to avoid any direct OpenGL call and use rlgl functionality, also, GenDrawCube() has been replaced by the internal batch system with DrawCube().

WARNING: rlEnableTexture() call must be issued after enabling the current framebuffer when using batch mechanism because it includes a set of security checks to avoid batch overflow and push/pop matrix operations.
2020-09-25 18:14:46 +02:00
Adam Griffiths
b9ece86ffd
Add join_paths and join prefix with include/lib dirs (#1383)
Fixes #1380: incorrect usage of CMake paths which causes issues
on some more complicated environments (NixOS especially).
2020-09-25 16:20:49 +02:00
raysan5
032b2db398 REVIEWED: GenTextureCubemap()
Added some tracelog messages
2020-09-21 13:18:53 +02:00
coderoth
c05dbb4581
Updated joystick mappings with latest version of gamecontrollerdb (executed GenerateMappings.cmake), so that raylib can identify more joysticks (#1381) 2020-09-19 21:51:32 +02:00
raysan5
789c5fbdf9 Updated build script to generate .a on WebAssembly
This is the recommended way
2020-09-18 20:53:57 +02:00
raysan5
4a242c2889 Updated library build script for HTML5 (emscripten 2.0.4) 2020-09-18 20:48:25 +02:00
raysan5
b5d50ee51a EXAMPLE: models_skybox works on OpenGL ES 2.0 2020-09-18 20:47:39 +02:00
raysan5
79d63e6ca1 Review comment 2020-09-18 16:44:28 +02:00
raysan5
152665ff48 REDESIGNED: GenTexture*() #721
Functions have been redesigned to use rlgl and allow to externalize them (aka removing them from rlgl because they use custom shaders...).
2020-09-18 13:50:51 +02:00
raysan5
ccda320be4 REVIEWED: rlFramebufferAttach() to support texture layers
Required to attach multiple color textures and multiple cubemap faces
2020-09-18 11:37:57 +02:00
kernelkinetic
6038c8fdd5
fixed wrong error message for input device on RPI (#1379)
* fixed wrong error message for input device

* error message without errnofor input device on RPI
 to prevent from including additional header

Co-authored-by: kkl <klingenberger@bfmc.de>
2020-09-18 08:52:52 +02:00
raysan5
04406c0f1a Corrected minor framebuffer issue on OpenGL ES 2.0 2020-09-18 02:14:05 +02:00
raysan5
cdc8850e68 WARNING: REDESIGN of rlgl framebuffers API #721
This redesign allows more flexibility when creating RenderTexture and a simplification (and hopefully removal) of `GenTexture*()` functions, that should not belong to this model but the user code, due to the use of custom shaders.

Also, this new API opens the door for a possible GBuffers type and advance rendering possibilities...

Some functions of the API have been also simplified or even removed.

rlgl module can be used as an standalone library, so, a version for the library has been added: v3.1.0, matching current raylib version.
2020-09-18 02:11:49 +02:00
raysan5
fa2c114636 WARNING: struct RenderTexture2D: Removed depthTexture
Not required anymore, attachment type is queried when required
2020-09-17 13:44:03 +02:00
raysan5
cbdb9bfe42 REVIEWED: UnloadShader() issue
Avoid unloading default shader, raylib will take care of it
2020-09-16 16:33:17 +02:00
raysan5
b870b9f828 Minor: remove tabs 2020-09-16 13:17:31 +02:00
raysan5
90befff4b8 Make sure to detach data before deleting
Before deleting certain objects, they must be detached from their parents. That's the case for shader objects after linkage to shader program and also for the texture/cubemaps/renderbuffers attached to framebuffers. If objects are deleted before detached, they are kept in memory to avoid accessing deleted data.
2020-09-16 13:17:16 +02:00
raysan5
11fbd49b73 Avoid GETCWD() warning #1371 2020-09-16 11:44:48 +02:00
raysan5
43d82c1f21 Add security checks when loading data from memory 2020-09-16 11:33:56 +02:00
raysan5
c5c156d65e Review GenDrawCube() and GenDrawQuad()
Better organized and commented
2020-09-15 13:44:04 +02:00
raysan5
2d96196d25 REVIEWED: SaveWAV() to use memory write insted of file 2020-09-15 13:17:10 +02:00
raysan5
0983d7b45c Solved issues when compiled for OpenGL 1.1 2020-09-15 11:30:20 +02:00
Ray
8cf0be4b6c Review memory loading functions signesness 2020-09-14 19:20:38 +02:00
raysan5
5073619962 REVIEWED: GetTextureData(), allow retrieving 32bit float data 2020-09-14 16:03:45 +02:00
raysan5
43b9113c0c Reverted some previous changes... 2020-09-14 15:55:31 +02:00
raysan5
d7853127db Reviewed some structs to reduce size and padding
Also updated raylib Wiki about struct sizes in 32bit and 64bit
2020-09-14 15:36:50 +02:00
Ray
c196b09d33 Remove function declaration added by error 2020-09-13 16:43:19 +02:00
Ray
db652daf42 ADDED: LoadFontFromMemory() (TTF only) #1327 2020-09-13 16:42:31 +02:00
Ray
88c5deac87 WARNING: REDESIGNED: LoadFontData() 2020-09-13 16:41:52 +02:00
Ray
250a0e3592 Minor tweak 2020-09-13 16:40:34 +02:00
Ray
63b739bbfa Corrected issue on log 2020-09-13 16:01:51 +02:00
Ray
dace2172d1 Update cgltf library to v1.7 2020-09-13 15:55:48 +02:00
Ray
5b60a743bd ADDED: LoadWaveFromMemory() #1327 2020-09-13 15:38:57 +02:00
Ray
768b29dd74 ADDED: LoadImageFromMemory() #1327 2020-09-13 15:37:15 +02:00
Ray
cb8cbb038b WARNING: RENAMED: GetExtension() to GetFileExtension() 2020-09-13 14:07:08 +02:00
raysan5
f1ed8be5d7 REDESIGNED: ColorFromHSV()
Replaced Vector3 by direct values, easier to use and understand
2020-09-07 19:33:06 +02:00
raysan5
85d5744679 REVIEW: glfwSetWindowMaximizeCallback() not available on web 2020-09-07 15:34:21 +02:00
raysan5
1134024985 Update rlgl.h 2020-09-01 21:27:47 +02:00
raysan5
05cdaf7d01 MOVED: rlUnproject() [rlgl] -> Vector3Unproject() [raymath] 2020-09-01 21:08:45 +02:00
raysan5
a1422ba1c1 Review custom blend modes mechanism
rlBlendMode() has been added to rlgl to be used on BLEND_CUSTOM. This functionality is exposed to advance users.

In any case, new blending modes could be added if required.
2020-09-01 21:02:19 +02:00
cedemax
bfafb80cde
Multiple blendmodes (#1324)
Co-authored-by: max <max.cedercreutz@cetopo.com>
2020-09-01 20:33:49 +02:00
Juan Medina
dcbe481a28
adding new windows functions (#1357) 2020-09-01 20:29:13 +02:00
raysan5
ffe2364334 Update miniaudio to version 0.10.18 2020-08-30 20:01:38 +02:00
raysan5
8b5485f822 Remove unused variable 2020-08-30 20:00:56 +02:00
raysan5
945a02798b DrawTextEx(): Minor tweak 2020-08-29 13:57:59 +02:00
raysan5
d0ebeb1713 Reorder some functions 2020-08-23 21:18:39 +02:00
raysan5
ea832628c4 Review last PR formatting to follow raylib standards 2020-08-23 21:10:59 +02:00
chriscamacho
d140dc81c0
work on quat and matrix math - deleted multiple copies of raymath.h causing issues (#1359)
Co-authored-by: codifies <nospam@antispam.com>
2020-08-23 21:01:26 +02:00
raysan5
816856eb75 Corrected compiling issue
When using USE_PTHREADS=1 on libraylib.bc compilation, program requires --shared-memory passed to the linker and despite it compiles, it fails on execution (at least for me).
2020-08-23 21:01:10 +02:00
raysan5
e785ca73b5 Review compilation parameter for objective C code on GLFW 2020-08-20 19:37:03 +02:00
raysan5
06ff1ce2aa Minor tweak for consistency 2020-08-20 19:31:54 +02:00
raysan5
b499b50154 Avoid architecture selection on gcc, use correct gcc version instead
Review raylib resource file for DLL compilation
2020-08-20 17:37:01 +02:00
raysan5
249708dbb8 Support externally provided library name
It can be useful in some cases qhen compiling for multiple architectures
2020-08-19 19:11:18 +02:00
raysan5
1e9de0f9ff Review Android arch names to lowercase 2020-08-19 16:51:43 +02:00
raysan5
44dd1fc7f5 Trying to configure android_native_app_glue target compilation 2020-08-19 16:30:33 +02:00
raysan5
48f0dfa18e Update Makefile 2020-08-19 16:25:51 +02:00
raysan5
ac0362d30e Update Makefile 2020-08-19 16:17:27 +02:00
raysan5
34c8f4c39c Update Makefile 2020-08-19 16:13:16 +02:00
raysan5
cc8626f6bb Update Makefile 2020-08-19 15:47:36 +02:00
raysan5
1316183b3a Trying to automate Android building... 2020-08-19 15:21:20 +02:00
raysan5
3416858d1c Update Makefile 2020-08-19 14:04:53 +02:00
raysan5
0d05004468 Added resource file for DLL compilation info 2020-08-19 11:59:50 +02:00
raysan5
d98c471883 Add LDFLAGS when required 2020-08-19 11:25:13 +02:00
raysan5
05b3ca0a83 Update Makefile 2020-08-19 10:38:53 +02:00
raysan5
ab8ec9adad Support multiple build architectures (x86, x64) 2020-08-17 23:23:42 +02:00
raysan5
090490389e Improved Makefile clean on Windows 2020-08-17 22:41:26 +02:00
raysan5
921f0c02e2 Update Makefile 2020-08-17 22:27:22 +02:00
raysan5
2d0811d94c Update Makefile 2020-08-17 20:38:06 +02:00
raysan5
c32ae480af RENAMED: FormatText() -> TextFormat()
This function was renamed for consistency in raylib 3.0, just unified all examples to use TextFormat() instead of FormatText()
2020-08-16 11:28:15 +02:00
Ray
7b346dbbe1 Review issue with .fnt -> .png path #1351
When .fnt file is in the .exe path, image path was wrongly calculated
2020-08-15 11:32:23 +02:00
raysan5
ad1b3330b7 Support mulstiple WAV sampleSize for MusicStream #1340
24bit per sample is not supported internally and automatically converted 16bit
2020-08-11 19:08:07 +02:00
Ahmad Fatoum
6108ba89df CMake: don't use raylib_static name for MinGW on Windows
There are no *.lib files that could overwrite each other when building
both static and shared versions of raylib at once. So just use the
normal library name without _static suffix.
2020-08-08 01:11:45 +02:00
raysan5
2c7dc70878 Reset close status for next frame #1339 2020-08-06 11:47:46 +02:00
Rfaile313
9e75f870bb
Update Makefile for web (#1332)
When you install emsdk out of the box, the directory is no longer `$(EMSDK_PATH)/python/33.7.4_64bit` but rather `$(EMSDK_PATH)/python/3.7.4-pywin32_64bit` noting the `3.7.4-pywin32_64bit` change on the last file.

Thus, without adjusting this in the raylib Makefile it will throw an error:

```
PS C:\raylib\raylib\src> make PLATFORM=PLATFORM_WEB -B                                                                  emcc -c core.c -Wall -D_DEFAULT_SOURCE -Wno-missing-braces -Werror=pointer-arith -fno-strict-aliasing -std=gnu99 -Os -s USE_GLFW=3 -I. -Iexternal/glfw/include -Iexternal/glfw/deps/mingw -DPLATFORM_WEB -DGRAPHICS_API_OPENGL_ES2              '"python"' is not recognized as an internal or external command,                                                        operable program or batch file.  
```

However, changing this line in the Makefile compiles raylib for web as expected

`"raylib library generated (libraylib.bc)!"`
2020-08-02 20:21:59 +02:00
raysan5
6e9e7bd6bc LoadSound(): Use memory loading (WAV, OGG, MP3, FLAC) #1312 2020-07-31 12:13:04 +02:00
seanpringle
1d895616f7
rlCheckErrors (#1321)
* rlglCheckErrors

* rlglCheckErrors LOG_WARNING

* rename to rlCheckErrors; improve messages; revert core.c
2020-07-30 12:50:20 +02:00
raysan5
9c2ff464b0 Support pthreads on PLATFORM_WEB compilation 2020-07-28 20:36:10 +02:00
raysan5
20301d1e5d Corrected issue with framebuffer size storage #1298 2020-07-28 11:44:45 +02:00
Ray
b5eb104b08 Consider empty title for window #1323 2020-07-24 18:20:37 +02:00
Ray
14d37464ad DrawTriangleFan(): Add a comment about vertex order #1316 2020-07-22 11:12:04 +02:00
seanpringle
cebcdea80f
[wip] MeshNormalsSmooth() (#1317)
* MeshSmoothNormals() by average

* wrong comment

* spelling

* use correct function naming convention
2020-07-20 11:05:18 +02:00
raysan5
6ec847a93f Find a better mechanism to avoid FBO on OpenGL 2.1 if required #1290 2020-07-17 19:41:38 +02:00
raysan5
feedf332a8 Issue with render size assignment on RPI/Android #1314 2020-07-17 18:39:31 +02:00
raysan5
642f42bb4f Reviewed comment in LoadIQM() #1315 2020-07-17 18:22:09 +02:00
seanpringle
bdd253a66a
clamp ray hit y position to ground plane height (#1311) 2020-07-15 11:13:03 +02:00
Random
7760575d3f
fix emcc warning (-Wparentheses-equality) (#1310) 2020-07-14 21:25:21 +02:00
raysan5
dd5f448f25 Update Makefile Android 2020-07-14 19:09:58 +02:00
raysan5
0b52c57a24 Update Makefile emsdk paths 2020-07-14 19:07:51 +02:00
raysan5
d2d50bc60f Update miniaudio to v0.10.14 2020-07-14 18:59:00 +02:00
seanpringle
a9d676a5fd
scale perspective top calc for near culing plane (#1309) 2020-07-14 10:36:22 +02:00
raysan5
bf429a0058 Remove conditional __EMSCRIPTEN__
Not required anymore
2020-07-13 18:57:46 +02:00
Random
4de362b405
Updated miniaudio to v0.10.13, fixes emscripten compilation error (#1306) 2020-07-13 18:56:17 +02:00
raysan5
0db0e6acd8 WARNING: REMOVED: LoadImageEx()
Reason for removal: This function forces a specific Image data format, it copies data internally (it could be confusing and lead to memory leaks), it's redundant, there is a simpler alternative and raylib promotes using structures directly
2020-07-10 19:18:29 +02:00
raysan5
7199dd570f REVIEW: Pointer lock emscripten API does not work #1241
It seems some internals change recently due to web security reasons and some emscripten HTML5 funtionalities like pointerLock or fullscreen modes behave very weird or just don't work as expected
2020-07-10 18:23:17 +02:00
raysan5
3f4c6fee11 Correct issue when not supporting GIF format 2020-07-10 17:24:37 +02:00
raysan5
c57323f29c ADDED: LoadImageAnim() to load animated sequence of images 2020-07-10 13:59:01 +02:00
raysan5
fa7799143e Update miniaudio to v0.10.12, solves #1288 2020-07-10 13:29:42 +02:00
raysan5
57dc8a91dd Disable FBO support on OpenGL 2.1 #1290 2020-07-10 13:14:56 +02:00
Random
86a8f1d5d5
Chromium needs a larger audio buffer (#1300)
* Chromium needs a larger audio buffer: https://github.com/dr-soft/miniaudio/issues/150

* changed PLATFORM_WEB to __EMSCRIPTEN__
2020-07-10 12:34:35 +02:00
raysan5
0877019fb6 Review comment 2020-07-10 12:15:52 +02:00
Terry Nguyen
871cd1a76a
Free leaked allocations from render objects (#1302) 2020-07-09 20:42:20 +02:00
Doyle
00fda3be65
Fix incorrect color transform to 255 space (#1297) 2020-07-05 20:02:32 +02:00
Ray
5986eee6ab Expose additional configuration options
Some internal defines have been exposed in config.h
2020-06-30 11:05:09 +02:00
Vlad Adrian
4d71e9b44f
Added new function DrawTextureTiled() (#1291)
* Implemented DrawTextureTiled()

* Example added
2020-06-27 23:59:14 +02:00
Ray
eae6e6a828 Minor format tweak 2020-06-27 14:11:21 +02:00
Ray
5b294b7cff Corrected issue with OpenGL 1.1 support 2020-06-27 14:10:53 +02:00
Ray
ba39a1b304 ADDED: UpdateTextureRec() 2020-06-25 16:26:59 +02:00
Shylie
25fb24ba7d
[add] GetMonitorRefreshRate(int monitor); (#1289) 2020-06-24 18:28:57 +02:00
Ray
38530ebf12 REVIEWED: ToggleFullscreen(), issue #1287 2020-06-23 00:39:06 +02:00
Ray
bd13d4a471 Add missing include 2020-06-23 00:33:51 +02:00
raysan5
e18c4c1158 REVIEWED: ColorAlphaBlend(), support tint color 2020-06-20 23:32:32 +02:00
raysan5
7ed7116e27 REVIEWED: ColorAlphaBlend(), integers-version, optimized #1218 2020-06-20 19:57:09 +02:00
raysan5
5a862bce29 REVIEWED: ImageDraw(), consider negative source offset properly #1283 2020-06-20 18:49:15 +02:00
raysan5
da582e2eec REVIEWED: ImageDraw() #1283 2020-06-20 18:10:21 +02:00
raysan5
c078640fa5 Commented Fade() macro 2020-06-16 10:37:31 +02:00
raysan5
afcc584fb6 RE-ADDED: Fade() function to avoid multiple breaking changes
Probably there is a better way to do this but this is a temporary solution for backward compatibility
2020-06-16 10:36:05 +02:00
raysan5
589d606000 REDESIGNED: ImageDraw(), optimized #1218
After multiple tests and lot of redesign, current implementation is the fastest one. It also considers several fast-paths for maximum speed!
2020-06-15 12:06:41 +02:00
raysan5
32c0a7a135 Small code optimization 2020-06-15 12:05:03 +02:00
raysan5
bfa6544030 REDESIGNED: ImageResize(), optimized #1218 2020-06-15 12:04:18 +02:00
raysan5
691c1f9391 REDESIGNED: ImageFromImage(), optimized #1218 2020-06-15 12:03:33 +02:00
raysan5
ad954dc7ab WARNING: BIG CHANGE: Move Color functions to texture module
WARNING: Some functions ADDED and some RENAMED:
- RENAMED: Fade() -> ColorAlpha() [Added #define for compatibility]
- ADDED: ColorAlphaBlend()
- ADDED: GetPixelColor()
- ADDED: SetPixelColor()
2020-06-15 12:02:50 +02:00
raysan5
ec09fea29a REDESIGNED: ImageDraw(), optimization #1218
Trying a new optimization approach, some additional functions added, they will be probably exposed soon.
2020-06-11 22:47:25 +02:00
raysan5
15bfe44e73 REVIEWED: ImageDraw(), optimizations test #1218
Despite all the effort put on function optimization, dealing with alpha blending is complex, considering src and dst could have different pixel format...
2020-06-11 12:47:47 +02:00
raysan5
a6e6a99cb6 REDESIGNED: ImageAlphaClear(), optimized #1218 2020-06-10 23:10:16 +02:00
raysan5
4745ebeed5 REVIEWED: ImageResizeCanvas(), optimization #1218
Optimized to avoid ImageCrop() calls, now we define the source image rectangle and we just copy that data over the new canvas.
2020-06-10 21:21:37 +02:00
raysan5
dea0279a74 REVIEWED: ExportImage(), optimized 2020-06-09 19:52:10 +02:00
raysan5
7ef0fb4192 REVERTED: ExportImage() changes
Always using RGBA for now.
2020-06-08 21:18:42 +02:00
raysan5
82f7dd017e REVIEWED: ImageAlphaPremultiply(), optimization 2020-06-08 18:24:53 +02:00
raysan5
40bc6afdbd REVIEWED: ImageAlphaClear(), minor optimization 2020-06-08 18:23:59 +02:00
Chang Si Yuan
6264c4901b
Fix wrong height used when using scissor mode with render texture of different height from window (#1272) 2020-06-08 10:32:23 +02:00
Chang Si Yuan
73cc33b493
Fix extra memory allocated when updating color buffer in mesh (#1271) 2020-06-08 10:31:39 +02:00
raysan5
87592e2625 Update textures.c 2020-06-07 20:32:43 +02:00
raysan5
d0e9228660 REDESIGNED: ImageResizeCanvas(), optimized #1218 2020-06-07 18:33:30 +02:00
raysan5
a9fb0aa207 ImageToPOT() renamed parameter 2020-06-07 18:32:20 +02:00
raysan5
b5174a9990 REVIEWED: ImageCrop() #1218
Further optimization, moving data line-by-line
Old optimization left for reference
2020-06-07 12:57:57 +02:00
raysan5
b7d53ce314 REVIEWED: ImageToPOT() #1218
Using ImageResizeCanvas()
2020-06-07 12:56:47 +02:00
raysan5
78c3d619f9 REVIEWED: ImageAlphaCrop() #1218
Now uses GetImageAlphaBorder()
2020-06-07 12:33:42 +02:00
raysan5
02ff68e1a3 REDESIGNED: ImageCrop(), optimized #1218 2020-06-07 12:16:27 +02:00
raysan5
7cf1e76d53 REVIEWED: ExportImage(), optimized #1218
Avoid GetImageData() retrieval and free
2020-06-07 11:57:22 +02:00
raysan5
776e4a37ef REDESIGNED: ImageRotateCCW(), optimized #1218 2020-06-07 11:53:13 +02:00
raysan5
79e2fbe0c6 REDESIGNED: ImageRotateCW(), optimized #1218 2020-06-07 11:52:55 +02:00
raysan5
d278eae4a3 REDESIGNED: ImageFlipHorizontal(), optimized #1218
Added several optimized options for future reference (if required)
2020-06-07 11:52:21 +02:00
raysan5
93d6dd3023 REDESIGNED: ImageFlipVertical(), optimized #1218 2020-06-07 11:51:26 +02:00
raysan5
5d0b2c796e Remove warning from GetDirectoryPath() 2020-06-07 11:50:03 +02:00
frithrah
e07512e213
Fixed buffer overflow in GenMeshPoly (#1269)
Co-authored-by: frithrah <simon@frithrah.com>
2020-06-05 19:13:31 +02:00
raysan5
3792951023 REVIEWED: GetPixelDataSize() to consider compressed data properly 2020-06-02 23:08:34 +02:00
raysan5
a4333035c7 Use TRACELOG() macro instead of TraceLog() function 2020-06-02 23:07:42 +02:00
raysan5
b00ab118c6 [examples] text_font_sdf - Corrected bug 2020-06-02 23:07:11 +02:00
branlix3000
0e1d7d6430
Fixing Android build from Linux. Letting ANDROID_NDK to be modified at compile time. Default path to the ANDROID_TOOLCHAIN have changed in the latest Android command-line tools release. (#1264)
Co-authored-by: Branlix 3000 <branlix@3000.3k>
2020-05-31 21:18:33 +02:00
jvocaturo
6e84120b89
fix bug in QuaternionFromVector3ToVector3 (#1263) 2020-05-27 17:52:23 +02:00
raysan5
c43e889e39 Corrected bug on TextJoin() 2020-05-27 13:45:11 +02:00
ChrisDill
aff47d1564
Added bool IsCursorOnScreen(void). (#1262)
- The Mouse struct already stores cursorOnScreen. This function simply exposes it to the usage code.
2020-05-26 11:59:25 +02:00
raysan5
1c5df677e1 REDESIGNED: ExportWaveAsCode() to use memory buffer 2020-05-24 15:48:07 +02:00
raysan5
b0f245d8c5 Review ExportImageAsCode() comment 2020-05-24 15:47:15 +02:00
raysan5
8120547639 Added LoadWAV()/SaveWAV() memory buffer sample code
It could be useful in a future...
2020-05-24 00:20:32 +02:00
raysan5
a6fcd32339 Support WAV music streaming #1198
Switched custom WAV laoding/saving funtionality to drwav library, it also provides the required mechanisms to stream wav data.
2020-05-23 23:19:59 +02:00
raysan5
427e543d84 Corrected issue
Compression API requires functions provided by stbi_image_write (DEFLATE compression)
2020-05-23 23:17:34 +02:00
raysan5
fe5fe230b9 Update dr_wav.h 2020-05-23 23:16:40 +02:00
raysan5
394bf00ba5 REDESIGNED: ExportMesh() to use memory buffer #1232
This change could introduce an issue on dataSize precalculation...
2020-05-23 19:48:40 +02:00
raysan5
4e8e90b6df Add note comment on ExportImageAsCode() 2020-05-23 19:46:58 +02:00
raysan5
0bcb892975 REDESIGNED: LoadIQM(), LoadModelAnimations() to use mem buffers 2020-05-23 19:24:15 +02:00
raysan5
94789dd24a Review usage of sizeof(), unify conventions
All functions requiring sizeof() now follow the same convention:

NUM_ELEMENTS*NUM_SUBELEMENTS*sizeof()
2020-05-23 19:23:40 +02:00
raysan5
b95673f701 Use RL_FREE() instead of free() 2020-05-23 19:21:46 +02:00
raysan5
d3dece3343 REDESIGNED: ExportImageAsCode() to use memory buffer #1232 2020-05-23 18:24:53 +02:00
raysan5
c1e0978555 Replaced strncat() by memcpy() in some functions 2020-05-23 18:05:41 +02:00
raysan5
795c079c55 Corrected issues on LoadPKM() 2020-05-23 18:04:58 +02:00
raysan5
c1bb051e61 Avoid some warnings 2020-05-22 02:26:47 +02:00
raysan5
76f8e84901 Reviewed LoadBMFont() to load data from memory #1232 2020-05-22 02:19:45 +02:00
raysan5
70cd2f1edf Tweak 2020-05-22 02:18:50 +02:00
raysan5
0e56bc2929 Replace file accesses by memory accesses
Several functions used to load external files have been reviewed to just load the full file with LoadFileData() and load data from memory from there. This way all file access functionality is centralized in utils module.

Functions reviewed: LoadDDS(), LoadPKM(), LoadKTX(), LoadPVR(), LoadASTC(), SaveKTX()
2020-05-22 01:47:30 +02:00
raysan5
a2955bc5b3 Corrected issue with multichannel on CloseAudioDevice() 2020-05-22 00:32:23 +02:00
raysan5
cdbe1b6190 Review buffer limits on rectangle drawing 2020-05-21 18:57:45 +02:00
raysan5
b3eea3d322 Avoid loading texcoords and normasl from model if not existent 2020-05-18 18:35:47 +02:00
raysan5
6acb7bcfe4 Avoid glGetStringi() on OpenGL 2.1 2020-05-18 13:24:21 +02:00
Random
d9a96c4ca0
added BLEND_SET (#1251)
* added BLEND_SET

* renamed BLEND_SET to BLEND_ADD_COLORS
2020-05-16 13:39:38 +02:00
Noor Wachid
abb94bd2ff
Adding Normalize and Remap functions (#1247)
* Adding Norm and Remap functions

// Normalize input value within input range
// Remap input value within input range to output range

* Rename Norm to Normalize

To make it uniforms with Raylib's functions

* Calculate Remap without other functions
2020-05-15 13:08:28 +02:00
ThePituLegend
d14c51aa2a
Introduced Vector2 and Vector3 Square Lenght. (#1248)
* Introduced Vector2 and Vector3 Square Lenght.

* Square length functions renamed
2020-05-14 22:31:58 +02:00
raysan5
7b001164ef Review formatting GetPRevDirectoryPath() 2020-05-14 17:37:54 +02:00
raysan5
64d44d131d Emscripten fullscreen -WIP- 2020-05-14 17:35:26 +02:00
ivn
730375faf7
fix bug in GetPrevDirectoryPath on Unix-like systems (#1246) 2020-05-14 17:30:32 +02:00
raysan5
257f232d41 WARNING: BREAKING CHANGE: Review audio looping system
Current looping system was broken, `loopCount` has been converted to `bool looping` and user can enable/disable with `music.looping = false`. `SetMusicLoopCount()` has been removed.
2020-05-14 14:00:37 +02:00
raysan5
3a33fe0fd9 Avoid LoadImageEx() usage internally
At this point LoadImageEx() could be removed from raylib... still thinking about it...
2020-05-14 13:37:52 +02:00
raysan5
65b7047111 Remove some [textures] function dependencies
- LoadFontDefault() -> Some code simplifications
 - LoadFontFromImage() -> Avoid LoadImageEx()
 - LoadFontData() -> Avoid GenImageColor(), ImageFormat()
 - LoadBMFont() -> Avoid ImageCopy(), ImageFormat()
2020-05-14 13:36:22 +02:00
raysan5
ca6016cc71 TextToInteger() always exposed 2020-05-14 13:32:57 +02:00
raysan5
4ec40e720c GenMeshCubicmap() added comments and simplification 2020-05-11 17:54:23 +02:00
GoldenThumbs
763aa5b8a2
Fixed Generated Normals for GenMeshCubicmap (#1244)
Just flipped the signs of `n5` and `n6` at lines `2021` and `2022`.
2020-05-11 11:41:21 +02:00
raysan5
4e3ab8f27d Update config.h.in 2020-05-09 17:37:02 +02:00
raysan5
3a4e3d8747 Update CMakeOptions.txt 2020-05-09 17:36:16 +02:00
raysan5
3a6af2cc57 Remove SUPPORT_IMAGE_DRAWING flag
ImageDraw() is actually used in multiple functions and it aslo depends on several functions...
2020-05-09 17:17:54 +02:00
raysan5
913ef1d56f Misc code reviews 2020-05-09 13:05:54 +02:00
Mickaël Malécot
0bd64b7975
Gamepad axis bug fixes and improvement (#1228)
* Fix gamepad axis count

* Fix Xbox axis drawing

* Ignore low axis values

* Revert "Fix gamepad axis count"

This reverts commit f08ae4bf

* Fix GamepadAxis API

* Fix conflict with master

* Revert Gamepad MAX definitions

* Revert MAX_GAMEPAD_AXIS update
2020-05-09 12:39:41 +02:00
raysan5
7efed56b66 Added [text] flag: SUPPORT_TEXT_MANIPULATION 2020-05-09 12:38:33 +02:00
raysan5
7a1d3d807f WARNING: RENAMED: ImageExtractPalette() -> GetImagePalette() 2020-05-09 12:07:18 +02:00
raysan5
cb3bdf09c6 Merge branch 'master' of https://github.com/raysan5/raylib 2020-05-09 12:05:08 +02:00
raysan5
959447d8ed Reorganized texture functions
Removed ImageAlphaMask() dependency on [text] LoadBMFont()
2020-05-09 12:05:00 +02:00
sikor666
db4a618c6f
Fix materials loading for IQM models (#1227) 2020-05-08 20:27:10 +02:00
armageddon421
df5c522049
Update CMakeLists.txt to fix CMake build for Raspberry Pi (#1229) 2020-05-07 22:22:09 +02:00
raysan5
d357b116fe Reviewed missing check for JPG 2020-05-07 18:08:35 +02:00
raysan5
6fa6757a8b Comment tweak 2020-05-07 13:39:41 +02:00
raysan5
f6ca045735 ADDED: DrawTriangle3D() and DrawTriangleStrip3D()
Those functions could be very useful for custom triangle data drawing, using internal batch system.
2020-05-07 12:46:45 +02:00
raysan5
2e8299742b Comments review 2020-05-07 12:45:44 +02:00
raysan5
67d8b43b0e Review first person movement Y waving
Some comments added
2020-05-07 12:45:23 +02:00
raysan5
fdad1f023b Avoid all MSVC compile warnings
Most warning were related to types conversion (casting required) and unsigned/signed types comparisons.

Added preprocessor directives (_CRT_SECURE_NO_DEPRECATE; _CRT_NONSTDC_NO_DEPRECATE) to avoid warnings about unsafe functions, those functions are safe while used properly and recommended alternatives are MS only.

Some external libraries still generate warnings.
2020-05-06 19:12:09 +02:00
raysan5
526c85773f Replace deprectared usleep() calls 2020-05-06 11:33:08 +02:00
raysan5
b8055925bf Update raymath.h 2020-05-01 18:19:54 +02:00
raysan5
af744b07c3 Review latest PR formatting 2020-05-01 18:04:47 +02:00
Anata
4583987fb9
Add Vector2MoveTowards function (#1233) 2020-05-01 17:50:41 +02:00
raysan5
c83477ffca WARNING: Big internal redesign!
Created RenderBatch type and related functions to allow rlgl users creating custom and separate render batches and not only rely on one internal render batch.

This feature has not been exposed on raylib yet because it implies some breaking changes. Right now a custom RenderBatch is just used internally in rlgl.
2020-05-01 17:34:43 +02:00
raysan5
51c3bef497 Review exposed #defines and allow user re-defining
There are multiple #define values around raylib, usually not exposed for redefinition, just reviewed all of them to allow users redefining them on compile time if required.

Also, multiple #define have been renamed and commented.
2020-05-01 17:31:44 +02:00
raysan5
1c15dc7292 Reviewed UWP update
Mostly code formatting tweaks
2020-04-30 21:00:09 +02:00
raysan5
0981dde9d4 Remove strcmp() requirement 2020-04-30 20:17:16 +02:00
raysan5
4ca4326bf9 Review LoadGLTF() to read from memory buffer 2020-04-30 19:51:57 +02:00
Reece Mackie
4b03860810
UWP rework (#1231)
* First draft of UWP rework.

* Read desc

- Moved UWP specific functions to uwp_events.h
- Removed BaseApp.
- Implemented example UWP lifecycle.

* Added GIF recording and screenshot support.

* Character inputs and filesystem stuff

* Fix game closing on Xbox when B is pressed.

* Fix the gamepad binding hack

* Add as many keys as I believe are possible.

* Implemented mouse locking of a sort.

* Remove rogue todo, the rest are for a game dev using this example.

* Implemented touch how I "think" it should work. I cant test this.

* Review.
2020-04-30 19:48:39 +02:00
raysan5
ac8f436c3b Init CORE.Window.focused 2020-04-29 20:55:17 +02:00
raysan5
94ab5e2aab Review issue with vertex batch overflow #1223 2020-04-27 18:02:54 +02:00
raysan5
6e2d39c51b ADDED: IsWindowFocused() 2020-04-27 17:41:29 +02:00
raysan5
72cc3e0530 Corrected issue #1203 2020-04-26 13:23:03 +02:00
raysan5
8e59ecb50c ADDED: GetWindowScaleDPI() 2020-04-24 23:17:32 +02:00
Kevin Yonan
dd7dd1ac8b
Mempool and other Allocators Optimization (#1211)
Optimizations of allocators.
Renamed 'Stack' to 'Arena'.
Replaced certain define constants with an anonymous enum.
Refactored MemPool to no longer require active or deferred defragging.
2020-04-22 13:11:45 +02:00
flashback-fx
596499416f
Update easings.h (#1210)
Make easings.h use powf and sqrtf instead of pow and sqrt.
2020-04-21 21:17:58 +02:00
raysan5
baf5e02f43 Remove comment 2020-04-16 13:48:47 +02:00
raysan5
8d51ad567f Review UWP project -WIP- 2020-04-13 16:40:04 +02:00
G3bE
32387317bf
Make raymath more consistent (#1197)
* Make raymath naming and functions more consistent

* Minor fixes

* Fix examples

* Fix Physac

* New naming rules

* Apply naming to Quaternion functions

* Apply to models.c

* Remove *MulitplyValue / *DivideValue
2020-04-13 16:32:45 +02:00
raysan5
cc816345bf WARNING: API BREAK: Removed LoadImagePro()
Actually this function is useless and potentially dangerous, internally, a shallow copy of data was done. Same could be accomplished accesing image.data directly.
2020-04-10 19:26:36 +02:00
raysan5
b132da0ac2 WARNING: API BREAK: Reviewed ImageDrawText*() params order
To unify with DrawText*() equivalent functions
2020-04-10 19:10:15 +02:00
raysan5
d419602c99 Review display size init for RPI 2020-04-09 23:50:00 +02:00
raysan5
926651b708 Optimized ImageDrawPixel()
Now it's blazing fast. It modifies image.data directly.

Previous version could take up to 3-4 seconds to draw a line... now it takes some nanoseconds...
2020-04-09 22:44:10 +02:00
raysan5
0abe557af1 Fixed issue with ImageDrawLine() 2020-04-08 12:37:52 +02:00
Ahmad Fatoum
6c9f6cf084 Revert "CMake: Don't create symlinks on unsupporting file systems (#539)"
As noted in #539, the symlink check was to support compiling raylib on
VirtualBox vboxfs as no symlinks are supported there.

With me using Linux as daily driver outside VirtualBox now, this 'feature'
is most likely unused by anyone, but still annoys other users (#791).
Just revert it and be done with it. If there are really others building
raylib on vboxfs or a similarly crippled file system under Linux, they
should now step forward when their build breaks.

This reverts commit b8ca51fd01.
2020-04-08 11:01:26 +02:00
raysan5
42f09eb2b8 Delete .gitignore 2020-04-07 18:52:07 +02:00
raysan5
ef9e9bfa7d Review Android piepline
- Removed generate_android_toolchain, since version r21 AndroidNDK it's the toolchain
 - Removed external lib native_app_glue, provided by AndroidNDK
2020-04-07 17:54:08 +02:00
raysan5
f31b87fae8 Remove ANGLE project
Actually, project just adds 50MB of ANGLE libraries not related to raylib.
Also reviewed UWP project to consume ANGLE from the NuGet package.
2020-04-07 17:43:21 +02:00
raysan5
62b7064e90 Corrected issue with depth initialization #1179 2020-04-06 19:58:28 +02:00
Louis Johnson
4f40f8bc47
added log warning for unsupported file extension for music stream (#1176)
* added log warning for unsupported file extension for music stream

* updated error log message for music stream when file format isn't supported
2020-04-06 11:26:09 +02:00
Benjamin Stigsen
2d6303e9fe
Allow for empty replacement string (#1178) 2020-04-05 22:42:59 +02:00
raysan5
90fb53bccc Review android_fopen() to support SDCard access 2020-04-05 17:51:27 +02:00
raysan5
4ceb4d3bf3 Some code tweaks, comments and defines 2020-04-05 17:50:37 +02:00
Benjamin Stigsen
9c280bc7af
TextReplace changes (#1172)
- Added NULL return if the replacement string (`by`) is empty
- Reordered sanity checks since there's no need to initialize variables if the strings are invalid.
2020-04-04 14:25:57 +02:00
SasLuca
8444c3f705
Fixed offset check in GenImageFontAtlas (#1171)
* Fixed offset check in GenImageFontAtlas

* Fixed code formatting to follow raylib notation rules
2020-04-02 23:53:29 +02:00
raysan5
adb20569be Review shared library building 2020-04-01 11:06:05 +02:00
Ray
6a8b1079c1 Update project version for release 2020-03-30 23:42:17 +02:00
raysan5
8da6307456 Get icons back on shell.html
It seems there is some related issue on emscripten side... but I'll keep the icons here despite not displayed properly for the moment.
2020-03-30 21:34:45 +02:00
raysan5
e469f4ebf7 Update config.h, enable some file-formats by default 2020-03-30 17:42:42 +02:00
raysan5
8941cf3e66 Update textures.c 2020-03-30 17:42:19 +02:00
raysan5
fc7ec5e907 Update raylib.h 2020-03-30 17:11:35 +02:00
Dani Martin
1a948849f3
[cppcheck] Fix minor warnings in models.c and raudio.c (#1162)
Errores fixes:
models.c,2843 Either the condition 'fileData!=NULL' is redundant or there is possible null pointer dereference: fileData.
raudio.c,805, 806, 807, 808, %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'.
2020-03-30 17:08:01 +02:00
raysan5
e8a8d544c5 Review formating and signegness issues 2020-03-30 14:38:16 +02:00
Dani Martin
62cdb2299b
[cppcheck] Improvements in SaveStorageValue() in core.c (#1160)
* [cppcheck] Improvements in SaveStorageValue() in core.c

in file core.c cppcheck shows errors only in function SaveStorageValue():

* Common realloc mistake: 'fileData' nulled but not freed upon failure
* Memory pointed to by 'fileData' is freed twice.

Validation:
* Tested examples/core/core_storage_values.c
* Launched Unit Test for this function
* Rerun CPPCHECK afer fix

* [cppcheck] Change functions header to accept only positive position in files

Changes:
* Functions SaveStorageValue(), LoadStorageValue() (core.c)
* Functions LoadFileData(), SaveFileData() (utils.c)
* Headers in raylib.h

Validation:
* Tested examples/core/core_storage_values.c
* Launched Unit Test for these functions
* Rerun CPPCHECK afer fix
2020-03-30 13:51:36 +02:00
Valentin Lemière
41582f0448
Fix "variable is reassigned before use" linter warning on raymath.h (#1158) 2020-03-29 22:03:10 +02:00
raysan5
733ed972f7 Reorganize image functions 2020-03-29 13:37:33 +02:00
raysan5
5d7050bdf9 Reorganize image/texture functions for consistency 2020-03-29 13:31:12 +02:00
Rob Loach
a025636fa1
Update ImageDraw*() functions to match arguments of Draw*() (#1156)
* Update ImageDraw*() functions to match arguments of Draw*()

Updated draw functions:
ImageDrawPixel()
ImageDrawPixelV()
ImageDrawCircle()
ImageDrawCircleV()
ImageDrawLine()
ImageDrawLineV()
ImageDrawRectangle()
ImageDrawRectangleV()
ImageDrawRectangleRec()

* [nodepadpp] Update Notepad++ ImageDraw defintions

This updates the Notepad++ definitions with the updated ImageDraw methods.

* [examples] Add ImageDraw calls to textures_image_drawing

* Update ImageDraw*() methods
2020-03-29 12:43:34 +02:00
raysan5
66e0d774bd Revert "Update compilation warning flags (#1151)"
This reverts commit 2528854664.
2020-03-28 18:39:56 +01:00
raysan5
e333eb415b Update window rc 2020-03-28 18:27:56 +01:00
raysan5
d28e73849b Review TRACELOG() messages 2020-03-27 18:49:21 +01:00
raysan5
d7b15ac1cf Review TRACELOG() categories 2020-03-27 18:45:37 +01:00
raysan5
c0c775e45d [rlgl] Review TRACELOG() messages, categorized 2020-03-27 18:31:36 +01:00
raysan5
b5842434c2 Corrected missing semicolon 2020-03-27 18:31:16 +01:00
raysan5
c7e9951795 [core] Review TRACELOG() messages, categorized 2020-03-27 18:06:09 +01:00
raysan5
70ed975b99 [models] Review TRACELOG() messages, categorized 2020-03-27 17:43:51 +01:00
raysan5
7e2b1b4ff0 [textures] Review TRACELOG() messages 2020-03-27 17:43:38 +01:00
raysan5
915b5f370b [raudio] Review TRACELOG() messages, categorized 2020-03-27 17:43:24 +01:00
raysan5
0c6c421508 [raudio] Review TRACELOG() messages, categorized 2020-03-27 17:16:30 +01:00
raysan5
bc2c6251f8 [text] Review TRACELOG() messages, categorized 2020-03-27 17:16:07 +01:00
raysan5
b9dd459d5a [textures] Review TRACELOG() messages, categorized 2020-03-27 17:15:44 +01:00
raysan5
28da2522fe [utils] Review TRACELOG() messages, categorized 2020-03-27 17:15:26 +01:00
Dani Martin
2528854664
Update compilation warning flags (#1151)
* Update compilation warning flags

Removed the -Wall flag that allow many warnings and added manually all the warning flags that don't generate warnings in the src/external folder.
Specifically, these are some of the flags reporting errors in src/external:

-Wmissing-prototypes
-Wunused-variable
-Wunused-value
-Wunused-parameter
-Wunused-function

* Uptade compilation flags in examples with missing -std=c99
2020-03-26 18:48:34 +01:00
raysan5
7ae7a87f8a Remove trail spaces 2020-03-25 19:41:51 +01:00
raysan5
3d41c1b6cd Minor tweaks 2020-03-25 19:38:55 +01:00
raysan5
96005f2566 ADDED: IsWindowFullscreen() 2020-03-25 18:52:38 +01:00
raysan5
e37d021cd3 Enable IQM models support on config.h 2020-03-25 18:51:46 +01:00
raysan5
133a882556 Update config.h 2020-03-25 18:39:28 +01:00
Random
e07281f8bd
Fixed DrawTextRecEx() selection when wordwrap is ON (again) (#1149) 2020-03-25 10:27:43 +01:00
raysan5
d657537821 Support mtl loading by tinyobj_parse_obj() #1134
I don't like this solution but well... let's use it for the moment...
2020-03-24 18:42:57 +01:00
Ádám Dóda
584e2d664c
GenMeshHeightmap flat shading normals (#1140) 2020-03-24 13:27:49 +01:00
raysan5
51a8e1d692 Remove define not required 2020-03-24 13:26:34 +01:00
Doyle
da836a732c
Android: Better track touch input returned from IsMouse*() (#1144)
* Android: Better track touch input returned from IsMouse*()

Switch to actually tracking touch input to use for "mouse" input rather
than the gestures system. The gesture system as an abstraction ontop of
raw touch input loses some information needed to map to "mouse"
input.

Before,
- IsMouseButtonReleased() triggers immediately after the initial touch
(because GESTURE_TAP activates immediately on touch) instead of waiting for the
touch to be released.
- IsMouseButtonUp() returns false, when it should just be the opposite
of IsMouseButtonDown().
- IsMouseButtonDown() returns true only after GESTURE_HOLD (which
activates after some period of time after GESTURE_TAP), when instead it
should just be true whenever there is touch input i.e. gesture !=
GESTURE_NONE or alternatively when any input is received on the screen.

After this PR, touches map closer to mouse input.
- IsMouseButtonReleased() triggers when touch is released (last frame
was touched, this frame not touched).
- IsMouseButtonUp() returns the opposite of IsMouseButtonDown()
- IsMouseButtonDown() is true when
(AMOTION_EVENT_ACTION_DOWN || AMOTION_EVENT_ACTION_MOVE) and false when
(AMOTION_EVENT_ACTION_UP)

* RPI: Include index check for RPI in GetTouchPosition()
2020-03-24 13:23:34 +01:00
Ahmad Fatoum
0229f9b1a4 CMakeLists.txt: report generated CMAKE_CONFIGURATION_TYPES
We might want to customize this in feature for multi-config builds (e.g.
a Visual studio build with both Debug and Release configurations).

Output the variable value for user awareness.
2020-03-24 06:37:22 +01:00
raysan5
fcdb120935 Comment tweaks 2020-03-23 20:24:20 +01:00
raysan5
8f45370073 Comment tweaks 2020-03-23 20:24:09 +01:00
raysan5
5aebd2a16c Review formating from PR #1138 2020-03-21 20:30:40 +01:00
Sourav Gupta
574c689ff7
Added draw functions to ImageDraw*() (#1138)
Added draw functions:
ImageClearBackground()
ImageDrawPixel()
ImageDrawLineEx()
ImageDrawCircle()
2020-03-21 20:23:50 +01:00
Doyle
01e035e28b
Android: Track touch motion across screen (#1137)
This was working in 2.6 but no longer does in current git tree.
It appears touch position is only tracked on
AMOTION_EVENT_ACTION_[DOWN|UP], which only registers the initial touch
on the screen. Subsequent movement is not tracked into CORE.

Touch position and the Gesture System appears to be updated twice in
AndroidInputCallback in what looks like perhaps a copy paste error (code
is identical) with the exception of tracking AMOTION_EVENT_ACTION_UP in
the 2nd copy of the code (but this is not necessary to track).

If you need to track the first touch or release touch position, you can
do so with checking IsMouseButton[Pressed|Released] on the same frame.

This patch makes it so the touch position is always updated, and merges the
duplicated code into 1 singular code path.
2020-03-19 16:56:48 +01:00
raysan5
4af4483f5f Added security check in case init fails #1135 2020-03-17 20:57:01 +01:00
raysan5
2344941974 Replace external libraries custom allocators by raylib ones #1074
NOTE: Two libraries still use custom allocators: glfw and stb_vorbis
2020-03-17 13:40:07 +01:00
raysan5
71b06caed4 Corrected typo 2020-03-15 17:06:08 +01:00
raysan5
4611406c68 REVIEWED: ImageTextEx() to support line breaks #1131
NOTE: This functionality has an important issue, line space is fixed to 1.5 font.baseSize pixels, depending on the font and how it has been generated that spacing could be too wide or too narrow...
2020-03-15 16:18:48 +01:00
Doyle
427be604b9
Android: Set display.[width, height] before screen size check (#1132)
In `InitGraphicsDevice(...)`, the Android section has a screen security check
like other platforms- but CORE.display.width, CORE.display.height are
not set yet, so the security check sets it to 0. So ensure we query the
device's screen width and height before the screen size security check.

This also gives you the ability to run a proper full-screen application
on Android without any scaling and guess work on the target device by
setting screen width and height to 0 in `InitWindow(...)` and using
`GetScreen[Width|Height]()` to get the actual values.
2020-03-15 15:56:43 +01:00
Ray
d57b5ac89a Added note on transparent framebuffer w/o X11 on RPI 2020-03-12 17:47:35 +01:00
Ray
7fa12844ed [text] TextToUpper(): Added note on diacritics 2020-03-12 13:02:09 +01:00
Ray
4c728f0b54 Minor tweaks 2020-03-09 18:45:37 +01:00
Ray
5895fb6adc Address issue #1125 2020-03-09 13:01:10 +01:00
SasLuca
680f9d5772
Changed if to else if. (#1122) 2020-03-08 18:03:23 +01:00
Ray
c67bc02dd1 Reviewed missing include 2020-03-07 21:54:54 +01:00
Ray
fb2ed693e4 Android: Support file saving to internal data storage 2020-03-05 18:12:41 +01:00
Ray
966e8adcf9 Reviewed and Updated Android compilation scripts 2020-03-05 12:25:39 +01:00
Ray
c3386300d3 Remove comment 2020-03-04 18:23:31 +01:00
Ray
74c486201d ADDED: LoadFileText() and SaveFileText()
Improved file access checks
2020-03-04 00:21:46 +01:00
Ray
6b8f30964d WARNING: Corrected issue with IsKeyDown() #1119 2020-03-03 16:43:15 +01:00
Ray
dc2e5c1751 Update core.c 2020-03-03 16:10:31 +01:00
Ray
645a5b2507 Avoid icons in shell
Very weird... lately icons are not properly displayed on browser!
2020-03-03 15:53:13 +01:00
Ray
3a073db029 REVIEWED: Mouse/Touch input system
After several reviews, now it seems everything works as expected.
2020-03-03 14:58:54 +01:00
Ray
a6297a2be1 Some code tweaks 2020-03-03 01:21:06 +01:00
Ray
8724cf2ea5 Support any mouse button for gesture detection 2020-03-02 13:29:36 +01:00
Ray
08615d3247 Review some comment 2020-03-02 12:22:57 +01:00
i-right-i
3c2ee1cc75
Update raymath.h (#1118)
* Update raymath.h

Added Vector2Rotate Function.

* Update raymath.h
2020-03-02 10:22:08 +01:00
Ray
2f5a7ddcc6 Added comment on IsMouseButtonDown() issue
IsMouseButtonDown() does not process touch state down properly, state is reseted every frame...
2020-03-02 00:07:06 +01:00
Ray
18a9982126 Reviewed IsMouseButtonDown() 2020-03-01 01:29:34 +01:00
Ray
7428747ef0 REDESIGNED input system for better mouse/touch support 2020-02-29 22:10:23 +01:00
Ray
1ee6290fcf Replaced fabs() by fabsf() when required 2020-02-28 12:54:39 +01:00
brankoku
572969d8b7
LoadText() tweak (#1113)
Guarantee string is zero-terminated
2020-02-28 08:23:05 +01:00
Ray
f2247c6f0a REVIEWED: LoadText() 2020-02-28 00:32:46 +01:00
Ray
05992a6fce Tweaks 2020-02-27 16:37:32 +01:00
Ray
c8464bc731 Corrected return value 2020-02-27 16:22:34 +01:00
Ray
b2098a2d60 REDESIGN: ExportImage()
Use new file I/O ABI
2020-02-27 16:15:58 +01:00
Ray
ac73e3b5e2 REDESIGN: ExportWave()
Use new file I/O ABI
2020-02-27 16:15:20 +01:00
Ray
1be68d8cfe Tweak on variable init 2020-02-27 16:14:50 +01:00
Ray
eb86d69a38 Review default config flags 2020-02-27 16:14:31 +01:00
Ray
acfa967e89 Corrected issue with variable name 2020-02-27 13:56:27 +01:00
Ray
5ff0776235 Remove trail spaces and some tweaks 2020-02-27 13:33:09 +01:00
Ray
2a408d789c REDESIGNED: LoadImage() -WIP-
Using new file I/O ABI
2020-02-27 13:21:51 +01:00
Ray
5100cb3e7f REDESIGNED: LoadImageRaw(), LoadAnimatedGIF()
Using new file I/O ABI
2020-02-27 13:21:21 +01:00
Ray
b029fb6d31 REDESIGNED: LoadFontEx()
Using new file I/O ABI
2020-02-27 13:19:58 +01:00
Ray
245ba2a152 LoadText(): Added comment 2020-02-27 13:19:13 +01:00
Ray
89ecad1e29 Review macros 2020-02-27 13:18:55 +01:00
Ray
23bde477e5 REDESIGN: LoadStorageValue()/SaveStorageValue()
Using new file I/O ABI
2020-02-27 13:18:15 +01:00
Ray
5aed36e76d Tweaks on fullsccreen detection... 2020-02-26 23:42:06 +01:00
Ray
e5b5aea998 WARNING: RENAMED: Storage functions
Renamed functions for consistency:

 - StorageLoadValue() > LoadStorageValue()
 - StorageSaveValue() > SaveStorageValue()
2020-02-26 23:40:53 +01:00
Ray
fadd74358b Security check 2020-02-26 23:38:12 +01:00
Ray
fa4e0c1a26 Reviewed example 2020-02-26 20:47:08 +01:00
Ray
1046449339 ADDED: LoadFileData(), SaveFileData() 2020-02-26 20:29:33 +01:00
Ray
c5d5d19443 Remove trail spaces 2020-02-26 20:23:55 +01:00
Ray
0f783aab34 Remove TraceLog() dependency on standalone mode 2020-02-26 20:23:36 +01:00
Ray
7849db65e0 Remove TraceLog() dependency on standalone mode 2020-02-26 20:23:06 +01:00
Ray
9b5a796213 Use float math functions 2020-02-26 20:20:52 +01:00
Ray
32e374d941 [core] SetWindowSize() try to support PLATFORM_WEB -WIP- 2020-02-24 12:35:53 +01:00
Ray
113a580021 [rlgl] LoadText() variable scope improvement 2020-02-24 12:05:54 +01:00
Ray
a77273d8d8 Make sure current text buffer is empty #1109 2020-02-24 11:15:02 +01:00
Ray
310fd9b147 Update to latest emscripten toolchain
Corrected issue on web compilation
2020-02-22 17:21:10 +01:00
Ray
01d8642520 Merge branch 'master' of https://github.com/raysan5/raylib 2020-02-22 10:38:37 +01:00
Ray
30f3e49f3d Improve inputs on Android 2020-02-22 10:38:32 +01:00
Ray
0b8aded399 Support ToggleFullscreen() on web 2020-02-22 10:37:43 +01:00
Ray
d2aeafcf1e Update Makefile 2020-02-22 10:36:34 +01:00
Ray
81881a120c Comment tweak 2020-02-22 10:36:20 +01:00
Tyler Jessilynn Bezera
e7fdf8a13d
Expand GLTF Model support (#1108)
* Update GLTF support to include loading color for albdeo (saved in the color value of the materialmap), support occlussion and emmission maps.. as well as some quality of life updates.

* clean up to use single image
2020-02-22 10:17:30 +01:00
Ray
a750bcceec Support links on WebAssembly 2020-02-21 01:13:41 +01:00
Ray
67d0bf75a7 Update Makefile paths to use emscripten upstream
Note that emscripten upstream branch implements the new asyncify implementation, expected to be faster than emterpreter one.
2020-02-20 23:00:29 +01:00
Ray
a8a21312e1 Removed TABS 2020-02-20 13:46:49 +01:00
Ray
42dad5df95 [rnet] Renamed some functions 2020-02-20 13:46:33 +01:00
Ray
e176a476c0 [rnet] Review network examples formatting 2020-02-20 12:42:37 +01:00
Ray
faff512140 [rnet] Convert to header-only
Some functions renamed
2020-02-19 18:15:59 +01:00
Ray
946a6cb280 Review mouse inputs 2020-02-19 12:44:57 +01:00
Ray
7d789763d6 Update API version 2020-02-19 12:35:30 +01:00
Ray
d62a2f793f Improved GetFPS() calculation for average 2020-02-19 12:20:15 +01:00
Ray
9eefcb7939 Update miniaudio.h 2020-02-19 12:19:41 +01:00
o3o
36bf8a60d8
Fix #1103 (#1104)
Fix 1102
2020-02-18 23:19:30 +01:00
Ray
6d1cdf25a7 [rnet] Review module formating
Align formating with other raylib modules coding style.
2020-02-18 18:15:22 +01:00
Ray
51db3b589d Review function name on RAUDIO_STANDALONE 2020-02-18 18:14:22 +01:00
Ray
b18940d3c6 Remove spaces 2020-02-18 18:03:28 +01:00
Ray
3f25c52a29 Some security checks in case music is not properly loaded 2020-02-18 16:30:52 +01:00
Ray
39e73ccc4d [text] TextLength() security check 2020-02-17 00:47:05 +01:00
Ray
df4b55d657 Comment fprintf() calls 2020-02-17 00:46:41 +01:00
Ray
23b75281ad Add function prototype 2020-02-14 23:10:02 +01:00
Ray
91b2dc2aa9 [raudio] ADDED: SetAudioStreamBufferSizeDefault()
There could be some cases where we need to define the internal audio buffer size, now it's possible.

RENAMED: InitAudioBuffer() to LoadAudioBuffer()
RENAMED: CloseAudioBuffer() to UnloadAudioBuffer()

Renamed some defines and reviewed some comments.
2020-02-14 17:13:37 +01:00
Ray
7459a5c6ef Remove "No Audio Buffer" traces 2020-02-14 11:44:50 +01:00
Ray
8820baf5cc Update miniaudio.h 2020-02-13 11:41:33 +01:00
Ray
3b3e163c48 [raudio] Corrected issue with OGG sound loading 2020-02-13 11:41:28 +01:00
Ray
83fb4613c1 Review some RPI issues 2020-02-13 00:13:56 +01:00
Ray
1b20182d33 Updated periodSize reference 2020-02-12 14:45:02 +01:00
Ray
7dfe42d6d0 Trace log comment review 2020-02-12 13:49:08 +01:00
Ray
55f0647213 [core] Avoid pixel bleeding issue on MSAA 2020-02-12 13:48:50 +01:00
Ray
484c6b360f Reviewed Cppcheck issues #1098 2020-02-12 13:16:18 +01:00
SasLuca
dec85f741a
Fixed memory leaks in textures.c (#1097) 2020-02-11 22:25:27 +01:00
Ray
87d5b51256 REVIEWED: GetDirectoryPath()
Check if provided path is a full path containing system root letter: C:\
2020-02-11 19:12:49 +01:00
Ray
aa3b413390 SUPPORT_HALFBUSY_WAIT_LOOP 2020-02-11 19:01:29 +01:00
raysan5
49145e90a2 Remove spacing 2020-02-10 13:16:34 +01:00
raysan5
28e12a6c6a [raudio] Update to latest miniaudio 0.10 2020-02-10 12:42:40 +01:00
raysan5
131132f17d Minor tweaks 2020-02-10 10:56:48 +01:00
raysan5
884e868e92 Review DEBUG trace log and custom allocators
Not exposing some data structures
2020-02-10 10:56:39 +01:00
raysan5
becd3c3831 REVIEWED: GenMeshCylinder(), solved issue #1088 2020-02-09 21:04:03 +01:00
raysan5
34fafb733f Corrected issue with toupper() usage 2020-02-09 16:11:32 +01:00
raysan5
90c129fd61 Review some libc dependency comments 2020-02-09 16:11:11 +01:00
raysan5
9922160ab4 Minor tweaks 2020-02-09 13:23:12 +01:00
Ray
f4ca5b378a Review missing include 2020-02-06 18:10:52 +01:00
Ray
86bdf60887 Corrected issue with TextToUpper() and TextToLower()
This issue was breaking multiple things...
2020-02-06 17:52:33 +01:00
Ray
2de92e3c07 Minor format tweaks 2020-02-06 16:44:04 +01:00
Ray
85e7856989 Update resource files 2020-02-06 16:37:38 +01:00
Ray
b4293edd70 Update GLFW to latest master 2020-02-06 16:30:48 +01:00
Ray
6c7685da3f Update external libraries 2020-02-06 16:29:57 +01:00
Ray
ea40bda88c Added func used in comments 2020-02-04 17:52:40 +01:00
Ray
1184db83f7 Review GetCurrentTime() 2020-02-04 17:06:08 +01:00
Ray
ca600b44a0 Update gestures.h 2020-02-04 17:02:06 +01:00
Ray
b5fe41f41a Review libc dependencies and remove when possible
Just for clarification, no plans to remove libc dependency, just did some code analysis to see how much raylib depend on stardard C library. My conclusions:

 - stdlib.h: primary dependency is for malloc() and free()
 - stdio.h: primary dependency is for FILE access, maybe it could go through a custom ABI?
 - string.h: just around 8 functions required
 - math.h: just around 8 functions required
 - others: 1-2 functions required for some other headers
2020-02-04 16:55:24 +01:00
David Reid
7024628c65
Update to miniaudio 0.10 (#1092)
* Update to miniaudio 0.10

This replaces the old ma_pcm_converter with ma_data_converter.

At this time of this commit, miniaudio 0.10 is still in the testing
phase. To make it easier to update miniaudio.h during this period, I've
temporarily moved the @raysan5 Win32 customizations to raudio.c because
there may be quite a few updates to miniaudio.h during this time.

* Use miniaudio's built-in volume control.
2020-02-04 13:43:31 +01:00
Ray
d2bb6185f1 Review issue with RLGL TraceLog() 2020-02-03 20:20:00 +01:00
Ray
c3f06b7470 Remove all trail spaces 2020-02-03 19:26:28 +01:00
Ray
a7afd8de99 Update rlgl.h 2020-02-03 19:25:05 +01:00
Ray
cde26c743c Replace TraceLog() function by TRACELOG macro
Added SUPPORT_TRACELOG_DEBUG config
2020-02-03 19:13:24 +01:00
Ray
40b73a8a91
Develop branch integration (#1091)
* [core] REDESIGNED: Implement global context

* [rlgl] REDESIGNED: Implement global context

* Reviewed globals for Android

* Review Android globals usage

* Update Android globals

* Bump raylib version to 3.0 !!!

* [raudio] REDESIGNED: Implement global context

* [raudio] Reorder functions

* [core] Tweaks on descriptions

* Issues with SUPPORT_MOUSE_GESTURES

* [camera] Use global context

* REDESIGN: Move shapes drawing texture/rec to RLGL context

* Review some issues on standalone mode

* Update to use global context

* [GAME] Upload RE-PAIR game from GGJ2020 -WIP-

* Update game: RE-PAIR

* [utils] TRACELOG macros proposal

* Update config.h
2020-02-03 18:31:30 +01:00
Ray
6f3c99a295 Update project version for release 2020-02-03 18:21:37 +01:00
Ray
4992edab24 ADDED: DrawPoint3D() 2020-01-29 12:21:22 +01:00
Ray
af3df8bdd6 Review PHYSAC_NO_THREADS on WebAssembly 2020-01-29 12:10:50 +01:00
Ray
02a533768c Review bool type check 2020-01-29 12:10:09 +01:00
Ray
46046bf018 Review spacing 2020-01-29 12:09:56 +01:00
Ray
bc29720024 Renamed Mat2 to Matrix2x2 2020-01-29 12:09:35 +01:00
Ray
6a2e51ec78 Added comments related to #837 2020-01-29 11:42:55 +01:00
Ray
e6d304cdc2 Tweak to avoid compilation warning 2020-01-28 18:35:14 +01:00
Ray
c715cae18d Some tweaks 2020-01-28 16:40:12 +01:00
Ray
98a7d35bab Corrected issue with matrix order multiplication #1054 2020-01-27 16:32:28 +01:00
Ray
4f7d090fb2 ADDED: DrawEllipse() and DrawEllipseLines() #1047 2020-01-27 16:21:37 +01:00
Ray
954f029118 Support touch/mouse indistinctly
REMOVED: IsTouchDetected()
2020-01-27 15:31:43 +01:00
Ray
4fa2c32906 Review touch input scaling for PLATFORM_WEB #163
Now touch inputs scale proportionally to the canvas size
2020-01-27 12:09:31 +01:00
Ray
7e9bed5c89 Review default font scale filter for HighDPI mode 2020-01-26 18:53:34 +01:00
Ray
5ec87c4c6f ADDED: TextCopy() #1083 2020-01-26 18:38:46 +01:00
Ray
05443cd0c8 Corrected bug #989 2020-01-26 18:29:13 +01:00
Ray
b02c6127a0 Minor tweaks 2020-01-26 13:27:37 +01:00
Ray
46774a8167 REVIEWED: GetDirectoryPath() 2020-01-26 13:01:35 +01:00
Ray
f28c1ef675 ADDED: IsTouchDetected() 2020-01-24 19:45:51 +01:00
Ray
eee995ec3d ADDED: GetWorldToScreenEx()
Addressing issue #1056
2020-01-24 18:54:53 +01:00
Ray
a3ca859db2 Allow MAX_BATCH_BUFFERING config at compile time 2020-01-24 18:36:20 +01:00
Ray
40d6c15798 Addressed issue #1051
Allow frustrum culling near/far distance configuration at compile time.
2020-01-24 18:35:58 +01:00
Ray
d41386d661 Minor tweaks to avoid warnings 2020-01-24 18:23:36 +01:00
Ray
7ae426c377 Redesigned TextToInteger() 2020-01-24 17:58:19 +01:00
Ray
fa0d5bbf9e Remove duplicate function 2020-01-23 21:12:50 +01:00
Ray
d10ff78822 WARNING: Renamed Vector3Multiply() to Vector3Scale()
Renamed for consistency with Vecto2Scale()
Also renamed Vector3MultiplyV() to Vector3Multiply()
2020-01-23 21:10:12 +01:00
Ray
e932d23cf4 Update cgltf.h 2020-01-22 23:24:11 +01:00
Ray
49b723e76d Correct issue with define 2020-01-22 15:11:22 +01:00
Ray
71017993ce Remove unneeded traces 2020-01-21 00:32:35 +01:00
raysan5
42d56d2f37 Added SUPPORT_HALFBUSY_WAIT_LOOP 2020-01-19 17:31:55 +01:00
raysan5
cff38308b7 Support custom allocator 2020-01-19 13:05:21 +01:00
raysan5
9c52a4932d Corrected issue with types 2020-01-19 12:49:33 +01:00
raysan5
edc1d2511d Review module to fit raylib conventions
Support custom allocators
2020-01-19 12:29:21 +01:00
raysan5
1c4dadcf68 Support custom memory allocators 2020-01-19 12:10:09 +01:00
raysan5
d797bb3e1c Support custom memory allocators 2020-01-19 11:42:16 +01:00
raysan5
bec467705e Review custom allocators 2020-01-19 11:23:38 +01:00
raysan5
fe0d04c879 Review functions modifiers 2020-01-19 11:23:27 +01:00
raysan5
406373caa9 Review functions definition modifiers 2020-01-19 11:22:28 +01:00
Victor Gallet
6a46dcb374 Fix compilation when the SUPPORT_MESH_GENERATION feature is not supported (previously, the loadModel function was using the GenMeshCube texture, if no model founded, to generate a default cube mesh (#1075) 2020-01-17 23:06:46 +01:00
Ray
1eae4b483b Commented unnecessary printf()/puts() calls 2020-01-15 13:14:06 +01:00
Ray
1f82b0d847 Comment tweak 2020-01-15 13:13:30 +01:00
Ray
b0ce16b460 LoadFontData(): generate empty image for space
This could be required on texture packing ;)
2020-01-15 11:53:46 +01:00
Ray
237972652d GetImageAlphaBorder() return 0 in case of blank image 2020-01-15 11:52:50 +01:00
Ray
9f699af138 Merge branch 'master' of https://github.com/raysan5/raylib 2020-01-15 11:22:15 +01:00
Ray
4525c897e2 GetImageData() returns NULL if image size is 0 2020-01-15 11:22:00 +01:00
jbosh
019434a37e Fix for short non-looping sounds (#1067)
Short non-looping sounds can sometimes think they need to keep playing and will output their first few frames again. This helps to break out of all the loops instead of just this one.
2020-01-14 09:15:52 +01:00
Ray
22b7713287 IsFileExtension(): Review issue with no-extension files 2020-01-12 13:56:03 +01:00
Ray
e0d4cc3143 ADDED: DrawPolyLines() 2020-01-09 18:34:20 +01:00
Ray
fcf15fe8c0 Removed comment 2020-01-09 18:33:50 +01:00
Ray
358ca7595d Review IsFileExtension() to be case-insensitive 2020-01-09 10:43:21 +01:00
Ray
89fedf0bb9 Comments review 2020-01-08 18:33:21 +01:00
Ray
4211056354 Reviewed some comments 2020-01-08 18:21:08 +01:00
Ray
6d56c99a37 Reorganized some variables for consistency 2020-01-08 17:19:06 +01:00
Ray
f46fcb8307 IsAudioBufferPlaying() replace ERROR by WARNING 2020-01-08 12:41:36 +01:00
Ray
a08508f6a4 Renamed LICENSE.md to LICENSE 2020-01-07 16:45:17 +01:00
raysan5
b5b3bbb30b Review variable name 2020-01-06 19:49:52 +01:00
raysan5
21c30f43d4 Update year to 2020 2020-01-05 20:01:54 +01:00
raysan5
c20ccfe274 Review PR #1040 naming and formating 2019-12-29 13:55:15 +01:00
raysan5
c0d1425aac Remove TABS 2019-12-29 13:53:05 +01:00
raysan5
350cb0a8a8 GenTextureCubemap(): renamed parameter 2019-12-29 13:52:48 +01:00
chriscamacho
cedd5efe4c fixed free camera pitch (#1040) 2019-12-29 13:47:01 +01:00
las3rlars
f8bd56b07f Normals was not correctly updated when using animated meshes (#1052)
* Normal vbo not correctly updated
2019-12-29 12:17:36 +01:00
illegalinstruction
caa1f45643 Forcibly ensure .xm playback starts in the right place; fixes #1043. (#1045) 2019-12-21 13:02:54 +01:00
Ray
8473e94879 Add some comments on desktop multi-touch 2019-12-16 18:06:48 +01:00
Ray
03e6006ac8 Corrected bug on rlReadTexturePixels() 2019-12-11 23:26:42 +01:00
Ray
e614942a2d Read texture data as RGBA from FBO on GLES 2.0 2019-12-11 23:22:10 +01:00
Ray
1397242d88 Small code tweak to avoid warning 2019-12-11 23:14:32 +01:00
Ray
b8246d8592 Minor format tweaks for PR #1036 2019-12-10 00:18:29 +01:00
Justin
7eacac24d5 SetWindowMonitor made functioning again. (#1036)
* We get the video mode from the target monitor and use that to set, therefore
keeping windowed-fullscreen
* Added a GLFW_AUTO_ICONIFY 0 hint so that glfw does not minimize the window
when changing focus from a windowed fullscreen window. This is more expected
behavior for windowed full screen, when a user alt-tabs or clicks on a window in
the other monitor, they expect their windowed-fullscreen window to remaining up.
2019-12-10 00:14:56 +01:00
Ahmad Fatoum
2a64aa2abd external: glfw: reinstate export of GLFW_PKG_{DEPS,LIBS}
We were doing this before, but it was deleted during the
last GLFW update. Readd it to fix the associated macOS CI failure.

Fixes: ea5cd42e6 ("Update GLFW to version 3.4")
2019-12-05 00:29:24 +01:00
Oskari Timperi
8a08a9b225 Fix IsMouseButtonReleased() when press/release events come too fast (#1032)
If press/release events for a mouse button come too fast, then using
`IsMouseButtonReleased()` does not work. This has been noticed when
using a touchpad on Linux when tapping with two fingers two emulate
right mouse button click.

The situation looks like this:

```
BeginDrawing           <-- current==released, previous==released
Pressed                <-- current=pressed
Released               <-- current=released
IsMouseButtonReleased  <-- returns false because current==previous
EndDrawing             <-- previous=released
```

The fix is to update the previous mouse button state in addition to
current mouse button state when `MouseButtonCallback()` is called by
glfw. Now the situation is as follows:

```
BeginDrawing           <-- current==released, previous==released
Pressed                <-- current=pressed, previous=released
Released               <-- current=released, previous=pressed
IsMouseButtonReleased  <-- returns true because current!=previous
EndDrawing             <-- previous=released
```
2019-12-04 18:29:11 +01:00
raysan5
f346c672fb Work on macOS HighDPI issue #826 2019-12-04 18:09:56 +01:00
raysan5
08adb4b8c3 Check and testing timming #865 2019-12-04 17:59:17 +01:00
raysan5
3d936061c8 Corrected issue #1027 2019-12-04 11:05:46 +01:00
Ray
95f3b6e18e Review VSync on fullscreen mode
It seems to work ok on my old Intel HD Graphics card... it should work anywhere else
2019-12-01 13:58:29 +01:00
MasterZean
8eecbbe4aa fixes for switching full-screen and v-sync (#963)
* fixes for switching full-screen and v-sync

* requireVsync flag
2019-12-01 13:46:09 +01:00
Ray
ea5cd42e6c Update GLFW to version 3.4 2019-12-01 13:30:02 +01:00
Ray
3ffe34f9bb ADDED: DrawTextCodepoint()
- Renamed GetGlyphIndex() parameter
 - Review DrawTextEx() implementation
 - Review DrawTextRecEx() implementation
2019-12-01 13:28:14 +01:00
Ray
416a52b5bc Minor comments tweak 2019-12-01 12:55:33 +01:00
Ray
60e8511543 Update miniaudio.h to v0.9.8 2019-11-25 11:42:49 +01:00
Ray
97abaff4c5 Support rlPushMatrix() and rlPopMatrix() on mesh drawing 2019-11-25 11:29:04 +01:00
Darryl Dixon - Piece Digital
776304e8e8 Comments (#1026)
* swapped comments, expanded comment for clarity

* revert alignments

* adjusted for consistency
2019-11-25 00:13:05 +01:00
raysan5
d5aab98ac9 Review PR #1015
Just simplified code a bit
2019-11-24 14:08:27 +01:00
brankoku
1f66f0d9a2 [text] TextFormat() caching (#1015) 2019-11-24 14:01:35 +01:00
raysan5
c1a02e9fca Review PR #1022
Actually OpenAL is not used any more, it should be using CoreAudio
2019-11-24 13:43:48 +01:00
raysan5
1d3f230c92 Review key input queue PR #1012
Keeping original API
2019-11-24 13:39:45 +01:00
Ushio
ae301a1d23 add api FIFO based character input. (#1012)
* add api FIFO based character input.

* rename input character functions

* replace tab to space x4 #1012
2019-11-24 12:46:00 +01:00
Ushio
b132ae099b Fix camera not working problem at align z direction. #924 (#1013)
* Fix camera not working problem at align z direction. #924

* replace tab to space x4
2019-11-24 12:37:52 +01:00
Ray
2783d0d63e DrawPoint3D(): PR review 2019-11-22 00:33:50 +01:00
Eric J
5d27c1e6c9 Add DrawPoint3D() function to models.c (#1019)
Uses fewer vertexes than using DrawCube() or DrawSphere() for points.  The small line is on analogy to the code for DrawPoint() in shapes.c.
2019-11-22 00:30:19 +01:00
Kevin Yonan
d2882a68fe Adding double ended stack & Mempool Reset function (#1021) 2019-11-22 00:27:23 +01:00
JuDelCo
8b7db29ba0 Fix Makefile missing X11 lib when building as a shared library on Linux. (#1018) 2019-11-15 19:46:20 -08:00
brankoku
96b0563249 [rlgl] Create function rlUpdateMeshAt (#1010)
* [rlgl] Create function `rlUpdateMeshAt`

* [rlgl] Update function `rlUpdateMeshAt`
2019-11-11 11:49:13 +01:00
ChrisDill
00c611a5fb [Core] Added ColorFromNormalized which is the reverse of ColorNormalize. (#1011) 2019-11-08 21:02:41 +01:00
brankoku
bba8454034 rlUpdateMesh now supports updating indices (#1009) 2019-11-06 11:43:36 +01:00
raysan5
29b9b054dd REVIEW: rlLoadTexture()
Corrected bug when loading a RenderTexture texture passing NULL data.
2019-11-04 13:40:59 +01:00
raysan5
e8b89b5ecf REVIEW: GetImageData() and GetImageAlphaBorder() 2019-11-04 13:30:55 +01:00
Ray
dc6136e820 Review formatting for PR #1004 2019-10-29 16:03:21 +01:00
João Coelho
75b0264f35 fix various problems, thanks CppCheck :) (#1005)
* explained a bit more the core_window_letterbox example

* fixed a few 'ups' moments that could lead to mild head pain and time loss
2019-10-29 15:57:19 +01:00
Ray
d73abe73e5 REDESIGN: TextToUtf8()
ADDED: CodepointToUtf8()
2019-10-28 20:53:32 +01:00
Ray
f6df47dfe5 ADDED: TextToUtf8() -WIP-
RENAMED: TextCountCodepoints() -> GetCodepointsCount()
2019-10-27 23:56:48 +01:00
chriscamacho
90b3dceb54 added GetMatrixProjection fixed issue with GL11 where model matrix was identity (#999) 2019-10-27 12:13:18 +01:00
Ray
39e22046c1 ClearDirectoryFiles(): Corrected issue #994 2019-10-25 14:29:12 +02:00
chriscamacho
3d8b1165a8 mem leak in gltf loader (#995) 2019-10-23 10:42:17 +02:00
Ray
163a9e1f41 ClearDirectoryFiles() corrected bug 2019-10-23 00:46:41 +02:00
Ray
9b6227688f Corrected issue #992 2019-10-22 23:31:04 +02:00
Ray
3c2ce77b7b ClearDirectoryFiles(): Corrected memory leak #991 2019-10-22 23:18:42 +02:00
Ray
1878a9ea01 Corrected possible memory leak #993 2019-10-22 23:15:41 +02:00
Ray
06910eedfd Minor comment tweak 2019-10-22 23:15:26 +02:00
Ray
ca92f43c27 Review some defines 2019-10-22 00:37:10 +02:00
Ray
ea70c47a1a Review latest PR 2019-10-21 17:55:37 +02:00
Tyler Jessilynn Bezera
3f7fa6d6e7 Add multi texture support for materials in GLTF format (#979)
* Initial commit of addition for GLTF materials.. should support loading more than just albedo map.

* Clean up

* fixed seg faults and leaks

* temp don't overwrite defuse colour when rendering

* undid something dumb!

* correctly mixed diffuse map color when rendering to preserve not overwrite it
2019-10-21 17:38:23 +02:00
Ray
ab52f98480 Update text.c 2019-10-21 17:37:47 +02:00
Ray
c1d282d9e8 Corrected bug on no-extension 2019-10-21 17:37:43 +02:00
raysan5
e25f4dca1f Update external libraries 2019-10-19 17:26:58 +02:00
raysan5
68dcb55349 Corrected bug on ImageDrawRectangleLines() 2019-10-19 17:26:45 +02:00
Ray
b75511248d Remove trailing spaces 2019-10-17 17:18:03 +02:00
Ray
e40c26dea5 REVIEWED: GetCodepoints() issue
- Improved LoadBMFont()
2019-10-17 17:07:09 +02:00
Ray
7baa2975ec REDESIGNED: IsFileExtension()
Now it accepts a ';' separated list of extensions, useful to check multiple extensions
2019-10-11 20:13:11 +02:00
Ray
e0cb892d2d ADDED: GetCodepoints()
Get the unicode equivalent characters (as int array) from a UTF-8 text array... maybe this function is renamed to be clearer to users...
2019-10-11 20:12:15 +02:00
Ray
12d3e21f1b REVIEW: ImageAlphaMask()
When adding alpha mask to GRAYSCALE image, if using ImageFormat(), it could change pixel values, now we avoid that, mask is just added as an extra channel
2019-10-11 20:08:41 +02:00
Michael Vetter
596338b26a Check whether parsing mtl file was succesful (#982) 2019-10-03 21:05:21 +02:00
Michael Vetter
eb772bc1e0 Check whether GLTF was loaded correctly (#981) 2019-10-03 17:07:32 +02:00
Michael Vetter
047f093503 Remove dead assignments (#980)
The result of `success` is actually never used. Either we should check
for it and return or remove it. I assume just checking the last one is
okay.
2019-10-03 17:06:08 +02:00
Ray
df84f93938 Add security checks on file writting 2019-09-30 17:32:06 +02:00
Ray
a8e63b9724 Convert default shader to const strings 2019-09-25 16:45:17 +02:00
Catalin Moldovan
99e86d180b Const corectness for LoadShaderCode (#977)
* Const corectness for LoadShaderCode

* Added const for standalone variant as well.
2019-09-25 16:31:10 +02:00
AlexHCC
8adcec185e Improve code readability (#976) 2019-09-24 23:08:07 +02:00
Ray
bdcb16e7bb Review PR and comments 2019-09-22 21:47:19 +02:00
AlexHCC
acedf4a0d5 Fixed regular polygon shape rendering (#972) 2019-09-22 21:25:39 +02:00
Ray
1f730b3b35 Review ImageCrop() security checks 2019-09-20 15:55:55 +02:00
Ray
b331edd7a6 Let the user choose the formats 2019-09-20 15:54:10 +02:00
Ray
9d53e07883 Added preprocessor macros for GIF 2019-09-19 17:36:48 +02:00
Ray
d089e1cd34 ADDED: LoadAnimatedGIF() -WIP-
Still looking for a better way to integrate it into raylib API, maybe add a LoadImageAnim()?
2019-09-19 16:09:36 +02:00
Ray
741afde3bc Review PR formatting 2019-09-19 13:36:55 +02:00
chriscamacho
314c4061df fixs issue mem leak with LoadModel / OBJ and issue with -1 material index (#969) 2019-09-19 13:28:01 +02:00
raysan5
08165fed18 Review DecompressData() types, for consistency 2019-09-15 11:15:33 +02:00
raysan5
112874fe07 Review issue with HDR pixels loading 2019-09-14 20:07:44 +02:00
raysan5
c10348cc85 Review conditions 2019-09-14 19:01:33 +02:00
Ray
904a7ee032 Update for latest emsdk configuration
Note that latest emsdk changed paths
2019-09-13 17:08:20 +02:00
Ray
4ccf1e61be Corect typo 2019-09-13 17:07:29 +02:00
chriscamacho
6916ff58b1 fixed some memory leaks, still issue with material index allocation leaking 4 bytes (possibly double allocation) (#964) 2019-09-13 13:29:52 +02:00
Ray
e5d5f6e367 Review possible memory leak with my_strndup() 2019-09-13 12:58:42 +02:00
Ray
a2fd427224 Comment tweak 2019-09-12 16:26:37 +02:00
Ray
0a2177b4bc ADDED: GetWindowPosition() 2019-09-10 12:43:44 +02:00
Ray
ae2452d280 ADDED small compression API
- ADDED: CompressData()
 - ADDED: DecompressData()
2019-09-09 21:56:16 +02:00
Ray
2d6bc1ff42 Update raudio.h 2019-09-09 21:54:40 +02:00
Ray
dec5f332ad Revert "Update tinyobj_loader_c.h"
This reverts commit 53b32f1c20.
2019-09-08 16:46:08 +02:00
Ray
d93f8eadf8 REVIEW: GetFileName(): Security checks 2019-09-08 01:11:53 +02:00
Ray
53b32f1c20 Update tinyobj_loader_c.h 2019-09-05 13:15:47 +02:00
Ray
861a619053 Review dr_flac usage
Replaced DEPRECATED functions
2019-09-03 23:24:09 +02:00
Ray
fc95ceadf0 Remove sampleLeft from Music struct... -WIP-
...moved to internal AudioBuffer structure as totalFramesProcessed, now time measure works again... but there is some problem with looping...
Also note some inconsistencies between frames and samples, it seems those concepts are not considered correctly in the code.
2019-09-03 23:08:02 +02:00
raysan5
4e43192561 Review latest PR 2019-08-27 13:15:56 +02:00
arvyy
97101d1003 Add screen->world and world->screen functions for 2D; add extended camera2D example (#947) 2019-08-27 13:05:28 +02:00
raysan5
37bb8e9554 UpdateModelAnimation() - Added security check 2019-08-27 12:23:30 +02:00
raysan5
41732bebe8 Formatting tweak 2019-08-27 12:22:54 +02:00
raysan5
e2183f0b99 Update version in case no config.h is being used 2019-08-27 12:10:09 +02:00
raysan5
f565ff018e REMOVED: FLAG_SHOW_LOGO
raylib logo animation has been removed. That funtionality was very restrictive, not configurable at all and hardly ever used, also, it added a coupling dependency of `core` module with `shapes` and `text` modules.
2019-08-27 11:24:04 +02:00
raysan5
8241dcf80b Review models loading, memory initialization 2019-08-27 11:16:43 +02:00
raysan5
c661cad692 Review all RL_CALLOC() calls
All data should be properly initialized by now
2019-08-27 10:56:49 +02:00
raysan5
addbd88833 Expose scissor functionality 2019-08-26 21:09:03 +02:00
Zatherz
8e86f3586d IsAudioBufferProcessed -> IsAudioStreamProcessed (#951)
It appears that you've missed renaming this function here, which makes trying to compile standalone raudio.c error out.
2019-08-26 00:34:54 +02:00
Ray
e67c842faa Tweak on atlas size computing
Some generated fonts were not fitting the image...
2019-08-24 20:03:47 +02:00
Ray
061294e4d1 Update miniaudio.h 2019-08-24 10:11:32 +02:00
raysan5
20fa362700 Review comment 2019-08-21 18:59:15 +02:00
raysan5
3db13edd89 Support mouse cursor on RPI native
Reduced bunnymark limits
2019-08-20 20:39:22 +02:00
raysan5
a727f5768f Review OpenGL ES 2.0 extensions check 2019-08-20 19:33:46 +02:00
raysan5
ef3b01dffc RPI: Corrected issue when creating 3d projection view 2019-08-20 19:32:12 +02:00
Ray
2f42b0ce85 REVIEW: TextSplit()
Just adding a security check
2019-08-19 15:09:54 +02:00
Colday96
12bcdb977a Update shapes.c for smoother collision detection (#946)
By removing the equal sign, if the 2 rects a right next to each other and not overlapping, there will be no collision detection. This is what a majority of other game libraries do and would make it easier to implement collisions for tile based games.
2019-08-19 13:32:17 +02:00
Ray
973d32f9a7 Reviewed issue #943 2019-08-19 12:17:02 +02:00
Oraoto
7ebcd06652 Fix uninitialized vboId in GenMeshHeightmap (#949) 2019-08-19 10:25:26 +02:00
Ray
ce8d7042c6 PR formatting review 2019-08-16 16:15:47 +02:00
arvyy
d8b8c0f3fc change Camera2D behavior (#945) 2019-08-16 16:09:50 +02:00
raysan5
c387bc586d RENAMED: IsAudioBufferProcessed() -> IsAudioStreamProcessed()
Renamed for consistency with similar functions
2019-08-13 17:41:31 +02:00
raysan5
c629b16ebc Corrected issue on compressed textures data size 2019-08-12 12:35:23 +02:00
raysan5
cef1e6e2e2 Added notes about vertex order 2019-08-11 21:26:12 +02:00
raysan5
740834bb83 REVIEW: GetDirectoryPath() and GetPrevDirectoryPath() 2019-08-11 12:04:54 +02:00
Wayde Reitsma
2c2ccadd32 Small fix in GetMouseY (#940) 2019-08-11 11:17:20 +02:00
chriscamacho
6f2f09947f addition to raylib to create matrix from 3 euler angles (#938) 2019-08-09 17:04:52 +02:00
Ray
e6e48675cc Formating tweaks 2019-08-08 23:08:54 +02:00
raysan5
108f7f6fee Corrected small issue on miniaudio
ONly Neon processors
2019-08-08 10:32:42 +02:00
raysan5
2234158049 Merge branch 'master' of https://github.com/raysan5/raylib 2019-08-08 10:18:25 +02:00
raysan5
3ebc55fdfe Reviewed comment 2019-08-08 10:18:12 +02:00
Kevin Yonan
084fb31186 Removing '__RemoveNode' (#935)
Replaced '__RemoveNode' as it was causing invalid memory accesses with regular doubly linked list deletion algorithm.
Replaced double pointer iterator in 'MemPoolAlloc' with single pointer iterator.
Fixed undefined variables errors in 'MemPoolFree' for the freelist bucket.
2019-08-08 10:00:23 +02:00
chriscamacho
2d5cc5ddbf fixed xmloader bug, user must free model shaders and textures as they might be shared (#933) 2019-08-08 09:57:21 +02:00
Michael Vetter
5f1990e044 Fix build caused by GetImageAlphaBorder() (#931)
Fix build failure introduced in 2a913b6587
2019-08-07 09:23:15 +02:00
Ray
3d46297cc1 Update external libraries 2019-08-07 00:33:57 +02:00
Ray
439e73a8ec Change raylib version to 2.6-dev 2019-08-07 00:33:33 +02:00
Ray
3d5fa81bf2 WARNING: Redesigned structs
- Mesh, Shader, Material structs have been reviewed to minimize size when passed by value, all required code has been reviewed.
 - GetCollisionRayModel() reviewed to avoid pointer, not required because model is not modified inside the function
 - UnloadMesh() reviewed, pointer not required
 - CheckCollisionRay*() parameters name reviewed
2019-08-07 00:32:44 +02:00
Ray
2a913b6587 ADDED: GetImageAlphaBorder() 2019-08-07 00:28:05 +02:00
Ray
042499188c ADDED: DirectoryExists() and GetPrevDirectoryPath() 2019-08-07 00:27:32 +02:00
Ray
b354c10072 ADDED: DirectoryExists()
ADDED: GetPrevDirectoryPath()
2019-08-07 00:26:33 +02:00
Michael Vetter
6267fd1865 Fix memory leak in LoadGLTF() (#929)
Free texturePath in LoadGLTF()
2019-08-06 23:09:27 +02:00
culacant
f518c4e939 Fix loading multiple animations from .iqm file (#928)
* Fix loading multiple animations from .iqm file

* Fix memory leak in models_animation example

* Added export instructions to the animation example

* use raylib free

* include <stdlib.h> to appease the travis CI gods

* replace tabs with spaces
2019-08-06 23:08:58 +02:00
NimbusFox
e53e42f43d Improved Android Building (#930)
Added in a check for x86 and x86_64 branches of android

Added in $(OS) checks to see if we're running on windows or *nix

Added a default location for android ndks and sdks at /usr/lib/android
2019-08-06 23:06:26 +02:00
Leandro Gabriel
89c16baf18 Replace tabs with spaces and update year of copyright notices (#927)
* Update year of copyright notices

* Fix mistake in comment

* Fix typo ("algorythms")

* Replace tabs with spaces

* Remove trailing whitespace and fix mistake in comment

* Fix ExportImageAsCode missing comment rectangle corner

* Replace tab with spaces

* Replace tabs with spaces
2019-08-03 11:07:41 +02:00
Kevin Yonan
f81cb1a252 End of July rmem Update (#923)
Object Pool Changes:
-- changed 'size' member name of 'union ObjInfo' to 'index' to better name its purpose.
Memory Pool Changes:
-- Added memory node buckets to store and allocate smaller, more frequent byte sizes.
-- Replaced 'memset' call to deinitialize free list data with NULL and 0 assignments.
-- Removed some no-longer-needed commented-out code.
-- Changed insertion sort code to put the largest size at the tail rather than the head.
-- Made certain pointer variables as constant pointers.
2019-07-31 11:24:33 +02:00
Kevin Yonan
5775f9d224 Patched potential bug when defragging. (#920)
* Patched potential bug when defragging.

Patched a potential bug concerning the '__RemoveNode' function as, when removing certain nodes that are either at the head or tail, it can yield a free list node of size 0 bug as the previous node was removed and its size was set to 0 but not fully removed from the other nodes.

* A few more potential bug patches.
2019-07-28 21:37:31 +02:00
raysan5
b83d165764 Replace tabs by spaces 2019-07-28 15:33:55 +02:00
raysan5
a1c551c6c4 Reviewed rlTextureParameters()
Reviewed latest PR to also consider OpenGL 1.1 extension support (unprobable).
2019-07-27 11:59:41 +02:00
Reece Mackie
e44eae3cd5 Changes without CLion mess (#916) 2019-07-27 11:53:00 +02:00
raysan5
6baf8bccb1 Removed functions modifiers 2019-07-27 11:44:50 +02:00
Ray
251f90cd31 WARNING: Replaced Music pointer by struct
Now, multiple music parameters are exposed to the user!
2019-07-26 10:26:39 +02:00
Ray
8e870f0eda Try to support stack matrices on models drawing
Not working yet... :(
2019-07-24 22:40:12 +02:00
Ray
7c05e498fc Test Camera on Android
It can break building on that platform...
2019-07-24 22:39:33 +02:00
Ray
eed53a5b44 Changed macro CLITERAL 2019-07-24 22:38:57 +02:00
Ray
9909c83012 REMOVED: LoadWaveEx()
Completely useless and actually buggy!
2019-07-24 22:38:40 +02:00
Ray
73a3d4a183 Review comments 2019-07-24 22:38:06 +02:00
Ray
ae95111006 Some variables renamed 2019-07-24 22:37:24 +02:00
Ray
8730f22371 Remove note 2019-07-24 22:37:00 +02:00
Ray
b4d67499a7 BREAKING CHANGE: Read description
Changes:

 - Font structure has been redesigned, CharInfo structure contained character rectangle within font texture, it has not much sense, considering that it was an information relative to the font atlas generated and not the character itself, so character rectangles have been moved out from CharInfo to Font.
 - CharInfo included a data parameters to contain character pixel data (usually grayscale), generated on TTF font generation. It was inconsistent with other fonts types, so, now CharInfo includes directly an Image of the glyph.
 - REDESIGNED: GenImageFontAtlas(), additional recs parameter added, loaded and filled inside the function to export atlas characters rectangles, instead of silently modify the input CharInfo data.
 - REVIEWED: ImageTextEx(), funtion retrieved the font atlas image from the GPU, that was slow and problematic in several platforms. Now it uses directly the CharInfo image. Support for unicode codepoints has also been added.
 - REDESIGNED: ImageDraw(), now it includes an additional parameter, the color tint, not only it could be useful for several situations but also function signature is more consistent with similar functions.
 - ADDED: ImageFromImage() to generate a new image from a piece of another image.
 - REVIEWED: GetNextCodepoint(), renamed parameters to be more clear.

Also all examples and games that were affected by those changes have been reviewed.
2019-07-24 15:05:14 +02:00
Ray
543c0ba30d Added Sound parameters data 2019-07-24 14:48:45 +02:00
Ray
7b448f59e2 Update raylib.h 2019-07-23 23:37:14 +02:00
Ray
2cb3b91913 Try to avoid collision with CoreAudio on macOS 2019-07-23 23:08:29 +02:00
Ray
2433f30b4b Reviewed ImageDraw() and ImageResizeCanvas()
Added security checks in case provided image to functions hasn't been properly loaded... just to avoid program crashes.
2019-07-23 22:24:25 +02:00
Ray
b44b7dd310 WARNING: Complete review of raudio -WIP-
This module has been completely reviewed, old structures still contained OpenAL useless data, a full module revision. Some of the changes:
 - Redesigned internal MusicData structure
 - Exposed MusicStream structure data
 - Reviewed AudioStream structure
 - Redesigned Sound structure

Still some work to do...
2019-07-23 22:21:01 +02:00
Ray
632d064b21 Review text functions return value
It needs to be freed
2019-07-22 21:29:50 +02:00
Ray
bc3983a3dd Solved issue #912 2019-07-22 21:15:25 +02:00
Kevin Yonan
f501d42e47 Increasing threshold size for traversing memory blocks (#914)
L235 - Increased the memory threshold size so that we can further reduce fragmentation by allocating memory blocks that is close to the requested size by 16 bytes.
2019-07-22 10:17:27 +02:00
Ray
4b2f6b2b5f Check buffer limit on DrawBillboardRec() 2019-07-22 00:12:51 +02:00
raysan5
e8829538c9 Review rmem functions naming and coding conventions 2019-07-15 19:25:55 +02:00
Kevin Yonan
c563b53afb Submitting rmem memory and object pool module (#898)
* Submitting rmem memory and object pool module

* changed 'restrict' to '__restrict' so it can compile for MSVC

Added `const` to parameters for `MemPool_Realloc`

* Update and rename mempool README.txt to mempool_README.md

* Update mempool_README.md

* Update mempool_README.md

* Update and rename objpool README.txt to objpool_README.md

* implementing changes

* updating header for changes.

* forgot to change _RemoveNode to __RemoveNode

* removing l

* removing l

* Updating documentation on MemPool_CleanUp function

* Updating documentation on ObjPool_CleanUp function

* changed *_CleanUp function parameter

Replaced `void*` pointer to pointer param to `void**` so it's more explicit.

* Updating header to reflect changes to the *_CleanUp functions

* A single change for the mempool and a patch for the objpool.

Object Pool Patch: if you deplete the object pool to 0 free blocks and then free back one block, the last given block will be rejected because it was exactly at the memory holding the entire pool.
Mempool change: switched memory aligning the size from the constructor to when allocating.
2019-07-15 18:28:09 +02:00
raysan5
a386cedae6 Review extensions loading and freeing 2019-07-12 14:36:20 +02:00
raysan5
f9a2d89ed2 Use function GetSizeBase64() 2019-07-12 14:33:06 +02:00
Ray
892813de76 Review multichannel PR addition
- Capital letters at beginning
- for loop spacing and brackets
- Functions naming for consistency
- Example following examples template
- Other tweaks
2019-06-29 11:26:08 +02:00
chriscamacho
83a4eb0852 add multi channel audio to raudio (#895)
* added multi channel sound replay to raudio
added -fPIC to Makefile for Linux
added simple lighting and audio multi channel to examples Makefile

* not properly reporting audio buffer pool size...
2019-06-29 10:49:42 +02:00
Leandro Gabriel
a4e307ed96 Fix typo in comment (onlyl -> only) 2019-06-24 16:06:02 +02:00
Ray
65a21ab416 Renamed screenWidth & screenHeight 2019-06-19 16:01:47 +02:00
Ray
1b249ac1e1 Define some globals 2019-06-19 15:43:35 +02:00
Ray
e0854696b4 ADDED: DrawTriangleStrip() 2019-06-17 10:29:58 +02:00
Ray
f951f0c536 RENAMED: LoadDefaultFont() -> LoadFontDefault()
Renamed internal function for consistency with similar functions.
2019-06-16 23:42:51 +02:00
Ray
e36a80f730 Code tweaks 2019-06-16 23:37:16 +02:00
Ray
d21422687a Some formatting tweaks 2019-06-16 23:36:04 +02:00
Shiqing
5baab54f93 Fix vertex padding not zeroed for quads, close #891 2019-06-15 13:51:56 +08:00
Ray
721d18589f Corrected issue with input threads (RPI) 2019-06-14 18:24:55 +02:00
Ray
dccd61bef9 Support new flag: FLAG_WINDOW_ALWAYS_RUN
Do not stop update/draw on window minimized

WARNING: SetConfigFlag() was reviewed to support int flags
2019-06-14 17:18:33 +02:00
Ray
a43d49ed72 Added CMake flags
Reviewed comments
2019-06-12 12:21:23 +02:00
Ray
0c60af8981 Tweak: Change check order 2019-06-12 12:14:36 +02:00
Ray
9609ebf49a Corrected IQM function declaration 2019-06-12 12:12:59 +02:00
Ray
55380f8489 Review DEBUG mode 2019-06-12 12:08:39 +02:00
Ray
266df463cc Support externally provided compiler 2019-06-12 12:03:34 +02:00
DarkElvenAngel
034e9ba1b8
Add files via upload 2019-06-10 17:09:53 -04:00
Ray
dee602464b Merge branch 'master' of https://github.com/raysan5/raylib 2019-06-06 23:52:53 +02:00
Ray
baf225dc01 Update emsdk version for testing 2019-06-06 23:52:49 +02:00
Mohamed Shazan
eb1b2535f6 Change ANGLE binaries location 2019-06-06 16:44:37 +05:30
Ray
37ce51b274
Merge pull request #872 from msmshazan/ANGLE-fix
Added VS2017.ANGLE Project
2019-06-06 11:51:43 +02:00
Ray
498c172d8e Review function prototype 2019-06-06 11:38:45 +02:00
Mohamed Shazan
272d9d58e3 Add VS2017.ANGLE Project 2019-06-06 15:03:03 +05:30
Ray
e3ef738264 Replace TABS by spaces 2019-06-05 13:01:58 +02:00
Ray
c5f605e888
Merge pull request #862 from a3f/master
build: increment API_VERSION after release
2019-06-05 12:29:28 +02:00
Ahmad Fatoum
e103320ad8
build: increment API_VERSION after release
With v2.5.0 out, increment API_VERSION, so binaries dynamically linked
against the released raylib aren't accidentally paired with a development
or later released raylib that may be incompatible.
2019-06-05 08:58:24 +02:00
PompPenguin
7367140fb4 Update camera.h
Removed unused code for CAMERA_THIRD_PERSON.
2019-06-04 18:06:10 -04:00
PompPenguin
767ac9bc3e Update camera.h
Updated CAMERA_THIRD_PERSON
2019-06-04 17:29:18 -04:00
Ray
6f9c176d93 Support SSH keyboard on RPI 2019-06-04 18:09:17 +02:00
Reece Mackie
2eb7e96f4b Add MP3 config 2019-06-02 19:31:17 +01:00
Ray
093042b760 Comments review 2019-06-01 13:08:48 +02:00
Ray
1a32e76fbd Review compilation resources 2019-05-30 18:09:33 +02:00
Wilhem Barbier
e660621389 Fix jar_xm_reset 2019-05-29 17:15:11 +02:00
Ray
efdc6f87d5 Define standard examples size 2019-05-29 13:47:57 +02:00
Ray
4e0a5909e7 Hide progress bar 2019-05-28 12:08:04 +02:00
Ray
bef809d841 Setup version for release 2019-05-27 13:03:14 +02:00
Ray
241c4c8d14 Review easings PR 2019-05-25 01:33:03 +02:00
flashback-fx
d4487bcfa7 Use tgmath.h and float constants in easings.h 2019-05-24 19:07:59 +00:00
Ray
bcb83a3127
Merge pull request #850 from wbrbr/xm_fix
Add rewind for the XM music format
2019-05-23 17:17:17 +02:00
Wilhem Barbier
dec604bd71 Move jar_xm_reset to jar_xm.h 2019-05-23 16:40:15 +02:00
Wilhem Barbier
78817305c5 Add rewind for the XM music format 2019-05-22 22:16:18 +02:00
Wilhem Barbier
13a1744ca9 Fix #848 2019-05-22 20:29:34 +02:00
Ray
31bcaffd7d Added AudioContext Resume/Suspend button 2019-05-22 16:13:59 +02:00
Ray
f45691ca8d Rename function to follow javascript notation 2019-05-22 16:12:47 +02:00
Ray
7421ac9e24 Add code to resume blocked AudioContexts 2019-05-22 12:33:28 +02:00
Ray
a33b0002ee Review js formatting for better readability 2019-05-22 10:55:03 +02:00
Ray
be7e56f51e Move emscripten web shell to src 2019-05-22 10:40:51 +02:00
Ray
b1806f6600 Add config SUPPORT_SSH_KEYBOARD_RPI
Allow to reconfigure stdin to read input keys, this process could lead to undesired effects. Use with care.

Disabled by default.
2019-05-21 20:59:13 +02:00
Ray
0027868d1f Review Makefiles 2019-05-21 17:46:52 +02:00
Ray
8db2203bcc Review paths 2019-05-21 10:16:52 +02:00
Ray
316b6aa181 Reverted change that breaks mouse on web 2019-05-20 17:21:46 +02:00
Ray
72ab65277b Avoid some warnings 2019-05-20 16:37:44 +02:00
Ray
a43a7980a3
Update raylib version to 2.5 2019-05-20 11:21:55 +02:00
Ray
371abb0a26 Review glTF implementation formatting
Added comments for the future
2019-05-20 11:13:38 +02:00
Wilhem Barbier
e01a381aec Load glTF 2019-05-18 11:36:47 +02:00
Ahmad Fatoum
5ef7beb0c5
Makefile: move -x objective-c option before filename
From the Clang documentation[1]:
> -x<language>, --language <arg>, --language=<arg>
> Treat subsequent input files as having type <language>

Follow the advice. Fixes #840.
[1]: https://clang.llvm.org/docs/ClangCommandLineReference.html
2019-05-17 20:27:43 +02:00
Ahmad Fatoum
e1ecebfff9
Revert "fixed GLFW compiler flag for OSX"
This reverts #841 commit 97160fd970.
2019-05-17 20:27:42 +02:00
Ilya Kolbin
97160fd970 fixed GLFW compiler flag for OSX 2019-05-17 17:56:05 +03:00
Ray
cf4fde9456 Corrected bug on NEON 2019-05-16 16:10:52 +02:00
Ray
9994f16479 Review build config on web 2019-05-16 15:40:28 +02:00
Ray
25ac9bfb28 Update dr_flac, dr_mp3, dr_wav to latest version 2019-05-16 15:31:33 +02:00
Ray
579d932551 Update miniaudio to v0.9.4 2019-05-16 15:30:41 +02:00
Ray
5a1a0a3492 Corrected issue with multi-mesh obj models
Note that all meshes are loaded as a single one at this moment, loading should be improved!
2019-05-15 15:12:56 +02:00
Ray
0eece03205 Corrected issue with texture flip X 2019-05-15 12:22:29 +02:00
Ahmad Fatoum
4d8b9e595a
external: glfw: Revert "Added WinMM library"
This reverts commit 4773de26a5.

which adds -lwinmm at the wrong place. It should be in the raylib
linker flags, not GLFW's.
2019-05-15 08:14:24 +02:00
Ahmad Fatoum
e8a376c80c
CMake: add winmm.dll as Windows dependency
Fixes: e0e2346c22 ("NO SUPPORT_BUSY_WAIT_LOOP by default")
2019-05-15 08:11:41 +02:00
Ray
3f7b14aeed Corrected web issue 2019-05-14 18:02:11 +02:00
raysan5
d50aa32ec8 Update CMakeLists.txt 2019-05-12 21:51:19 +02:00
raysan5
561c486ceb Add WinMM library for linkage
Now it's required on Windows if not using a busy wait loop
2019-05-10 20:51:48 +02:00
Demizdor
509d9411a1 Fixed DrawTextRecEx() selection when wordwrap is ON 2019-05-10 13:57:24 +03:00
Ray
a2ed65aa14 Make code a bit clearer for beginners 2019-05-09 16:10:55 +02:00
Ray
46bac0ba2c Add comment in CheckCollisionSpheres() 2019-05-09 16:09:49 +02:00
ProfJski
1655463ba5
Update models.c 2019-05-08 14:14:57 -04:00
ProfJski
d3dae38449
Update CheckCollisionSpheres() to avoid sqrt
Square root calls are computationally expensive.  In this case, they can be avoided.  Instead of checking distance<RadA+RadB, check distance squared against (RadA+RadB) squared.  The dot product of Vector3Subtract(B,A) with itself gives distance squared, so I used this code instead of an element-by-element computation of distance squared.  The only downside is that your geometric code is very readable, whereas this is less so.
2019-05-08 13:54:12 -04:00
Ray
97c8a28aaa Remove trail spaces 2019-05-08 18:33:09 +02:00
Ray
4773de26a5 Added WinMM library
Required for high resolution timer
2019-05-07 22:56:38 +02:00
Ray
f6d1ffd4cd Tweak ON flag 2019-05-07 15:23:56 +02:00
Ray
9824387773 Added resource file for raylib.dll
Some minor tweaks
2019-05-07 15:16:14 +02:00
Ray
f6d1448da9 Review CMake option flags 2019-05-07 15:15:23 +02:00
Ray
e0e2346c22 NO SUPPORT_BUSY_WAIT_LOOP by default 2019-05-07 10:05:21 +02:00
Ray
afd90a5a56 Add comment tweak 2019-05-07 09:50:40 +02:00
Ray
528e164ac5 Corrected issue with wrong text measuring 2019-05-06 10:17:34 +02:00
Ray
80c8599e81 Avoid warnings pre-evaluating values
Variable operations inside the functions should be evaluated before the function operations.
2019-05-06 10:07:06 +02:00
Ahmad Fatoum
ae2e48c77f
CMake: don't use system GLFW headers if using built-in GLFW
This fixes the current CI failure.
2019-05-04 23:04:52 +02:00
Ahmad Fatoum
36d8a648f0
external: glfw: reinstate export of GLFW_PKG_{DEPS,LIBS}
We were doing this before, but it was deleted during the
last GLFW update. Readd it to fix the associated macOS CI failure.

Fixes: cd934c9f6 ("Update GLFW to 3.3.1")
2019-05-04 22:28:21 +02:00
Ray
c6b7f9c5b0 Some minor comments 2019-05-03 15:55:24 +02:00
Ray
f44888e466 Force HighDPI on macOS 2019-05-03 09:45:16 +02:00
Shiqing
780cefc3b0 Add SUPPORT_HIGH_DPI to CMakeOptions.txt 2019-05-03 12:24:20 +08:00
Ray
fc56f8d9ef Work on touch_as_mouse input -WIP- 2019-05-02 09:46:01 +02:00
Narice
a54af067c2
Added guards to PI define
Added guards to not redefine it if the user is using it with raylib.h
also added an 'f' at the end of the define to keep compliant with raylib's PI define
2019-05-01 22:03:32 +02:00
Narice
59c436c922
Defined PI (#822)
PI is not always defined in math.h, thus it must be defined in this header
2019-05-01 21:41:51 +02:00
Ray
c9025ed205 Corrected issue with texture rendering
Not sure if already corrected...
2019-05-01 16:15:33 +02:00
Ray
bb2841a26d WARNING: Support high DPI displays
This change could break things. So, I created SUPPORT_HIGH_DPI flag to enable it (disabled by default).

Basically, it detects HighDPI display and scales all drawing (and mouse input) appropiately to match the equivalent "standardDPI" screen size on highDPI. It uses screenScaling matrix to do that.

This scaling comes with some undesired effects, like aliasing on default font text (keep in mind that font is pixel-perfect, not intended for any non-rounded scale factor).

The only solution for this aliasing would be some AA postpro filter or implementing the highDPI scaling in a different way: rendering to a texture and scaling it with FILTER_BILINEAR, check `core_window_scale_letterbox.c` example for reference.

Use at your own risk.
2019-05-01 14:30:36 +02:00
raysan5
100c82e369 Review formatting to follow raylib style 2019-04-28 18:23:21 +02:00
Reece Mackie
a51f3be38f Fix web 2019-04-28 16:53:20 +01:00
Reece Mackie
86eba24970 This is dumb... 2019-04-28 16:08:07 +01:00
Reece Mackie
e69688437a Why does visual studio keep using tabs!!! 2019-04-28 16:06:56 +01:00
Reece Mackie
d42965b0b0 Fix tabs 2019-04-28 16:05:45 +01:00
Reece Mackie
3244ec2a1d Add another UWP comment for clarity 2019-04-28 16:03:23 +01:00
Reece Mackie
7ca856f9b7 Formatting changes 2019-04-28 15:59:39 +01:00
Reece Mackie
f8c6226826 Merge branch 'master' into gamepad-rework 2019-04-28 15:54:50 +01:00
raysan5
40940f4398 Some formatting review 2019-04-28 16:45:23 +02:00
raysan5
7c10f971c1 Expose enable/disable backface culling
Some tweaks on BeginVrDrawing()
2019-04-28 16:03:59 +02:00
raysan5
604a8c0b78 WARNING: Functions renamed
Two functions have been renamed for coherence; previous naming was confusing for several users:

 - DrawPolyEx()         ---> DrawTriangleFan()
 - DrawPolyExLines() ---> DrawLineStrip()
2019-04-28 14:45:46 +02:00
Reece Mackie
e0580e6322 Fix merge 2019-04-27 21:59:01 +01:00
raysan5
e8c413b7cd Review UWP implementation
Basically, formating review and some variables naming to follow raylib conventions.
2019-04-27 22:47:03 +02:00
Reece Mackie
c1f33eb817 Line cleaning 2019-04-27 21:43:32 +01:00
Reece Mackie
56ded3259d More work, UWP now supports it and deleted old gamepads 2019-04-27 21:36:57 +01:00
Reece Mackie
9434dc588a Merge branch 'master' into gamepad-rework 2019-04-27 20:51:04 +01:00
Reece Mackie
b911cefab3 First gamepad stuff 2019-04-27 20:49:33 +01:00
Reece Mackie
2de1f31821 UWP Support Overhaul (#819)
* Working build

* Fix build again, stop deleting files

* Hotfix crash, needs investigating

* Remove VS2015.UWP, I cannot update the project

* Lots of UWP work, added keyboard and mouse press support. Still need to finish scroll wheel, mouse position and cursor hiding, plus other stuff that I haven't seen yet.

* Implemented a ton more things, added BaseApp.h to provide common code to UWP apps.

* Remove constant window dimensions

* Enable and Disable cursor support.

* Actually use mouse delta

* Gamepad Support

* Cleaning and small tweaks

* Restore original example.

* Update comment

* Use 'Messages' to handle the cursor functions so code is more portable.

* Comment

* Comment unused message fields and use vector for mouse pos instead.

* Move messages to utils.h and use messages for everything. No more plat-specific code in raylib.h

* Working build

* Fix build again, stop deleting files

* Hotfix crash, needs investigating

* Remove VS2015.UWP, I cannot update the project

* Lots of UWP work, added keyboard and mouse press support. Still need to finish scroll wheel, mouse position and cursor hiding, plus other stuff that I haven't seen yet.

* Implemented a ton more things, added BaseApp.h to provide common code to UWP apps.

* Remove constant window dimensions

* Enable and Disable cursor support.

* Actually use mouse delta

* Gamepad Support

* Cleaning and small tweaks

* Restore original example.

* Update comment

* Use 'Messages' to handle the cursor functions so code is more portable.

* Comment

* Comment unused message fields and use vector for mouse pos instead.

* Move messages to utils.h and use messages for everything. No more plat-specific code in raylib.h

* Tested some desktop stuff and added projection matrix updates for window resizing.

* Fixed big bad mouse bug

* Fix alt buttons and add hack to combat flickery key presses (far from perfect)

* Remove debug code

* Final commit

* Well, so I thought

* Wow, i am bad

* Remove packages folder

* Remove useless include

* Apply requested changes and fix linux build

* Try to stop packages folder

* Have we fixed the formatting properly?

* Third time's the charm?

* Where did this come from?

* Re-fix

* Autoformat is gonna kill

* Fixed XBOX ONE Support

* Fix tabs
2019-04-27 20:33:51 +02:00
Ray
f37e55a77b Reverted HiDPI changes, they break 2D mode on HiDPI :( 2019-04-25 13:45:37 +02:00
Ray
c76863b289 Working on HiDPI support -WIP-
Trying to define a global transformation matrix to scale all content for HiDPI.
2019-04-25 11:39:45 +02:00
Ray
04ed4dd40c Renamed internal variable
Probably required for HiDPI support
2019-04-25 11:02:13 +02:00
Demizdor
86f9ea6e7a Fixed selection in DrawTextRecEx() 2019-04-24 22:08:57 +03:00
Ray
cc1dd6b410 Review camera module
This module still requires further work but 3rd person camera is less broken now...
2019-04-23 23:27:08 +02:00
Demizdor
0e683005b4 Fix for DrawRectangleRounded 2019-04-23 20:48:00 +03:00
Ray
0c567cd259 WARNING: Issues on web building
Found some issues when building for web using latest emscripten 1.38.30, traced the error and found that eglGetProcAdress does not return function pointers for VAO functionality, supported by extension.

It requires more investigation but now it works (avoiding VAO usage)
2019-04-23 18:10:38 +02:00
Ray
3aafa9d5ba Set a version for rGIF library 2019-04-23 16:01:38 +02:00
Ray
372d77957f Update STB libraries to latest version 2019-04-23 16:01:18 +02:00
Ray
4ad81ba2d4 Alloc custom allocators on standalone mode 2019-04-23 15:14:15 +02:00
Ray
87b75a6c95 Review issues on OpenGL 1.1 2019-04-23 15:12:08 +02:00
Ray
10c2eea14b Correct RL_FREE bug 2019-04-23 15:07:28 +02:00
Ray
e67ebabb02 Support custom memory management macros
Users can define their custom memory management macros.

NOTE: Most external libraries support custom macros in the same way, raylib should redefine those macros to raylib ones, to unify custom memory loading. That redefinition is only implemented as example for stb_image.h in [textures] module.
2019-04-23 14:55:35 +02:00
Ray
8ed71b9d5a Some tweaks to custom memory management system 2019-04-23 14:51:32 +02:00
Ray
9835be7b7a Remove unnecesary GLFW deps (used by examples) 2019-04-23 14:50:58 +02:00
Ray
7e444d5a45 Renamed file to avoid breaking build 2019-04-22 22:47:50 +02:00
Ray
e26cc01ba8 More rnet review to avoid warnings/errors 2019-04-22 21:50:45 +02:00
Ray
2d4c2ff351 Review rnet errors 2019-04-22 20:54:50 +02:00
Ray
c7907a203b Update miniaudio to v0.9.3 2019-04-22 20:32:11 +02:00
Ray
f7d978e726 Reviewed rnet inclusion
Move to own header for a more deep review of the module
2019-04-22 20:27:54 +02:00
Jak
4b8d06f501 [rnet] module WIP (#809)
Added experimental network module
2019-04-22 20:03:00 +02:00
Ray
e41cb774c2
Merge pull request #789 from myd7349/fix-cmake-for-win32
Fix CMake support on Win32
2019-04-22 19:32:15 +02:00
Ray
cd934c9f66 Update GLFW to 3.3.1 2019-04-22 19:00:43 +02:00
Ray
a0449594e4 Merge branch 'master' of https://github.com/raysan5/raylib 2019-04-22 18:58:38 +02:00
Ray
152b7471e9 Comment HiDPI window request
At least until a proper solution is found!
2019-04-22 18:46:05 +02:00
Ray
9ace10ff73
Merge pull request #810 from Demizdor/unicode_implementation
Unicode implementation
2019-04-22 18:34:17 +02:00
Ray
2249f12304 Expose rlgl functions on shared libraries 2019-04-22 18:25:30 +02:00
Demizdor
f3a5a6871d Initial unicode implementation for UTF8 encoded text 2019-04-21 12:27:46 +03:00
Ray
8c22f685d1 Check buffer overflow 2019-04-14 22:29:14 +02:00
Ray
d690e734f9
Merge pull request #799 from flashjaysan/master
Update raymath.h
2019-04-13 15:08:28 +02:00
flashjaysan
310d1d1589
Update raymath.h
Removed a useless semicolon.
2019-04-13 14:35:07 +02:00
Björn Wahlstrand
7cc8faf7da Use typedef rather than #define in order to avoid issues in application code 2019-04-12 21:41:30 +02:00
Ray
fc5dd5d99f FLAG not supported on web GLFW implementation 2019-04-12 13:44:16 +02:00
Ray
df90ba6e46 WARNING: Added GLFW hint to support hi-DPI
This needs to be tested on a hi-DPI monitor, probably requiring a FLAG to enable it would be a good idea...
2019-04-12 13:31:05 +02:00
Ray
4e58d4102c Corrected typo 2019-04-12 13:29:37 +02:00
Ray
30d51ec26c Reorganize struct 2019-04-12 11:29:01 +02:00
Ray
01367fcb1e Review cubemap generation 2019-04-11 16:11:54 +02:00
Ray
a28dfd4a7b Corrected standalone usage 2019-04-11 15:54:10 +02:00
Ray
5bfa675350 Review VR simulator mechanism
- No default VR device parameteres inside raylib
- VR device parameter should be provided by user
- VR distortion shader should be provided by user
2019-04-11 13:53:01 +02:00
Ray
1934f2a2f4 Some tweaks 2019-04-11 00:11:11 +02:00
Ray
6168a4ca37 Comments review 2019-04-10 23:50:48 +02:00
Ray
45c820eeb4 Set default white texture for diffuse mat 2019-04-10 22:39:42 +02:00
Ray
21092266b5 Check textures available before loading 2019-04-10 00:44:24 +02:00
Ray
802afe8fe5 Replaced size_t by unsigned int 2019-04-10 00:34:46 +02:00
myd7349
148eefb9bb Resolve CI failure with MinGW 2019-04-09 20:41:40 +08:00
Ray
f939f6abc2 Update Makefile 2019-04-09 13:23:56 +02:00
Ray
32ccecb8ca Start working on glTF loading... 2019-04-09 13:23:51 +02:00
myd7349
61181f2c49 Fix CMake support on Win32 2019-04-09 18:03:25 +08:00
Ray
b8ada4b877 Review creation years 2019-04-08 12:25:13 +02:00
ChillerDragon
f21761fbbb Happy new year 2019 2019-04-07 17:49:12 +02:00
Ray
9282b8ba83 ADDED: SetShaderValueTexture()
Some tweaks
2019-04-05 17:08:46 +02:00
Ray
c600dd0766 Review PBR shaders
Issue was related to vertex tangent attibutes not uploaded to GPU, a quick solution was implemented for new vertex attributes loading for already existing meshes... I don't like it specially but it will work for now.
2019-04-05 16:43:09 +02:00
Ray
0f9fe34c3a Start setting things up for raylib 2.5 2019-04-05 13:44:04 +02:00
Ray
92733d6695 BIG UPDATE: New models functions for animations!
Multiple functions added and some reviewed to adapt to the new multi-mesh, multi-material and animated models.
2019-04-05 13:15:56 +02:00
Ray
a728376cdf Rename enum type 2019-04-05 13:13:10 +02:00
Ray
28b9de661d Minor tweaks 2019-04-05 13:12:54 +02:00
Ray
a103086443 Removed trail spaces 2019-04-04 13:50:52 +02:00
Ray
3e1e7d740f Review merged PR formatting
Removed trail spaces
2019-04-04 13:50:28 +02:00
Ray
6ecd8249bc
Merge pull request #787 from Demizdor/master
Added `DrawRoundedRect()` and `DrawRoundedRectLines()`
2019-04-04 13:42:20 +02:00
Ray
d89d24c5e8 BIG UPDATE: Support model animations! 2019-04-04 13:33:54 +02:00
Ray
22dece2935 Animated vertex renaming 2019-04-04 13:32:17 +02:00
Ray
f1cbdd6b3a Corrected some issues
- Support compiling for OpenGL 1.1
- Free meshes/materials memory after usage...
2019-04-01 18:22:56 +02:00
Ray
86212e8462 Support material loading from OBJ/MTL 2019-04-01 12:41:32 +02:00
Ray
e5edbb7104 Reviewed OBJ loading implementation -WIP-
One mesh files can be loaded correctly

MISSING:
 - Multimesh OBJ loading
 - Materials loading
2019-04-01 12:17:29 +02:00
Ray
fe702cd6a2 Implementing LoadOBJ() -WIP-
It seems obj loading is working ok but there is some problem with drawing...
2019-04-01 00:16:56 +02:00
Ray
3e806ad9d4 Reviewed data assignation 2019-04-01 00:15:45 +02:00
Demizdor
eda982e261 Reimplemented DrawRoundedRectLines() 2019-03-31 16:15:40 +03:00
Vlad Adrian
ecbd17910d
Added DrawRoundedRectLines() 2019-03-31 13:22:50 +03:00
Vlad Adrian
1415d514ba
Update raylib.h 2019-03-31 13:20:45 +03:00
Demizdor
a28023b58f Added DrawRoundedRect() 2019-03-30 22:18:29 +02:00
Ray
a197f40bb4 Default to white cube mesh if not loaded 2019-03-29 20:22:30 +01:00
Ray
6f371dab08 Some formatting review 2019-03-29 19:43:27 +01:00
Ray
afab8b36ab
Merge pull request #786 from Demizdor/draw_ring
Added DrawRing(), DrawRingLines() and DrawCircleSectorLines()
2019-03-29 17:28:37 +01:00
Ray
19debd2b4e Review some warnings 2019-03-29 17:28:10 +01:00
Ray
8a73c5d0b4 Replace custom OBJ/MTL implementations by tinyobj_loader -WIP- 2019-03-29 17:15:22 +01:00
Ray
a643dc4ca0 WARNING: Redesigned model struct for multi-meshes
This is quite a big change, Model struct has been redesigned to support multiple meshes and multiple materials, most 3d fileformats contain multiple meshes and reference multiple materials.

Consequently, multiple functions have been reviewed.

LoadOBJ(), LoadIQM(), LoadGLFT() now return a Model.

Current LoadOBJ() is not valid anymore, actually, tinyobj_loader_c library is considered for replacement.
2019-03-29 16:48:23 +01:00
Demizdor
ab9c6da26f Added DrawRing(), DrawRingLines() and DrawCircleSectorLines() 2019-03-29 16:22:09 +02:00
Ray
876c64b1e5 WARNING: This could break something
If we have no data to update/draw, we avoid update/draw. On `DrawBuffersDefault()` if no vertes data is available nothing is drawn but some globals: vertexData, projection, modelview, draws... are reseted.

There shouldn't be any problem if we don't touch those globals in case no vertex have been processed but, just in case, I warn about it.
2019-03-29 12:27:50 +01:00
Ray
69656cb090 Added comment 2019-03-29 12:23:02 +01:00
Ray
8e98fa8754
Merge pull request #785 from Berni8k/master
RaspberryPi Keyboard input with evdev
2019-03-28 22:26:48 +01:00
Berni8k
ea96d0afea Fixes compile error when SUPPORT_GESTURES_SYSTEM is undefined on RPi 2019-03-28 20:38:13 +01:00
Berni8k
b1e914bbf3 RaspberryPi Keyboard input with evdev
Based on pull request from user "DarkElvenAngel", better integrated with the current event system and enhanced with buffer to help with fast typing at low framerates.
2019-03-28 19:46:39 +01:00
Ray
88dfd2ab23 REDESIGNED: DrawCircleSector() 2019-03-28 18:53:41 +01:00
Ray
186d34827a Align LINES and TRIANGLES drawing
When drawing LINES or TRIANGLES, vertex are accumulated in same buffer as QUADS and new draw calls are registered but QUADS drawing uses an index buffer for optimization, so, when adding LINES/TRIANGLES vertices we need to make sure next draw calls for QUADS keep aligned with indices buffer.

To get that we just add some alignment vertex at the end of the LINES/TRIANGLES draw calls, to make them multiple of 4 vertex.
2019-03-28 18:05:32 +01:00
Ray
165ced9428 Small tweak 2019-03-28 13:03:25 +01:00
Ray
7524fdc3e1 Review gestures disable flag 2019-03-25 12:30:20 +01:00
Ray
c001bdb2de Checking issue with sound volume
It seems individual sound volume level is not set...
2019-03-20 10:57:41 +01:00
Ray
aa00d77110 Support additional modules building -WIP-
The idea is supporting additional raygui and physac modules building with raylib but those modules are distributed as header-only libraries and it makes a bit dificult to build them inside raylib...
2019-03-18 18:46:39 +01:00
raysan5
0bbf857b00 Review build release path, default to src directory 2019-03-17 12:21:51 +01:00
raysan5
f02a0334d8 ADDED: GetScreenData() 2019-03-17 11:58:02 +01:00
raysan5
2a92d6af3e Support no-audio no-models modules compilation
Renamed flags for convenience.
2019-03-16 13:02:16 +01:00
raysan5
a61d3ad512 SetWindowIcon() redesigned
Now core does not depend on textures module directly, only through text module.
2019-03-16 13:00:46 +01:00
Ray
29d1323bd1 Work on ImageResizeCanvas() 2019-03-15 13:34:09 +01:00
Ray
cbfa35a39e REVIEW: ImageResizeCanvas() -WIP- 2019-03-15 00:56:02 +01:00
Ray
ff1bcfb2fa Remove comment 2019-03-13 10:26:33 +01:00
Ray
5e8427a8b5 REDESIGNED: GetFileNameWithoutExt()
Removed possible memory leak when using this function
2019-03-13 10:07:01 +01:00
Ray
b6dd31c653
Merge pull request #775 from rsachetto/master
Adding DrawCubeWiresV for convenience
2019-03-13 09:42:56 +01:00
Ray
32e6a419c1 Reorder one flag 2019-03-12 16:29:41 +01:00
Ray
477ea4d660 Support external config flags 2019-03-12 16:00:26 +01:00
Ray
76e968f6b7 Updated audio library: mini_al -> miniaudio 2019-03-12 11:54:45 +01:00
Rafael Sachetto
9f54a69cec Adding DrawCubeWiresV for convenience 2019-03-08 15:06:17 -03:00
Ray
2f97a3f835 Proposed Model struct review 2019-03-05 16:46:48 +01:00
Ray
2e99c6cefb ADDED: IsWindowResized() 2019-03-04 22:58:20 +01:00
raysan5
d7fd6e0f1a Corrected issue with possible 0 division
Reported on rfxgen tool, it crashes on some parameters
2019-03-02 14:29:04 +01:00
Ray
36fa0207f2 Some spacing review 2019-02-28 23:06:37 +01:00
Ray
50da9f623e Return value in GetClipboardText() 2019-02-28 22:25:27 +01:00
Ray
d679a97e92 Removed some NULL pointer checks 2019-02-28 18:39:58 +01:00
Skabunkel
a90c9c5ade Removed unnecessary 2019-02-28 17:50:47 +01:00
Ray
b570b32337 Added some comments on #594 2019-02-28 16:28:49 +01:00
Skabunkel
fc11b360af ... tabs again... _facepalm_ 2019-02-24 01:57:31 +01:00
Skabunkel
03f7483537 Missed one 2019-02-24 01:56:17 +01:00
Skabunkel
f2d5cddfc8 Fixed segmentation fult created by quick fix 2019-02-24 01:48:29 +01:00
Skabunkel
374b4d3faf Tabs to spaces 2019-02-24 00:17:54 +01:00
Skabunkel
795c5e949d #764 - Quick fix that clears alot of memory, there seems to be more hiding somewhere else. 2019-02-24 00:13:50 +01:00
ftk
8ad608888e fix audio pitch 2019-02-23 10:36:25 +00:00
Ray
374811c440 Change ternary operator formatting 2019-02-22 13:13:11 +01:00
Ray
8382ab9ada
Merge pull request #761 from Demizdor/master
Fixed height bug in DrawTextRecEx()
2019-02-22 12:15:19 +01:00
Ray
a886f5e743 Remove TABS 2019-02-22 12:12:21 +01:00
Demizdor
40a76cf021 Fixed height bug in DrawTextRecEx() 2019-02-22 12:27:20 +02:00
Ray
641895b5ba Remove end-line spaces 2019-02-21 18:45:19 +01:00
Ray
75298b50fb Corrected issue with OpenURL()
It was not working on Windows 10
2019-02-21 11:28:10 +01:00
Rob Loach
497fb4e49f
Remove compiled libraylib.a 2019-02-18 23:36:29 -05:00
Ray
d62652c5b2 Update cgltf library
Added some comments to loader function...
2019-02-18 18:46:17 +01:00
Ray
5d0ea7f110 Corrected issue #758 2019-02-18 16:43:01 +01:00
Jens Pitkanen
eed69d4127 Fix the image manipulation config flag 2019-02-15 17:56:36 +02:00
Jens Pitkanen
f9963d4ed4 Fix config.h flags 2019-02-14 13:52:18 +02:00
Ray
bc86b0f78b Corrected path issue 2019-02-14 00:06:05 +01:00
Ray
981be58d03 Corrected issue #750 2019-02-13 17:49:02 +01:00
Ray
297dd641e8 ADDED: DrawCircleSector() 2019-02-13 00:06:06 +01:00
Ray
e46c23128e Avoid AudioBuffer symbol collision on macOS
raudio AudioBuffer internal struct collides on macOS with CoreAudio same name struct. In this case struct has been renamed because is internal to raudio... but probably all system should be redesigned.
2019-02-12 15:53:34 +01:00
Ray
c379e04628 Update mini_al.h 2019-02-12 13:01:43 +01:00
Ray
43b199d534 Corrected issue 2019-02-12 12:31:26 +01:00
Ray
944a388b1b Include mini_al directly, no separate module 2019-02-12 12:18:01 +01:00
Ray
e7466eb0c4 Corrected function usage 2019-02-12 00:40:10 +01:00
Ray
d00b8f9ffc Updated external libraries 2019-02-12 00:25:21 +01:00
Ray
e996fe2ff5 ADDED: GetClipboardText(), SetClipboardText() 2019-02-11 18:03:06 +01:00
Ray
6dbec47488 Redesigned TextSplit() function 2019-02-11 18:02:32 +01:00
Jak Barnes
1e15616b69 Fixed as issue where strrchr in LoadBMFont would only look for forward slashes, instead of backslashes causing strlen to fail on a null string 2019-02-10 16:01:44 +00:00
Ray
366313bfd0 Update rlgl.h 2019-02-06 18:07:34 +01:00
Ray
68a2bf0e6b Update rlgl.h 2019-02-06 17:35:26 +01:00
Ray
7370ae7b82 Update rlgl.h 2019-02-06 16:51:36 +01:00
Ray
d356b1d1cc Reviewed fbo creation and VR system 2019-02-06 14:21:44 +01:00
Ray
7615512af1 ADDED: TextToInteger()
Custom implementation that returns -1 if it fails (no negative values supported)
2019-02-06 14:20:14 +01:00
Ray
d0d81ea545 Review ExportMesh() header 2019-02-06 10:51:06 +01:00
Ray
c200642887 Review issue with aspect ratio...
...while using a RenderTexture combined with 3d mode
2019-02-04 17:10:12 +01:00
Ray
fef7bbb495 Delete libraylib.a 2019-02-04 16:29:01 +01:00
Ray
db56d432e4 ADDED: rlLoadTextureDepth()
REDESIGNED: rlLoadRenderTexture()
ADDED: rlRenderTextureAttach()
ADDED: rlRenderTextureComplete()
2019-02-04 16:28:17 +01:00
Ray
fce48e85f4 ADDED: LoadTextureCubemap()
Probably uncomplete, not tested yet...
2019-02-04 13:27:36 +01:00
Ray
5755c5e310 Review DrawTextRecEx() formatting 2019-02-04 09:57:02 +01:00
Ray
01ace743d0
Merge pull request #734 from Demizdor/master
Added DrawTextRecEx()
2019-02-03 20:47:13 +01:00
Ray
9740e5d3ed Update utils.c 2019-01-29 12:45:10 +01:00
Ray
3363cfa61a Corrected log naming 2019-01-29 12:33:08 +01:00
Ray
30c025f913
Merge pull request #735 from RobLoach/patch-1
Fix clang++ compilation errors
2019-01-24 15:17:51 +01:00
Rob Loach
90d5bb79e5
Fix font cannot be narrowed to type 'int'
Getting the following strict error....

```
src/text.c:117:105: error: constant expression evaluates to 2398692640 which
      cannot be narrowed to type 'int' [-Wc++11-narrowing]
...0x00000000, 0x00000000, 0x00200020, 0x0001b000, 0x00000000, 0x00000000, 0x8ef92520, 0x00020a00...
                                                                             ^~~~~~~~~~
```

Switching it to an unsigned int fixes it.
2019-01-23 22:28:10 -05:00
Rob Loach
d897e14161
Revert the screenWidth change 2019-01-23 20:08:51 -05:00
Rob Loach
feb6afcd61
Fix clang++ compilation errors
clang was complaining about the type conversions. For example...
```
node_modules/raylib-src/src/core.c:1888:15: error: cannot initialize a variable of type 'char *' with an
      rvalue of type 'void *'
        char *cmd = calloc(strlen(url) + 10, sizeof(char));
              ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
2019-01-23 20:07:47 -05:00
Demizdor
6f66425946 Added DrawTextRecEx() 2019-01-23 21:36:54 +02:00
Rob Loach
30ea4bdcce
Remove libraylib.a 2019-01-23 00:46:29 -05:00
Ray
4467292a2d Review last PR formatting 2019-01-21 10:32:14 +01:00
Ray
e91c84e33a Remove comment 2019-01-21 10:25:59 +01:00
Ray
9b97cf6972
Merge pull request #731 from MarcoLizza/reorganizing-logging
Reorganizing logging
2019-01-21 10:09:51 +01:00
Marco Lizza
343fef4aa4 Changing enums, now referenced as int. 2019-01-21 10:05:40 +01:00
Marco Lizza
aaced97b12 Fixing badly (redefined) enums. 2019-01-21 10:02:53 +01:00
Marco Lizza
f1d13aa469 Adding function to control the "exit-on-error" behaviour. 2019-01-20 22:24:41 +01:00
Marco Lizza
932e9dbd09 Fixing logging level configuration API. 2019-01-20 22:24:09 +01:00
Marco Lizza
78904d2bcc Fixing TraceLog function to work on levels. 2019-01-20 22:23:07 +01:00
Marco Lizza
c1c801e5c3 Reworking log level as incremental. 2019-01-20 22:22:21 +01:00
raysan5
0d2cfce18e Review raudio comments 2019-01-19 16:51:41 +01:00
raysan5
d41e50f866 Allow ShowWindow usage ;) 2019-01-19 12:34:04 +01:00
Ray
3703430f57 Renamed ShowWindow() to UnhideWindow() -WIP-
Function provisional renaming... that's not the end of this issue...
2019-01-17 16:29:36 +01:00
Ray
a43f87e391 Crazy test 2019-01-16 17:25:48 +01:00
Ray
ced7321089 Readded alpha clear to rlReadScreenPixels()
When capturing framebuffer, if some element with transparency has been drawn, it retrieves that data... it could be a bit annoying in some situations because we could expect color compositing with background color... It depends on the situation and our needs... but most of the time we don't want that transparency on screenshots.
2019-01-16 10:04:59 +01:00
Ray
c93bf336fe Update utils.c 2019-01-15 12:32:41 +01:00
Ray
f1bcc131dc Let user choose to clear scissor area 2019-01-15 12:08:11 +01:00
Ray
60967d8cdc
Merge pull request #723 from MarcoLizza/trace-log-failing-on-OTHER
Trace log failing on other
2019-01-15 12:04:28 +01:00
Marco Lizza
efcb68ceca Fixing LOG_OTHER missing. 2019-01-14 17:09:41 +01:00
Marco Lizza
ce98cc6285 Adding MACRO constant to specify the internal buffer size. 2019-01-14 17:09:17 +01:00
Ray
42bfa7e3ff Make sure no parameters can be passed 2019-01-14 13:49:56 +01:00
Ray
e811279a75 Review code formatting on ColorFromHSV()
Following raylib notation rules
2019-01-14 13:49:17 +01:00
Demizdor
da1714f411 Added ColorFromHSV() 2019-01-14 12:49:00 +02:00
Ray
49a69e3e27 Allow capturing transparent background 2019-01-11 18:55:04 +01:00
Ray
e13975beeb Some security checks added 2019-01-11 18:54:48 +01:00
Ray
25205b5113 Reverted flag value (but kept order)
This specific change could be very annoying for people already using FLAG_MSAA_4X_HINT, their programs will compile correctly but window won't be shown...
2019-01-11 12:21:02 +01:00
Ray
7132ba44db Reviewed latest PR 2019-01-10 17:06:26 +01:00
Ray
56173d7cf4
Merge branch 'master' into window-visibility 2019-01-10 16:57:15 +01:00
Marco Lizza
6056a2a5cf Reworking API upon suggestion. 2019-01-10 16:43:21 +01:00
Ray
93471b0a7c WARNING: Renamed module: audio -> raudio
Planning to promote raudio module as a simple and easy-to-use front-end for the amazing mini_al library, so the name change.

Name comes from raylib-audio but in spanish it also remembers to word "raudo", meaning  "very fast", an analogy that fits perfectly to the usefulness and performance of the library!

Consequently, raylib version has been bumped to 2.4-dev.
2019-01-10 16:32:40 +01:00
Marco Lizza
a15251bcdb Adding window visibility functions. 2019-01-10 14:55:19 +01:00
Marco Lizza
5adcc30a2e Adding window visibility configuration flag. 2019-01-10 14:54:55 +01:00
Ray
64fd131ed5 Some improvements on SetShaderValue()
- Unsigned int not supported on OpenGL ES 2.0 -> Removed
- Reorganized enum -> Removed BOOL (not uniformType)
- Support sample2D uniform type
2019-01-10 12:28:23 +01:00
Ray
55f8dbc755 WARNING: Redesigned SetShaderValue() 2019-01-10 11:25:26 +01:00
Ray
35bcbd1b60
Merge pull request #718 from MarcoLizza/shaders-uniforms-array
Shaders uniforms array
2019-01-09 17:01:59 +01:00
Marco Lizza
73597332b6 Adding uniform array support for shaders. 2019-01-09 16:18:00 +01:00
Ray
010c655f79 Added required define on TCC compiler 2019-01-08 10:10:20 +01:00
Ahmad Fatoum
8bc4050377 Revert "core: workaround window not being rendered till moved on macOS Mojave"
This reverts commit 1fe6d9fc06.

Because upstream GLFW now contains a fix.
2019-01-08 09:03:22 +01:00
Ahmad Fatoum
c3d2b1b184 glfw: Update GLFW to current master
glfw/glfw@5595fa3ae6 implements a proper fix for the macOS Mojave
problem of OpenGL windows not being rendered until moved or manually
updated.

Pull in the current master and rebase the three patches we have on top:
- two commits we have for reuse of the GLFW CMake build system for Wayland
It hasn't yet to be acknowledged upstream.
- one commit removing #include <windows.h> in glfw3native.h to avoid
duplicate declarations.

Fixes #655 and #665.
2019-01-08 09:03:22 +01:00
Ahmad Fatoum
f719de4bf8 external: glfw: Ignore {docs/examples/tests}/ directories 2019-01-08 09:03:22 +01:00
raysan5
1036de389a Some minor tweaks analyzing code
Specific textures generation code is quite redundant and not flexible for the user, I'm trying to figure out some easy way to allow raylib users to do the same without needing those functions (very specific and shader dependant). RenderTexture loading and Cubemap textures support must be improved.
2019-01-06 21:07:09 +01:00
raysan5
f4fe7f4d4c Review BRDF texture generation
Actually, that function should be redesigned...
2019-01-06 15:49:29 +01:00
raysan5
5c614f6975 Some code tweaks 2019-01-05 19:24:42 +01:00
raysan5
a41cc08f9b Support screenshots and GIF capturing on Android and Web 2019-01-05 18:03:09 +01:00
raysan5
1038e79b36 Corrected issue with text measure on Latin-1 chars
Considering chars inputs come in UTF8 form!
2019-01-05 15:04:18 +01:00
raysan5
0bacc978c3 Corrected issue on web 2019-01-04 15:48:25 +01:00
raysan5
644eddda11 REMOVED: ShowLogo()
Same functionality could be achieved using FLAGS... but also considering removing raylib logo animation...
2019-01-03 13:55:59 +01:00
raysan5
d427f17210 REVIEWED some functions parameters
Decided to allow user to provide values directly instead of requiring a Vector2 struct, probably more confortable to use.

 - SetMousePosition()
 - SetMouseOffset()
 - SetMouseScale()
2019-01-03 13:53:20 +01:00
Ray
0333e5b6c2
Merge pull request #711 from ChrisDill/SetMouseOffset
Added SetMouseOffset
2019-01-03 13:35:28 +01:00
ChrisDill
f9c43dc379 Mouse functions changed
- SetMouseScale changed to take in a Vector2.
- Added mouseOffset global which is used in mouse read functions.
2019-01-02 19:09:34 +00:00
Ray
30e79b4727
Merge pull request #708 from BaZom/master
utils: declare funopen only on Android
2019-01-02 17:41:43 +01:00
raysan5
63f9f91ea8 Avoid crashing if music file not loaded 2019-01-02 14:05:20 +01:00
ChrisDill
a707574f33 Default mouseScale fixed
- Didn't set X and Y values correctly.
2019-01-02 10:46:19 +00:00
ChrisDill
8933298864 Added SetMouseOffset
- Changed mouseScale to Vector2.
- Added SetMouseOffset to change XY of mouseScale.
2019-01-02 10:14:55 +00:00
raysan5
d5735720b0 Update Makefile for Emscripten 2019-01-01 20:53:30 +01:00
raysan5
9740b1eb70 Update mini_al to latest version (Web Audio / AAudio backends) 2019-01-01 20:52:57 +01:00
Basem Abughallya
9a40529ae7 utils: declare funopen only on Android
funopen is only needed on Android, so declare it
only there. This fixes following MinGW build failure:

utils.c:50:7: error: conflicting types for ‘funopen’
 FILE *funopen(const void *cookie, int (*readfn)(void *, char *, int),
       ^~~~~~~
In file included from utils.c:45:0:
/usr/include/stdio.h:586:7: note: previous declaration of ‘funopen’ was here
 FILE *funopen (const void *__cookie,
       ^~~~~~~
2018-12-29 17:44:47 +01:00
raysan5
d0d99d3503 Corrected issue with MOD/XM loop 2018-12-29 15:07:03 +01:00
raysan5
0619571149 ADDED: DrawTextRec() and example 2018-12-29 14:44:28 +01:00
raysan5
95d3f24c68 Use QUADS for DrawPolyEx() 2018-12-29 00:29:28 +01:00
raysan5
a072385c6d Corrected issue on draws resetting 2018-12-29 00:00:52 +01:00
raysan5
414c3ee1f9 ADDED: DrawTextureQuad()
Useful for tiling and offset parameters definition.
2018-12-26 23:44:16 +01:00
raysan5
91a7b0e5ef Corrected typo 2018-12-26 13:57:10 +01:00
raysan5
01338b0a14 WARNING: BREAKING CHANGE
Added a bunch of useful text management functions.
Consequently, some already available functions like `FormatText()` and `SubText()` has been renamed for consistency. Created temporal fallbacks for old names.
raylib version bumped to 2.3.
2018-12-26 13:26:34 +01:00
raysan5
9a8320c52b REVIEWED: DrawRectanglePro() 2018-12-26 10:51:13 +01:00
raysan5
af4a177af4 Corrected issue with internal buffer
Problem aligning provided vertex data to multiples of four, because main buffer is intended to bu used with indexed quads... but also shared with triangles and lines.
2018-12-26 10:34:45 +01:00
raysan5
7b8965eb38 Support float texture data on OpenGL ES 2.0 2018-12-25 15:19:25 +01:00
raysan5
35a6e9a074 Corrected issue with MOD playing
Despite issue is corrected, now module loop doesn't work...
2018-12-25 15:18:35 +01:00
raysan5
96207a8a02 REVIEWED: LoadFontEx()
Changed parameters order for consistency with LoadFontData() and other functions when an array is passed by parameter and array size is the following parameter.
2018-12-25 15:17:42 +01:00
raysan5
7fb2459916 Added some TODO note
OpenGL extensions loading could be improved...
2018-12-24 17:45:34 +01:00
raysan5
47358fe5ce Tweaks to support OpenGL ES 2.0 desktop 2018-12-24 17:09:46 +01:00
raysan5
92f68ac6be Review DrawPolyEx()
Also reviewed rlCheckBufferLimit()
2018-12-24 14:09:51 +01:00
Ray
4ec4dc691f Use stb_vorbis.h as header only 2018-12-21 00:17:44 +01:00
Ray
e48f2f9d43 Delete libraylib.a 2018-12-20 12:59:00 +01:00
Ray
87ad244ee0 Exposed LoadFontFromImage() 2018-12-20 12:58:27 +01:00
Ray
788bb78989 Some tweaks 2018-12-20 10:40:28 +01:00
Ray
b6d2f96645 Corrected issue 2018-12-19 18:08:59 +01:00
Ray
af33e3848e Improved BeginScissorMode()
Now rectangle coordinates refer to upper-left corner instead of bottom-left
2018-12-19 17:06:23 +01:00
Ray
49055a9b17 Keep reviewing RPI keyboard input... 2018-12-19 15:31:20 +01:00
Ray
66c360d385 Corrected issue on plane drawing 2018-12-19 11:55:58 +01:00
Ray
a22ee0c0e1 Review RPI keyboard inputs -WIP- 2018-12-18 19:11:12 +01:00
Ray
39c05e30d0 Reviewed rlReadTexturePixels() for OpenGL ES 2.0
Now it should work... but this behaviour could be driver dependant...
2018-12-18 18:20:20 +01:00
Ray
965a91cebb Support PIC image format loading 2018-12-18 18:18:40 +01:00
Ray
db96cf4a8b Corrected bug on OpenGL ES quads drawing 2018-12-18 16:52:18 +01:00
Ray
f822650a3b Support externally provided compilation flags
Useful in case raylib compilation want to be automated and compilation config flags provided by command line.
2018-12-18 00:20:08 +01:00
Ray
fe346fa8d8 Added a possible dependency include path for glfw 2018-12-16 00:44:09 +01:00
Ray
7d81e673ed ADDED: GenMeshPoly()
To generate 2D polygonal shape
2018-12-15 23:31:56 +01:00
Ray
4008a075a8 Added scissor functionality
To draw only in defined area of the screen
ADDED: BeginScissorMode(), EndScissorMode()
2018-12-15 23:30:55 +01:00
Ray
cbbd67ab5a Some code tweaks
- Reorganized some variables: Not used on OpenGL 1.1
- Now mipmaps can be generated on OpenGL 1.1 backend
- Renamed whiteTexture to defaultTextureId
2018-12-14 10:00:44 +01:00
Ray
97e40ced57 WARNING: BIG rewrite of rlgl module
This commit implements a big update of rlgl module, intended to optimize some parts. This change could break some code bases... hopefully not, but it could.
The BIG changes to the module are:
 - Replaced LINES-TRIANGLES-QUADS buffers by a single one, now all vertex data is accumulated on a single buffer and managed with registered draw calls. LINES-TRIANGLES-QUADS could be used the same way as before, rlgl will manage them carefully. That's a big improvement of the system.
 - Support multi-buffering if required. Just define MAX_BATCH_BUFFERING desired size (currently set to 1 batch). Should be enough for most of the situations.
 - Removed temporal accumulative buffers for matrix transformations, now transformations are directly applied to vertex when on rlVertex3f()
 - Reviewed rlPushMatrix()/rlPopMatrix() to be consistent with OpenGL 1.1, probably I should remove that ancient behaviour but... well, it was not consistent and now it is.
 - Minor tweaks: LoadText(), I broke it in last update... also multiple comments reviewed.
 - TODO: MAX_BATCH_ELEMENTS checking should probably be reviewed... done some tests and it works but...
2018-12-11 18:54:48 +01:00
Ray
7361ed24e2 Added support for .otf fonts
stb_truetype supports some .otf fonts, just exposed that functionality.
2018-12-10 00:29:52 +01:00
Ray
a8ac6e2ef9 Increase text management buffers size 2018-12-04 13:15:42 +01:00
Ray
5ef4661216 Comments removed 2018-12-03 16:48:01 +01:00
Ray
8b75a1a990 Improved textures wrap support 2018-12-03 12:00:05 +01:00
Ray
f552d43547 Reviewed some comments 2018-12-03 11:24:11 +01:00
Ray
5086c60e2f Replaced #defines by enums 2018-12-03 11:04:32 +01:00
Ray
1774260dab Some tweaks 2018-11-30 01:57:53 +01:00
Ray
874c0910e3 Replaced default release paths 2018-11-28 17:35:42 +01:00
Ray
ab0287bd4e Some tweaks to LoadText() 2018-11-28 12:34:03 +01:00
Ray
0bf82ff6f4 free memory for extList 2018-11-27 12:23:41 +01:00
Ray
b5c6736592 Reimplement ImageAlphaCrop() 2018-11-27 10:20:41 +01:00
Ray
69ae794465 Updated stb libs to latest version 2018-11-27 09:23:30 +01:00
Ray
969e48e3dd Enable SDL2 library for audio on Web
Solves audio cracking issues
2018-11-26 17:15:43 +01:00
Ray
c6b526de66 Support file drag & drop on Web
Using by default memory filesystem (MEMFS), provided by Emscripten
2018-11-26 17:15:00 +01:00
Ray
2deb35be27 Review emscripten path 2018-11-23 17:03:07 +01:00
Ray
bc8d3f30ec Updated to latest mini_al 2018-11-23 17:02:54 +01:00
Ray
83d90c6e49 Review totalSampleCount for OGG and FLAC 2018-11-23 11:58:45 +01:00
Ray
31d0fd820d Avoid program crash on audio device fail 2018-11-20 11:27:10 +01:00
Ray
ac23af9bf0 Review resources naming
raylib resource data file for Windows platform (containing raylib icon and metadata for executable file) has been renamed to a more consistent name: raylib.rc.data

Also required to work with tcc compiler.
2018-11-19 15:18:11 +01:00
Ray
ed269b8d9a Review RenderTexture drawing usage
Now `BeginTextureMode()` does not clean buffers automatically, that behaviour has been changed because there could be some case (i.e. painting software) where texture buffer does not ned to be cleared; user is responsible of clearing buffers using `ClearBackground()`
2018-11-19 09:40:01 +01:00
Ray
829538249f
Merge pull request #683 from iwoplaza/patch-1
Update core.c
2018-11-19 09:27:45 +01:00
Ray
fcb2b74342 Corrected issue with MSAA 2018-11-19 09:23:38 +01:00
Ray
de02f14283 Updated mini_al 2018-11-17 10:04:12 +01:00
Ray
6351971c7f Corrected typo 2018-11-17 10:03:40 +01:00
Ray
c8385aba83 Review SetWindowIcon() 2018-11-17 00:46:42 +01:00
Michael Vetter
8f70c3baed Check for single apostrophe in OpenURL()
When doing a8dffc63fb I was not aware that
printing a warning and not executing the code would be an option. I only
learned that through 618f220851.

So I propose that we allow all URLs except if the string contains a `'`.
Which could end the URL and call another command via `system()`.

Related to https://github.com/raysan5/raylib/issues/686
2018-11-13 10:59:52 +01:00
Ray
618f220851 OpenURL() - Added small security check 2018-11-12 14:59:31 +01:00
Michael Vetter
a8dffc63fb Add warning to OpenURL()
See https://github.com/raysan5/raylib/issues/686
2018-11-12 12:32:41 +01:00
Ray
30a1edd40e Review OpenURL() 2018-11-12 00:34:32 +01:00
Michael Vetter
80dbe636cd core: OpenURL() fix xdg-open call
Calling just `xdg-open` is not right. One needs to pack the URL in `'`.
If we don't do this then some special characters (like ampersand) will
be executed.

Maybe this is true for Windows and Apple case too, but I don't own any
such system. So please merge this, and if it's true for more cases let's
use `sprintf()` in the other cases too.
2018-11-10 08:36:15 +01:00
Michael Vetter
4c83cee810 core: Use dynamic string in OpenURL()
OpenURL() is a function that most games probably will never need.
Wasting 512 bytes to store of a static char to store an the URL is not
wise.

I propose to have it dynamic building the string on the fly.
2018-11-10 08:29:53 +01:00
Ray
5167f78d5f ADDED: OpenURL()
Corrected bug on ImageDrawRectangleLines()
2018-11-09 23:09:02 +01:00
Ray
6428317739 Corrected 1px thick issue 2018-11-07 22:50:27 +01:00
Ray
e17bd422fa Corrected issue with line drawing 2018-11-07 22:31:35 +01:00
GoblinBob
8e219272e5
Update core.c
Some projects need the buffer to not be empited when drawing to the render texture. I would suggest making maybe a variation of the function if you'd like to keep backwards compatibility, maybe like: BeginTextureModeNoClear() ?
2018-11-07 21:06:00 +01:00
Ray
b356ef5564 Modifies some Image functions
REVIEWED: ImageDrawRectangle()
ADDED: ImageDrawRectangleLines()
2018-11-07 17:58:26 +01:00
Ray
065994219e Review parameter issue with MSVC 2018-11-06 16:11:11 +01:00
Ray
fc1c9505ba Remove end-line spaces 2018-11-06 15:10:50 +01:00
Ray
e340517a73 Support custom texture on shapes drawing
By default, internal white texture was used to draw most of the shapes; some time ago, support for white font character from default internal font was added. That way, all basic drawing (shapes, text) could be performed without a texture change and in a single drawing pass.

Now, we move a step further and we allow configuring the texture (and rectangle) used to do the shapes drawing.
2018-11-06 15:06:01 +01:00
Ray
c79b342f0b Corrected issue with sampleCount 2018-11-05 10:22:59 +01:00
Ray
0f6f326a86 Add flag: SUPPORT_EVENTS_WAITING
Wait for input events passively (sleep) instead of polling events actively every frame
2018-10-31 23:19:29 +01:00
Ray
f7667aad8d Reviewed audio issues
- Updated dr_mp3 and implemented it
- Reviewed sampleCount vs frameCount
- Reviewed XM playing (some weird things...)
2018-10-31 17:04:24 +01:00
Ray
b051f7778f Corrected typo 2018-10-29 16:39:54 +01:00
Ray
298203a41a ADDED: Some functions...
text:     IsEqualText() -WIP-
audio:  SaveWAV()
audio:  ExportWaveAsCode()
textures:  ExportImageAsCode()
2018-10-29 16:18:06 +01:00
Michael Vetter
b13c9716e4 Fix GetDirectoryFiles description
The comment sais it allows max 256 files, but the MAX_DIRECTORY_FILES
define actually is set to 512.
2018-10-25 16:18:44 +02:00
Michael Vetter
65b5de962d Use seperate blog for MAX_FILEPATH_LENGTH define
Let's have a seperate if linux block for this. Since we will need to
define MAX_FILEPATH_LENGTH for all other cases. And its more readable
like this.
2018-10-25 16:16:44 +02:00
Michael Vetter
9bad248b54 Use filepath define
On Linux systems the length of the path is defined in linux/limits.h as
PATH_MAX.
Lets use that for MAX_FILEPATH_LENGTH, which is a define that we can
find in some comments in the code that is actually never used. Instead
often we see 256 handwritten.
So lets have MAX_FILEPATH_LENGTH as a proper define, being set to
PATH_MAX on Linux and to 256 on Windows systems.
2018-10-25 16:09:38 +02:00
Ray
fc6f5a92f3 Reviewed functions definition 2018-10-24 22:24:59 +02:00
Ray
72431c6c36 Code tweaks 2018-10-24 13:45:17 +02:00
Ray
550dd40cb3 ADDED: SplitText() function 2018-10-23 15:43:19 +02:00
Ray
b5bcf2c934 Review code formatting for RPI inputs 2018-10-22 11:48:16 +02:00
Ray
0694caaa22
Merge pull request #674 from Berni8k/master
Added RaspberryPi option to ignore duplicate touchscreens (Default on)
2018-10-22 09:23:17 +02:00
Berni8k
3d825eb973 Added RaspberryPi option to ignore duplicate touchscreens (On by default) 2018-10-21 15:06:40 +01:00
Ray
30f2483bdb
Merge pull request #672 from Berni8k/master
RaspberryPi Mouse and touch overhaul
2018-10-21 09:56:26 +02:00
Berni8k
e07ec6a2e8 Overhaul mouse and touch for RaspberryPi \n\nNow all '/dev/input/event*' devices are now used for input. No longer uses '/dev/input/mouse*', keyboard and gamepad continue to use existing method\nMultitouch is now supported on RPi with 10 point multitouch\nFixed bugs with IsMouseButtonPressed(Used to constantly fire when holding button) and GetMouseWheelMove(Did not work)\n Fixed exesive CPU usage of GamepadThread 2018-10-21 00:09:17 +01:00
Ray
bd383fe219 Tweak for OpenGL 2.1
Why am I still supporting this???
2018-10-20 12:48:03 +02:00
Ray
161b18edea Reviewed possible issue with external libs 2018-10-20 12:30:37 +02:00
Ray
1f4866276a Corrected typo 2018-10-19 21:50:50 +02:00
Ray
16914dfaa2 Reviewed possible issue with...
...disposing RenderTexture.
2018-10-19 21:40:34 +02:00
Ray
2759218368 Added comment on issue 2018-10-19 16:17:44 +02:00
Ray
3b674cd281 Some security checks on font loading 2018-10-18 17:48:33 +02:00
Ray
764766bfb2 Some formatting tweaks 2018-10-18 16:00:11 +02:00
Dillon Jones
59bbad9360 Remove non-Windows includes from Makefile 2018-10-18 07:31:22 -04:00
Ray
c2aa1fed7b Removed OpenAL backend 2018-10-18 11:38:42 +02:00
Ray
8bac72f4fa Working on MP3 loading
Loading full mp3 file works but loading for music streaming does not work, it seems total number of samples is not obtained correctly from mp3 file...
2018-10-17 19:39:16 +02:00
Ray
8a88e65a94 Update src/external/dr_mp3.h 2018-10-17 19:37:53 +02:00
Ray
b8b8936cd7 Review defines 2018-10-16 10:53:01 +02:00
Michael Vetter
d8331bde3a Add FileExists() function 2018-10-14 14:21:02 +02:00
raysan5
68d2b0c071 Corrected description 2018-10-13 16:30:44 +02:00
raysan5
cd6c362485 Corrected func name typo 2018-10-13 16:00:54 +02:00
raysan5
c7b601b624 Renamed new PR function
RENAME: GetLastWriteTime() to GetFileModTime()
2018-10-13 15:59:17 +02:00
ChrisDill
c2b36af60f Added GetLastWriteTime to allow for file reloading
- Added a function to get the last write time of a file. I used this so I can reload files or resources if the time since they were last loaded changes.
2018-10-12 13:53:36 +01:00
Ahmad Fatoum
5945805b15
CMake: remove erroneous status message
OPENGL_VERSION is the version requested by the user,
not the detected one...
2018-10-11 13:52:25 +02:00
Ahmad Fatoum
9b25da5f98
CMake: Fix build breakage trying to set OpenGL version
Fixes #660.
2018-10-11 13:41:47 +02:00
Ray
a12cafe84d
Merge pull request #659 from noshbar/text-memory-leak
Fixes memory leak in text.c
2018-10-11 00:21:25 +02:00
Ray
126ab49221 Minor tweaks 2018-10-10 23:55:36 +02:00
Ray
b8b8e6ab7d
Merge pull request #656 from noshbar/vs2017-fix
Physac.h fix for variable array size declaration.
2018-10-10 23:44:20 +02:00
noshbar
ec6b21bd91 Fixes memory leak in text.c
GenImageFontAtlas() allocates an array of stbrp_rect for the packing functions, but it never frees them.
2018-10-10 22:41:20 +02:00
noshbar
ccaf462cbf GenImageFontAtlas prototype in raylib.h is incorrect.
The prototype of GenImageFontAtlas() in the main raylib.h header has a set of swapped parameter names.
Going through the usage of the function within raylib itself, it appears as if the correct order is:
1) charsCount
2) fontSize

However, it's exposed to the world as the other way around, which may cause some major confusion.
2018-10-10 22:28:17 +02:00
noshbar
7f7f3b7cd5 Physac.h fix for variable array size declaration.
Generating the projects using CMake, targeting VS2017, results in an error when compiling.
This is due to physac.h trying to make a 'vertices' array of size 'int count', making it const does not work, either.

This changes the static declaration to a malloc/free combo.

Tested using the physics-demo.
2018-10-10 21:52:50 +02:00
Ray
f238b9ea3c Small tweak to avoid warning 2018-10-10 12:31:55 +02:00
Ray
a511337ce8 ADDED: GetFileNameWithoutExt 2018-10-10 12:01:59 +02:00
Ray
555fdec958 Corrected issues with VS2017 compilation 2018-10-09 00:20:39 +02:00
Ray
2320c2febf ADDED: ImageExtractPalette() 2018-10-08 18:57:33 +02:00
Ray
4f5937e89b OSX native window keeps breaking... 2018-10-08 18:51:41 +02:00
Ray
717cf77129 Corrected issue with dirent.h inclusion...
...and MacOSX OBJC types definition...
2018-10-08 18:38:39 +02:00
Ray
2652e7d1c1 Avoid multiple gl.h inclusions
Expose native Cocoa Window again...
2018-10-08 18:08:39 +02:00
Ray
81d28c5784 dirent.h implementation for MSVC
This implementation is a bit limited, does not support wide characters directories but it's a temporal solution...

This solution uses "io.h" (like MinGW provided one) while other modern solutions use the "windows.h", that result in duplicate symbols issues... need to review it carefully.
2018-10-08 16:55:01 +02:00
Ray
6e4bd60978 Trying to include dirent.h for MSVC 2018-10-08 16:25:47 +02:00
Ray
2d324f22a7 Corrected issue with native window handler on OSX
Could not be retrieved for now...
2018-10-08 16:12:09 +02:00
Ray
97f6454982 Corrected issue with native handler on OSX 2018-10-08 13:29:42 +02:00
Ray
ca1e309d9d Corrected issue with GetWindowHandle()
Not supported for the moment, issues with Linux (symbol `Font` redefined) and OSX (NSGL type redefined)
2018-10-08 13:14:15 +02:00
Ray
2feea87b61 Multiple changes, check description
REVIEW: Reorganized global variables for consistency
ADDED: GetWindowHandle() to get native window handle
ADDED: GetDirectoryFiles() to get files list for a DIR
2018-10-08 12:29:02 +02:00
Ahmad Fatoum
c4b7d17516
CMake: report what kind of libraries will be built 2018-10-07 21:34:19 +02:00
Ahmad Fatoum
2981713e4f
CMake: accept standard -DBUILD_SHARED_LIBS as well
-DBUILD_SHARED_LIBS=OFF == -DSHARED=OFF -DSTATIC=ON
-DBUILD_SHARED_LIBS=ON  == -DSHARED=ON  -DSTATIC=OFF

Fixes #626.
2018-10-07 21:34:18 +02:00
Ahmad Fatoum
1fe6d9fc06
core: workaround window not being rendered till moved on macOS Mojave
Apple ought to fix their OpenGL implementation, but with OpenGL now
deprecated this might not happen.

This has been reported upstream in GLFW in glfw/glfw#1334.
The workaround comes from kovidgoyal/kitty@b82e74f99

This also fixes the HiDPI (Retina) scaling issues reported in #497,
so the workaround is enabled anywhere __APPLE__ is defined.
2018-10-07 02:14:30 +02:00
Ahmad Fatoum
6572d5ff8c
raylib.h: include <stdbool.h> if available
Previously, if <raylib.h> was #included prior to another header that
defined bool, the compilation would fail.
This is e.g. the case for <perl.h> and <objc/objc.h> which both fall
back to the <stdbool.h> if C99 is available.

The following commit includes <objc/objc.h> in src/core.c, which causes
the same problem.

Avoid this by checking for C99 bool like we already do for C++'s.
2018-10-07 00:39:51 +02:00
Ahmad Fatoum
a56b3c2194
CMake: suppress OpenGL deprecation warnings on macOS Mojave
A single warning at configuration time is enough.
2018-10-07 00:33:05 +02:00
Pablo Marcos Oltra
35634f37c8 Fix physac's fixed time step 2018-10-04 18:29:50 +02:00
Ray
589152b658 Review void pointer incrementation 2018-10-01 15:45:01 +02:00
Ray
d67edb591a Support KXT image file export
[textures] Added SaveKTX()
[rlgl] Exposed rlGetGlTextureFormats()
2018-10-01 15:30:48 +02:00
Ray
ecb787d76f Update version number (internally) 2018-10-01 15:29:34 +02:00
ChrisDill
67dc50ef00 Changed monitor functions to use a index
- Using same idea as SetWindowMonitor to take in a index with 0 being the primary monitor.
2018-09-30 15:20:02 +01:00
ChrisDill
6b84b76b70 Forgot #else in platform check
- Added else so return not compiled twice.
2018-09-29 14:28:07 +01:00
ChrisDill
ed95337eb8 Added platform check
- Added PLATFORM_DESKTOP check for Monitor functions to try to fix issue on android.
- Not sure what return types should be when not on desktop. Added rough guess for now.
2018-09-29 14:10:29 +01:00
ChrisDill
ed79d53e1a Changed tabs to spaces
- Fixed tabs used instead of 4 spaces
2018-09-27 16:23:11 +01:00
ChrisDill
73701c12b2 Merge remote-tracking branch 'upstream/master' 2018-09-27 15:54:02 +01:00
ChrisDill
1836e02c1e Added monitor functions
- Get number of monitors
- Get size, physical size and name of primary monitor. Could pass monitor id instead not sure.
2018-09-27 15:52:56 +01:00
Ray
29eddb9ff3 Updated icon data 2018-09-26 16:02:42 +02:00
Ray
abfbc42df7 PNG image size optimization 2018-09-25 12:53:31 +02:00
Ray
9efe5c6802 Support MP3 wave loading -NOT TESTED- 2018-09-19 15:57:46 +02:00
Ray
be599a9ece enjoy! 2018-09-18 21:34:02 +02:00
Ray
27c3afd91c enjoy! 2018-09-18 21:30:52 +02:00
Ray
2bd18ab91e Support ExportImage() as raw pixel data
Added note on KTX 2.2
2018-09-17 19:00:51 +02:00
Ray
f503fded67 Support image export 2018-09-17 17:06:58 +02:00
Ray
ec5c9686b3 Improved data export capabilities!
REVIEWED: ExportImage()
REVIEWED: ExportMesh()
ADDED: ExportWave()
REMOVED: Internal funcs: SavePNG(), SaveBMP()

NOTE: These changes break the API (parameters order)
2018-09-17 16:56:02 +02:00
Ray
3a1a489545 Removed TABS 2018-09-14 13:00:48 +02:00
Ray
5b09630d45 Update mini_al to v0.8.8
Some minor tweaks around
2018-09-14 12:47:31 +02:00
Ray
f32e23c11b
Merge pull request #641 from ChrisDill/master
Added a few missing functions to raymath
2018-09-13 12:51:45 +02:00
ChrisDill
1e1bbaa40b Added a few missing functions to raymath
- Added Vector2MultiplyV
- Added Vector2DivideV
- Added Vector3Divide
- Added Vector3DivideV
2018-09-13 11:43:10 +01:00
F.H
9f1489dc1d
Update models.c
fix bug with GenMeshPlane() creating too many vertices/texcoords/normals for the plane mesh
2018-09-06 21:11:00 +02:00
Ray
dfb8837c46 Support aliased font texture generation
Useful for bitmaps pixelated fonts where anti-aliasing is not desired!
Change also enables additional font generation mechanisms in a future (cleartype, hinting...).
2018-09-06 16:56:21 +02:00
Ray
1fcb3c0317 Started working on IQM/glTF loaders 2018-09-05 10:59:05 +02:00
Ray
ac31f51c5e Corrected issue with font tint 2018-09-05 10:47:57 +02:00
Ray
d0608b031a Corrected issue with types 2018-09-05 10:47:40 +02:00
raysan5
207b5a26b1 Create release directory if not exist 2018-08-25 18:25:51 +02:00
raysan5
af919e5c9f Review naming to follow raylib conventions
strprbrk() does not follow raylib function name convention but as it is
very similar to the standard strpbrk(), we'll keep the naming... also,
don't like to mix static functions with API functions but as strprbrk()
is just used in the two functions below, it's ok to be there... maybe it
could be refactored in a future or even move the logic inside the
required functions...
2018-08-25 17:55:25 +02:00
Ahmad Fatoum
85213795d1
GetDirectoryPath: return NULL, don't crash when no slash
Noted in #634.
2018-08-25 09:27:41 +02:00
Ahmad Fatoum
5dda105a79
core: Support slashes as well in GetFileName & GetDirectoryPath
Fixes #634.
2018-08-25 09:23:40 +02:00
Oğuzhan Çankaya
2bef76735d
lerp for vector2 and float 2018-08-21 04:14:43 +03:00
Justin Clift
699cadcf98 Add the remaining numeric keypad keys, and a few other missing ones 2018-08-19 18:00:16 +01:00
Justin Clift
6a5dbeace8 Add the plus and minus keys on both the main keyboard and keypad 2018-08-19 14:40:30 +01:00
Ray
506b7b8d7c Corrected issue with batch overflows
When a batch reach its vertex limit, a draw call is issued and batch restarted for refilling but if the draw call was issued for vertex data accumulated inside rlPushMatrix/rlPopMatrix, draw call was issued before the rlPopMatrix, consequently modelview matrix was not properly recovered before the draw call... obviously, it only happened the following draw calls, not the first one...

Now it works ok but this system needs to reviewed, noticed and important frames drop when processing around 20 dynamic batch draw calls, it means filling MAX_QUADS_BATCH (8192) quads of data 20 times per frame, including data updating and sending for draw processing.

Doing some maths, it means:
Vertex data (float) -----> 8192 quads * 4 vertex * 3 comp * 4 byte = 393216 bytes
Texcoords data (float) -> 8192 quads * 4 vertex * 2 comp * 4 byte = 262144 bytes
Color data (uchar) -----> 8192 quads * 4 vertex * 4 comp * 1 byte = 131072 bytes

Thats a total of 786432 bytes (0.75MB) sent to GPU 20 times per frame for processing... I'm testing in an Intel HD Graphics integrated, I imagine is too much data to be sent and and it causes stalls, so the frames drop...
2018-08-17 13:55:46 +02:00
Ray
732b775a1d Proper variables initialization 2018-08-17 11:41:49 +02:00
Ray
4c84208644 Working on batch reset issue
Corrected memory leak!
2018-08-17 01:34:45 +02:00
Ray
eef44fd930
Merge pull request #625 from ChrisDill/master
Raymath dllexport fix
2018-08-16 23:04:17 +02:00
ChrisDill
c669c6762f Improved raymath defines
- Using raylib.h as reference, added define checks for BUILD_LIBTYPE_SHARED and USE_LIBTYPE_SHARED.
2018-08-16 18:20:49 +01:00
ChrisDill
a187361c6f Raymath dllexport fix if _WIN32 defined
- Added check for dllexport to compile if _WIN32 defined.
- If not defined then use the original RMDEF.
2018-08-16 12:54:45 +01:00
ChrisDill
42b52ecdb1 Raymath dllexport fix
- Added __declspec(dllexport) to RMDEF in raymath.h. This allows them to be accessed when importing from raylib.dll.
2018-08-16 11:29:30 +01:00
Ray
b88bfa7267 Review PR formatting 2018-08-14 09:57:31 +02:00
Joseph-Eugene Winzer
1cef8ea1bf Shapes: Simplifies CheckCollisionRecs
By comparing the edges of the rectangles relative to each other we can
determine if they intersect or not.
2018-08-14 00:14:06 +02:00
David Reid
3200b23469 Update mini_al.
This should improve the Raspberry Pi experience.
2018-08-12 13:45:12 +10:00
Ray
00f5f2ead2
Merge pull request #616 from overdev/master
[Feature Request] 9-patch drawing function
2018-08-09 22:42:05 +02:00
Jorge A. Gomes
dab78d59f3
Update textures.c
See raylib/examples/textures/textures_image_9patch.c for how to use `DrawTextureNPatch` function.
2018-08-08 16:42:39 -03:00
Jorge A. Gomes
5f89e35d1c
Update raylib.h 2018-08-08 16:39:10 -03:00
Ray
7634cbeb22 Updated mini_al
Corrected issue with sound playing (pop sound at the end)
2018-08-08 18:26:05 +02:00
Ray
b042fe12e6 Reviewed spacings on latest PR 2018-08-06 20:49:47 +02:00
Ray
61b32e45ed
Merge pull request #618 from kimkulling/fix_compiler_warnings
Fix compiler warnings
2018-08-06 20:43:28 +02:00
Kim Kulling
f5f7ed79b8 Fix compiler warnings of lib 2018-08-05 23:53:34 +02:00
Kim Kulling
b2cac82fa0 Fix compiler warings in texture.c and more. 2018-08-05 00:34:35 +02:00
Kim Kulling
ecf8bff4aa Fix compiler warnings, first part 2018-08-04 10:32:16 +02:00
Jorge A. Gomes
28424141f0
Update textures.c
Added support form vertical and horizontal 3-patches.
Corrected the distortion caused when destRec size is smaller than 4x4. Now even 1x10 or 0x0 sizes are drawn correctly.
2018-08-03 20:53:15 -03:00
Jorge A. Gomes
6ef03ea4e8
Update raylib.h
Added support form vertical and horizontal 3-patches.
Corrected the distortion caused when destRec size is smaller than 4x4. Now even 1x10 or 0x0 sizes are drawn correctly.
2018-08-03 20:50:13 -03:00
Ray
d4bb444fe5
Merge pull request #609 from pamarcos/fix_physac_examples
[physac] Fix Physac examples to be run without creating new thread
2018-08-03 12:47:53 +02:00
Jorge A. Gomes
7cc2a5585b
Update textures.c
Added DrawNinePatch() function implementation.
2018-08-03 04:51:26 -03:00
Jorge A. Gomes
c9ca14e659
Update raylib.h
Added NinePatch struc definition and function prototype.
2018-08-03 04:48:46 -03:00
Ahmad Fatoum
286c41af52
Sync with upstream GLFW pull request
The GLFW tree distributed with raylib has two modifications:

- GLFW_PKG_{DEPS,LIBS} are exported to PARENT_SCOPE, so we can use them
  in our pkg-config file
- An intermediary glfw_objlib target is added, so we can reexport GLFW
  symbols from libraylib.a

rglfw can fix the second point, but for Wayland usage, we would have to
replicate protocol generation, so we just leverage GLFW's existing
support instead.

To make maintenance easier, I have submitted a pull request for
including these modifications to upstream GLFW.
And to make that one easier, this patch dog-foods the modifications,
so raylib users can help find regressions. :-)

glfw/glfw#1307
2018-07-29 23:56:16 +02:00
Ray
7154a83313
Merge pull request #610 from pamarcos/fix_chdir_macos
[games] Prevent GLFW changing working dir to 'Resources'
2018-07-29 23:40:13 +02:00
Pablo Marcos Oltra
907e27ef4e Fix Physac examples to be run without creating new thread 2018-07-29 21:32:39 +02:00
Ahmad Fatoum
78487f7521
CMake: Make the raylib project as a whole embeddable
So user code can use add_subdirectory to build it (similar to what we do
with GLFW or what the projects/CMake/CMakeLists.txt can do).
2018-07-29 21:28:23 +02:00
Pablo Marcos Oltra
89cec68565 Prevent GLFW changing working dir to 'Resources' 2018-07-29 18:38:31 +02:00
Ahmad Fatoum
e82505b873
Add projects/CMake example
The CMakeLists.txt checks for an installed raylib and downloads and
installs one if none is found. Afterwards, it builds core_basic_window.c
2018-07-29 18:27:59 +02:00
Ahmad Fatoum
548dbeb1ca
Fix typo (s/proedural/procedural) 2018-07-29 13:04:16 +02:00
Ahmad Fatoum
2ae6df47fc
CMake: Set -DMACOS_FATLIB=OFF by default
Homebrew doesn't ship 32-bit libraries anymore, so using both
-DUSE_EXTERNAL_GLFW and -DMACOS_FATLIB with a Homebrew GLFW would fail.
With -DUSE_EXTERNAL_GLFW=OFF, this is not a problem, but I think keeping
it off by default makes more sense. If someone wants universal
libraries, they can just toggle it.
2018-07-29 12:35:36 +02:00
Ahmad Fatoum
4d209d45aa
core: Don't use GLFW_TRANSPARENT_FRAMEBUFFER with older GLFWs
PLATFORM_WEB is not the only platform that doesn't define
GLFW_TRANSPARENT_FRAMEBUFFER, it's also recent enough that it's not
included in the most recent GLFW 3.2.1 release, so this error can creep
up when using USE_EXTERNAL_GLFW.
2018-07-29 12:35:36 +02:00
Ahmad Fatoum
3f09726331
CMake: Major cleanup to support find_package(raylib)
Remove that link_libraries_to_executable() hack and defines a proper
raylib target that can be used with target_link_libraries.

The same target is also available for external (user) code by using
find_package(raylib).

This results in:

- Remove hardcoded build directories from examples and games CMakeLists.txt
- Allow rlgl_standalone and other special examples to be built easily
- Allow CMake projects to find_package(raylib instead of fiddling with pkg-config
- Makes code a little more maintainable
- Fixes #471, #606.
- Makes code less confusing by removing the double use of PLATFORM (#584).

Note that this is still not _The Right Way_(TM), because normally
raylib-config.cmake (or its includes) would be automatically generated.
I didn't manage to get that to work though, so I went the easier route
of just wrapping pkg_check_modules for consumption by find_package.
2018-07-29 12:35:35 +02:00
Ahmad Fatoum
3e5093eab0
CI: Build with all optional formats enabled
also makes one configuration shared-only

dr_flac is not built on i386, because GCC 4.8 complains about asm("cpuid"
clobbering ebx, as it's using ebx for PIC.

Instead of downloading a newer GCC (and multilib),
disable FLAC for that one configuration...
2018-07-29 12:13:01 +02:00
Ahmad Fatoum
69e147417b
Travis CI: Add OpenAL-Configuration 2018-07-29 12:13:00 +02:00
Michael Vetter
186c1b157e Fix bug in LoadMusicStream
free() and NULL at the end.
2018-07-29 09:52:18 +02:00
raysan5
7964b28fac Corrected bug LoadMusicStream() 2018-07-28 18:19:53 +02:00
raysan5
0cf92c59d7 Corrected timing typo 2018-07-28 18:13:19 +02:00
raysan5
dc3327fba8 Reviewed music loading 2018-07-28 18:07:06 +02:00
raysan5
6f61e26a3c Reviewed custom logging functionality 2018-07-28 17:57:05 +02:00
Michael Vetter
7a5b1b13e2 Deal with failed LoadMusicStream
It would be good to have a way to continue execution even when loading a stream didn't work.
 Free music and set it to NULL in case something went wrong, so that users can check for it.
2018-07-27 15:58:27 +02:00
Pablo Marcos Oltra
c69f7953c7 Add SetTraceLogCallback to enable users setting custom logging (#597) 2018-07-26 21:57:45 +02:00
Pablo Marcos Oltra
8d134edaf7 Fix rlgl.h to be used as a standalone 2018-07-25 10:36:18 +02:00
Ray
361d878b4c Updated animations support 2018-07-24 18:52:56 +02:00
Ray
198a023527 First working version of IQM animations
Still a work in progress but it already works...
Current riqm API could be simplified...
2018-07-24 18:28:58 +02:00
Ahmad Fatoum
2b8c9f9a17
CMake: Fail when -D{PLATFORM,OPENGL_VERSION}=INVALID_VALUE
as well as -DUSE_EXTERNAL_GLFW.

Nips issues like #584 in the bud.
2018-07-23 21:00:48 +02:00
raysan5
4c15515ba6 Support examples with Emterpreter
Examples can be compiled for web with no code change at all! Usually
examples need to be refactored for web... using emscripten code
interpreter (emterpreter), it can manage synchronous while() loops
internally... as a downside, execution is very slow...
2018-07-21 17:13:59 +02:00
raysan5
7dc66d2d3f Looking for a place for raylib resource file 2018-07-21 16:18:33 +02:00
Ray
6e812cf147 Working on MP3 support 2018-07-19 23:15:46 +02:00
Ray
103044926b Avoid config.h in standalone mode 2018-07-16 19:24:40 +02:00
Ray
6efb89c51e Updated to latest mini_al dev 2018-07-16 19:21:54 +02:00
Ray
98273f0152 Reviewed compilation options 2018-07-16 18:43:24 +02:00
Ray
5b37178af9 Reviewed rlgl_standalone example 2018-07-16 18:22:03 +02:00
Ray
096fd6f2c3 Converted rlgl module in header-only
This change allows rlgl.h usage as independent single-file header-only module... still some tweaks required, like removing GLAD dependency... required extensions could be manually loaded!

Also removed shader_distortion.h, embedded in rlgl.h
2018-07-16 17:53:47 +02:00
Ray
0c631e6b5a Corrected comment 2018-07-15 21:24:59 +02:00
Ray
292499bdeb Reviewed LoadFontData() and GenImageFontAtlas() 2018-07-15 20:03:05 +02:00
Ray
9e2c418a92 Removed dev from version 2018-07-11 16:40:08 +02:00
Ray
eb296a5605 Reviewed shared library generation 2018-07-11 16:39:41 +02:00
Ray
43178f3488 Updated mini_al to latest dev version
Corrects issue with audio on RPI
2018-07-11 16:39:26 +02:00
Ahmad Fatoum
414bb6018b
CMake: Add Libs.private to Libs if installing static only
pkg-config --libs --static raylib and pkg-config --libs raylib
should give the same result if there is no shared raylib installed.
2018-07-10 21:20:01 +02:00
raysan5
3c02a9fc66 Support multiple data type aliases
Vector4 -> Quaternion
Texture2D -> Texture
RenderTexture2D -> RenderTexture
Camera3D -> Camera
SpriteFont -> Font
2018-07-09 10:23:53 +02:00
raysan5
f939378764 Support ARM and ARM64 Android building 2018-07-09 03:00:52 +02:00
raysan5
c6d188a09a Reviewed latest commit for Android gamepad support 2018-07-07 10:15:19 +02:00
Ray
50088bf49b
Merge pull request #570 from SethArchambault/master
SNES-like GAMEPAD Support added for Android, Makefile has optional support for 32bit
2018-07-07 09:38:19 +02:00
David Reid
8651e14955 Update mini_al with a fix for macOS. 2018-07-07 10:36:19 +10:00
Seth Archambault
fa36c5294a Merge branch 'master' of https://github.com/raysan5/raylib 2018-07-06 13:37:17 -04:00
Seth Archambault
f981daf1df Added SNES-style GAMEPAD SUPPORT 2018-07-06 13:33:46 -04:00
Ahmad Fatoum
7f040009ee
Add null statement after goto label to pacify CI
Fixes: #568
2018-07-06 02:30:38 +02:00
Ray
0ab3d85aa0
Merge pull request #568 from mackron/dr/mini_al
Update Audio Libraries
2018-07-06 00:31:21 +02:00
raysan5
103bc7dfc6 Corrected issue with GetFontDefault()
Note for me: Replace All is NOT your friend...
2018-07-05 19:17:06 +02:00
raysan5
d881c73257 Renamed GetDefaultFont() to GetFontDefault()
Library consistency rename... yes, I know, it breaks the API...
2018-07-05 19:08:24 +02:00
raysan5
1f1d8eeeeb Checking Android input functionality
Joystick support is not implemented just yet, not difficult but it
requires some work...
2018-07-05 19:00:49 +02:00
David Reid
b7d7704098 Update mini_al to version 0.8. 2018-07-05 23:12:20 +10:00
David Reid
6c96fa6301 Update external audio libraries. 2018-07-05 22:57:45 +10:00
David Reid
c598701873 Fix bug with FLAC music streams. 2018-07-05 22:57:17 +10:00
David Reid
1d354bc704 Merge branch 'master' of https://github.com/raysan5/raylib into dr/mini_al 2018-07-05 22:33:16 +10:00
Ahmad Fatoum
c3aeaf4a49
Travis CI: Add test case for pkg-config 2018-07-03 21:35:28 +02:00
Ahmad Fatoum
61747508b0
CMake: Reuse libraries found by glfw CMake config
if (${PLATFORM} MATCHES "Desktop")
  target_link_libraries(${RAYLIB}_shared glfw ${GLFW_LIBRARIES})

was never true because PLATFORM STREQUAL "PLATFORM_DESKTOP"...

This fixes #551 and makes the changes suggested in #552 (commited as 965cc8ab)
unnecessary.
2018-07-03 21:35:27 +02:00
Ahmad Fatoum
33c830353b CMake: Fix regression in USE_EXTERNAL_GLFW=IF_POSSIBLE
Fixes: e1e036a6 ("Disable glfw only when it is not found and not external", #558)
2018-07-03 09:24:31 +02:00
Ray
74fd0e7ca4 Added function: ImageColorReplace() 2018-07-03 00:57:58 +02:00
Ray
7b971e0623 Added Quaternion typedef 2018-07-02 18:53:46 +02:00
Ray
276974de05 Removed function prototype
This function was added in text module as GenImageFontAtlas()
2018-07-02 16:39:04 +02:00
Ray
7dedb84fd0 Added function: Vector3RotateByQuaternion()
Rotate a Vector3 by a Quaternion
2018-06-30 22:00:16 +02:00
Ray
d0166c9d45 Spacing tweaks 2018-06-30 21:56:26 +02:00
Ray
afe81d94ce Re-added: LoadFontEx() 2018-06-30 19:58:44 +02:00
Michael Campagnaro
859b1cf574 Fix incorrect log agent names 2018-06-28 18:41:32 -04:00
Ray
dbfd8d713f Reviewed comments section 2018-06-26 01:36:13 +02:00
Ray
bd957c7442
Merge pull request #557 from Martinfx/max-support-bsd-os
Added support OpenBSD, NetBSD, DragonFly OS
2018-06-24 12:44:58 +02:00
maficccc@gmail.com
59ebe1b7c3 Added support OpenBSD, NetBSD, DragonFly 2018-06-23 17:02:07 +02:00
maficccc@gmail.com
965cc8ab6f Added support DragonFly os from BSD family 2018-06-23 17:02:04 +02:00
Yuri
e1e036a602
Fisable glfw only when it is not found and not external. 2018-06-23 07:30:35 -07:00
Ray
0e135118fd Improved GenImageFontAtlas() 2018-06-21 00:18:13 +02:00
Ray
75ba5aca55 Improved font generation and SDF
Added: data to CharInfo struct
Added: LoadFontData()
Added: GenImageFontAtlas()
Removed: LoadFontEx()
Removed: LoadTTF() [internal]
Some code tweaks
2018-06-20 00:52:14 +02:00
Ray
372e4a1139 Reviewed some functions
- GetImageData()
- GetImageDataNormalized()
2018-06-12 16:30:03 +02:00
Ray San
64804f30e6 Comment review 2018-06-12 13:27:41 +02:00
Ray San
0c01c08718 Corrected issue, flag not supported...
...by emscripten glfw javascript implementation
2018-06-12 13:21:36 +02:00
Ray San
59fd261491 Added function: GetImageDataNormalized()
Reviewed: GetImageData()
Reviewed: ImageFormat()
2018-06-12 13:13:09 +02:00
Ray San
7d0e09ff4c Corrected bug 2018-06-12 12:05:28 +02:00
Ray San
b588af5ce2 Corrected breaking build 2018-06-12 10:45:00 +02:00
raysan5
b48d225a43 Propose new function: GenImageFont() 2018-06-10 19:29:01 +02:00
Ray
817ae07505 Some comments cleaning
ImageDraw() code tweak
2018-06-06 00:43:52 +02:00
Ray
0e6458cfee Added ImageRotate*() functions 2018-06-03 21:05:01 +02:00
Ray
61a1c59472 Corrected possible issue with CMake for GLFW 2018-06-02 18:47:19 +02:00
Ray
9688c677de Review window creation hints 2018-06-02 18:26:57 +02:00
Ray
c7d6a44e33 Update GLFW to latest dev version (master branch) 2018-06-02 18:26:29 +02:00
Ray
b1b4a11bdb Corrected issue with function definition 2018-06-02 13:05:23 +02:00
Ray
afc4181752 Work on ImageResizeCanvas() 2018-06-02 12:47:05 +02:00
Ray
2536bea379 Added: ImageResizeCanvas() -WIP-
Added note idea on ImageFormat() for future redesign (to support
16bit-32bit pixel-formats)
2018-06-01 00:53:40 +02:00
Ray
129c890a28 Removed assert()
Not used in raylib this mechanism
2018-05-30 00:06:23 +02:00
Ray
8f4b53384c Replaced tabs by spaces 2018-05-29 09:09:40 +02:00
Ray
d873314c27 Reviewed Windows resource file name 2018-05-29 00:52:08 +02:00
Ray
0148432588 fabsf() not working with TCC
Replaced by fabs() that seem to work ok
2018-05-28 00:48:45 +02:00
Ray
dbff40944a Corrected issue with floats on TCC
It seems TCC was not casting correctly int values to float in some
specific situations
2018-05-28 00:48:07 +02:00
Ray
1f0cc57ec7 Corrected issue with compiler param
Added android_native_app_glue module to raylib compilation instead of
compiling it as static lib at apk generation.
2018-05-27 19:06:14 +02:00
Ray San
8f4fa5006b Added a note 2018-05-22 12:09:12 +02:00
Ray San
f454af08bb Review include (already included) 2018-05-22 12:08:58 +02:00
raysan5
559b9b8cc3 Corrected possible memory leak 2018-05-21 18:57:54 +02:00
raysan5
44181baf04 Working on Android APK building 2018-05-21 18:13:52 +02:00
David Reid
63cf43b729 Fix some warnings. 2018-05-21 20:46:22 +10:00
David Reid
647c08ef4c Fix a copy paste typo. 2018-05-21 20:39:42 +10:00
David Reid
f1b624d38b Update mini_al. 2018-05-21 20:39:19 +10:00
David Reid
6d8cc250bd Merge branch 'master' of https://github.com/raysan5/raylib into dr/mini_al 2018-05-21 20:26:28 +10:00
Ahmad Fatoum
e025e62445 cmake: Fix PLATFORM_WEB build
Did this ever work? Surely, doesn't look like it...
2018-05-21 12:15:39 +02:00
Ahmad Fatoum
ad8509732c
CMake: Fix (Add?) Android support
Not sure if this ever worked, but now it at least compiles.
2018-05-21 01:08:29 +02:00
Ahmad Fatoum
ff55af14f9
CMake: Move reusable code to new cmake/ directory 2018-05-21 01:08:29 +02:00
Ahmad Fatoum
ae26e083b4
CMake: Add default build type if none specified
Release, unless we are in a Git repo, then it's Debug.
2018-05-21 01:08:28 +02:00
Ahmad Fatoum
20ddc6a2bb
Move utils.cmake to separate cmake/ directory 2018-05-21 01:08:28 +02:00
raysan5
a752092055 Removed 32bit arm Android library
From 2019 64bit support will be mandatory to publish an Android app.
Google plans to require that new apps target Oreo (API level 26) in
August of 2018.
2018-05-20 19:13:10 +02:00
raysan5
8e0cd51afb Support shared library building on Android 2018-05-20 18:49:58 +02:00
raysan5
ca69068814 Added function: rlCheckBufferLimit() 2018-05-20 01:55:46 +02:00
raysan5
3b70b66a08 Love OpenGL gotchas... make my life more enjoyable! 2018-05-20 00:41:12 +02:00
raysan5
24adca4ad0 Manual mipmap generation review
On OpenGL 1.1 only is supported for 32bit RGBA textures
2018-05-20 00:39:56 +02:00
raysan5
25d5e907ec Some code review (mainly comments) 2018-05-20 00:37:16 +02:00
Michael Vetter
5cfbb53f6c Increase API version
Please do this whenever necessary. And adapt it before releasing a new
RC. The RC should already have the correct one.
2018-05-18 16:04:18 +02:00
Ray
fb4265f646 Reviewed Android pipeline
Now defaults to Clang, ARM64 and API 21
2018-05-17 00:59:53 +02:00
Ray
0b05169aa7 Some warnings review 2018-05-17 00:58:58 +02:00
Ray
88c2337225 Preliminary support for MP3 fileformat -WIP- 2018-05-17 00:04:58 +02:00
Ray
2aae62cea2 Header tweak and comments 2018-05-17 00:04:36 +02:00
Ray
1d3e4ef437 Corrected issue on file extension check 2018-05-17 00:04:12 +02:00
Ray
bb43755a9d
Corrected issue on LoadASTC() 2018-05-12 23:33:03 +02:00
Ahmad Fatoum
eed170f852
CMake: Fix typo... s/USE_PIC/WITH_PIC/ 2018-05-12 19:05:30 +02:00
Ahmad Fatoum
0f1aaa474a
CMake: (Properly) build glfw separately with CMake
This reverts commit 2d6fb5c628,
and adds a fix for Alien::raylib's test failures.

The tests failed because the resulting static library didn't reexport
GLFW symbols. As a fix, we now have GLFW create a CMake "object library"
target that we can link with both the static and shared raylib.

This is arguably ugly... Proper fix would probably be a GLFW upstream
object library target.

Closes #536.
2018-05-12 18:38:20 +02:00
Ahmad Fatoum
2d6fb5c628
Revert "CMake: Build glfw separately with CMake"
This reverts commit 0adb4b67de,
because it failed tests for Alien::raylib:
http://www.cpantesters.org/distro/A/Alien-raylib.html
2018-05-11 23:43:35 +02:00
Ray
aa76985c0d Review raylib version to 2.0
Review raylib_icon resource
2018-05-11 18:14:19 +02:00
Ahmad Fatoum
0adb4b67de
CMake: Build glfw separately with CMake
Makes it easier to support Wayland later on.
2018-05-11 01:24:27 +02:00
Ahmad Fatoum
0df501be91
Add GLFW source tree to src/external
We need the CMake stuff for wayland configuration.
Otherwise, we would have to replicate that ourselves.
This is the full 7ef34eb06de54dd9186d3d21a401b2ef819b59e7 tree except
for tests/ examples/ and docs/
2018-05-10 23:07:26 +02:00
Ahmad Fatoum
b8ca51fd01
CMake: Don't create symlinks on unsupporting file systems (#539)
Panders to the idiosyncrasies of my work flow:
I have my raylib build directory mounted as a VirtualBox vboxfs for use
with my Linux VM, but vboxfs doesn't support symlinks, while raylib shared
library versioning on Unix expects symlinks to work.
If this happens, library versioning is now disabled on Unix with
an error message instead of just failing the build.
2018-05-10 21:03:43 +02:00
Ray
f26a38a9e1 Merge branch 'master' of https://github.com/raysan5/raylib 2018-05-09 00:24:08 +02:00
Ray
9ea2a69bfd Corrected issue on rectangle drawing 2018-05-09 00:23:56 +02:00
Ray
3a803ac95e
Removed unnecesary define 2018-05-08 23:04:13 +02:00
Sherjil Ozair
8e9ff75f1c Use fabsf for floats, and avoid implicit type casting 2018-05-06 12:47:46 -04:00
Ray
f14492432d Avoid exposing native GLFW3 functionality
Try to avoid types conflict with Font
2018-05-04 23:03:56 +02:00
Ray San
ec33e7d705 BREAKING CHANGE: Renamed SpriteFont type to Font
- Preparing MP3 files support
- Jumped version to raylib 2.0-dev (too many breaking changes...)
2018-05-04 16:59:48 +02:00
Ray San
6045062a05 Renamed some functions
- Renamed Begin3dMode() --> BeginMode3D()
- Renamed Begin2dMode() --> BeginMode2D()
- Renamed End3dMode() --> EndMode3D()
- Renamed End2dMode() --> EndMode2D()
2018-05-04 16:54:05 +02:00
Ray San
6324697ffd Rectangle parameters changed to float
- Some examples tweaks
- Reviewed ImageFormat()
- Use float for text fontSize
2018-05-04 16:25:31 +02:00
Ray San
9d103b7c2f Removed line breaks from functions
Useful to parse raylib.h to generate raylib-lua and Notepad++
intellisense XML info
2018-05-03 19:19:35 +02:00
raysan5
198d739256 BREAKING CHANGE: Renamed Camera -> Camera3D
Just added a fallback in the meantime...
2018-05-01 12:31:03 +02:00
raysan5
400c345f96 Added tangent computation alternative method
As stated in the note, I'm not sure if math is right, just followed a
reference implementation...
2018-04-30 11:21:44 +02:00
raysan5
23e335d933 Implemented MeshTangents()
- Added Vector3OrthoNormalize() to raymath.h - not sure if it is correct
- Implemented MeshBinormals() - Mesh struct has not a place for them...
- Updated model_material_pbr example - tested but not working on my GPU
(old Intel HD), actually, it never worked on it...
2018-04-30 02:47:48 +02:00
raysan5
c51203ae7e Corrected alpha blending on ImageDraw() 2018-04-29 18:39:57 +02:00
raysan5
dff1028466 Replaced ColorToFloat() by ColorNormalize() 2018-04-29 18:39:46 +02:00
raysan5
8d81b6e4e4 Support shapes drawing using only QUADS
Also added new compilation FLAGS for that pourpose
2018-04-29 12:53:32 +02:00
raysan5
ada6668b24 Expose file-dropping functions symbols 2018-04-29 11:49:10 +02:00
raysan5
ca5f7ebd10 Added compile flag: SUPPORT_SCREEN_CAPTURE
Allow compiling the library with support for automatic screen capture
(KEY_F12)
2018-04-29 11:37:39 +02:00
David Reid
3ca5047c82 Update mini_al. 2018-04-22 07:24:18 +10:00
David Reid
af4d23aa82 Update mini_al. 2018-04-21 22:13:02 +10:00
David Reid
24cab8f920 Update mini_al. 2018-04-21 20:39:31 +10:00
David Reid
0febaa2446 Update external audio libraries. 2018-04-21 18:57:00 +10:00
Ray
847bdaf682 Implemented default mesh
In case mesh loading fails, a cube is generated instead!
2018-04-19 20:20:34 +02:00
Ray
76a6bf6c52 Review spacing for cosistency 2018-04-19 20:19:53 +02:00
lumaio teon
5ef6cc1fb9
Add more key definitions 2018-04-13 17:14:04 -04:00
Ahmad Fatoum
3f59bdfc76
mini_al: Use WinAPI interlocked ops with tcc
Seems tcc doesn't provide __sync_*. See #435.
2018-04-11 11:29:49 +02:00
Ahmad Fatoum
8b0fef6c34
raymath: Workaround tcc inline function limitation
Reported in #435, tcc generates out-of-line definitions for inline
symbols, something it shouldn't.  This fix punishes tcc for that
by making applications it compiles (slightly) larger...
2018-04-11 10:43:27 +02:00
Ray San
4cc12ef2b3 Review camera definition on examples 2018-04-11 10:13:00 +02:00
Ray San
cc3b8645df Updated release version 2018-04-10 10:37:48 +02:00
Ray
8e44f7b3c7 Reviewed config.h formatting
Added raylib version to config
2018-04-09 23:01:20 +02:00
Ray
54e24d905a Init frame timming measure variables 2018-04-09 22:28:41 +02:00
Ray
cd616258c6
Merge pull request #522 from a3f/master
Refactor all #define SUPPORT_* into a config.h
2018-04-08 22:46:44 +02:00
Ray
9e7dedf5af
Merge pull request #521 from TheLumaio/master
Added GetCollisionRayModel
2018-04-08 22:28:19 +02:00
Ahmad Fatoum
1dbce35247
CMake: Generate config.h from CMakeOptions.txt
I would have liked config.h to be selected by include dir configuration,
but this way is less intrusive.
2018-04-07 23:39:53 +02:00
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
Ahmad Fatoum
d88523f03a
Split CMake options into separate CMakeOptions.txt 2018-04-07 22:41:43 +02:00
Milan Nikolic
3caa044bf2 Add GNUInstallDirs and USE_AUDIO/USE_WAYLAND options to CMake (#518) 2018-04-07 16:32:14 +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
b8bd1d2ea6 Remove unnecesary NPOT check
Now PLATFORM checks only used on core and utils modules
2018-04-05 19:22:45 +02:00
Ray
005f2ffb75 Simplified some code 2018-04-05 19:18:44 +02:00
Ray
931b672c92 Added: ImageDrawRectangle()
Renamed SaveImageAs() to ExportImage() for consistency on what actually happens with data.
2018-04-04 12:02:20 +02:00
Ray
6edf15b9f9 Added funtion: ExportMesh() 2018-04-04 12:00:54 +02:00
Ray
9393d1d76f Merge branch 'master' of https://github.com/raysan5/raylib 2018-04-03 12:43:42 +02:00
Ray San
fe1c04d1b8 Removed old code 2018-04-03 12:42:28 +02:00
Ray
533780aadf Review ImageDraw() alpha blending
Not sure if math is ok... just left a commented piece of code that uses pre-multiplied alpha.
2018-04-03 12:42:22 +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
raysan5
bbdf9f4880 Review InitWindow() to avoid void pointer
Reviewed for PLATFORM_ANDROID and PLATFORM_UWP
2018-04-02 14:49:01 +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
maficccc@gmail.com
db98dba10f Fix Allocator sizeof operand mismatch 2018-04-02 13:30:20 +02:00
maficccc@gmail.com
03ca9508bf Fix Dead initialization 2018-04-02 13:30:20 +02:00
maficccc@gmail.com
44eedf235d Redundant assignment of 'angle' to itself 2018-04-02 13:30:20 +02:00
maficccc@gmail.com
ca9e652f8b Remove dead assignment 2018-04-02 13:30:19 +02:00
Martinfx
28a9a181cb Fix use after free 2018-04-02 13:30:19 +02:00
maficccc@gmail.com
e659336c11 Fix value stored to 'num_channels' is never read 2018-04-02 13:30:19 +02:00
Ray
e72b96ada1
Merge pull request #508 from a3f/master
Allow use of main instead of android_main
2018-04-02 10:48:02 +02:00
Ray
564baa22d6
Merge pull request #513 from autious/master
Add orthographic 3d rendering mode
2018-04-01 00:27:20 +02:00
Jacques Heunis
b4e2f5b45c Initialize the timer after the graphics device on desktop and web platforms. (#516)
This is already the order that is used for Android. It doesn't appear to
make a difference on desktop but on web using the timer before it's been
initialized (by glfwInit, inside InitGraphicsDevice) causes the a long
(and variable but often several seconds) sleep between the first and
second frame.

Fixes: 468309d ("Early-exit InitWindow if InitGraphicsDevice fails")
2018-03-31 12:22:44 +02:00
Max Danielsson
6c049fdd76 Move deduplicate aspect variable in begin render.
Changes motivated by commentary in pull request 513
2018-03-27 19:59:54 +02:00
Max Danielsson
5ecee69088 Add 3d orthographic projection mode 2018-03-25 18:33:19 +02:00
David Reid
a8e2c7de9c
Fix an infinite loop in ALSA backend of mini_al. 2018-03-20 18:39:21 +10:00
Ray
deffad1701 Review tabs issue when compiling...
...PLATFORM_ANDROID on Windows, using MinGW-w64 (x86) provided Make (GCC
7.2)
2018-03-19 23:49:14 +01:00
David Reid
4a69c2d75e
Fix a buffer overflow in the OSS/BSD backend. 2018-03-18 14:37:41 +10:00
Ahmad Fatoum
2c219fb814
Allow use of main instead of android_main
Inspired by #504.
Instead of requiring the user to do PLATFORM_ANDROID #ifdefery,
have the android_main entry point exported by raylib and call
the user-defined main. This way many games could (in theory)
run unmodified on Android and elsewhere.

This is untested!
2018-03-16 21:37:22 +01:00
Ray
61e0e4b4f3 Complete review of raymath for API consistency 2018-03-16 13:47:01 +01:00
Ray San
9318dc98ce Support case-insensitive extension check 2018-03-16 13:09:49 +01:00
Ray
487bc613fd Updated raylib dev version 2018-03-15 12:37:52 +01:00
Ray
9d8f15c19d Reviewed raymath changes 2018-03-15 12:37:23 +01:00
Ray
6c6d6776c0
Merge pull request #482 from a3f/master
raymath.h: Use C99 inline semantics
2018-03-15 12:27:40 +01:00
Ray
8bc2813b0c
Merge pull request #500 from victorfisac/fork/master
[fork/master] Fixed some memory leaks and add null checks for consistency
2018-03-11 10:51:15 +01:00
raysan5
a0127d8300 Corrected typo 2018-03-11 10:49:51 +01:00
raysan5
fd5e457bb4 Correct issue with triangleCount 2018-03-11 10:41:49 +01:00
victorfisac
d6fee9da29 Fixed compilation code comment in header 2018-03-10 19:30:25 +01:00
victorfisac
3201bad65a Fixed memory leaks in physics step operations 2018-03-10 19:25:17 +01:00
Ray San
df50eada53 Added new functions
- SetWindowSize() to scale Windows in runtime
- SetMouseScale() to scale mouse input, useful when rendering game to a
RenderTexture2D that will be scaled to Window size (used on rFXGen tool)
2018-03-09 11:43:53 +01:00
raysan5
85850a955a Removed additional code
GLFW has been updated to latest version, probably this code is not
required any more due to already been integrated into library... but it
needs to be tested...
2018-03-03 16:01:24 +01:00
raysan5
3b4a64f2d6 Updated GLFW library to latest version 2018-03-03 15:58:44 +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
Ahmad Fatoum
3f48ffb1b6
Fix two memory leaks in jar_xm.h
Found by LeakSanitizer in #494.
2018-02-26 00:14:19 +01:00
RDR8
18f61948ce Update Makefile
$ make clean
Makefile:296: *** missing separator.  Stop.
2018-02-25 22:27:32 +01:00
Ahmad Fatoum
80bf636f81
Don't exceed signed int range when shifting left
Fixes UB in #489, found by UBSan.
2018-02-25 03:17:57 +01:00
Ahmad Fatoum
76aca9b0d1
Fix possible buffer overflow in LoadBMFont
Width specifier doesn't include NUL terminator.
Fixes #487 found by AddressSanitizer.
2018-02-25 03:03:37 +01:00
Ahmad Fatoum
1430d01906
jar_xm: Workaround for unaligned pointer accesses
jar_xm.h does some shady pointer casts leading to unaligned accesses
and breaking strict aliasing. x86 has special circuitry for doing
unaligned accesses, but on other architectures, it may trap and require
kernel fix-up or crash outright. With this patch, one obstacle in
porting raylib to the GameBoy Advance has been removed. Go for it ;-)

To avoid having to rewrite that `mempool' code, insert padding before
structs and instruct the compiler (GCC, most importantly), to be gentle
when optimizing.

This fixes #490 (Unless we got ourselves 256-bit pointers, if so,
hello future!)
2018-02-24 23:59:56 +01:00
Ahmad Fatoum
f52d2de582
raymath.h: Use C99 inline semantics
RAYMATH_EXTERN_INLINE was renamed to RAYMATH_HEADER_ONLY, which user code
may define if they want to use it as header-only library. If multiple
files in the same project define RAYMATH_HEADER_ONLY, they might each
have duplicate out-of-line definitions of the same functions.

By default, raymath.h exposes inline definitions, which instructs the
compiler _not_ to generate out-of-line definitons, if out-of-line
definitions are required, those of the file defined with
RAYLIB_IMPLEMENTATION are used instead. There may be only one such file.

In C++ mode, the compiler will select only one out-of-line definition
automatically, so no need to define a RAYLIB_IMPLEMENTATION.

Unfortunately, we have to remove raymath function declaration from
raylib.h as those declarations would lead to duplicate out-of-line
definitions which would yield linker errors. This problem didn't
exist with GNU89 or C++, because there multiple defintions are ok,
but in C99 they aren't.
2018-02-24 23:39:23 +01:00
Ahmad Fatoum
ed6962edd3
Make MatrixToFloat and Vector3ToFloat reentrant
Besides making it thread-safe, it suppresses a GCC warning
when making them static inline in an upcoming patch.
2018-02-24 23:39:17 +01:00
RDR8
2b5fc12036 Update Makefiles. Enable example usage of staged libraylib.so. 2018-02-24 14:24:55 -06:00
Ahmad Fatoum
a5881fb9cc
Revert "raymath.h: Use C99 inline semantics"
This reverts commit 6ffc8cb799.
and commit e4d7bbec1e.
which I pushed by mistake...
2018-02-24 15:40:08 +01:00
Ahmad Fatoum
c9043b5a87
CMake: Add options to use -fsanitize={address,undefined}
To make bugs like #485, #486, #487 and #488 easier to find in future.
2018-02-24 15:37:38 +01:00
Ahmad Fatoum
6ffc8cb799
raymath.h: Use C99 inline semantics
RAYMATH_EXTERN_INLINE was renamed to RAYMATH_HEADER_ONLY, which user code
may define if they want to use it as header-only library. If multiple
files in the same project define RAYMATH_HEADER_ONLY, they might each
have duplicate out-of-line definitions of the same functions.

By default, raymath.h exposes inline definitions, which instructs the
compiler _not_ to generate out-of-line definitons, if out-of-line
definitions are required, those of the file defined with
RAYLIB_IMPLEMENTATION are used instead. There may be only one such file.

In C++ mode, the compiler will select only one out-of-line definition
automatically, so no need to define a RAYLIB_IMPLEMENTATION.

Unfortunately, we have to remove raymath function declaration from
raylib.h as those declarations would lead to duplicate out-of-line
definitions which would yield linker errors. This problem didn't
exist with GNU89 or C++, because there multiple defintions are ok,
but in C99 they aren't.
2018-02-24 15:37:37 +01:00
Ahmad Fatoum
e4d7bbec1e
Make MatrixToFloat and Vector3ToFloat reentrant
Besides making it thread-safe, it suppresses a GCC warning
when making them static inline in an upcoming patch.
2018-02-24 15:37:37 +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
Ray
cd5e2e0f17 Corrected cursor issue for Wayland 2018-02-22 00:01:13 +01:00
Ray
326fe09777 Reviewed compilation for OpenGL 1.1 2018-02-21 23:47:48 +01:00
Ray
97bf2706c4 Removed flag -fgnu89-inline 2018-02-21 23:28:34 +01:00
Ray
11612fce27 Reviewed timming system for macOS
Apparently, before macOS Sierra version, clock_gettime was not available, using MATCH timming system instead
2018-02-20 10:30:51 +01:00
raysan5
0958904eac Added comments to review function ImageTextEx() 2018-02-18 19:29:13 +01:00
raysan5
4492a70a4b Support UTF8 basic characters on ImageTextEx()
Supported UTF8 range equivalent to [128..255] (80h..FFh)
Exposed and renamed text function GetGlyphIndex()
Renamed spriteFont parameter name to simply font
Small security check on transmission mission ending screen
2018-02-18 18:07:57 +01:00
Ahmad Fatoum
051040af2d
CMake: Remove _RAYLIB suffix from -D{SHARED,STATIC}_RAYLIB
They were named so for compatibility with make, but make doesn't use
the anymore. I always forget whether it's SHARED_RAYLIB or
RAYLIB_SHARED...

For now, RAYLIB_SHARED and STATIC_RAYLIB may still be used,
but print a deprecation warning.
2018-02-16 05:58:18 +01:00
Ray
36750ffb9a BREAKING CHANGE: Renamed function for consistency
Rename: GetHexValue() renamed to ColorToInt()
Added: ColorToHSV()
2018-02-12 11:55:22 +01:00
Ray
8af5f9dfe0 Avoid rendering SPACE character! 2018-02-12 11:25:00 +01:00
RDR8
f742f1289d
Update Makefile 2018-02-12 05:17:02 +00:00
RDR8
5616314069
Update Makefile 2018-02-12 00:15:58 +00:00
RDR8
4c4b564392
Update Makefiles for Linux installation. See prior commit.
These changes are intended to provide context and control over the Linux make install process. make install RAYLIB_LIBTYPE=SHARED now works as expected. libraylib.so is properly installed with attendant runtime links. The examples will be running against the newly installed libraylib.so unless otherwise specified with RAYLIB_RUNTIME_PATH. See raylib/src/Makefile and raylib/examples/Makefile for usage of RAYLIB_INSTALL_PATH, RAYLIB_H_INSTALL_PATH, and RAYLIB_RUNTIME_PATH variables. RAYLIB_RUNTIME_PATH in particular is interesting for portability since sudo isn't needed.
The default configuration and workflow is essentially unchanged and unaffected.
2018-02-11 23:42:22 +00:00
RDR8
e86b4d4e03 Update Makefiles for Linux installation. 2018-02-11 22:58:15 +00:00
Ahmad Fatoum
1be72a2e72
pkg-config: Empty Requires.private on shared-only build
If user doesn't build the static library,
`pkg-config --static --libs raylib` should be equivalent to
`pkg-config --libs raylib`.
2018-02-11 20:10:50 +01:00
Ahmad Fatoum
09b022305f mini_al: Support {Net,Open}BSD OSS
Fixes this build failure:
http://www.cpantesters.org/cpan/report/a069fade-0e1f-11e8-a1cf-bb670eaac09d
2018-02-11 12:20:17 +01:00
Ray
d90a33b850 Some reviews for Android compilation 2018-02-11 01:48:53 +01:00
Ray
231a69417a Corrected masteVolume setting 2018-02-11 01:28:30 +01:00
Ray
7bf6becc94 Reviewed mini_al implementation
- Some functions renamed
- Comments reviewed
- Functions reorganized
2018-02-11 01:12:16 +01:00
Ahmad Fatoum
468309d06c
Early-exit InitWindow if InitGraphicsDevice fails
Otherwise we may run into LoadDefaultFont and crash in rlLoadTexture
Also moves InitTimer() before InitGraphicsDevice(), to allow it to be
tested even if InitWindow ultimately fails.
2018-02-09 22:54:35 +01:00
Ray
f72b315cb6 Updated external libraries 2018-02-09 00:01:00 +01:00
Ahmad Fatoum
a976e76ae6
InitWindow: return false if no monitor found
Otherwise we run into an assertion failure inside GLFW's glfwGetVideoMode.
Example:
http://www.cpantesters.org/cpan/report/b4ba5894-0bdb-11e8-841e-2c60b04e1d2d

This is related to #456.
2018-02-08 12:06:21 +01:00
Ray
4d5d1e0434 Added function LoadShaderCode()
Allows loading of shader from text code string directly
2018-02-05 01:03:13 +01:00
raysan5
5437458469 Merge branch 'develop' of https://github.com/raysan5/raylib into develop 2018-02-04 13:46:45 +01:00
raysan5
3a11cc5e31 Incremeted version to align with CMake 2018-02-04 13:44:41 +01:00
Ahmad Fatoum
19f280f4b7
Bump version to 1.9.4 2018-02-04 13:36:08 +01:00
raysan5
6dc2f979cc Updated raylib version
Note that this version is under development and could be buggy on some
platforms...
2018-02-04 12:33:46 +01:00
raysan5
c32ed921a2 Security check in case window initialization fails 2018-02-04 12:31:16 +01:00
raysan5
70e0070a85 Reviewed window initialization
In case graphic device could not be created it returns false instead of
failing with an error tracelog (and consequently closing the program).
Window initialization success could be checked with new function
IsWindowReady()
2018-02-04 12:26:28 +01:00
Ahmad Fatoum
26c9176a14
Return false from InitWindow if glfwInit or glfwCreateWindow fails
You can't do much with raylib if glfwInit or glfwCreateWindow fails,
currently it just exits by means of TraceLog(LOG_ERROR.
User code, however, might want to fall back to a text-only UI
or display a warning if raylib can't be used.
2018-02-03 14:53:58 +01:00
Ahmad Fatoum
44cd4faf83
exit(3), don't crash, when glfwCreateWindow fails
glfwSetWindowPos was called on a NULL window, triggering an assert
inside GLFW. Check for failure and exit cleanly by means of
TraceLog(LOG_ERROR instead.
2018-02-03 14:46:26 +01:00
Ahmad Fatoum
7f5fa4d49c
CMake: Add tristate option for using system GLFW (#455)
-DWITH_SYSTEM_GLFW=ON: Link against system glfw and fail otherwise
-DWITH_SYSTEM_GLFW=OFF: Use embedded rglfw.c
-DWITH_SYSTEM_GLFW=IF_POSSIBLE: Probe for system glfw but fallback to
                                rglfw if unavailable

Also change Linux 64-bit CI build to install system glfw and use it,
so this doesn't bitrot.

Addresses #453.
2018-02-03 10:17:51 +01:00
Ahmad Fatoum
007ae1b7b3
CMake: Fix typo in MACOS_FATLIB 2018-02-03 09:38:57 +01:00
Ray San
d1ef6869a9 Added function DrawRectangleLinesEx() 2018-02-02 11:01:38 +01:00
Ray
58346414f7 Corrected typo 2018-01-31 15:32:40 +01:00
Ray
44c95af463 Added missing keys definitions 2018-01-31 14:08:08 +01:00
Ray
1ce8c80de9 Corrected several issues... 2018-01-28 16:52:18 +01:00
Ahmad Fatoum
f955b2255d
GLFW: Fix build error on Linux < v2.6.39
Cherry-pick from upstream glfw/glfw#1196
Found in CPANtesters test of Alien::raylib:
http://www.cpantesters.org/cpan/report/d956d128-0339-11e8-b0d1-b6c4abd39192
2018-01-27 14:53:04 +01:00
Ahmad Fatoum
7f7aac643a
CMake: Search dependencies and build pkg-config's Libs.private with it 2018-01-27 01:57:21 +01:00
Ahmad Fatoum
1093766669
CMake: remove OpenAL dependency 2018-01-27 01:05:17 +01:00
Ray
1d5fbef93d Clear fbo for drawing
Just in case ClearBackground() is not used after BeginTextureMode(), it clears fbo to color defined by previous ClearBackground()
2018-01-26 11:49:00 +01:00
Ahmad Fatoum
520f317a75
#include header for time() on Windows 2018-01-25 23:12:03 +01:00
Ahmad Fatoum
03ee03e2a6
#include header for glInsertEventMarkerEXT on macOS 2018-01-25 23:00:07 +01:00
Ahmad Fatoum
8be93762d9
Make function calls without prior declaration an error
which is the default behavior on C99 and up.
2018-01-25 22:34:29 +01:00
Ray
c2ec88f930 Support DEBUG library building 2018-01-25 10:07:51 +01:00
Ray
2dcaddc81c Review mipmaps generation issue
When changing image format, mipmaps are lost and regenerated from
scratch
2018-01-23 13:23:34 +01:00
Ray
04af83ff99 Improved pixel formats support
Review rlLoadTexture() function to make it simpler, now OpenGL texture
glInternalFormat, glFormat and glType are retrieved with new function
GetGlFormats()
2018-01-22 00:20:42 +01:00
Ray
8e0a277f7c Reviewed UWP branch integration 2018-01-19 12:02:15 +01:00
Ray
750323da53
Merge branch 'develop' into testing_uwp 2018-01-19 11:41:51 +01:00
Ahmad Fatoum
30ef3f3122
GCC/Clang: Treat void pointer arithmetic as error
As an extension, GNU C treats sizeof(void) as 1. MSVC doesn't.
Make it an error on GCC/Clang to avoid accidental MSVC breakage.
2018-01-18 13:22:41 +01:00
Ahmad Fatoum
a2edc9d641
MSVC: Fix void pointer arithmetic error
GNU C allows it as a compiler extension, but MSVC doesn't.
2018-01-18 13:20:13 +01:00
Ray
ce9f191f1b Added function: ImageMipmaps() 2018-01-18 00:23:45 +01:00
Ray
727cb1819b Reviewed VS2015 projects
- Support OpenGL 1.1 if selected macro
- Corrected MSVC compiler issues with (void *) data
- Removed raylib.dll project
- Created DEBUG_DLL and RELEASE_DLL configurations
2018-01-17 14:21:23 +01:00
Ray
c8e97df233 Reviewed function GenImagePerlinNoise()
Added support for noise image offset
2018-01-17 00:43:30 +01:00
Ray
dd3b3dbadb Redesigned rlLoadTexture()
- Added support for mipmap levels loading
- Removed internal function LoadTextureCompressed(), not required any
more...
2018-01-16 00:00:05 +01:00
-
230e78a23e Code tweak while using OpenAL backend 2018-01-15 13:54:25 +01:00
-
f2a675ae53 Reviewed Makefiles...
- Renamed VERSION to RAYLIB_VERSION
- Renamed API_VERSION to RAYLIB_API_VERSION
- Renamed RAYLIB_RELEASE to RAYLIB_RELEASE_PATH
- Support Web Assembly compilation on PLATFORM_WEB
2018-01-15 13:54:06 +01:00
Ray
278d8575bd Added new function: ImageAlphaCrop() 2018-01-11 10:22:32 +01:00
Ray
c37d2d448d Corrected issue with matrices
Matrix stack system should be reviewed but, in the meantime,
currentMatrix should be reseted in order of 3d to work
2018-01-08 01:03:04 +01:00
Ray
fcb0cae605 Use busy wait loop
If not using busy wait loop, linkage with WINMM in Windows platform is
required
2018-01-07 23:55:23 +01:00
Ray
4dcc02ff1e Launch draw call if buffer limits reached
Note that this solution is a temporal patch, not properly tested and
prone to fail, specially if matrix are pushed into the stack...
2018-01-07 23:54:11 +01:00
raysan5
e4be917d1b Added new image functions
- Added: ImageAlphaClear()
- Added: ImageAlphaPremultiply()
- Reorganized some functions
2018-01-07 00:51:26 +01:00
raysan5
b97134c3e1 Review float pixel format textures support 2018-01-06 18:17:38 +01:00
raysan5
7caa3201d5 Improved pixel formats support
- Renamed enum TextureFormat to PixelFormat for consistency
- Added support for pixel format UNCOMPRESSED_R32
- Using GetPixelDataSize() where required
2018-01-06 13:43:48 +01:00
raysan5
1f0f8c33fa Added function declaration 2018-01-06 02:51:28 +01:00
raysan5
7fa2861160 Added function: GetPixelDataSize()
Just found I need that function...
2018-01-06 02:50:20 +01:00
raysan5
0e48396369 Corrected issue with new functionality
Using default font texture as base white texture for rectangles reduces
draw calls considerably, actually, raygui can be drawn with a single
pass!
2018-01-06 02:44:47 +01:00
raysan5
b760f16f9b Reviewed framebuffers cleaning
Issues when dealing with FBOs
2018-01-06 02:43:38 +01:00
raysan5
1a82e1ab26 Added function GetFileName()
Review comments
2018-01-02 02:26:05 +01:00
raysan5
e1baae0249 Removed function DrawRectangleT()
Functionality integrated in DrawRectangle() and selectable with config
flag USE_DEFAULT_FONT_TEXTURE
2018-01-01 16:54:32 +01:00
raysan5
e69424c86f Reviewed text input 2017-12-31 23:50:22 +01:00
raysan5
e7cf03b1e4 Minor tweaks 2017-12-28 19:27:02 +01:00
raysan5
7965f983ba Support Wayland display on Linux desktop 2017-12-28 18:14:39 +01:00
raysan5
b19e155b34 Support UNCOMPRESSED_R32G32B32A32 texture format 2017-12-28 17:58:37 +01:00
raysan5
c93bca8c27 Review Makefile config flags
Support external GLFW usage
Renamed some flags for consistency
2017-12-28 17:58:09 +01:00
raysan5
0bd06eec51 Renamed function to SetTraceLog()
I think is clearer this way...
2017-12-24 16:49:54 +01:00
raysan5
e517d8fd16 Added function SetTraceLogTypes()
Trace log messages could be configured with this function to select wich
ones are shown
2017-12-24 16:47:33 +01:00
raysan5
e574428343 Some formatting tweaks 2017-12-24 16:12:52 +01:00
raysan5
f44dbf21cf Review physac timming system 2017-12-24 15:59:03 +01:00
Martinfx
9b7a24331d Added next bsd os 2017-12-23 18:12:19 +01:00
Ray San
00c34a035c Updated copyright year 2017-12-20 12:37:08 +01:00
Ray San
27c274bc3c Corrected issue with SaveImageAs()
That function depends on SavePNG() and forces platform check on textures
module, that behaviour should be changed, platform definition should be
only required on core module...
2017-12-20 12:36:47 +01:00
Ray San
e8bb53ed35 Corrected issue on OpenGL ES compilation 2017-12-20 12:35:12 +01:00
Ray San
61afd07bd7 Force OpenAL backend on some platforms
OpenAL audio backend is being forced on HTML5 and OSX
2017-12-20 12:34:18 +01:00
Ray San
1320044e94 Review code formatting 2017-12-20 11:37:43 +01:00
Ray
b63ffcfa0f Some code tweaks
Audio module requires a complete formatting review....
2017-12-20 00:34:31 +01:00
Ray San
5290390494 Expose GetTime() function to users
Monotonic time since InitWindow() could be retrieved with this function.
2017-12-19 14:06:54 +01:00
Ray
bc6ae93a48 Added some comments on GetTime()
Reviewing GetTime() functionality
2017-12-18 00:06:57 +01:00
Ray San
b155333178 Support audio module skip on compiling
Some programs like tools could not require audio support
2017-12-15 17:02:29 +01:00
Ray San
e17a9a8216 Updated mini_al to latest version 2017-12-15 17:01:50 +01:00
Ray San
53ad53d051 Manually review previous PR 2017-12-15 13:44:31 +01:00
user
2affac820e make raylib not clash with windows-header 2017-12-14 11:52:45 +01:00
user
217917530b fix for eventmarker missed in first cl 2017-12-14 11:51:17 +01:00
user
48d0c93ace make GetTime available to user of library 2017-12-14 11:50:35 +01:00
user
b872de951b fix for GetMatrixModelview (former cl) 2017-12-14 11:49:31 +01:00
user
d51f382ef8 optimized matrixrotate function by removing identity matrix 2017-12-14 11:48:33 +01:00
user
b5395b22cc make raymath compiling with msvc in c++ mode 2017-12-14 11:47:52 +01:00
user
07b522c113 make matrix stack work closer to old opengl implementation 2017-12-14 11:46:38 +01:00
user
a7f2fedbfb compilefix for function declaration (win only) 2017-12-14 11:45:47 +01:00
user
0e18b14605 added debug-event-markers for opengl so that you're able to set markers for renderdoc or other gpu debuggers what your program is currently doing 2017-12-14 11:44:48 +01:00
user
963551ee6e added possibility to get modelview matrix from rlgl to be able to send it to shaders 2017-12-14 11:43:06 +01:00
user
69c8fa409a fixed function declaration differ from implementation 2017-12-14 11:42:06 +01:00
user
54587d7fdb proper if-clauses for disabling functionality in text.c 2017-12-14 11:41:31 +01:00
user
08fc886afd added proper define checks for png-save if it's disabled 2017-12-14 11:40:08 +01:00
Ray
2388cbc3cd Corrected crash on shader loading
If shader file could not be found on loading it crashed, instead added
fallback to default shader!
2017-12-13 20:10:13 +01:00
Ray
a6f9cc5629 Remove rres support
Let the user choose if using rres external library
2017-12-11 11:55:02 +01:00
Ahmad Fatoum
4a7840b752
Remove Meson build system
Less maintenance overhead that way,
given that make/CMake now also do library versioning.
2017-12-11 11:15:14 +01:00
Ahmad Fatoum
d24b89bb0e
Add library versioning to Make/CMake build systems
See #401 for the discussion.
Also bumps version number to 1.9.2 without the -dev,
because neither ELF nor MachO like such a suffix.
The -dev suffix will have to be restricted to the git tags.
2017-12-11 10:25:06 +01:00
Ahmad Fatoum
de78fa69bc Fix CI builds after mini_al changes 2017-12-10 21:35:38 +01:00
Ahmad Fatoum
203b2f65d1
Fix typo in preprocessor macro 2017-12-10 21:11:04 +01:00
raysan5
5ae2c0d15b Added Wayland support
Updated to latest GLFW library and working on Wayland support, still
looking how to implement it on raylib because it just exposes
PLATFORM_DESKTOP and defaults to X11 windowing system on Linux...
2017-12-09 19:05:42 +01:00
Ray San
3b5a26099e Removed OpenAL Soft dependency on building
OpenAL Soft backend is still available in audio module, I'm thinking if
exposing it for building in some way or just left it there for advance
users to switch to it manually in case of necessity...
2017-12-05 14:01:35 +01:00
Ray San
33eec31575 Updated external libraries dependencies
Added dr_wav for a future use
2017-12-05 13:23:04 +01:00
Ray San
acbfba9250 Updated library features and dependencies 2017-12-05 13:22:26 +01:00
Ray
9d0ee6c2f6
Merge pull request #413 from mackron/dr/mini_al
mini_al integration
2017-12-05 11:23:16 +01:00
David Reid
104391f82b Update mini_al. 2017-12-05 18:49:00 +10:00
Ray
54d0acc3b6 Change version number for develop
Updated raylib version to 1.9-dev for development pourposes.

Next raylib version is planned to implement a big amount of changes, so
the version bump.
2017-12-05 00:05:05 +01:00
Ray San
0cd327ccb2 Moved QuaternionNlerp() function 2017-12-04 11:03:45 +01:00
David Reid
82f88e5df9 Potential fixes for Raspberry Pi. 2017-12-03 11:20:02 +10:00
Ray San
25a232a6f3 Merge branch 'develop' of https://github.com/raysan5/raylib into develop 2017-11-30 16:59:13 +01:00
Ray San
9a7524661f Removed GLFW3 linking and added rglfw 2017-11-30 16:59:09 +01:00
Martinfx
825d15b069 Fixed broken include for AppVeyor 2017-11-29 17:06:40 +01:00
Martinfx
69a1c19735 Fixed use ${LIBS_PRIVATE} for FreeBSD 2017-11-29 13:17:02 +01:00
Martinfx
2f471414c2 Added compile with cmake for FreeBSD 2017-11-29 00:05:39 +01:00
Martinfx
2cf37708c0 Added glfw support for FreeBSD 2017-11-29 00:04:29 +01:00
Ray San
c9722161d1 Support GetCurrentTime() on macOS 2017-11-27 12:46:40 +01:00
Ahmad Fatoum
f991a075e1 Build examples and games on Travis CI
They were disabled because they failed to build,
but this patch set fixes the build on Linux and macOS.

This doesn't apply to the AppVeyor build on Windows yet;
it currently fails at linking with OpenAL.
2017-11-25 21:45:31 +01:00
raysan5
853cc6f4c9 Added authorization token 2017-11-25 19:40:05 +01:00
Ahmad Fatoum
49c5a433df
Setup CMake package target and CI auto-deploy tags
cmake --build . --target package # or make package if make is used

can now be used to create binary packages for raylib.

AppVeyor and Travis CI are configured to push the artifacts
that result from building git tags to the related Github releases page.
2017-11-24 21:24:35 +01:00
Ahmad Fatoum
44376c04fa
Generate and install pkg-config pc file
After installation, compiling new programs is possible with
    $ cc game.c `pkg-config --static --libs --cflags raylib`
or
    $ cc game.c `pkg-config --libs --cflags raylib`
depending on configuration

Also adds following configuration options:
- WITH_PIC "Compile static library as position-independent code"
- STATIC_RAYLIB "Build raylib as a static library"
- MACOS_FATLIB  "Build fat library for both i386 and x86_64 on macOS"
2017-11-24 17:15:33 +01:00
David Reid
a0d9913c7c Potential fixes for audio on RPI and Emscripten builds. 2017-11-24 22:13:33 +10:00
David Reid
5463e14886 Audio: Fix a bug with AudioStreams.
This bug is a result of the buffer of an AudioStream being smaller than
that of a period of the backend playback device. In this situation,
AudioStream's would have pauses between buffer updates because the
backend is not able to re-fill the AudioStream buffer's quick enough
due to it's periods being longer than the AudioStream buffer.
2017-11-24 21:54:00 +10:00
Ahmad Fatoum
17c91bad6f
Disable CRT "secure" warnings
Suppresses 88 of the 213 warnings reported when compiling with
MSVC 2015 on AppVeyor.
2017-11-23 07:56:02 +01:00
Ahmad Fatoum
1e1b20c889
Add AppVeyor CI for automatic Windows Builds
We already have automatic Linux and macOS build via Travis CI.
This adds the same for Windows x86 and x86_64 with both
Microsoft Visual Studio 2015 as well as MinGW-w64.
2017-11-23 00:47:58 +01:00
Ahmad Fatoum
b2acff66de
Fix macOS build of new rglfw.c approach
There have been two problems:

* GLFW itself was compiled with the definitions for compiling
_against_ GLFW (fixed by removing requirement for external glfw)

* rglfw.c was being compiled as C code, although it includes
Objective C files.

This _might_ break the Windows build, needs to be checked.

Fixes #391, but as noted I'd prefer though a separate source directory
and build script for GLFW.
2017-11-22 23:11:41 +01:00
Ahmad Fatoum
899e1fbd94
Avoid duplicate definition of feature macro
Feature macros need to be defined before #including any headers,
preferably through the build system, but this is good enough.

Fixes a compile error on my fork's Travis CI.
2017-11-22 22:58:18 +01:00
Ray San
1be826fb16 Removed useless file 2017-11-22 17:30:09 +01:00
Ray
25ceec9b8f Corrected default textures locations
By default, we look for texture1 for LOC_MAP_SPECULAR and texture2 for
LOC_MAP_NORMAL
2017-11-22 14:56:45 +01:00
David Reid
8b3694a34d Fix a crash in audio mixing code. 2017-11-22 18:36:48 +10:00
David Reid
c71b01c8ac Update mini_al with fixes for OpenSL and SDL backends. 2017-11-21 06:35:38 +10:00
David Reid
14b889be41 Update mini_al with a potential fix for HTML5. 2017-11-20 21:47:07 +10:00
David Reid
3238cba47c Log the name of the playback device. 2017-11-19 19:38:23 +10:00
David Reid
49e945f958 Update mini_al with fixes and improvements for Emscripten. 2017-11-19 12:15:01 +10:00
David Reid
84ef860443 Update mini_al with experimental support for SDL/Emscripten. 2017-11-18 22:30:20 +10:00
David Reid
f9144ac5b0 Rename a variable for consistency. 2017-11-18 12:15:48 +10:00
David Reid
3be83dac7e Update mini_al. 2017-11-18 11:51:51 +10:00
David Reid
b9bb80d004 Add some logging and update mini_al. 2017-11-18 10:27:44 +10:00
David Reid
60d7215b2a mini_al: Unify the buffer system for Sounds and AudioStreams. 2017-11-18 08:42:14 +10:00
Ray San
6d317c7afe Remove glfw3 dependency
Full sources already included and compiled with raylib (rglfw)
2017-11-17 18:43:39 +01:00
Ray San
e2e4b8df28 Remove unneeded glfw dependencies
Only required by examples
2017-11-17 18:42:39 +01:00
Ray San
a6877c82c6 Added alternative license to rgif.h library
Just in case of legal conflict with public domain software, added MIT
alternative license.
2017-11-17 18:30:19 +01:00
David Reid
261b00e9e8 Update mini_al. 2017-11-17 21:12:05 +10:00
Ray San
a6416f82a7 Reviewed file comments 2017-11-16 17:59:35 +01:00
David Reid
96be62e88b Update mini_al.h 2017-11-16 21:49:45 +10:00
David Reid
e03afbf2fa Add support for pitch shifting.
This commit should bring the mini_al backend up to feature parity with
the OpenAL backend.
2017-11-15 22:04:23 +10:00
David Reid
322d868841 Fix minor errors with the OpenAL backend. 2017-11-14 21:44:57 +10:00
David Reid
88d2810fa3 Bug fixes for Music with mini_al. 2017-11-14 21:15:50 +10:00
Ray
68024f1b0b Added desktop platform check...
...to define proper values
2017-11-13 21:37:00 +01:00
David Reid
3a96a66fdf Bring up to date with changes to mini_al. 2017-11-13 21:46:29 +10:00
Ray San
9c65caea8c Added GLFW sources to raylib
Compiling GLFW library with raylib avoids external dependencies, this
way we solve version problems in some platforms
2017-11-13 12:09:41 +01:00
David Reid
e52f4282d6 Update comments. 2017-11-12 22:57:31 +10:00
David Reid
ac4c911ad7 Work on porting Music to mini_al. 2017-11-12 21:55:24 +10:00
David Reid
68bf6c9701 Initial work on porting AudioStream to use mini_al. 2017-11-12 20:59:16 +10:00
raysan5
24b12e5e23 Remove PLATFORM_ checks from raylib header
Now header is truly multiplatform...

Actually still a small pending check on XBOX gamepad controls that
hopefully will be removed with next GLFW 3.3
2017-11-12 11:45:35 +01:00
raysan5
02dd4d32b5 Allow custom distortion shader - IN PROGRESS - 2017-11-12 11:00:28 +01:00
raysan5
09228752ce Review default shaders usage on loading 2017-11-12 10:33:44 +01:00
David Reid
b0852002b8 Rename SoundInternal to SoundData for consistency with MusicData. 2017-11-12 14:54:37 +10:00
David Reid
75433a670e Initial work on adding support for mini_al. 2017-11-12 14:17:05 +10:00
Ray San
b6b58991e6 Working on UWP support
Support Universal Windows Platform (UWP):
- Windows 10 App
- Windows Phone
- Xbox One
2017-11-10 12:37:53 +01:00
Wilhem Barbier
7ef604fbf5 Store the default shaders 2017-11-09 20:47:22 +01:00
Ray San
37986b26cb Corrected issue with text drawing on image 2017-11-06 14:13:50 +01:00
Ray San
2f024dbfef Corrected possible issue on FBO creation
USE_DEPTH_RENDERBUFFER on OpenGL 2.1
2017-11-06 13:58:11 +01:00
Ray San
81518ccd13 Corrected issue with shader locations init
On RPI, after latest drivers update, models were not rendered properly
cause of that...
2017-11-06 13:41:13 +01:00
Wilhem Barbier
879c2f484b SetShaderValue take const pointer 2017-11-05 21:57:29 +01:00
Ray
aa6a1b4283 Corrected issue with missing defines 2017-11-05 09:58:25 +01:00
Ray
d43af4918b Improve textures support for OpenGL 2.1 2017-11-04 16:57:46 +01:00
Ray
9e0105a1a3 Corrected function name 2017-11-04 16:57:20 +01:00
Ray San
244007a99b Review Fade() functionality 2017-11-03 12:41:03 +01:00
Ray San
3c3d56bb4a Renamed data types to standard names 2017-11-03 12:40:46 +01:00
Ray San
3d755d617a Some code tweaks... 2017-11-02 20:08:52 +01:00
Ray San
415e7e972c Review some issues, view description
- Review RPI compilation (core_drop_files not supported)
- Review ImageFormat(), some issues
- GetTextureData() reviewed for RPI
2017-10-30 13:51:46 +01:00
Ray
743cc6add6 Review new build platform: FreeBSD
Corrected issue with RPI_CROSS_COMPILE
2017-10-30 00:14:13 +01:00
Ray
52cd0395b4
Merge pull request #373 from Martinfx/master
Added support FreeBSD
2017-10-28 22:22:04 +02:00
Martinfx
47c7f3624f Added support FreeBSD for example 2017-10-28 18:41:29 +02:00
Martinfx
b3110c14fe Added support FreeBSD 2017-10-28 17:30:02 +02:00
Ray San
ab01cd45bc Review rlReadTexturePixels()
Improve second option to retrieve texture data from fbo...

Still requires some testing...
2017-10-25 12:46:26 +02:00
Ray San
31c8c86d8e Comment tweak...
...while reviewing GetTextureData() functionality on OpenGL ES 2.0
2017-10-25 12:33:44 +02:00
Ray
539a9ca50e Corrected ImageTextEx()
- Added new function: GenImageColor()

ImageDraw() should be reviewed... specially alpha blending...
2017-10-25 01:24:17 +02:00
Ray
cbe0dcedfe Corrected issue with ttf font y-offset 2017-10-25 00:30:58 +02:00
Ray
ad31730b6a Added cross-compiler RPI libs 2017-10-22 20:00:38 +02:00
Ray
368b0320c6 Added resource config file 2017-10-22 11:07:17 +02:00
Ray San
df67e799dd Updated release versions for raylib 1.8 2017-10-20 17:14:58 +02:00
Ray San
86df9168e7 Updated raylib VS2015 project 2017-10-19 14:14:18 +02:00
Ray San
1474172b4a Updated for raylib 1.8 2017-10-19 13:25:51 +02:00
Ray San
7057d08369 Review VR functionality
To be more generic and configurable
2017-10-17 13:32:15 +02:00
Ray San
a6ccc14d39 Corrected issue with OpenAL Soft static 2017-10-16 13:37:10 +02:00
raysan5
4909f9711c Small tweak, remove tabs 2017-10-14 12:25:36 +02:00
raysan5
5430d5d52e Review Makefiles 2017-10-14 00:13:23 +02:00
Ahmad Fatoum
107294f3e6 Fix bug, add some whitespace 2017-10-13 13:55:01 +02:00
Ahmad Fatoum
cd6d752217
Fix warning about unsequenced modification of variable
Variable t was read and modified without interleaving sequence points,
technically undefined behavior. Report by Clang's -Wunsequenced
2017-10-12 19:51:21 +02:00
raysan5
8928248c71 Review comments about raylib 2017-10-12 14:07:31 +02:00
Ray San
399d4b5f46 Check to avoid bool redefinition 2017-10-11 13:29:01 +02:00
Ray San
7114c1b1f3 Updated compilation output paths 2017-10-11 13:28:38 +02:00
Ray San
d302316e51 Reorganize release and dependencies 2017-10-11 11:22:49 +02:00
Ray San
9000fc28a3 Keep working on Android shared libs... 2017-10-04 12:51:53 +02:00
Ray San
412c52499a Reverted change that breaks 3D drawing
It should be reviewed more carefully...
2017-10-04 12:13:32 +02:00
Ray San
ddea9d68bf Review VR simulator
Requires some work, distortion shader could be move out of raylib to
example code...
2017-10-04 12:11:40 +02:00
Ray San
ca0ff82046 Keep working on Makefiles... 2017-10-03 15:02:32 +02:00
Ray San
b2789949ee Working on Makefiles... 2017-10-02 14:12:03 +02:00
Ray San
1288d6a5df Updated android_native_app_glue 2017-10-02 13:06:34 +02:00
Ray San
ea0decece8 Updated OpenAL Soft headers 2017-10-02 13:06:19 +02:00
Ray San
144b0ed695 Renamed gif writting library 2017-10-02 13:06:04 +02:00
Ray
4f9de9527f Review gradient rectangle drawing
Added: DrawRectangleGradientV()
Added: DrawRectangleGradientH()
2017-09-30 00:46:31 +02:00
Ray
1c7416910e Default to OpenAL static lib 2017-09-29 23:44:31 +02:00
Ray San
ccd6271a7f Added some compiler flags for Android 2017-09-29 13:57:00 +02:00
Ray San
c45eeb8024 Code tweaks and comments for Android 2017-09-29 13:56:37 +02:00
Ray
2068037417 Code tweak 2017-09-26 00:51:31 +02:00
Michael Vetter
4a406fa94b Increment version in meson build file
Increment raylib version and so lib version number.
2017-09-25 12:15:48 +02:00
raysan5
b0f033b43a Some work on rres... 2017-09-23 19:30:42 +02:00
Ray
4a8644e999 Update Android libs and building 2017-09-23 18:40:30 +02:00