Commit Graph

5714 Commits

Author SHA1 Message Date
Ray
8c99a508c6 REVIEWED: WindowSizeCallback(), GLFW
It is called on window minification and setting internal width/height to 0, that can break things
2025-05-14 23:49:24 +02:00
Ray
a51d334440 Merge branch 'master' of https://github.com/raysan5/raylib 2025-05-14 23:47:32 +02:00
Ray
9d4c31533d Update rtext.c 2025-05-14 23:47:03 +02:00
Ray
ba31219141
Merge pull request #4937 from Bigfoot71/fix-gen-tangents
[rmodels] Fix and improve `GenMeshTangents`
2025-05-13 20:52:51 +02:00
Jeffery Myers
aa684a33de make save file callback match const correctness of calling function 2025-05-12 19:54:34 -07:00
Bigfoot71
d135eef462 fix and improve GenMeshTangents 2025-05-12 23:16:06 +02:00
Ray
f7d03efb49 REVIEWED: DecodeDataBase64(), follow convention:
- All `char *` refer to text strings
- All `unsigned char *` refer to generic byte arrays
2025-05-11 11:05:25 +02:00
Ray
3083f0cd43 REVIEWED: SaveFileText(), const input text 2025-05-11 11:03:49 +02:00
Ray
693c9c292a Formatting tweaks 2025-05-10 22:45:08 +02:00
Jeffery Myers
ebaa922f6b Properly clean up the default font on unload, it may be reused if the window is created again 2025-05-08 09:57:31 -07:00
Ray
7e07278368 Update rprand.h 2025-05-08 17:06:29 +02:00
Karl Zylinski
a15548fb5a Add normals to DrawSphereEx 2025-05-06 13:09:05 +02:00
Ray
3d6e24af4f
Merge pull request #4906 from Bigfoot71/fix-clip
[rlgl] Proposed fix for default near/far clipping range
2025-05-06 11:12:35 +02:00
Jeffery Myers
ee2ab11cc5 Use the animated verts and normals in GL 1.1 if they exist 2025-05-05 15:49:23 -07:00
Ray
31d63d08e2
Merge pull request #4922 from Bigfoot71/review-file-dir-2
[rcore] Some adjustments for `FilePathList`
2025-05-05 16:57:22 +02:00
Ray
a7ad2d1965
Merge pull request #4918 from JeffM2501/default_font_image_leaks
[rText] Fix issues with default font being used before InitWindow in the image API.
2025-05-05 12:06:55 +02:00
Jeffery Myers
e53a43b7b5 Assign meshes without bone weights to the bone they are attached to so they animate. 2025-05-04 17:32:37 -07:00
Bigfoot71
38aec920b5 makes path static in ScanDirectoryFilesRecursively 2025-05-04 14:47:52 +02:00
Bigfoot71
03988d2ce8 added a NULL check in UnloadDirectoryFiles 2025-05-04 14:46:39 +02:00
Le Juez Victor
c087144385
Merge branch 'raysan5:master' into fix-clip 2025-05-04 12:29:19 +02:00
Jeffery Myers
94c5de33a0 Make the default font loadable before InitWindow, for use with the image API.
Make the default font loader early out if we have already loaded parts of it, so we don't leak memory
2025-04-30 17:56:30 -07:00
Ray
1ec281e86f
Merge pull request #4914 from Servall4/master
[raudio] fix: GetMusicTimePlayed returns incorrect time after restarting a paused track
2025-04-28 23:13:31 +02:00
Duy Tran
f0de896f36 cmake: replace custom variable with built-in one 2025-04-28 11:57:53 -04:00
Ivan Ugryumov
ec5ce8c7fe Update raudio.c 2025-04-28 14:29:51 +03:00
Gavin Rohrer
10478ff756 Revert GLFW_SCALE_FRAMEBUFFER to pre GLFW 4.3 behavior 2025-04-25 14:32:02 -04:00
Le Juez Victor
461c9c9d90
review tabs 2025-04-22 15:02:09 +02:00
Le Juez Victor
a7333a9dae
review near/far 2025-04-22 15:00:54 +02:00
Jeffery Myers
0f6b9ee738 format math the way ray likes it 2025-04-18 07:27:20 -07:00
Ray
b185f482d0
Merge pull request #4896 from mUnicorn/fix_bones_animation_scale
[rmodels] Fix bones animation scale
2025-04-18 10:46:00 +02:00
Ray
73030e02d4
Merge pull request #4895 from AndrewHamel111/descriptive-window-flag-warning
Add Warning to direct users to appropriate WindowState / ConfigFlag function
2025-04-18 10:43:24 +02:00
Jeffery Myers
5185d4c427 use the device channels and sample size when computing the default buffer size. 2025-04-16 18:13:41 -07:00
d.isakov
42a40b3920 move first mesh bones calculation under check for its presense 2025-04-16 08:04:58 +02:00
d.isakov
b4f1ff9a00 #4888 fix UpdateModelAnimationBones scale transform 2025-04-16 07:49:26 +02:00
AndrewHamel111
fdb92b373b Warning to direct users to appropriate function 2025-04-15 21:08:35 -04:00
Ray
5b940692ea REVIEWED: ExportFontAsCode() not checking isGpuReady #4894 2025-04-15 13:09:44 +02:00
Ray
80fcca4155 Update rcore_desktop_glfw.c 2025-04-14 12:37:06 +02:00
Ray
cc5739a6d7 REVIEWED: Some PRs formating 2025-04-13 20:55:38 +02:00
Jeffery Myers
60eb3a14d7 Only scale the screenshot by the DPI scale if we are doing automatic High DPI scaling, otherwise the native resolution is correct. 2025-04-10 13:59:09 -07:00
Eike Decker
1c4aa1378f [rcore][SDL2] First touch position is overwritten with mouse pos
I believe it makes sense to only do this when there are no known
touch points. I am not even sure if this should be done at all.

See https://github.com/raysan5/raylib/issues/4872 for more information.
2025-04-01 23:10:19 +02:00
Ray
1a67dcb578 REVIEWED: RGB order on SDL3 #3568 2025-04-01 01:26:51 +02:00
Ray
9a049d1d27
Merge pull request #4859 from MikiZX1/master
Update rcore_desktop_sdl.c
2025-03-28 18:03:32 +01:00
Jonathan Marler
af16f7823a Improve description of RestoreWindow
Restore window currently says it sets the window state to:

   "not minimized/maximized"

However, if a window is maximized and then minimized, it's typical that
it would restore back to being maximized, which is what seems to happen
from my testing. I've reworded the description to better reflect
this behavior.
2025-03-28 10:39:22 -06:00
MikiZX1
55c6864092
Update rcore_desktop_sdl.c
raylib app crashing when started and a gamepad is already connected to the PC (even if the gamepad is not used in the app). I only tested this with a gamepad that has a layout which is not recognized. Using SDL3 as backend.
2025-03-26 14:06:58 +01:00
Ray
3d83c1c796 Format tweak 2025-03-25 19:27:55 +01:00
Ray
909c83fd4a Avoid path filtering on TakeScreenshot() 2025-03-25 16:22:46 +01:00
Ray
32c8f396c2 Merge branch 'master' of https://github.com/raysan5/raylib 2025-03-25 16:21:53 +01:00
Ray
63e608d485 comment tweak 2025-03-24 15:07:36 +01:00
sleeptightAnsiC
8e9c3ceb57 [rcore] fix: TRACELOG upon successfully changing directory
InitWindow() prints CWD during initialization,
but ChangeDirectory() does not, which is quite confusing when you start
messing with CWD. Now said function should log similar message.
2025-03-22 21:20:17 +01:00
Ray
46cd07d2c7 WARNING: REVERTED CHANGE THAT BROKE BATCHING!!! #4849
I'm sorry... I did not detect this change was breaking batching... :(
2025-03-21 17:17:45 +01:00
Ray
266fba1111 Minor tweaks 2025-03-21 17:07:55 +01:00
Myrddin Krustowski
589ad0a33d Add early return to circle sector functions when angles are equal.
Prevents unnecessary work and division by zero (when segments=0) in DrawCircleSector/DrawCircleSectorLines when startAngle equals endAngle, matching existing behavior in DrawRing/DrawRingLines.
2025-03-18 11:51:58 +02:00
Ray
2f63a15630
Merge pull request #4836 from JeffM2501/unscale_on_resize
[rcore] Correctly handle window size on resize in auto-scaled HIGHDPI environment
2025-03-14 17:15:14 +01:00
Jeffery Myers
d56ab670c3 spaces not tabs 2025-03-14 08:18:26 -07:00
Ray
cb830bed72 Increased depth size and clip distances to avoid z-fighting issues 2025-03-13 16:34:39 +01:00
Ray
d0e638cc31 REVIEWED: Platform DRM messages... 2025-03-13 11:42:16 +01:00
Alex Anderson
99a9ecfaac
[rcore] Support window flags with initialization issues
This may not be the correct approach, however this appears to work. The idea is that before modifying `CORE.Window.flags` when first creating the window we keep a copy of the flags in order to call `SetWindowState` after initialization has completed, which should behave as if `MaximizeWindow` or `MinimizeWindow`, or conceptually any other flag modifying function were called after `InitWindow`.

This pull request only performs this for the windows platform, modify as needed in the switch statement at the end for others.
2025-03-12 14:56:02 -07:00
Jeffery Myers
4bed3741c1 Unscale the window size on resize if we are doing automatic HighDPI scaling. 2025-03-12 14:16:50 -07:00
Ray
749a512f13 REVIEWED: ScanDirectoryFiles*() #4833 2025-03-12 12:44:40 +01:00
Ray
654d5c80c2
Merge pull request #4833 from MykBamberg/master
[rcore] Use snprintf to prevent buffer overflow in path construction
2025-03-12 12:40:25 +01:00
Nia Nightglow
fffbbad2f7 Guard against DEBUG Redefinition
Undefine DEBUG to avoid external redefinition
warnings/conflicts.  This is probably a common
definition for many external build systems'
debug configurations.

This ensures raylib will not emit
a warning about the DEBUG definition being
redefined in external build systems.
2025-03-12 00:13:01 -05:00
MykBamberg
daa2921476 [rcore] Use snprintf to prevent buffer overflow in path construction 2025-03-12 01:38:39 +01:00
Ray
b80250bee4
Merge pull request #4807 from RicoP/RicoP/sinfl_bsr
[rcore] sinfl_bsr fix for TCC
2025-03-11 08:32:32 +01:00
Rico P
0934cdba48
fix C++ style cast 2025-03-11 07:09:10 +01:00
Rico P
7dc409d060
potential fix for MSVC compile error 2025-03-11 07:03:57 +01:00
Rico P
e7872a700d
update sinfl_bsr 2025-03-10 20:57:48 +01:00
Ray
7f8bf2233c REVIEWED: Formating to follow raylib conventions 2025-03-10 17:08:18 +01:00
Ray
bd8e59f18d Replace size_t by unsigned int 2025-03-10 17:07:18 +01:00
Ray
4c8c72778d Remove trailing spaces 2025-03-10 17:04:29 +01:00
Ray
9c62a7823b Update Makefile 2025-03-10 17:04:14 +01:00
Colleague Riley
0853c5b03f
[rcore][RGFW] bug fixes (#4798)
* update RGFW to 1.6

* properly handle RGFW_quit events

* fix rcore_desktop_rgfw bugs

* update

* update

* uncomment out
2025-03-10 16:50:40 +01:00
Kaluub
9ba0cdbe6d
Fix GetCurrentMonitor comments. (#4812) 2025-03-07 19:21:08 +00:00
Ashish Bhattarai
f1385f3aec
Fix stb_truetype composite glyph scaling logic (#4811) 2025-03-04 18:53:11 +01:00
sleeptightAnsiC
34159399cf
[rcore] fix crash in InitWindow, due to unchecked result of InitPlatform (#4803)
* [rcore] fix crash in InitWindow, due to unchecked result of InitPlatform

Check the result of InitPlatform(), if it isn't 0, report the Error
and return. This prevent crashes and allows for gracefully aborting
or recovering by checking IsWindowReady().

Partially-fixes: https://github.com/raysan5/raylib/issues/4801

* [rcore] style: store the result of InitPlatform() before checking it

Small style change that doesn't impact how the code behaves here.
Variable 'result' is not used anywhere else in this block,
it's just for compliance with Raylib's coding conventions.

Requested in PR: https://github.com/raysan5/raylib/pull/4803#discussion_r1976502788

* [rcore] use LOG_WARNING when InitPlatform() fails

...as this is preferred over LOG_ERROR.

Requested-by: https://github.com/raysan5/raylib/pull/4803#discussion_r1976651724
2025-03-02 17:05:09 +01:00
Rico P
539c45ee23
sinfl_bsr fix for TCC 2025-03-02 16:20:49 +01:00
Ray
b99c2848c1 Merge branch 'master' of https://github.com/raysan5/raylib 2025-03-02 13:43:32 +01:00
Ray
654131799e Minor tweaks 2025-03-02 13:43:15 +01:00
sleeptightAnsiC
a20d9dedf3
[desktop_glfw] fix InitPlatform crash caused by glfwCreateWindow... (#4804)
...returning NULL. This was causing a crash few lines later.

Refs: https://github.com/raysan5/raylib/issues/4801#issuecomment-2691201072
Partially-fixes: https://github.com/raysan5/raylib/issues/4801
2025-03-01 23:42:07 +01:00
Colleague Riley
e4dcdfa1f2
update RGFW to 1.6 (#4795) 2025-02-25 21:49:37 +01:00
Ray
557d071fa2 Reviewed shader loading message 2025-02-25 17:50:46 +01:00
Ray
da8a08006a Added some comments on latest change 2025-02-25 12:46:06 +01:00
Destructor17
27af359d1c
[rlgl] Preserve texture on mode switching (#4364)
* Fix textures on draw mode switch

* formatting fix

* ident
2025-02-25 12:39:00 +01:00
Ray
0037ee5420 Merge branch 'master' of https://github.com/raysan5/raylib 2025-02-25 11:43:32 +01:00
Ray
a979b10966 Minor format tweak 2025-02-25 11:43:22 +01:00
Rico P
1e2fd94209
fix linkage warnings under windows (#4766) 2025-02-24 13:54:17 +01:00
Ray
294da26042 Update raymath.h 2025-02-23 23:07:12 +01:00
Ray
fc5ff8db5c Update raymath.h 2025-02-23 23:06:31 +01:00
Ray
a5907bfdca REVIEWED: MatrixDeterminant() #4780 2025-02-23 23:04:52 +01:00
Mario Nachbaur
85a87baf69
Support IsWindowHidden() on web. (#4789) 2025-02-23 18:19:42 +01:00
Ralph Caraveo
4522ecae1a
[raudio] Fixed memory leak on early-return of WaveFormat func (#4779)
In the case of a failure within miniaudio on the function: ma_convert_frames, the dynamic memory allocated for the `data` variable  will leak on the early return.
2025-02-21 15:29:12 +01:00
Colleague Riley
c34ef35433
Update RGFW and ensure it's consistent with the GLFW backend (#4783)
* add PLATFORM_WEB_RGFW

* fix some bugs

* fix web_rgfw gamepad

* send fake screensize

* fix gamepad bugs (linux) | add L3 + R3 (gamepad)

* fix?

* update RGFW (again)

* update raylib (merge)

* fix xinput stuff

* delete makefile added by mistake

* update RGFW

* update RGFW (rename joystick to gamepad to avoid misunderstandings

* update RGFW (fix X11 bug)

* update RGFW

* use RL_MALLOC for RGFW

* update RGFW (fixes xdnd bug)

* fix some formating

* Update RGFW

* update RGFW

* undo change

* undo change

* undo change

* undo change

* have .scroll be 0 by default

* update RGFW

* update RGFW

* update RGFW

* fix year

* fix wasm key event bug

* update RGFW

* link to IOKit

* update
2025-02-21 12:32:09 +01:00
Ray
5ea60dd3ce Minor tweaks 2025-02-20 18:10:01 +01:00
Ray
32fcfd3549 Minor tweaks 2025-02-19 13:38:22 +01:00
sleeptightAnsiC
77df0ab1e8
[rcore_desktop_glfw.c] fix: make sure that GLFW uses RL_*alloc macros (#4777)
Raylib allows for providing custom allocators via macros.
GLFW supports this too, but via function pointers.

Make sure that GLFW uses those Raylib macros, by wrapping them in
function calls and setting them up inside of InitPlatform().
This is possible because of glfwInitAllocator() and GLFWallocator.

Fixes: https://github.com/raysan5/raylib/issues/4776
Relates-to: https://github.com/raysan5/raylib/issues/4751
2025-02-18 22:53:18 +01:00
Brian E
11090ab6cb
[raylib.h] Added space after comma (#4774)
args for ImageResizeNN were missing a space in the arguments after a comma, i just added one.
2025-02-17 12:12:59 +01:00
vict-Yang
b49c079b1d
Fix typo in rshapes.c (#4772) 2025-02-16 15:43:32 +01:00
Le Juez Victor
2b59e7475f
Implement Android-specific functions (#4769)
`GetWindowScaleDPI` and monitor physical dimensions
2025-02-15 19:34:51 +01:00
Le Juez Victor
c647d33703
Better default values for normals and tangents (VBOs) (#4763) 2025-02-14 01:00:05 +01:00
mannikim
ee946b2f16
use strstr instead of TextFindIndex (#4764) 2025-02-14 00:58:33 +01:00
veins1
1d87932d93
TextSubtext fixes (#4759)
Fix buffer write overflow
Fix reading past the end of text
2025-02-12 23:12:10 +01:00
goto40
6a644b48f0
doc: audio stream processor, number of channels (#4753)
* doc: audio stream processor

* fixed accidental encoding effect
2025-02-08 11:22:34 +01:00
Ray
cceabf6961 Formatting review 2025-02-02 13:00:20 +01:00
Ray
cfe96931f5 REVIEWED: Formatting #4739 2025-02-02 12:59:34 +01:00
Nikolas
bddb5df0d4
[rmodels] Separate GLTF roughness and metallic channels on load (#4739) 2025-02-02 12:48:18 +01:00
Henrik A. Glass
4f5a20a634
Add missing increments of k in LoadImageDataNormalized() (#4745) 2025-02-01 21:30:21 +01:00
whaley
e85ae86f70
[platforms/glfw] fix: allow GetGamepadButtonPressed() to return GAMEPAD_BUTTON_LEFT_TRIGGER_2 / GAME_PAD_BUTTON_RIGHT_TRIGGER_2 if they are pressed (#4742) 2025-02-01 10:50:25 +01:00
sleeptightAnsiC
99dfec070a
[rtext] fix: misuse of cast in GetCodepointCount (#4741)
I was really wondering what is going on here :D I believe this code
tried initially to out-cast 'const' specifier but this is not needed here
at all. Currently, it just confuses whoever reads this so I changed it.
The old code would also trigger -Wcast-qual warning on some compilers.
2025-01-31 14:44:23 +01:00
Eike Decker
1f6de0c507
Replacing hardcoded canvas id references with module variable usages (#4735)
Should also have the benefit of being faster.
2025-01-31 00:34:51 +01:00
Ray
d46ba9a671 Merge branch 'master' of https://github.com/raysan5/raylib 2025-01-28 16:19:39 +01:00
Ray
9789ff123b REVERTING: emscripten_sleep() previous removal #4713 2025-01-28 16:19:30 +01:00
Peter0x44
2492dd3d0a
[build] [Makefile]: Undefine _GNU_SOURCE for rglfw.c (#4732)
Currently, a warning about _GNU_SOURCE being redefined is emitted when
compiling rglfw.c

In file included from rglfw.c:99:
external/glfw/src/posix_poll.c:27:9: warning: "_GNU_SOURCE" redefined
   27 | #define _GNU_SOURCE
      |         ^~~~~~~~~~~
<command-line>: note: this is the location of the previous definition

This can be avoided by not defining _GNU_SOURCE on the command line for
this file.

Defining feature test macros in source code is not really good practice
so this should probably reviewed in glfw itself, at least to maybe check
 #ifdef _GNU_SOURCE first. But for now this change will suffice.

Fixes #4725
2025-01-27 23:15:09 +01:00
Asdqwe
f6f31a9f21
[rtextures] Fix HalfToFloat() and FloatToHalf() dereferencing issues with an union (#4729)
* Fix HalfToFloat() and FloatToHalf() dereferencing issues with an union

* Remove unnecessary initialization

* Moved the union to inside the functions
2025-01-26 21:26:18 +01:00
Asdqwe
139de05e9d
[rcore] [SDL2] Fix gamepad event handling by adding joystick instance id tracking (#4724)
* Fix gamepad SDL_JOYDEVICEADDED and SDL_JOYDEVICEREMOVED event handling for PLATFORM_DESKTOP_SDL by adding joystick instance id tracking

* Fix gamepad button handling
2025-01-25 20:49:42 +01:00
Nikolas
49d37b035f
[rtexture] Cubemap mipmap loading improvements (#4721)
* [rtextures] Only build cubemap mipmaps when necessary

* [rtextures] Assign correct mipmap count to cubemaps
2025-01-24 10:41:32 +01:00
Ray
87f17538d0 Reviewed warning on shared library generation for web 2025-01-21 19:23:16 +01:00
sleeptightAnsiC
322ba54c08
Fix(WEB): Makefile: throw an error when trying to build SHARED library (#4718)
When asking Makefile to create SHARED library for WEB
	$ make TARGET_PLATFORM=PLATFORM_WEB RAYLIB_LIBTYPE=SHARED
it would instead silently create STATIC library
thus not fulfilling the request as expected

This commit adds an error in this case and stops further execution.

This is not consistent with Cmake, because Cmake throws the warning and
does not stop, but Cmake can easily recover from this case and people
probably does not even notice it. However, Makefile is something that
you have to handle yourself and you have to recover from any issues so
having an error and aborting with exit code 1 is more expected.
Otherwise people may spend a lot of time debugging Makefile in order to
understand what's even going on.

Fixes: https://github.com/raysan5/raylib/issues/4717
2025-01-21 19:20:51 +01:00
Ray
2c50da9a6a REVIEWED: -sASSERTIONS usage by linker #4717 2025-01-21 19:18:23 +01:00
Ray
d48b8afbb5 Update rcore_web.c 2025-01-20 14:01:57 +01:00
Anthony Carbajal
77c509db6e
removed hardcoded sleep (#4713) 2025-01-20 12:14:18 +01:00
sleeptightAnsiC
10d0616d1f
fix(rtextures): TCC not being able to compile due to: 'emmintrin.h' not found (#4707)
define STBIR_NO_SIMD when __TINYC__ is defined so stb_image_resize2 will
not include *mmintrin which are not supported by all compilers.

There are similar checks for __TINYC__ already elswere in raylib
and they are also mostly there to disable SIMD headers.

Additionally, move similar check for stb_image, to be a little bit
deeper. Before it was defining STBI_NO_SIMD without including stb_image
It was also clashing with note, causing said note to make no sense.

Fixes: https://github.com/raysan5/raylib/discussions/2994
Reference: https://github.com/nothings/stb/issues/1738
2025-01-19 12:06:27 +01:00
Chris
09272e2e11
Updted the comment for SetShaderValueTexture to reflect the difference between SetShaderValue using sampler2d and SetShaderValueTexture is the automatic bind of the texture. (#4703) 2025-01-18 20:24:48 +01:00
Ray
896ff68540 REVIEWED: Text functions usage notes #4704 2025-01-18 20:19:11 +01:00
Ray
74256943a4 REVIEWED: MAX_GAMEPAD_NAME_LENGTH #4695 2025-01-18 19:39:50 +01:00
Ray
313067d749 Update rlgl.h 2025-01-16 19:47:21 +01:00
Ray
94f261c6d7 Update rmodels.c 2025-01-16 19:47:12 +01:00
Colleague Riley
6bf40eee4f
Update to RGFW 1.5 (#4688)
* add PLATFORM_WEB_RGFW

* fix some bugs

* fix web_rgfw gamepad

* send fake screensize

* fix gamepad bugs (linux) | add L3 + R3 (gamepad)

* fix?

* update RGFW (again)

* update raylib (merge)

* fix xinput stuff

* delete makefile added by mistake

* update RGFW

* update RGFW (rename joystick to gamepad to avoid misunderstandings

* update RGFW (fix X11 bug)

* update RGFW

* use RL_MALLOC for RGFW

* update RGFW (fixes xdnd bug)

* fix some formating

* Update RGFW

* update RGFW

* undo change

* undo change

* undo change

* undo change

* have .scroll be 0 by default

* update RGFW

* update RGFW

* update RGFW

* fix year

* fix wasm key event bug
2025-01-16 00:34:27 +01:00
Eike Decker
5c1cce28a7
Using Module provided canvas id for event binding (#4690)
This change is replacing the hardcoded "#canvas" element references in
rcore_web to allow using canvas elements that use different names
(which is necessary when using multiple canvas elements on one page).

Also adding a cursor hiding example to mouse example.
2025-01-16 00:32:58 +01:00
tea☆
1cdf3bb791
[rshapes] Allow DrawRectangleRounded() to draw rectangles with a size < 1 (#4683)
Closes #4673
2025-01-12 18:46:49 +01:00
Ray
a1896c7a90 REVIEWED: Code/Web-Makefile formatting 2025-01-12 16:19:10 +01:00
Ray
e227371265 REVIEWED: TextJoin(), convert const char ** to char**
It generates multiple issues: https://c-faq.com/ansi/constmismatch.html
2025-01-11 23:38:21 +01:00
Ray
49b905077d remove trailing spaces 2025-01-11 19:36:26 +01:00
Ray
2b2694a89f Fix #4680 2025-01-10 22:36:11 +01:00
Le Juez Victor
b554b53ede
fix pixel offset issue with DrawRectangleLines (#4669) 2025-01-10 17:36:52 +01:00
Ray
bf8962dbc7 REVIEWED: Remove some const from text buffer return values
Lately got some compilation `errors` related, it seems GCC 14 interprets some `const`-missmatch as errors instead of warnings (as previous versions).

But in any case, I don't see why an user won't be able to operate directly over of those returned buffers; `const` adds a restriction (for security reasons?) that in my opinion is useless.

From an expert on compilers (w64devkit creator), here there are some notes I agree with:

```
No const. It serves no practical role in optimization, and I cannot recall an instance where it caught, or would have caught, a mistake. I held out for awhile as prototype documentation, but on reflection I found that good parameter names were sufficient. Dropping const has made me noticeably more productive by reducing cognitive load and eliminating visual clutter. I now believe its inclusion in C was a costly mistake.

(One small exception: I still like it as a hint to place static tables in read-only memory closer to the code. I’ll cast away the const if needed. This is only of minor importance.)
```

Ref: https://nullprogram.com/blog/2023/10/08/
2025-01-10 13:06:28 +01:00
Le Juez Victor
ddd86a3387
[rshapes] Fix pixel offset issue with line drawing (#4666)
* fix pixel offset issue with `DrawRectangleRoundedLinesEx`

* improve fix - (pixel offset issue with `DrawRectangleRoundedLinesEx`)

* revert radius tweak (`DrawRectangleRoundedLines`)
2025-01-09 00:07:59 +01:00
K. Adam Christensen
5d9aed5d40
[rlgl] Optimize rlReadScreenPixels (#4667)
This optimization works in the following ways:

1. Reduces calls to malloc to 1. Instead of needing an extra array, we
can just swap the top half with the bottom half of the one array.

2. Unroll the inner for loop and remove a condition. Unrolling loops
buys some performance wins, but the real goal was to remove the if check
and just set the alpha channel to 255.

On my hidpi arm64 laptop, I saw ~60% improvement in performance in my
debug build (29 FPS vs 47 FPS). When optimized, the gains were roughly
10% (75 FPS vs 83%).

Signed-off-by: K. Adam Christensen <pope@shifteleven.com>
2025-01-08 18:53:27 +01:00
Maicon Santana
fc29bc27fd
Fix Touch pointCount reduction (#4661) 2025-01-06 11:29:24 +01:00
Asdqwe
ad035edfac
Fix camera initial position (#4657) 2025-01-05 12:30:43 +01:00
Brian E
05c4d8a652
[rlgl.h] Fixed typo in top comment (#4658)
"renderer" to "rendered"
2025-01-05 12:29:31 +01:00
veins1
97fa3a73e8
Fix: Alt-Tab not working in borderless fullscreen (#3865) (#4655) 2025-01-03 17:36:48 +01:00
Ray
fa0eada61a Update year to 2025 2025-01-01 00:02:52 +01:00
Peter Zmanovsky
d1315e8a04
[rmodels] Fix leaks in LoadIQM() and LoadModelAnimationsIQM() (#4649)
Add calls to UnloadFileData() before return in cases of invalid IQM file.
2024-12-29 21:06:40 +01:00
Ray
c0f2067dba REVIEWED: LoadShaderFromMemory(), use default locations for default shader #4641 2024-12-28 16:35:42 +01:00
Asdqwe
5b822585e5
[rcore] [GLFW] [SDL2] Updates CORE.Window.eventWaiting and FLAG_WINDOW_ALWAYS_RUN handling (#4642)
* Add implementation for CORE.Window.eventWaiting on PLATFORM_DESKTOP_SDL

* Optimize GetFrameTime() reset

* Optimize FLAG_WINDOW_ALWAYS_RUN and GetFrameTime() reset for PLATFORM_DESKTOP_GLFW
2024-12-28 15:59:05 +01:00
Mario Nachbaur
7ecc47d12e
Fix IsWindowFocused() on web. (#4640) 2024-12-26 20:12:53 +01:00
Asdqwe
4758867815
[rcore] [SDL2] Add implementation for FLAG_WINDOW_ALWAYS_RUN (#4598)
* Enable FLAG_WINDOW_ALWAYS_RUN by default on PLATFORM_DESKTOP_GLFW

* Revert enabling FLAG_WINDOW_ALWAYS_RUN by default on PLATFORM_DESKTOP_GLFW

* Add implementation for FLAG_WINDOW_ALWAYS_RUN on PLATFORM_DESKTOP_SDL

* Add reset for GetFrameTime()
2024-12-26 19:02:57 +01:00
Colleague Riley
c333e80497
Update RGFW (#4637)
* add PLATFORM_WEB_RGFW

* fix some bugs

* fix web_rgfw gamepad

* send fake screensize

* fix gamepad bugs (linux) | add L3 + R3 (gamepad)

* fix?

* update RGFW (again)

* update raylib (merge)

* fix xinput stuff

* delete makefile added by mistake

* update RGFW

* update RGFW (rename joystick to gamepad to avoid misunderstandings

* update RGFW (fix X11 bug)

* update RGFW

* use RL_MALLOC for RGFW

* update RGFW (fixes xdnd bug)

* fix some formating

* Update RGFW

* update RGFW

* undo change

* undo change

* undo change

* undo change

* have .scroll be 0 by default
2024-12-25 21:19:51 +01:00
Le Juez Victor
873bf31be3
[rmodels] Fix normal transform in UpdateModelAnimationBones (#4634)
* remove duplicate calculation of `invRotation` in `UpdateModelAnimationBones`

* fix normal transform in `UpdateModelAnimation`
2024-12-24 20:17:37 +01:00
Ray
ae3c0df206 Reviewed formating, removed assert() #4635 2024-12-24 20:14:54 +01:00
Jett
a7686c47b3
resolved a few segfaults with animation system (#4635)
* Update rmodels.c

resolves segfault with missing bone weights or bone IDs

* Update rmodels.c segfault with animation and missing normals/animnormals

* correct place.
2024-12-24 20:11:17 +01:00
Fancy2209
7868d600f4
[rtext] Fix default font alpha on Big Endian systems (#4624)
* Fix rtext default font alpha on Big Endian

* Endian Indepence
2024-12-23 22:25:22 +01:00
veins1
e5d8de7c63
Fix: Setting flags disables fullscreen #4618 (#4619) 2024-12-23 19:26:50 +01:00
Ray
67b164bc04 Merge branch 'master' of https://github.com/raysan5/raylib 2024-12-23 19:24:09 +01:00
Ray
6f0d8611fe Formating tweaks 2024-12-23 19:24:07 +01:00
Jett
0212ed0a4b
setting MAX_LEVEL based on actual mipcount input (#4622) 2024-12-20 14:14:13 +01:00
Fancy2209
26e12d6b35
Fix Typo in rcore_desktop_sdl.c (#4621) 2024-12-20 13:53:51 +01:00
Ray
ab83e6dd41 Image manipulation functions depend on a flag 2024-12-19 13:24:30 +01:00
Ray
03ff864087 Formating tweaks 2024-12-18 18:44:23 +01:00
Asdqwe
99cb4cbc36
Fix SetGamepadVibration() TRACELOG message (#4615) 2024-12-18 14:53:50 +01:00
Ray
783ca612cc Update Makefile 2024-12-18 12:51:00 +01:00
Colleague Riley
58004723d8
[rcore][RGFW] Add new backend option: PLATFORM_WEB_RGFW and update RGFW (#4480)
* add PLATFORM_WEB_RGFW

* fix some bugs

* fix web_rgfw gamepad

* send fake screensize

* fix gamepad bugs (linux) | add L3 + R3 (gamepad)

* fix?

* update RGFW (again)

* update raylib (merge)

* fix xinput stuff

* delete makefile added by mistake

* update RGFW

* update RGFW (rename joystick to gamepad to avoid misunderstandings

* update RGFW (fix X11 bug)

* update RGFW

* use RL_MALLOC for RGFW

* update RGFW (fixes xdnd bug)

* fix some formating
2024-12-18 12:03:42 +01:00
Ray
de6c09ee7a WARNING: REVIEWED: Use libraylib.web.a naming on PLATFORM_WEB
This change allows to have in same directory (currently `raylib/src`) two raylib build versions: Desktop and Web
2024-12-18 11:45:55 +01:00
Ray
f76734fc50 REVIEWED: UpdateModelAnimationBones(), break on first mesh found and formating 2024-12-18 11:43:43 +01:00
Kirandeep-Singh-Khehra
35c2408413
[rmodels] Optimized UpdateModelAnimationBones() function (#4602)
- Updating bones only once instead for each mesh.
 - Updating only one `model.meshes[].boneMatrices` and then using deep copy for other meshes instead of calculating for each bone in each mesh.

**Other points:**
 - Makes it a clean base/template/reference for bone updation functions. Because if using this as template then some calculations done in one mesh can affect bones in other mesh in next iteration(doubles the effect in for next mesh).

Signed-off-by: Kirandeep-Singh-Khehra <kirandeepsinghkhehra@gmail.com>
2024-12-18 11:39:50 +01:00
Asdqwe
cdaff163cb
Fix show, hide, focus and unfocus window/flags states for SDL2 (#4610) 2024-12-18 11:39:30 +01:00
JupiterRider
714cd5ef5c
add SetGamepadVibration to rgfw and template (#4612) 2024-12-18 11:38:11 +01:00
Asdqwe
bdfbd6e8cc
Fix maximizing, minimizing and restoring windows for SDL2 (#4607) 2024-12-16 22:19:00 +01:00
Le Juez Victor
79facde353
fix rlActiveDrawBuffers for OpenGL ES 3 (#4605) 2024-12-16 00:51:42 +01:00
Per Hallsmark
d0504800d2
install rcamera.h (#4603)
Signed-off-by: Per Hallsmark <per.hallsmark@bitjuggler.se>
2024-12-15 11:16:08 +01:00
__hexmaster111
8a5a95c13a
Removed inaccurate comment about negitves not being supported with TextToFloat And TextToInt Methods (#4596) 2024-12-13 09:21:13 +01:00
Ray
1f704be4e4 Review comments spacing for better alignment 2024-12-12 12:13:38 +01:00
Ray
6b220f2798 Review formating 2024-12-12 12:13:17 +01:00
Rico P
2a2acff2d5
Make sure ShaderUniformDataType matches rlShaderUniformDataType (#4577)
* Make sure ShaderUniformDataType matches rlShaderUniformDataType

* Update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Ray <raysan5@gmail.com>
2024-12-08 12:52:06 +01:00
Michael
d2cd2a0152
[rlgl][rmodels] Add instranceTransform shader location index #4538 (#4579) 2024-12-08 12:48:54 +01:00
Ray
602583bcdb Merge branch 'master' of https://github.com/raysan5/raylib 2024-12-03 19:14:29 +01:00
Ray
1f45e7af76 REVIEWED: Coding conventions 2024-12-03 19:14:14 +01:00
Caleb Heydon
5feccb1bab
[rmodels] Fixed null pointer dereference in LoadGLTF (#4564)
* [rmodels] Fixed null pointer dereference in LoadGLTF

* [rmodels] Add parenthesis around conditionals in LoadGLTF
2024-12-03 18:35:24 +01:00
Caleb Heydon
f3f5f38c0f
[rmodels] Fix crash when NULL is passed to LoadImageFromCgltfImage (#4563) 2024-12-02 13:35:54 +01:00
Ray
b50d418ec7 Merge branch 'master' of https://github.com/raysan5/raylib 2024-12-01 23:25:27 +01:00
Ray
dd26df0be8 REVIEWED: Parser issue with comment #4558 2024-12-01 23:25:12 +01:00
Rico P
ff71e3a513
use unused variable. Fixes #4560 (#4561) 2024-12-01 23:22:46 +01:00
Ray
962f1c26ff Review formatting to follow raylib conventions 2024-12-01 23:10:59 +01:00
Caleb Heydon
9047630ae7
[rmodels] Fix null pointer dereference in LoadImageFromCgltfImage (#4557) 2024-12-01 22:46:26 +01:00
Ray
503cd7ba34
Update raymath.h 2024-12-01 22:45:09 +01:00
Jonathan Akaba
1b4e73cf2f
Update documentation for Vector2Angle (#4556) 2024-12-01 22:43:32 +01:00
Caleb Heydon
58fe34d9cc
[raudio] Fixed buffer overflow when loading WAV files (#4539) 2024-11-28 22:58:35 +01:00
Mossieur-Patate
2c4c6e6201
GetKeyName prototype (#4544)
* Update raylib.h: GeyKeyName prototype

Prototype for GetKeyName, which is already implemented elsewhere.

* Update raylib_to_parse.h: GetKeyName prototype
2024-11-28 22:50:00 +01:00
Ray
abb3c8e9f7 Revert "[build][cmake] Improve cmake config file generation (#4541)"
This reverts commit c53dd8a931.
2024-11-28 22:44:42 +01:00
Leonardo Guilherme de Freitas
c53dd8a931
[build][cmake] Improve cmake config file generation (#4541)
* Improve cmake config file generation

This allows for finding raylib on a non-standard location (eg, not in /usr/lib{,64})

* Only have glfw as private if using internal glfw and not static
2024-11-27 11:39:36 +01:00
Anthony Carbajal
79188f570b
fixed spacing in sha1 comment (#4540) 2024-11-25 20:17:22 +01:00
Jeffery Myers
6141489b00
Fixes casting warnings with RGFW platform. (#4534) 2024-11-24 16:25:36 +01:00
listeria
e494c545b8
raymath: fix C++ operator overloads (#4535)
Co-authored-by: Listeria monocytogenes <listeria@disroot.org>
2024-11-24 16:24:34 +01:00
Ray
da6fa1d756 Fix #4529 2024-11-22 11:06:34 +01:00
Ray
50a2afff9e Update raylib version to 5.6-dev to avoid confusions with release 2024-11-22 11:01:10 +01:00
Asdqwe
a53a8958f2
Add implementation to GetWindowScaleDPI() for PLATFORM_WEB (#4526) 2024-11-22 10:52:55 +01:00
veins1
11429b48eb
Fix for #4521 (#4523) 2024-11-20 21:28:46 +01:00
Gael Pérez
415a98965a
update raymath.h: add Vector2CrossProduct function (#4520) 2024-11-20 11:27:14 +01:00
Ray
26548c1062 Remove trail-spaces 2024-11-19 12:33:13 +01:00
Ray
9e4f513a43 Reviewed formating 2024-11-19 12:31:57 +01:00
Ray
c78757a959 REVIEWED: GetClipboardImage(), make symbol available on all platforms 2024-11-19 12:31:49 +01:00
Ray
10789a4d49 Update rlgl.h 2024-11-19 12:31:14 +01:00
mikeemm
95e766472f
[rmodels] Improve OBJ vertex data precision and lower memory usage by ExportMesh() (#4496)
* increased vertex data precision to match blender exports

* modified memory allocation to better fit higher precision data

* now accounting for newline characters during allocation

* now accounting for potentially higher vertex counts

* removed unnecessary final newline
2024-11-19 10:35:47 +01:00
Ray
938b805bfb Update raylib.h 2024-11-16 18:45:16 +01:00
Eike Decker
7c5d74e98e
Fixing an OBJ loader bug that fragmented the loaded meshes (#4494)
The nextShapeEnd integer is a pointer in the OBJ data structures.
The faceVertIndex is a vertex index counter for the mesh we are
about to create. Both integers are not compatible, which causes
the code to finish the meshes too early, thus writing the OBJ data
incompletely into the target meshes.

It wasn't noticed because for the last mesh, it process all remaining
data, causing the last mesh to contain all remaining triangles.

This would have been noticed if the OBJ meshes used different textures
for each mesh.
2024-11-15 16:40:14 +01:00
Ray
5e6cdf3a73 Update emsdk path on Windows to match new raylib installer package 2024-11-14 18:41:37 +01:00
Ray
76016aae20 Update raylib.ico 2024-11-14 16:40:04 +01:00
Ray
15eb8221e3 Updated raylib resource data 2024-11-14 16:39:58 +01:00
Ray
928535a828 Commented code issuing warnings on w64devkit (GCC)
Tested with w64devkit/MSVC and all seem to work as expected
2024-11-14 16:39:38 +01:00
Asdqwe
700e2c5e5d
Fix touch count reset (#4488) 2024-11-14 10:49:35 +01:00
Everton Jr.
5cc06f4ba4
[rcore]: Issue an warning instead of an error when checking SUPPORT_CLIPBOARD_IMAGE necessary support detection (#4477) 2024-11-11 19:47:25 +01:00
Jeffery Myers
fb69b39d54
Fix a typecast warning in glfw clipboard access (#4479) 2024-11-11 19:46:54 +01:00
Jeffery Myers
2af4f31712
Fix the X axis of the second vertex of the Y negative cap of a cylinders, triangle fan (#4478) 2024-11-10 22:04:58 +01:00
Everton Jr.
00396e3436
[rcore] Clipboard Image Support (#4459)
* [rcore] add 'GetClipboardImage' for windows

* [rcore] GetClipboardImage removed some unneeded defines

* [rcore] PLATFORM_SDL: create a compatility layer for SDL3

* external: add win32_clipboard.h header only lib

* [rcore] using win32_clipboard on platforms rlfw and rgfw

* [rcore] fix warnings in SDL3 compatibility layer

* Makefile: Allow specifying SDL_LIBRARIES to link, this helps with SDL3

* Makefile: examples makefile now compile others/rlgl_standalone only when TARGET_PLATFORM is PLATFORM_DESKTOP_GFLW

* Makefile: examples makefile now compile others/rlgl_standalone only when TARGET_PLATFORM is PLATFORM_DESKTOP_GFLW

* [rcore]: PLATFORM_SDL: improve clipboard data retrieval

* external: remove unused function from win32_clipboard.h

* Makefile: allow for extra flags necessary when compiling for SDL3

* [rcore]: fix string typo

* [rcore]: Properly handle NULL dpi passing. As is allowed in SDL2

* external: fix arch finding on win32_clipboard.h to allow compilation on msvc cmake CI

* [rcore]: PLATFORM_SDL: Treat monitor as an ID in SDL3 as opposed to an index as in SDL2

* [rcore]: typo
2024-11-09 19:40:41 +01:00
Jett
dc489786b0
UpdateModelAnimation speedup (#4470)
If we borrow from the GPU skinned animation code, we can just multiply the vertex by the matrix * weight and shave a chunk of CPU time.
2024-11-08 14:28:39 +01:00
Jeffery Myers
55a64f51b8
fix float casting warnings (#4471) 2024-11-07 21:42:59 +01:00
decromo
281ee51aff
implemented new linear gradient generation function (#4462) 2024-11-04 15:57:50 +01:00
waveydave
66a4f2e90b
Fix for issue 4454, MatrixDecompose() gave incorrect output for certain combinations of scale and rotation (#4461) 2024-11-03 20:36:32 +01:00
Ray
be360d2ad1 RENAMED: UpdateModelAnimationBoneMatrices() to UpdateModelAnimationBones()
Still, not fully convinced of those functions naming, despite quite descriptive, sounds a bit confusing to me...
2024-11-03 13:12:01 +01:00
MikiZX1
8e5d5f89c2
Update rmodels.c - 'fix' for GenMeshSphere artifact (#4460)
When creating a new sphere mesh with high number of slices/rings the top and bottom parts of the generated sphere are removed. This happens because the triangles in those parts, due to high resolution, end up being very small and are removed as part of the 'par_shapes' library's optimization. Adding par_shapes_set_epsilon_degenerate_sphere(0.0); before generating the sphere mesh sets the threshold for removal of small triangles is removed and the sphere is returned to raylib correctly.
2024-11-01 22:35:35 +01:00
Asdqwe
b8c0842b2e
Fix SetWindowSize() for PLATFORM_WEB (#4452) 2024-10-30 22:21:37 +01:00
Arche Washi
3bad05aa7b
fix the issue with GetScreenWidth/GetScreenHeight that was identified on other platforms (#4451) 2024-10-30 20:13:53 +01:00
Ray
d15e583460 Update rtext.c 2024-10-29 09:37:38 +01:00
Ray
10c8e4e435 Update rcore_desktop_glfw.c 2024-10-29 09:37:33 +01:00
Jeffery Myers
743e557e1e
Fix inconsistent dll linkage warning on windows (#4447) 2024-10-29 09:34:57 +01:00
mpv-enjoyer
de7ab83f5a
Fix empty input string for MeasureTextEx (#4448) 2024-10-29 09:33:03 +01:00
Jeffery Myers
0e1fc33c5c
Fix signed/unsigned mismatch in rlgl (#4443) 2024-10-26 22:59:50 +02:00
Colleague Riley
7fe5f7126b
Fix MSVC errors for PLATFORM_DESKTOP_RGFW (#4441)
* (rcore_desktop_rgfw.c) fix errors when compiling with mingw

* define WideCharToMultiByte

* update RGFW

* move stdcall def to windows only

* fix raw cursor input

* Fix warnings, update RGFW, fix msvc errors (make sure windows macro _WIN32 is correct)
2024-10-26 22:59:10 +02:00
Nikolas
38cf9f3224
[rtextures] LoadTextureCubemap(): Copy image before generating mipmaps, to avoid dangling re-allocated pointers (#4439) 2024-10-26 22:52:24 +02:00
Ray
7ad8fa689f REVIEWED: LoadTextureCubemap() to avoid crash #4429 2024-10-26 13:51:10 +02:00
Ray
ec79bffa20 Update stb_truetype.h 2024-10-26 13:13:05 +02:00
Ray
dc679cd1c7 Update stb_image_resize2.h 2024-10-26 13:12:38 +02:00
Ray
28e7e2cffd Update stb_image.h 2024-10-26 13:12:36 +02:00
Ray
d0e11a8c92 Update qoa.h 2024-10-26 13:12:33 +02:00
Ray
e70bf2bce1 Update dr_wav.h 2024-10-26 13:12:30 +02:00
Ray
c085c73014 Update dr_mp3.h 2024-10-26 13:12:26 +02:00
Ray
c6b1ecc593 Update cgltf.h 2024-10-26 13:12:24 +02:00
Ray
1f6b3384fa Reviewed formatting, remove end-line points, for consistency with comments 2024-10-26 12:26:00 +02:00
Ray
80b490c8f1 Reviewed formating to follow raylib conventions #4429 2024-10-26 12:15:06 +02:00
Nikolas
7fedf9e0b8
[rtextures/rlgl] Load mipmaps for cubemaps (#4429)
* [rlgl] Load cubemap mipmaps

* [rtextures] Only generate mipmaps that don't already exist

* [rtextures] ImageDraw(): Implement drawing to mipmaps

* [rtextures] Load cubemap mipmaps
2024-10-26 12:09:38 +02:00
Ray
4e3fc84050 Minor format tweaks 2024-10-26 00:52:22 +02:00
Ray
22c77d17b7 REVIEWED: WebGL2 (OpenGL ES 3.0) backend flags (PLATFORM_WEB) #4330 2024-10-26 00:51:37 +02:00
Ray
16368cd353 REVIEWED: DrawRectangleLines(), considering view matrix for lines "alignment" 2024-10-24 13:11:39 +02:00
RadsammyT
385187f795
[rshapes] Review DrawRectangleLines() pixel offset (#4261)
* [rshapes] Remove `DrawRectangleLines()`'s + 1 offset

* ... and replace it with a -/+ 0.5 offset divided by current cam's zoom.
2024-10-24 13:08:12 +02:00
Ray
6ff0b03629 REVIEWED: UpdateModelAnimationBoneMatrices() comments 2024-10-24 12:46:02 +02:00
Ray
5065b85d33 Update rlgl.h 2024-10-24 12:45:12 +02:00
Ray
b0140b876b REVIEWED: GPU skninning on Web, some gotchas! #4412 2024-10-24 12:25:05 +02:00
Ray
3483a4d9cb Update raylib.h 2024-10-24 11:57:36 +02:00
Ray
5706cfd600 Update Makefile 2024-10-24 11:50:42 +02:00
Ray
d85c6fe2c0 Update raylib.h 2024-10-24 11:50:30 +02:00
Ray
2072b4fa04 Update raylib.h 2024-10-24 09:59:54 +02:00
Jeffery Myers
0b650f62a6
[RTEXTURES] Remove the panorama cubemap layout option (#4425)
* Remove the panorama cubemap layout, it was not implemented.
Left a todo in the code for some aspiring developer to finish.

* Update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-24 09:06:24 +02:00
Ray
00c1f0836b Update Makefile 2024-10-24 01:35:37 +02:00
Ray
708089f560 Reviewed and reverted unneeded module check, rtextures should not depend on rtext 2024-10-23 23:29:05 +02:00
Franz
6f4407cb15
Fix typo in rshapes.c (#4421) 2024-10-23 17:04:15 +02:00
Asdqwe
7a4a84a561
[rcore] Fix #4405 (#4420)
* Fix #4405 at runtime

* Add parameter validation

* Remove default global deadzone
2024-10-23 00:59:50 +02:00
Ray
4b60ce700f Update raylib.h 2024-10-23 00:21:14 +02:00
Ray
352f4ce2c4 Update config.h 2024-10-23 00:21:06 +02:00
Asdqwe
4cd243f0a3
Simplify EmscriptenResizeCallback() (#4415) 2024-10-22 13:44:53 +02:00
Asdqwe
f8f6aa0907
[rcore] Adds implementation to SetGamepadVibration() on PLATFORM_WEB and updates it on PLATFORM_DESKTOP_SDL to handle duration (#4410)
* Updates SetGamepadVibration()

* Handle MAX_GAMEPAD_VIBRATION_TIME

* Revert low/high parameters back to left/rightMotor

* Fix missin semicolon

* Convert duration to seconds

* Add SetGamepadVibration() implementation to PLATFORM_WEB
2024-10-22 00:06:37 +02:00
Ray
cd3de0af0c Merge branch 'master' of https://github.com/raysan5/raylib 2024-10-21 20:47:10 +02:00
Ray
f4cbc1fbae REVIEWED: GetGestureHoldDuration() comments 2024-10-21 20:47:08 +02:00
Jeffery Myers
a2fcbc94fd
[Raymath] Add matrix operators to raymath for C++ (#4409)
* Add matrix operators to raymath for C++

* Fix spaces
2024-10-21 18:38:42 +02:00
Ray
f60c6d472c Update raymath.h 2024-10-21 17:26:42 +02:00
Ray
f141c75cde Removed trailing spaces 2024-10-21 17:00:52 +02:00
Ray
c935ca3168 Reviewed formatting #4408 2024-10-21 16:59:55 +02:00
Rapha
f402147a63
Updated instanced rendering support loading (#4408) 2024-10-21 16:56:19 +02:00
Ray
7601468211 REVIEWED: Formatting and raymath version #4385 2024-10-21 16:25:45 +02:00
Jeffery Myers
72f8c354b0
[Raymath] Add C++ operator overloads for common math function (#4385)
* Update raylib_api.* by CI

* Add math operators for C++ to raymath

* better #define for disabling C++ operators

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-21 16:17:50 +02:00
Sage Hane
110ee74875
build.zig: Merge src/build.zig to build.zig (#4393)
* build.zig: Move `src/build.zig` to `build.zig`

* build.zig: Remove uses of `@src`

* build.zig: Update entry point
2024-10-21 12:57:11 +02:00
Asdqwe
9d0b1f0171
Adds SetWindowOpacity() implementation for PLATFORM_WEB (#4403) 2024-10-21 09:47:19 +02:00
Asdqwe
cb21fe88d3
Fix MaximizeWindow() for PLATFORM_WEB (#4404) 2024-10-21 09:45:46 +02:00
Asdqwe
4290a0d9f2
[rcore] [web] Updates SetWindowState() and ClearWindowState() to handle FLAG_WINDOW_MAXIMIZED for PLATFORM_WEB (#4402)
* Updates SetWindowState() and ClearWindowState() to handle FLAG_WINDOW_MAXIMIZED for PLATFORM_WEB

* Update MaximizeWindow() and RestoreWindow() to set/unset the FLAG_WINDOW_MAXIMIZED
2024-10-21 01:04:32 +02:00
Nikolas
51ff6586f4
[rtextures] ImageDraw(): Don't try to blend images without alpha (#4395) 2024-10-21 00:31:01 +02:00
Asdqwe
3dbbe60376
Adds MaximizeWindow() and RestoreWindow() implementation for PLATFORM_WEB (#4397) 2024-10-21 00:29:32 +02:00
Sage Hane
ce9259cd02
build.zig: Fix various issues around -Dconfig (#4398)
* build.zig: Fix various issues around `-Dconfig`

* build.zig: Parse all relevant flags from `src/config.h` at comptime
2024-10-21 00:27:25 +02:00
Le Juez Victor
23354e1551
correction of comments (#4400)
The indication of locations for bone ids and bone weights did not correspond to their default values ​​in config.h
2024-10-21 00:26:15 +02:00
Nikolas
902d3c92e3
[rl_gputex] Correctly load mipmaps from DDS files (#4399) 2024-10-21 00:25:33 +02:00
Sage Hane
dc5e6e0ad0
build.zig: Clean up my mess (#4387) 2024-10-18 21:03:27 +02:00
Anthony Carbajal
80393c0fb6
[rcore] added sha1 implementation (#4390)
* added sha1 implementation

* added missing part

* fixed issue

* fix to match other implementations
2024-10-18 01:15:19 +02:00
Asdqwe
a2e31c4e1b
Fix #4388 (#4392) 2024-10-17 15:35:49 +02:00
Ray
8cbf34ddc4 WARNING: BREAKING: Renamed several functions for data validation #3930 2024-10-16 19:26:12 +02:00
Ray
361b0e85c1 ADDED: Utility functions: ComputeCRC32() and ComputeMD5() 2024-10-16 16:49:50 +02:00
Jojaby
c9c830cb97
Fix rectangle width and height check to account for squares (#4382) 2024-10-15 19:04:30 +02:00
R-YaTian
8d267aaf23
qoi: Added support for image of channels 3 (#4384) 2024-10-15 19:03:17 +02:00
yuval_dev
99ff770edc
Fix the type mismatch caused due to unsupported ?[]const u8 (#4383)
Co-authored-by: Yuval Herman <yuvalherman99@gmail.com>
2024-10-15 19:02:20 +02:00
Sage Hane
c18677e70f
build.zig: Very minor fixes (#4381) 2024-10-13 20:24:39 +02:00
Ray
735308f8eb REVIEWED: CodepointToUTF8(), clean static buffer #4379 2024-10-13 20:02:40 +02:00
Sage Hane
bac3798ad3
build.zig: Fix @src logic and a few things (#4380) 2024-10-13 18:58:42 +02:00
Ray
d29eb34cfb REMOVED: LoadImageSvg() 2024-10-10 21:17:31 +02:00
Ray
1effe92129 WARNING: REMOVED: SVG files loading and drawing, moving it to raylib-extras 2024-10-10 20:37:46 +02:00
Sage Hane
d3f86eb957
build.zig: Improve logic (#4375)
* build.zig: Fix `@src` logic

* build.zig: Clarify build error

* build.zig: Add option for enabling `raygui`

* build.zig: Expose `Options` type
2024-10-10 18:56:43 +02:00
William Culver
c4be013294
Fix build.zig (#4374) 2024-10-10 18:56:29 +02:00
Harald Scheirich
454acca84b
Some update to gltf loading (#4373)
Only warns when there are more animations than currently implemented
Allows mesh indices to be unsigned char
2024-10-10 18:53:02 +02:00
Ray
3fb1ba25ac Removed tabs and triple line-breaks 2024-10-08 18:45:52 +02:00
Colleague Riley
44e37c5f97
Update RGFW (#4372)
* (rcore_desktop_rgfw.c) fix errors when compiling with mingw

* define WideCharToMultiByte

* update RGFW

* move stdcall def to windows only

* fix raw cursor input
2024-10-08 18:39:15 +02:00
Anthony Carbajal
712ab798d1
updated makefile to disable wayland by default (#4369) 2024-10-08 18:33:33 +02:00
Anthony Carbajal
43b109a4e3
removed old comment (#4370) 2024-10-07 09:32:04 +02:00
Visen
b290d47bd5
[zig] Fix build.zig bug (#4366)
* fixed zig config.h bug

* zig fmt
2024-10-06 15:52:01 +02:00
Ray
f9e709915a Fix #4355 2024-10-04 11:24:02 +02:00
Anthony Carbajal
da95f88c36
updated camera speeds with GetFrameTime (#4362) 2024-10-04 11:15:43 +02:00
Nikolas
0ef0791854
Allow Zig build script to change desktop backend (#4358) 2024-10-04 11:05:19 +02:00
Asdqwe
96d91a3892
[rlgl] Fix rlgl standalone defaults (#4357)
* Fix rlgl standalone defaults

* Fix rmodels
2024-10-02 11:41:21 +02:00
Jeffery Myers
09987b01cc
[MODELS] Better fix for GPU skinning issues (#4353)
* Make the max VBO match the animation flag.

* re-enable GPU skinning for mac, and fix the max buffer to be correct based on the GPU skinning support flag.
2024-10-02 10:49:56 +02:00
Asdqwe
d9c10ed264
Fixes GetClipboardText() memory leak for PLATFORM_DESKTOP_SDL (#4354) 2024-10-02 10:49:06 +02:00
Asdqwe
282d6478ba
Complements the #4348 GPU skinning fix (#4352) 2024-10-01 12:09:06 +02:00
Jeffery Myers
0e7bcd5639
[MODELS] Disable GPU skinning for MacOS platform (#4348)
* Update raylib_api.* by CI

* Disable GPU skinning on MacOS
Add GPU skinning example to MSVC Projects.

* Update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-30 12:10:02 +02:00
Ray
84a4d93bc4 Fix #4349 2024-09-30 12:06:53 +02:00
Jeffery Myers
0573ef0382
[SHAPES] Add more detail to comment for DrawPixel (#4344)
* Update raylib_api.* by CI

* Add comment that draw pixel uses geometry and may be slow

* Update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-27 23:06:54 +02:00
Menno van der Graaf
55e83468c9
Fix isGpuReady flag on android (#4340) 2024-09-24 20:02:54 +02:00
Ray
13178b9373 Update rcore.c 2024-09-22 23:01:22 +02:00
Ray
291063c98f Update rcore.c 2024-09-22 22:56:21 +02:00
Ray
24a1cd8c5b Update rcore.c 2024-09-22 22:50:47 +02:00
Ray
352c450ad0 Update rcore.c 2024-09-22 22:43:35 +02:00
Ray
100f6624d6 Update rcore.c 2024-09-22 22:36:17 +02:00
Ray
55a25ac04b ADDED: MakeDirectory() 2024-09-22 22:11:08 +02:00
Ray
1eb8ff5e54 LoadFontDefault(): Initialize glyphs and recs to zero #4319 2024-09-22 18:05:58 +02:00
Asdqwe
212b1e5fe7
Fix rlgl standalone defaults (#4334) 2024-09-21 23:11:40 +02:00
Ray
e5d0cc978a Some minor tweaks 2024-09-20 17:32:01 +02:00
Daniel Holden
86ead96263
[rmodels] Optional GPU skinning (#4321)
* Added optional GPU skinning

* Added skinned bone matrices support for different file formats.

* Moved new shader locations to end of enum to avoid breaking existing examples. Added gpu skinning on drawing of instanced meshes.

* Added GPU skinning example.

* Removed variable declaration to avoid shadowing warning.
2024-09-20 17:30:37 +02:00
Ray
0a03ed913b Update raylib.h 2024-09-17 17:30:40 +02:00
Ray
627e76cf7b REVIEWED: Directory filter tag #4323 2024-09-17 10:26:32 +02:00
Ray
186787e311 Merge branch 'master' of https://github.com/raysan5/raylib 2024-09-15 13:21:22 +02:00
Ray
0e4ebaf89d REVIEWED: DrawTexturePro() to avoid negative dest rec #4316 2024-09-15 13:20:43 +02:00
foxblock
16e9317220
[rcore] Add filtering folders to LoadDirectoryFilesEx()/ScanDirectoryFiles() (#4302)
* Add filtering folders in ScanDirectoryFiles and ScanDirectoryFilesRecursively

Add define FILTER_FOLDER for that purpose
Fix folder names matching filter being added to result

* Move FILTER_FOLDER define to internals of rcore and document option in comment
2024-09-15 13:05:01 +02:00
Ray
e9bbf02b2b Update rtextures.c 2024-09-15 13:03:12 +02:00
Ray
b807f633d9 REVIEWED: ColorLerp() formatting #4310 2024-09-15 13:01:59 +02:00
SusgUY446
ddc523ffbe
[rtextures] add MixColors. a function to mix 2 colors together (#4310)
* added MixColors function to mix 2 colors together (Line 1428 raylib.h and Line 4995 in rtextures.c)

* renamed MixColors to ColorLerp (https://github.com/raysan5/raylib/pull/4310#issuecomment-2340121038)

* changed ColorLerp to be more like other functions

---------

Co-authored-by: CI <-ci@not-real.com>
2024-09-15 12:55:45 +02:00
base
d02fcc5262
chore: GetApplicationDirectory definition for FreeBSD (#4318) 2024-09-15 12:51:20 +02:00
Jett
ed702673ea
fix for hardcoded index values in vboID array (#4312)
changing any of the #defines in CONFIG.H would cause issues when rendering.
2024-09-11 22:57:19 +02:00
masnm
0656440e38
fix vld1q_f16 undeclared in arm on stb_image_resize2.h v2.10 (#4309) 2024-09-08 20:24:53 +02:00
masnm
10b01ba7c2
Change implicit conversion to explicit conversion to remove warning (#4308) 2024-09-06 23:16:17 +02:00
Michał Jaskólski
42022c3531
fix: In certain cases the connector status is reported UNKNOWN, should be conisdered as CONNECTED (#4305)
Co-authored-by: Michal Jaskolski <michal.jaskolski@hexagon.com>
2024-09-03 14:38:12 +02:00
carverdamien
59b44a4908
Add uConsole mapping (#4297) 2024-09-02 10:01:30 +02:00
hanaxars
5f49ec3d64
Fix missing equal sign (#4294)
I just noticed there is a missing equal sign. This PR fixes this.
2024-08-28 18:35:35 +02:00
Hesham Abourgheba
8ea5db3ec4
fix(rcore/android): Allow main() to return it its caller on configuration changes. (#4288) 2024-08-25 18:51:08 +02:00
Jeffery Myers
91a9888baa
[rModels] Correctly split obj meshes by material (#4285)
* Correctly split meshes from tinyobj by material so they can be represented by raylib correctly

* PR Feedback
2024-08-25 18:49:52 +02:00
Ray
f5ef357810 Update rtext.c 2024-08-25 13:55:53 +02:00
Ray
5604f6d8a3 Update rlgl.h 2024-08-25 12:57:05 +02:00
Ray
157c7c21d4 ADDED: more uniform data type options #4137 2024-08-25 12:52:27 +02:00
Ray
dec7f12b14 Update raylib.h 2024-08-25 12:51:55 +02:00
Tchan0
d314afc451
rlgl.h: glint64 did not exist before OpenGL 3.2 (#4284)
Compilation breaks on rlgl.h for early OpenGL versions.
Glint64 did not exist on those versions (< OpenGL 3.2)
2024-08-24 20:35:49 +02:00
Dave Green
0c06a08e07
[rcore][desktop_glfw] Keeping CORE.Window.position properly in sync with glfw window position (#4190)
* WindowPosCallback added.

CORE.Window.position is now properly kept in sync with the glfw window position.

* Update rcore_desktop_glfw.c

Comments updated.

* Setting CORE.Window.position correctly in InitPlatform() as well.

This also fixes not centering the window correctly when the high dpi flag was enabled.

* Fixes centering the window in the SetWindowMonitor() function.

Here the render size has to be used again in case the high dpi flag is enabled.

* Update Window Position

Update Window Position right away in ToggleFullscreen() & ToggleBorderlessWindowed() functions
2024-08-24 20:33:21 +02:00
Jeffery Myers
0aba21f71c
[RCORE] Update comments on fullscreen and boderless window to describe what they do (#4280)
* Update raylib_api.* by CI

* update fullscreen and borderless comments to better describe what they do.

* Update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-08-24 20:31:28 +02:00
Ray
4c9282b090 ADDED: isGpuReady flag, allow font loading with no GPU acceleration 2024-08-24 18:59:24 +02:00
Ray
78e86b6ea5 Update rlgl.h 2024-08-24 18:58:43 +02:00
Colleague Riley
bc0bd98763
(rcore_desktop_rgfw.c) fix errors when compiling with mingw (#4282)
* (rcore_desktop_rgfw.c) fix errors when compiling with mingw

* define WideCharToMultiByte
2024-08-24 18:43:46 +02:00
Reese Gallagher
7bde76ca2c
[rmodels] More performant point cloud rendering with DrawModelPoints() (#4203)
* Added the ability to draw a model as a point cloud

* Added example to demonstrate drawing a model as a point cloud

* polished the demo a bit

* picture for example

* adhere to conventions for example

* update png to match aspect ratio

* minor changes

* address code convention comments

* added point rendering to makefiles

* added point rendering to readme and renumbered examples

* comment formatting

---------

Co-authored-by: Reese Gallagher <re325479@ucf.edu.com>
Co-authored-by: Ray <raysan5@gmail.com>
2024-08-24 18:42:38 +02:00
konstruktor227
b0c3013b51
[raudio] Support 24-bit FLACs in LoadMusicStreamFromMemory (#4279)
Force conversion to 16-bit, same as how it is done in `LoadMusicStream`.
This fixes the problem where 24-bit FLACs play silence or broken sound.
2024-08-23 22:51:29 +02:00
Menno van der Graaf
3079c69725
Replace deprecated Android function ALooper_pollAll with ALooper_pollOnce (#4275) 2024-08-23 22:32:20 +02:00
Bugsia
77172e34db
Fixing GenImagePerlinNoise() being stretched, if Image is not rectangular (#4276) 2024-08-23 22:22:36 +02:00
listeria
cc88e0b780
rtext: always multiply by sign in TextToFloat() (#4273)
Co-authored-by: Listeria monocytogenes <listeria@disroot.org>
2024-08-21 17:45:14 +02:00
Jeffery Myers
c8bee7c439
[rmodels] Add a warning when loading an OBJ with multiple materials. (#4271)
* Update raylib_api.* by CI

* Add a temp warning about material assignments during OBJ loading if the file has more than one material. To be replaced when the OBJ translation code is fixed.

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-08-21 17:11:59 +02:00
Paperdomo101
fa3f73d881
[rshapes] Review DrawGradient color parameter names (#4270)
void DrawCircleGradient(int centerX, int centerY, float radius, Color color1, Color color2);
void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2);
void DrawRectangleGradientH(int posX, int posY, int width, int height, Color color1, Color color2);
void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4);

Have been changed to:

void DrawCircleGradient(int centerX, int centerY, float radius, Color inner, Color outer);
void DrawRectangleGradientV(int posX, int posY, int width, int height, Color top, Color bottom);
void DrawRectangleGradientH(int posX, int posY, int width, int height, Color left, Color right);
void DrawRectangleGradientEx(Rectangle rec, Color topLeft, Color bottomLeft, Color topRight, Color bottomRight);
2024-08-21 14:07:52 +02:00
Ray
039df36f4b REVIEWED: Automation events mouse wheel #4263 2024-08-20 19:13:18 +02:00
hanaxars
7fab03c0b4
Fix warnings (#4264)
Fix following gcc warnings when SVG enabled:

rtextures.c: In function 'LoadImageSvg':
rtextures.c:374:52: warning: pointer targets in passing argument 1 of 'nsvgParse' differ in signedness [-Wpointer-sign]
  374 |             struct NSVGimage *svgImage = nsvgParse(fileData, "px", 96.0f);
      |                                                    ^~~~~~~~
      |                                                    |
      |                                                    unsigned char *
In file included from rtextures.c:230:
external/nanosvg.h:2952:28: note: expected 'char *' but argument is of type 'unsigned char *'
 2952 | NSVGimage* nsvgParse(char* input, const char* units, float dpi)
      |                      ~~~~~~^~~~~
rtextures.c:407:43: warning: comparison of distinct pointer types lacks a cast [-Wcompare-distinct-pointer-types]
  407 |         if (isSvgStringValid && (fileData != fileNameOrString)) UnloadFileData(fileData);
      |                                           ^~
rtextures.c: In function 'LoadImageFromMemory':
rtextures.c:614:52: warning: passing argument 1 of 'nsvgParse' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
  614 |             struct NSVGimage *svgImage = nsvgParse(fileData, "px", 96.0f);
      |                                                    ^~~~~~~~
external/nanosvg.h:2952:28: note: expected 'char *' but argument is of type 'const unsigned char *'
 2952 | NSVGimage* nsvgParse(char* input, const char* units, float dpi)
      |                      ~~~~~~^~~~~
2024-08-19 13:41:20 +02:00
Colleague Riley
b432aa2b9c
Update RGFW (#4259)
* update RGFW

* fix bug with GetCurrentMonitor

* update RGFW

* update RGFW

* clean up merge

* update RGFW
2024-08-17 14:00:54 +02:00
Lázaro Albuquerque
308b77cd42
Fix warnings (#4251)
* Update rmodels.c

fix these warnings:

```
/src/rmodels.c:5744:17: warning: missing initializer for field 'w' of 'Vector4' [-Wmissing-field-initializers]
[build]  5744 |                 Vector4 outTangent1 = {tmp[0], tmp[1], tmp[2]};
[build]       |                 ^~~~~~~
```

* Update rcore_web.c

fix warnings
2024-08-17 01:07:23 +02:00
Ray
f70d8a33cb REVIEWED: Shader load failing returns 0, instead of fallback 2024-08-17 00:46:08 +02:00
Lázaro Albuquerque
6e644a27fc
Change some global variables to have internal linkage (#4252)
* Change some global variables to have internal linkage

* Update rcore.c

* Update rcore.c
2024-08-13 19:16:07 +02:00
hanaxars
65c4003546
Make camera movement independant of framerate (#4247)
Instead of moving camera with constant speed per frame, speed is multiplied with delta time before movement.
2024-08-12 18:47:52 +02:00
Maxim Knyazkin
13491a485a
Fixed compilation for OpenGL ES (#4243) 2024-08-09 19:02:18 +02:00
Maxim Knyazkin
2590a30d04
[rlgl] Adding warnings in case OpenGL 4.3 is not enabled (#4202)
* Adding warnings for OpenGL 4.3

* Removed logging from frequently called functions
2024-08-09 09:05:46 +02:00
NishiOwO
fe9e371f27
[miniaudio] Fixing miniaudio and Makefile for NetBSD (#4212)
* fixing miniaudio

* another fix for NetBSD

* adding wl-r. should not affect other bsd
2024-08-09 09:04:18 +02:00
Jeffery Myers
9ef678d90a
Fix warnings (#4239)
* Update raylib_api.* by CI

* Fix typecast warnings

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-08-09 08:54:22 +02:00
freakmangd
cae0946764
Fix build.zig and use zig fmt (#4242)
+ `std.mem.split` is deprecated, `splitScalar` seems like the intended choice here
+ zig files should be formatted according to `zig fmt`
2024-08-09 08:53:29 +02:00
Ray
5af331d708 REVIEWED #4206 2024-08-07 01:01:45 +02:00
lnc3l0t
8b714e9dd9
[build.zig] check if wayland-scanner is installed (#4217)
#4150 introduced a default value for linux_display_backend,
which makes X11-only systems fail to build.
2024-08-06 18:28:33 +02:00
Ray
9c2ba3bfb7 REVIEWED: possible overflow... again #4206 2024-08-04 23:22:27 +02:00
Ray
923f983719 REVIEWED: Possible overflow #4206 2024-08-04 22:08:38 +02:00
lnc3l0t
b2d48ff172
[build.zig] Override config.h definitions (#4193)
* [build.zig] Overridable definitions from config.h
The new Options field "config" holds a string the user can set in the
format "-Dflag_a=1 -Dflag_b=0 ..." to override the values set in
`config.h`.
The file is parsed and the default values are appended to the
compilation flags, if the user doesn't override them.
The user string is appended to the compilation flags.
The "-DEXTERNAL_CONFIG_FLAGS" is added to prevent "config.h" inclusion.

Note: a certain format is assumed for the formatting of config.h
Note: this commit references the closed issue #3516

* [build.zig] Only SUPPORT_* definitions are overridable

Lines from `config.h` which contains "SUPPORT" are added to compilation after being parsed:
- remove whitespace
- format to preprocessor option https://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html

The user supplied flags have priority over the ones read from the file.

NOTE: extension to commit 4da7f82e6f, the logic is simplified
because the SUPPORT flags only have binary values, which makes them easier to parse.
2024-08-04 22:01:28 +02:00
Dave Green
596cc3a645
[rcore][desktop_glfw] Set AUTO_ICONIFY flag to false per default (#4188)
* GLFW AUTO_ICONIFY flag is now set to false per default.

Previously AUTO_ICONIFY was only disabled if the user requested a Fullscreen window from the start. After that it was not possible to change this behavior on the user side anymore, even when changing to a Fullscreen window.

The AUTO_ICONIFY causes problems on macOS. On macOS if the window is minimized because of AUTO_ICONIFY than the only way to restore it is to click on the icon in the dock. In other words when AUTO_ICONIFY is enabled alt/cmd-tabbing through windows does not work correctly. On windows it works even when AUTO_ICONIFY is enabled.

Additionally if a raylib window is in Fullscreen mode on another monitor the AUTO_ICONIFY behavior is a problem because the user might want to window to stay on the monitor even if it loses focus. (problem on all OS's)

AUTO_ICONIFY also restores the monitor hardware resolution if a fullscreen window loses focus.

* Update rcore_desktop_glfw.c

Extra space removed and comments updated with a space at the beginning
2024-08-04 21:59:48 +02:00
Randy Palamar
92f60a99f6
[rlgl] use GLint64 for glGetBufferParameteri64v (#4197) 2024-08-04 21:53:56 +02:00
Rico P
a8ec8472ff
replace unicode characters by ascii characters in jar_xml to avoid warning in MSVC (#4196) 2024-08-02 21:04:33 +02:00
maxmutant
9e39788e07
[rcore] fix gamepad axis movement and its automation event recording (#4184)
* [rcore] fix gamepad axis movement and its automation event recording

This commit fixes 2 issues:
- Automation events aren't recorded for negative axis movements on
  gamepads (e.g. stick going left/up)
- 'GetGamepadAxisMovement' drift check isn't working correctly for
  triggers. Axis values between [-0.1, 0.1] are clamped to 0.0

Behaviour change:
- 'GetGamepadAxisMovement' returns default value for each axis, even
  if gamepad isn't attached.

* [rcore] inline body of 'GetGamepadAxisMovementDefault' and remove it
2024-07-28 22:07:47 +02:00
Dave Green
e5a1fc4f20
No longer set the RL_TEXTURE_FILTER_LINEAR when high dpi flag is enabled. (#4189) 2024-07-27 20:19:05 +02:00
Ray
efce4d69ce Merge branch 'master' of https://github.com/raysan5/raylib 2024-07-25 11:44:59 +02:00
Ray
5041d20f00 Update rcore_desktop_glfw.c 2024-07-25 11:44:49 +02:00
Jutastre
f5d2f8d545
Warning on invalid image data (#4179)
* Adds log warnings on invalid file data

* Separate error on missing file extension

* Changed LOG_ERROR to LOG_WARNING

---------

Co-authored-by: Jutastre <pukarlindgren@gmail.com>
2024-07-24 21:21:45 +02:00
Lázaro Albuquerque
bbcb0109e1
Add default vertex/fragment shader to OpenGL ES 3.0 based on the ones from OpenGL 3.3 (#4178) 2024-07-23 21:10:23 +02:00
Lázaro Albuquerque
30f9ca7eb6
A better default that saves the whopping amount of 28KB on the final bundle (#4177) 2024-07-22 22:23:03 +02:00
Colleague Riley
f1f08861a1
Update RGFW (#4176)
* update RGFW

* fix bug with GetCurrentMonitor

* update RGFW

* update RGFW

* clean up merge
2024-07-22 22:19:09 +02:00
Ray
474ab48f8b Update rtextures.c 2024-07-21 10:28:34 +02:00
Ray
fde0dcd0ab ADDED: Working directory info at initialization 2024-07-21 10:28:23 +02:00
Ray
fc5eab5676 Update version to avoid confusions...
...considering that `raylib 5.5` official release could still take some time...
2024-07-21 10:28:01 +02:00
Julianiolo
aa70d32786
Fix a dependance of rtexture to rtext (#4171) 2024-07-20 10:39:14 +02:00
Ray
996f50393e Minor tweaks 2024-07-19 00:39:58 +02:00
Ray
61393fff1f Update rcore_desktop_glfw.c 2024-07-19 00:39:11 +02:00
Lázaro Albuquerque
24726a4bc2
Removes the redundant USE_AUDIO flag (#4158) 2024-07-16 14:16:41 +02:00
MrScautHD
576bee5cce
Adding GetKeyName(int key) (WIP) (#4161) 2024-07-16 14:00:00 +02:00
jkaup
5ede47618b
Fix crash when switching playback device (#4102)
Co-authored-by: jj <noname@nomail.fi>
2024-07-13 23:10:28 +02:00
Kai Kitagawa-Jones
8d5374a443
Replace glGetInteger64v with glGetBufferParameteri64v (#4154) 2024-07-11 21:31:13 +02:00
InventorXtreme
44c6cd2d37
[build.zig] GLFW Platform Detection Support (#4150)
* Zig Both Linux Desktop Platform Support

* Formating and Default Fix
Made formating fit within raylib standards and changed the default option to support both X11 and wayland on Linux.

* caught one hiding tab
2024-07-11 09:59:26 +02:00
Jeffery Myers
74680748b9
[Shapes] Remove duplicate color calls in DrawGrid (#4148)
* Update raylib_api.* by CI

* No need to call the color 4 times in a row, it's batched

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-07-09 19:45:07 +02:00
SuperUserNameMan
174313acbf
WindowSizeCallback() should not try to handle DPI since already managed by GLFW (#4143)
If `FLAG_WINDOW_HIGHDPI` is set, `InitPlatform()` will aks GLFW to handle resize window content area based on the monitor content scale using : ` glfwWindowHint(GLFW_SCALE_TO_MONITOR, GLFW_TRUE); `

So `WindowSizeCallback()` does not have to handle it a second time.
2024-07-09 09:23:14 +02:00
Ray
fa03246d0e REVIEWED: Code formatting to follow raylib conventions 2024-07-09 09:21:57 +02:00
Colleague Riley
98662b6a4a
update RGFW to RGFW 1.0 (#4144)
* update RGFW

* fix bug with GetCurrentMonitor
2024-07-09 09:12:03 +02:00
Ray
3abe728712 Minor tweaks 2024-07-08 22:54:19 +02:00
NishiOwO
598b7f5210
Add workaround for NetBSD (#4139) 2024-07-08 22:47:35 +02:00
Ray
b8e5179431 Update rmodels.c 2024-07-07 21:02:20 +02:00
Ray
df4ff4e78b REVIEWED: Direction must be normalized #4131 2024-07-07 20:57:18 +02:00
bohonghuang
6dd2a0e645
[rmodels] Consistent DrawBillboardPro with DrawTexturePro (#4132)
* [rmodels] Re-implement `DrawBillboardPro`

* [rmodels] Add comments to `DrawBillboardPro`

* [rmodels] Make `DrawBillboardPro` consistent with `DrawTexturePro`

* Update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-07-07 20:27:51 +02:00
Ray
a8240722c6 REVIEWED: CheckCollisionPointRec() 2024-07-07 09:09:34 +02:00
kai-z99
1039e3c1bd
[rshapes] Give CheckCollisionPointCircle() its own implementation (#4135)
* remove function call

* fix
2024-07-07 09:05:25 +02:00
Ray
9a280cda0b Update rlgl.h 2024-07-04 11:12:24 +02:00
Frank Kartheuser
8fbb447a6d
Change SDL_Joystick to SDL_GameController (#4129)
With SDL_Joystick my game controller wasn't working properly. That's why I changed it to SDL_GameController.
2024-07-04 00:01:40 +02:00
Jeffery Myers
9d3bd43c6e
[CORE] Fix MSVC warnings/errors and raymath.h in C++ (#4125)
* Update raylib_api.* by CI

* Fix MSVC warnings.
Make raymath.h work in C++ in MSVC

* whitespace cleanup

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-07-01 22:03:21 +02:00
Ray
2f49250baf WARNING: UPDATE: Starting works on raylib 5.5 release 2024-07-01 18:31:16 +02:00
Ray
fbd79cde5f Reverted memory allocators additional checks 2024-07-01 18:30:22 +02:00
Ray
d243094ede WARNING: BREAKING: Renamed PLATFORM_DESKTOP to PLATFORM_DESKTOP_GLFW
This could potentially be a breaking change, for consistency, now every possible desktop backend has the proper name assigned: GLFW, SDL, RGFW
raylib build system has been reviewed to fallback to `PLATFORM_DESKTOP_GLFW` by default when `PLATFORM_DESKTOP` defined
2024-07-01 18:28:44 +02:00
Ray
2bc75b877a WARNING: TEST: Security check to address potential overflow cocerns 2024-07-01 13:06:15 +02:00
Ray
a1d516354e Merge branch 'master' of https://github.com/raysan5/raylib 2024-07-01 13:06:00 +02:00
Ray
61cfd1afcb Minor tweaks 2024-07-01 13:05:20 +02:00
Bruno Cabral
b5473d5ffd
[rtextures] advance k in LoadImageColors (#4120)
Some formats are not advancing k to get pixels values
2024-07-01 12:24:01 +02:00
Mike Will
9e22fddf1a
[build.zig] Make emscripten build compatible with Zig 0.13.0 (#4121) 2024-07-01 12:22:12 +02:00
Ray
c8313d9ebc Update Storage base path, use provided SDL base path 2024-07-01 11:44:20 +02:00
Ray
1e1061d5c7 REVIEWED: Formatting, follow raylib coding conventions 2024-06-30 11:37:58 +02:00
Ray
13e3092511 REVIEWED: DrawSphereEx(), added educational info 2024-06-30 11:15:45 +02:00
smalltimewizard
953df38ac4
[rmodels] DrawSphereEx() optimization (#4106)
* Optimize DrawSphereEx()

Precalculates sin/cos to eliminate unnecessary calls.

* Formatting correction to previous commit

* Bugfix to optimized DrawSphereEx()

OBO error -- added 1 additional precalculated cos/sin value to each array to complete the 360-degree wraparound. Technically the value of these last elements will always be the same as the first element due to 360-degree wraparound, but this is the simplest solution.

* Corrected missing free()

* Formatting correction

* New DrawSphereEx() algorithm
2024-06-30 11:09:21 +02:00
Ray
17cbc75aa7 REVIEWED: Formatting, follow raylib coding conventions 2024-06-30 11:07:38 +02:00
Bruno Cabral
6e2661f92d
[rtextures] Created ImageFromChannel() (#4105)
* created ImageFromChannel

Adds the possibility to extract a specific channel from an image

* naming convention

* example window height

* removed threshold

* removed alpha channel

* channel example organization

* updated channel example image
2024-06-30 10:33:32 +02:00
VitoTringolo
5b8efd68ba
[rmodels] Return true if no need to interpolate to avoid log flooding (#4118) 2024-06-30 09:50:12 +02:00
SuperUserNameMan
a3ef381b3e
rmodels.c, LoadImageFromCgltfImage() : fix base64 padding support (#4112)
* rmodels.c, LoadImageFromCgltfImage() : fix base64 padding support

This should fix the issue related to `.gltf` embeded image in base64 format, by ignoring `=` padding and calculating the data size in bytes correctly.

* follow guidelin convention

* try to follow guideline convention as much as possible

* clarify comments

i hope it's clear ennough
2024-06-28 09:56:27 +02:00
Colleague Riley
84971d81f3
Update RGFW and replace long switch in rcore_desktop_rgfw.c with a lookup table (#4108)
* Fix Makefile issues (RGFW) (linux) (macOS)

* Do not use nanosleep on windows at all (PLATFORM_DESKTOP_RGFW)

* remove #define RGFWDEF and make the #undefs only happen for their OS

* Update RGFW.h

* fix to match the RGFW updates

* remove line that shows the cursor for no reason

* Update RGFW, replace long switch with an array, update rgfw platform for RGFW

* update RGFW (fix reported glitch with drag and drop files) (linux)

* remove u16
2024-06-28 09:55:14 +02:00
VitoTringolo
05d76c74a6
Fix GLTF animations (#4107)
Co-authored-by: Vito Tringolo <vito.tringolo@recognitionrobotics.com>
2024-06-28 09:53:29 +02:00
InKryption
5e91444e3e
[build.zig] pass the real build.zig file (#4113)
`@This()` was naively passed to `dependencyFromBuildZig` while inside
a file that is not actually the build file, causing a panic when
actually used. Passing `@import("../build.zig")` fixes this.
2024-06-27 22:25:15 +02:00
InKryption
57b5f11e2a
[build.zig] Leverage dependencyFromBuildZig (#4109) 2024-06-27 11:52:36 +02:00
jspast
37205bba84
[web] Fix undesired scrollbars on shell files (#4104) 2024-06-25 22:15:29 +02:00
Ray
0979eafa84 WARNING: REMOVED: Default font fallback 2024-06-25 21:40:41 +02:00
Ray
4239e66c55 Update rshapes.c 2024-06-25 21:39:43 +02:00
Peter0x44
dfabbd8ba8
[rtext] Don't return default font if LoadFontEx fails (#4077)
It is currently impossible to check a font loaded successfully with
IsFontReady because LoadFontEx will always return a valid font.

DrawTextEx has this check:
if (font.texture.id == 0) font = GetFontDefault();  // Security check in case of not valid font

So anyone relying on the default font as a fallback for fonts failing to
load should still be covered.
2024-06-25 21:38:55 +02:00
Ray
3e441ae98b REVIEWED: DrawLine() #4075 2024-06-25 16:37:20 +02:00
Ray
385e60dd41 Minor tweaks 2024-06-24 18:41:33 +02:00
Jeffery Myers
e96bab7ce6
[Build] Fix warnings when building in VS 2022 (#4095)
* Update raylib_api.* by CI

* Fix warnings when building examples in MSVC 2022

* fix auto-format that sneaked in there.

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-06-24 17:47:32 +02:00
Peter0x44
4311db5ba5
[rmodels] Fix -Wstringop-truncation warning (#4096)
rmodels.c: In function ‘LoadBoneInfoGLTF.isra’:
rmodels.c:4874:32: warning: ‘strncpy’ specified bound 32 equals destination size [-Wstringop-truncation]
 4874 |         if (node.name != NULL) strncpy(bones[i].name, node.name, sizeof(bones[i].name));
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2024-06-24 09:29:10 +02:00
Le Juez Victor
c2df169847
[rtextures] Adding ImageDrawLineEx function (#4097)
* adding `ImageDrawLineEx` function
also review other functions for drawing lines in images

* fix `ImageDrawLineV`
2024-06-24 09:27:59 +02:00
Le Juez Victor
7e50270d49
[rtextures] Adding triangle drawing function for images (#4094)
* adding triangle drawing function for images

* remove unnecessary check

* fix an iteration mistake
2024-06-23 22:51:24 +02:00
SuperUserNameMan
7773254022
LoadIQM() set model.meshMaterial[] (#4092) 2024-06-23 21:14:03 +02:00
Paul Melis
d582becbc2
[rmodels] Initial work to correctly handle the node hierarchy in a glTF file (#4037)
* Initial work to correctly handle the node hierarchy in a glTF file.
Static meshes seem to work fine in my tests. Haven't tried anything
animated yet, but it's almost certainly broken.

* Fix variable naming, some comment tweaks

* Only count primitives made up of triangles in glTF meshes

* Update processing of gltf mesh animation data, to match earlier
changes to vertex/normal/tangent data
2024-06-22 19:42:11 +02:00
manuel5975p
5ba18575de
[build] CMake: pass -sFULL_ES3 instead of -sFULL_ES3=1 (#4090)
* Allow ES3 in LibraryConfigurations.cmake

* Put FULL_ES3 as linker option

* Remove =1
2024-06-22 19:20:33 +02:00
Alice Nyaa
b0d49579c1
fixed LoadCodepoints returning a freed ptr when count is 0 (#4089) 2024-06-22 19:17:31 +02:00
Anthony Carbajal
0d59235ade
add warning log multiple of 4 (#4080) 2024-06-22 19:15:21 +02:00
manuel5975p
e7acdd12d8
[build] CMake: support OpenGL ES3 in LibraryConfigurations.cmake (#4079)
* Allow ES3 in LibraryConfigurations.cmake

* Put FULL_ES3 as linker option
2024-06-21 09:07:01 +02:00
Anthony Carbajal
52f2a10db6
fixed issue with GetScreenWidth/GetScreenHeight (#4074) 2024-06-17 13:42:53 +02:00
kai-z99
a29d334734
[rmodels] Read uninitialized values in GenMeshTangents() - fix bounding case (#4066)
* fix

* assert
2024-06-16 10:44:31 +02:00
Lázaro Albuquerque
cc40a91343
[build] Fix some warnings on web builds and remove some redundant flags. (#4069)
* update

* Revert "update"

This reverts commit e8adcabd94.

* update

* remove a not stricly required flag
2024-06-16 10:42:50 +02:00
Ray
715633e0de REVIEWED: Spline cubic bezier example 2024-06-16 10:41:47 +02:00
Ray
4119b6dd66 Update raylib.h 2024-06-16 10:23:38 +02:00
Santiago Pelufo
640eaca8bf
[rshapes] Fix multisegment Bezier splines. (#3744)
* [rshapes] Fix multisegment Bezier splines.

It seems to me that these functions are wrong, if you step the index by 1 you move to a control point instead of the next segment.

* Fix example shapes/shapes_splines_drawing for bezier splines.

* Draw circles to fill gaps between bezier segments.
2024-06-16 10:21:54 +02:00
Viktor Pocedulić
eff7b065eb
[build.zig] Fix raygui build when using addRaygui externally (#4027)
When addRaygui is used from an external build, for example in a
bindings project, the build of a generated `raygui.c` fails with
"raylib.h not found" error from the compiler.

I've traced this down to a raylib step not adding its `src/` to the
shared list of include paths using `addIncludePath` but relying on
`addCSourceFiles` `.root` to provide the implicit include path for
raylib proper's own files.

If raygui is later added to the step the compiler won't know where
to look for `raylib.h` and friends and will fail to build.

This change simply adds raylib's `src/` to the include path list.
2024-06-16 09:37:45 +02:00
kai-z99
fca53c7799
optimize (#4065) 2024-06-14 08:19:17 +02:00
listeria
df849d2fb0
[raudio] fix mapping of wave data in LoadWaveSamples() (#4062)
Co-authored-by: Listeria monocytogenes <listeria@disroot.org>
2024-06-13 16:05:22 +02:00
TokyoSU
735c0160b5
Update rlgl.h (#4059)
- The function rlGetMatrixProjectionStereo and rlGetMatrixViewOffsetStereo have RLAPI for the function declaration and cause error when compiling using RLGL_IMPLEMENTATION.
2024-06-12 19:36:25 +02:00
Alexey Kutepov
33c598123c
[raudio] Add 24 bits samples support for FLAC format (#4058)
Similarly to how it's done for WAV format, by forcing the conversion
to s16 on UpdateMusicStream().
2024-06-12 11:42:41 +02:00
Jeffery Myers
2609211207
[SHAPES] Make functions that draw point arrays take them as const (#4051)
* Update raylib_api.* by CI

* make functions that take a pointer to an array take them as const pointers

* Update raylib_api.* by CI

* fix comment alignment.

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-06-11 11:51:49 +02:00
VitoTringolo
0fc4b61906
LoadBoneInfoGLTF add check for animation name being NULL (#4053)
Co-authored-by: Vito Tringolo <vito.tringolo@recognitionrobotics.com>
2024-06-11 11:50:42 +02:00
Lázaro Albuquerque
c636618d77
Update Makefile (#4054)
Since the flag CUSTOM_CFLAGS should allow users customize things, in particular the optimization level, I figured it should come after other default ones.

Based on: "If you use multiple -O options, with or without level numbers, the last such option is the one that is effective."

Source: https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
2024-06-10 20:50:09 +02:00
carverdamien
a0a81fddee
Make addRaylib use options.opengl_version (#4049) 2024-06-09 13:29:09 +02:00
Ray
8cbde7f84c tweaks 2024-06-09 13:16:29 +02:00
Ray
6b3c1148bf REVIEWED: Animation name being NULL #4037 2024-06-09 13:16:18 +02:00
Colleague Riley
8c712f82d1
Update RGFW (#4048)
* Fix Makefile issues (RGFW) (linux) (macOS)

* Do not use nanosleep on windows at all (PLATFORM_DESKTOP_RGFW)

* remove #define RGFWDEF and make the #undefs only happen for their OS

* Update RGFW.h

* fix to match the RGFW updates

* remove line that shows the cursor for no reason
2024-06-08 22:26:46 +02:00
jgabaut
f05316b11d
[rlgl] Rename near, far variables (#4039) 2024-06-06 15:29:15 +02:00
Ray
38018192b8 RENAME: near, far vaiables 2024-06-06 10:12:23 +02:00
Ray
5767c4cd05 Update rcore_desktop.c 2024-06-04 23:00:12 +02:00
Paul Melis
e1379afb01
Fix #4024, cylinder drawing was incorrect due to imprecise angle (#4034)
* Fix #4024, cylinder drawing was incorrect due to imprecise angle
stepping (mostly noticeable with semi-transparent cylinders)

* Fix var name and spacing
2024-06-04 11:46:57 +02:00
IoIxD
39f12859dc
rtext: added functions for camel case and snake case (reopened due to formatting errors) (#4033)
* rtext: added functions for camel case and snake case

* Update raylib_api.* by CI

* rtext: removed always false comparison

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-06-03 20:13:28 +02:00
Jett
06f8c4f733
LoadIQM: attempt to load texture from IQM at loadtime. (#4029)
tries to load the texture with the base path of the original IQM file, relative paths should work.
2024-06-03 09:03:33 +02:00
David Holland
11202bf299
[rmodels] Send full matModel to shader in DrawMesh (#4005) (#4022) 2024-06-02 11:52:00 +02:00
Jett
2998f8671b
LoadModelAnimationsIQM: fix corrupted animation names (#4026)
Correctly copies animation names from IQM animation to raylib animation.
2024-06-02 11:51:25 +02:00
kai-z99
606cc1d897
[rshapes]Circle line collision function (#4018)
* inital function

* working 1

* optimize

* optimized dot product

* simplify

* cleanup

* cleanup

* cleanup

* comment

* var name change

* epsilon
2024-05-30 08:24:44 +02:00
vaezim
d7a8af144d
Fix typos in markdowns and comments, Fix invalid links in HISTORY.md (#4017) 2024-05-30 08:22:07 +02:00
Le Juez Victor
f2344cd089
review color tint functions (#4015) 2024-05-29 23:44:20 +02:00
Ray
c04629f6d4 Update raylib.h 2024-05-29 17:38:19 +02:00
Ray
e37d19ab1e REVIEWED: ExportFontAsCode(), avoid const #4013 2024-05-29 17:28:55 +02:00
DarkAssassin23
2804e75869
[rtext] Added cast to ExportFontAsCode output to fix C++ compiler errors (#4013) 2024-05-29 17:22:59 +02:00
Dylan
2e38069475
[build.zig] Fix Zig emscripten build (#4012)
* Fix for issue #4010

Split the code for Zig's master branch and >= 0.12.0 due to changes in https://github.com/ziglang/zig/pull/19623

* Restore the cache_include path which was removed in error

Accidently removed a couple lines I didn't mean to 🙈
2024-05-29 17:07:28 +02:00
Ray
c335c3c52c ADDED: IsFileNameValid() 2024-05-29 17:01:42 +02:00
Le Juez Victor
797de0f9ad
[rmodels] Multiplication of colors in DrawModelEx which can be simplified (#4002)
* simplifies color multiplication `DrawModelEx`

* add explicit casts
2024-05-29 13:16:19 +02:00
listeria
b429dbdc4b
fix WaveCrop(): update wave->frameCount (#4003)
also allow `finalFrame = wave->frameCount' as the range of frames does
not include it.

Co-authored-by: Listeria monocytogenes <listeria@disroot.org>
2024-05-24 18:24:40 +02:00
Ray
b212750b85 Update rcore_desktop_sdl.c 2024-05-21 20:53:51 +02:00
Ray
3abb6d9eaf REVIEWED: ColorToInt() PR 2024-05-21 20:52:48 +02:00
JupiterRider
c7f098f4d2
Call SDL_GL_SetSwapInterval() after GL context creation (#3997) 2024-05-21 20:48:48 +02:00
OetkenPurveyorOfCode
9ef29aff9a
[rtextures] Fix Undefined behaviour in ColorToInt (#3996) 2024-05-21 15:44:02 +02:00
Salvador Galindo
c4a51a3ebd
fixed out of bounds error in GenMeshTangents (#3990) 2024-05-21 13:47:26 +02:00
listeria
bb9bd73f43
fix WaveCrop() and use frames instead of samples (#3994)
Co-authored-by: Listeria monocytogenes <listeria@disroot.org>
2024-05-21 08:13:46 +02:00
Ray
9d67f4734b REVIEWED: LoadBMFont(), issue on not glyph data initialized 2024-05-18 07:41:37 +02:00
Ray
00ac9b6c53 Update config.h 2024-05-18 07:40:59 +02:00
FishingHacks
3d70d6179c
[raudio] Removed drwav_uninit in LoadMusicStream to fix a crash (#3986) 2024-05-16 19:47:39 +02:00
Cemal Gönültaş
1d52985943
[rcore_web] Relative mouse mode issues. (#3940)
* [rcore_web] Relative mouse mode issues.

* Review formatting.
2024-05-16 12:01:27 +02:00
Jeffery Myers
f26bfa0c8e
[RAYMATH] Revert Extern 'C' in raymath (#3985)
* Update raylib_api.* by CI

* Remove Extern C for raymath, it breaks some cases in mingw-w64 and does not fix any warning issues.

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-05-16 07:42:52 +02:00
CosmicBagel
d6b22b17ae
LazyPath.path has been deprecated, using b.path() (#3983)
This works in zig 0.12, LazyPath.path has been removed in zig 0.13

Co-authored-by: CosmicBagel <>
2024-05-15 23:20:34 +02:00
Jeffery Myers
3d885ef919
[raymath] Add extern "C" to raymath header for C++ (#3978)
* Update raylib_api.* by CI

* Add an extern C to raymath to prevent warnings in C++

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-05-13 00:36:23 +02:00
Alexei Mozaidze
f4b5622ba3
feat(zig): add opengl_version option (#3979)
Added `opengl_version` option to `src/build.zig`.
2024-05-13 00:27:02 +02:00
Ray
7a1cad3e61 Reviewed input params #3974 2024-05-12 13:31:38 +02:00
Colleague Riley
f62202198e
remove #define RGFWDEF and make the #undefs only happen for their OS (RGFW) (#3971)
* Fix Makefile issues (RGFW) (linux) (macOS)

* Do not use nanosleep on windows at all (PLATFORM_DESKTOP_RGFW)

* remove #define RGFWDEF and make the #undefs only happen for their OS
2024-05-10 21:09:22 +02:00
Colleague Riley
8a5fd3ac1d
Do not use "nanosleep" on windows at all (PLATFORM_DESKTOP_RGFW) (#3970)
* Fix Makefile issues (RGFW) (linux) (macOS)

* Do not use nanosleep on windows at all (PLATFORM_DESKTOP_RGFW)

---------

Co-authored-by: ColleagueRiley <ColleagueRiley@gmail.com>
2024-05-09 16:35:26 +02:00
Colleague Riley
6ec925554c
Fix Makefile issues (RGFW) (linux) (macOS) (#3969)
Co-authored-by: ColleagueRiley <ColleagueRiley@gmail.com>
2024-05-09 14:18:18 +02:00
veins1
1aa3559155
Fixes for loading Music (#3966)
* Fixes for loading Music

Fix for #3889
Fixes for QOA crashes.
Memory leak FIX on unsuccessful .wav loading.

* Added comments
2024-05-07 20:44:41 +02:00
Colleague Riley
9805fe0b1a
make RGFW a custom platform (#3941)
* fix minor bugs and errors (x86) for the RGFW platform, update RGFW platform license, update makefile info for RGFW platform

* revert

* (RGFW) (winapi) fix mouse hide bug when cursor changes

* ensure PLATFORM_SHELL is defined (PLATFORM_RGFW)

---------

Co-authored-by: ColleagueRiley <ColleagueRiley@gmail.com>
2024-05-07 20:30:52 +02:00
gabriel-marques
fa2b1c8f09
Implementing GetMonitorWidth/Height for DRM (#3956)
* Implementing GetMonitorWidth/Height and GetMonitorPhysicalWidth/Height for drm

Added implementation for DRM for functions :
 - GetMonitorWidth()
 - GetMonitorHeight()
 - GetMonitorPhysicalWidth()
 - GetMonitorPhysicalHeight()
 - GetMonnitorName()

These functions take an argument but only the value 0 is accepted. This is because the DRM platform implementation manages only one screen for now

* Refactor "GetMonitor" properties for DRM Platform

Refactored GetMonitorHeight, GetMonitorWidth, GetMonitorPhysicalHeight,
GetMonitorPhysicalWidth and GetMonitorName to accept only argument "0"
as more than one screen is not supported in DRM platform.
2024-05-07 10:33:56 +02:00
Christian Haas
3d9aafed3b
[rcore_desktop] Fix 3693 initial window geometry (#3950)
* Rework window placement and dimensions for multi-monitor setups;

- fullscreen apps use primary monitor, exclusively
- non-fullscreen apps come in two variants:
a) pre-determined window size by user
b) use-active-monitor dimensions by user specifying 0x0
Either way, the window shall be centred at the monitor where it was created

This may have been the original intent, yet the primary monitor was used also for the second case, regardless where the window opened.

* Clean up code, handle error, fix integer-overflow for centering windowed fullscreen
2024-05-05 20:22:58 +02:00
bohonghuang
23385231c6
[rlgl] Fix incorrect matrix multiplication order in rlMultMatrixf (#3935) 2024-05-05 20:19:25 +02:00
Ray
34d00d5217 Minor formatting tweaks 2024-05-05 19:46:31 +02:00
Ray
f1007554a0 Set default init values for random #3954 2024-05-01 22:58:33 +02:00
Ray
33b32ca53a Default shader attrib locations need to be exposed
They need to be exposed on `rlgl.h` header section (not implementation section) because with some specific use cases (custom config.h, rmodels module enabled), building fails otherwise.
2024-05-01 18:41:28 +02:00
Ray
c21edadab0 Update rprand.h 2024-05-01 18:39:38 +02:00
Ray
763129e96b Reviewed some warnings 2024-05-01 18:12:57 +02:00
UmgefallenesGlas
7246d798ad
Changed one minor Comment (#3949) 2024-04-30 23:47:11 +02:00
Ray
b03c8ba945 WARNING: BREAKING: REDESIGN: SetTextLineSpacing()
Redesigned function to only consider separation between the end of vertical size of one line and the beginning of next line
2024-04-28 23:07:21 +02:00
Ray
e0027eb767 REVIEWED: DrawLine() to avoid pixel rounding issues #3931 2024-04-28 22:59:35 +02:00
Tomas Fabrizio Orsi
80d318461f
Made comments on raylib.h match those present in rcamera.h (#3942)
Signed-off-by: Tomas Fabrizio Orsi <torsi@fi.uba.ar>
2024-04-28 22:39:28 +02:00
OetkenPurveyorOfCode
f78721991f
Use builtin_clz for clang on windows (#3939) 2024-04-28 20:29:45 +02:00
Tomas Fabrizio Orsi
10e702facd
FIX: Added CAMERA_CUSTOM check in UpdateCamera(Camera *camera, int mode) (#3938)
Signed-off-by: Tomas Fabrizio Orsi <torsi@fi.uba.ar>
2024-04-28 20:28:19 +02:00
Ray
e47ebec661 FIX: Issue with texcoords loading for glTF 2024-04-24 17:02:03 +02:00
Ray
2e77443209 WARNING: Fix breaking issue (introduced some days ago) 2024-04-23 22:55:51 +02:00
Ray
f15455552d Review formatting 2024-04-23 19:38:45 +02:00
KotzaBoss
4b0e25d3af
Add rlCullDistance variables/getters and rlSetClipPlanes function (#3912)
The `RL_CULL_DISTANCE_` definition remains as the initial value
of the variables.

Basic usage can be:
```c
#include <raylib.h>
#include <rlgl.h>

rlSetClipPlanes(RL_CULL_DISTANCE_NEAR, MY_CULL_DISTANCE_FAR);

if (must_reset_clip_planes)
    rlSetClipPlanes(RL_CULL_DISTANCE_NEAR, RL_CULL_DISTANCE_FAR);
```
2024-04-23 14:24:37 +02:00
bohonghuang
d80febde7d
[rlgl] Implement vertex normals for RLGL immediate drawing mode (#3866)
* Fix several non-functional `target_compile_definitions`

* Avoid hardcoding the default vertex attribute locations

* Implement functional `rlNormal3f`

* Add normal definitions for `DrawCube`

* Update the basic lighting example to use `DrawCube` and `DrawPlane`
2024-04-23 14:22:29 +02:00
freakmangd
e0f6faa151
[build.zig] Drop support for 0.11.0 and use more idiomatic build script code (#3927)
* Remove support for 0.11.0, and make build script more idiomatic
+ remove all 0.11.0 compatibility functions
+ remove most LazyPath .path variants
  + I didn't touch emscripten, I don't know if its relative or absolute
+ change all absolute paths to use .cwd_relative
+ only use the builder allocator
+ have local dependencies use the package manager
+ make adding raygui more flexible
+ use zig-cache for generated wayland files

* Remove support for 0.11.0 in examples/build.zig

* update examples further and add clarifying comment on addRaygui
2024-04-22 09:13:01 +02:00
Ray
3caa424ad4 Review formatting 2024-04-21 12:29:09 +02:00
Ray
cf47fbb20b REVIEWED: LoadImageRaw() #3926 2024-04-20 23:58:22 +02:00
Ray
8f24d86c1f REVIEWED: LoadImageRaw() #3926 2024-04-20 23:44:07 +02:00
Ray
f795941521 REVIEWED: rlSetVertexAttribute(), define last parameter as offset #3800 2024-04-20 23:37:31 +02:00
Ray
5cfcf13d4b REVIEWED: LoadGLTF(), support 2nd texture coordinates loading 2024-04-20 23:23:30 +02:00
Ray
e543b78bb7 REVIEWED: LoadGLTF(), support additional vertex attributes data formats #3890 2024-04-20 22:01:59 +02:00
Ray
6435ef43f5 REVIEWED: LoadGLTF(), JOINTS loading #3836
Support all JOINT formats supported by glTF specs
2024-04-20 21:22:49 +02:00
Ray
e85f245ad4 REVIEWED: Remove final punctuation in code comments 2024-04-20 20:31:06 +02:00
Ray
c1943f0f7c REVIEWED: Move some functions, made them static 2024-04-20 20:30:35 +02:00
Christian Haas
d80a622972
[raudio] Fix 3664: crash in raudio from multithreading issues (#3907)
* Flip release of buffer;

First it needs to be taken out of the processing chain, then it can be released. The inverse of the initialization.

* Add mutex locks to audio buffer functions; Separate those used from both threads

* Flip release of buffer;

First it needs to be taken out of the processing chain, then it can be released. The inverse of the initialization.

* Remove TODO marker; The buffer is in stopped state and its data won't be accessed

* Add mutex locks to music/stream functions directly operating on buffer

* Secure UpdateMusicStream/PlayMusicStream/UpdateAudioStream;

This change is twofold:
* Add locks to UpdateMusicStream/UpdateAudioStream (second one needed separation)
* Remove unnecessary hack to restart music - inlining the statements resulted in a no-op

Especially the second part made it easier to ensure thread-safety overall

* Remove redundant check; Already checked at beginning of function
2024-04-20 20:15:09 +02:00
Ray
41b0c5c4f9 REVIEWED: DrawRectangleLines() pixel offset
This could be actually very tricky and GPU/drivers dependant...
2024-04-20 19:58:10 +02:00
Ray
b51f4db8c2 REVIEWED: DrawRectangleLines() #3884
For consistency, now _almost_ all `Draw*Lines()` functions use `RL_LINES` mode for drawing. It solves the linked issue but it can have other implications, as mentioned in the WARNING comment in `DrawRectangleLines()`.

Side note: `DrawRectangleRoundedLines()` now should be reviewed for consistency.
2024-04-20 19:53:59 +02:00
Ray
29ce13b777 Code gardening
- Review formatting
 - Improve readability for some functions result return
 - Minimize early returns
 - Align LoadFileData() to UnloadFileData()
2024-04-20 13:53:13 +02:00
Ray
2754c80596 Added security checks #3924 2024-04-20 13:50:34 +02:00
Ray
a17a81f05b Review code formating 2024-04-19 21:13:52 +02:00
Ray
51486a0606 Update rtext.c 2024-04-19 21:13:36 +02:00
Ray
b88365fb01 Disable some font formats support 2024-04-19 21:13:28 +02:00
Rafael Bordoni
88f7762921
Fix window not initializing on primary monitor on GLFW backend (#3923)
The way the current code worked was by calling `GetCurrentMonitor()`,
which would always return the monitor at position (0,0). This isn't the
primary monitor on all platforms, on Linux in particular it isn't the
case.

This isn't the case on the SDL backend, after calling `InitWindow()` the
window would always show up on the primary monitor. Even on the GLFW
backend, if the full screen flag was set it would attempt to put it on
the primary monitor as it would call `glfwGetPrimaryMonitor()` to do it,
so for consistency's sake we should do it on windowed mode too.
2024-04-19 15:17:22 +02:00
Benji
4491ff0426
Replaced SQUAD quat interpolation with cubic hermite to align with gltf 2.0 spec (#3920) 2024-04-17 08:10:48 +02:00
Arthur
e42f9263b8
Fix GetKeyPressed for PLATFORM_DESKTOP_SDL (#3869)
The key handling in PLATFORM_DESKTOP_SDL was faulty in two ways, which
led to GetKeyPressed returning incorrect data.

CORE.Input.Keyboard.keyPressedQueue was updated only on SDL_TEXTINPUT,
meaning only text characters were registered as a pressed key, but not
function keys (eg. tab, backspace...). Also on such event, both
CORE.Input.Keyboard.keyPressedQueue and
CORE.Input.Keyboard.charPressedQueue were assigned the key's
corresponding codepoint, when CORE.Input.Keyboard.keyPressedQueue
should get the raylib keycode instead.

CORE.Input.Keyboard.keyPressedQueue is now updated on SDL_KEYDOWN event
instead.

Co-authored-by: Arthur <hi@thenightwat.ch>
2024-04-15 23:09:20 +02:00
Benji
4e37c8e370
Added missing interpolation types for GLTF animation channels (#3919) 2024-04-15 23:08:09 +02:00
veins1
289e7d3a6c
Reset music.ctxType if loading wasn't succesful (#3917)
Fixes some crashes, e.g. calling StopMusicStream after trying to load Music from a non-existant .mp3 file
2024-04-14 00:15:50 +02:00
Dylan
583f81f458
Fix FileNotFound: .../src/raylib.h (#3915) 2024-04-13 23:35:23 +02:00
freakmangd
ba2a103011
[build.zig] Fix local dependency breakage (#3913)
* fix local dependency breakage

* revert accidental change in include path
2024-04-13 23:34:14 +02:00
Mute
214b1997a8
Changed RLGL_VERSION from "4.5" to "5.0 (#3914)
Line 110 of file rlgl.h is the one in question.
2024-04-13 23:33:21 +02:00
freakmangd
b3dfa2d8ab
Update to latest zig and simplify build.zig (#3905)
* update to latest zig, and don't use srcdir

* preserve compatibility, simplify Child.run compatibility
2024-04-10 10:36:18 +02:00
Aria
a1f5e34d81
Update rcore_android.c (#3910)
add gamepad previous button state tracking to Android
2024-04-10 10:34:05 +02:00
Ray
04afba260f REVIEWED: Window positioning, avoid out-of-screen window-bar 2024-04-08 11:27:56 +02:00
Ray
aca9ab0ebb Update cgltf.h 2024-04-07 09:47:28 +02:00
jtainer
1b14c082ed
Remove redundant axis length calculation (#3900) 2024-04-06 13:56:20 +02:00
iarkn
414229bcf9
Fix #3891 breaking builds for Zig v0.11.0 (#3896)
The changes brought by #3891 uses `std.process.Child.run` which was
renamed from `std.process.Child.exec` in Zig version 0.11.0. This commit
adds a version check to use the appropriate function names.

Additionally, the `linux_display_backend` configuration option is added
so users can set it when running `zig build` with the `-D` option or
when using raylib as a dependency.
2024-04-05 12:55:23 +02:00
Ray
890058abcd Update raylib.h 2024-04-04 13:18:28 +02:00
Ray
d30cfea82d REVIEWED: GetScreenToWorldRayEx() 2024-04-03 20:10:15 +02:00
Rob Loach
9070eb9a13
Fix framerate recording for .gifs (#3894) 2024-04-03 12:10:52 +02:00
Ray
c9d71689ed Remove TABS 2024-04-02 09:40:19 +02:00
Ray
646d70e93a Remove trailing spaces 2024-04-02 09:38:06 +02:00
Ray
fdf9ac66da Merge branch 'master' of https://github.com/raysan5/raylib 2024-04-01 18:01:02 +02:00
Ray
3b353da3ab Address parsing issue when generating XML #3893 2024-04-01 18:00:52 +02:00
Nikolas Mauropoulos
d374457040
Fixes zig build that was broken on #3863 (#3891)
* Fixes zig build that was broken on #3863

* Make this work with wayland
2024-03-30 19:36:30 +01:00
MrMugame
eda239cc97
Fixing gamepad buttons not working in drm backend (#3888)
* Fixing gamepad buttons in drm backend

* Remove trailing spaces

* Axis enumeration now works properly
2024-03-29 01:40:20 +01:00
Ray
07128896af Update rcore_drm.c 2024-03-28 19:55:55 +01:00
MrMugame
30781c423b
Organizing the drm backend to only use one api to allow for more devices (#3879)
* Updating rcore_drm.c to only use one api for input

* Change RPI log prefix to DRM

* Remove relative checking which is not supported currently

* Loop should continue on invalid event in drm backend

* Fixed and cleaned up PollKeyboardEvents() in drm backend
2024-03-28 13:14:21 +01:00
proberge-dev
b905dafca0
[rtextures] Fix LoadImageFromScreen scaling (#3881) 2024-03-26 08:47:25 +01:00
Ray
35252fceef Merge branch 'master' of https://github.com/raysan5/raylib 2024-03-21 15:43:08 +01:00
Ray
dcb9db5fe6 Update rcore.c 2024-03-21 15:43:00 +01:00
Kacper Zybała
9cf408f77c
Remove redundant rlDisableVertexAttribute for SHADER_LOC_VERTEX_COLOR (#3871) 2024-03-18 18:37:09 +01:00
Ray
28c232d856 Update rcore_desktop.c 2024-03-18 09:13:34 +01:00
Jeffery Myers
9bb3d9977a
Put GLFW in relative mouse mode when the cursor is disabled. (#3874) 2024-03-18 09:12:36 +01:00
Ray
d7ff0175c1 Fix #3876 and also rlgl review on #3783 2024-03-18 09:09:26 +01:00
Ray
8b0dd44316 Fix #3876 and also rlgl review on #3783 2024-03-18 09:08:51 +01:00
Alexandre Almeida
9a8d73e6c3
Fix GLFW runtime platform detection (#3863)
* Fix GLFW runtime platform detection

* Add libwayland-dev package to workflows

* Add libxkbcommon-dev package to workflows

* Add libwayland-bin package to codeql.yml

* Add libwayland-client0 and libwayland-cursor0 packages to codeql.yml

* Use libwayland-dev in codeql.yml

* Add libxkbcommon-dev to codeql.yml

* Remove libwayland-bin from linux.yml and linux_examples.yml (libwayland-dev includes it as a dependency)

---------

Co-authored-by: Ray <raysan5@gmail.com>
2024-03-14 16:54:39 +01:00
Peter0x44
f072497551
Implement IsCursorOnScreen for PLATFORM_DESKTOP_SDL (#3862)
I did some testing and this seems to work okay, but it *is* different to
GLFW. GLFW seems to lose "IsCursorOnScreen" for one frame upon pressing
alt+tab over the window, without a different window covering it. SDL
seems to have a more reasonable behavior for this case. Either way it's
an edge case and I don't know the exact way to fix, likely requires
internal GLFW changes.
2024-03-09 11:43:29 +01:00
Ray
30604080ef Update rmodels.c 2024-03-07 12:33:45 +01:00
Ray
93a828f744 REVIEWED: GetMouseRay() functions rename #3830 2024-03-07 12:33:37 +01:00
aiafrasinei
3b7be85151
Screen space related functions consistency (#3830)
* Screen/world-space related functions rename

* Update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-03-07 12:28:11 +01:00
Ray
c1c9b69290 Implemented fix for #3859 2024-03-07 12:10:26 +01:00
Ray
1904873838 Merge branch 'master' of https://github.com/raysan5/raylib 2024-03-07 12:10:18 +01:00
Ray
68b553cfc1 Update raylib.h 2024-03-07 12:10:02 +01:00
Caleb Barger
25caf14be8
Fix fix-build-paths (#3849) 2024-03-01 12:43:19 +01:00
Alexandre Almeida
dc1cec8bab
Remove GLFW mouse passthrough hack and increase GLFW version in CMake (#3852) 2024-03-01 08:34:53 +01:00
Ray
fea3395fc1 Review formatting 2024-02-29 18:50:44 +01:00
Ray
1e8450665c ADDED: New function ColorIsEqual() 2024-02-29 18:40:10 +01:00
mooff
94c79917e3
Fix SDL multitouch tracking (#3810)
The fingerId from SDL was used as an index into the CORE.Input.Touch
arrays, but it's an opaque / arbitrary int64, way bigger
than MAX_TOUCH_POINTS, so the first non-simulated touch event would segfault.
2024-02-29 18:30:38 +01:00
Alexandre Almeida
6589311a0b
Update GLFW to 3.4 (#3827)
* Update GLFW to 3.4 (draft)

* Add _glfwConnectNull() function to rglfw.c

* Update rglfw.c

* Update Makefile

* Makefile: Replace USE_WAYLAND_DISPLAY with DISABLE_WAYLAND

* Revert "Makefile: Replace USE_WAYLAND_DISPLAY with DISABLE_WAYLAND"

This reverts commit 9e79abde78.

* GlfwImport.cmake: Replace GLFW_USE_WAYLAND with GLFW_BUILD_WAYLAND

* Update rglfw.c

* Output platform selected by GLFW to TRACELOG

* GLFW has removed Mir support
2024-02-29 18:29:32 +01:00
johann nadalutti
53221eb799
feat: vox_loader normals and new voxels shader (#3843) 2024-02-29 18:28:51 +01:00
Ray
ed9a6d862b Update rtextures.c 2024-02-28 16:27:55 +01:00
Laurentino Luna
f0807d2be1
Change sanitization check for ExportDataAsCode (#3837)
* Change sanitization check for `ExportDataAsCode`

I opted to use `isalnum` function since it should handle most cases. It
cannot however handle cases of files beginning with numbers.

* Update `ExportDataAsCode` condition

* Reinsert comment on `ExportDataAsCode`
2024-02-27 13:08:47 +01:00
Steve Biedermann
1fc4f4ac9c
fix build paths (#3835) 2024-02-26 11:20:18 +01:00
Ray
a6425fa1b9 Added note #3822 2024-02-26 11:03:09 +01:00
Ray
7d6e59170b Update rtextures.c 2024-02-26 10:49:04 +01:00
Gary M
bd6c0bab44
add 16-bit unsigned short vec4 format for gltf joint loading (#3821) 2024-02-26 10:48:19 +01:00
Bowserinator
d919d457d3
Add Vector4 math functions & Vector2 variants of some Vector3 functions (#3828) 2024-02-26 10:41:21 +01:00
Gary M
53cfc7c965
assign format to cubemap (#3823) 2024-02-26 10:26:39 +01:00
4rk
c588a291e6
Add very little sanitization to indentifier names in ExportDataAsCode() (#3832) 2024-02-26 10:22:06 +01:00
GideonSerf
371d25c8c9
Gamepad rumble support with SDL2 (#3819)
* Added gamepad rumble to rcore_desktop.c and rcore_desktop_sdl.c
Still need to add to the rest of the platforms.

* Add SetGamepadVibration warnings to unimplemented platforms.

* Added MAX_GAMEPAD_VIBRATION_TIME
The rumble in SDL2 will continue for MAX_GAMEPAD_VIBRATION_TIME unless the user cancels it with a call to SetGamepadVibration(0.0f,0.0f,0.0f)

* Cast float duration value to Uint 32

* Changed defines from int to float and fixed typo

---------

Co-authored-by: Gideon Serfontein <gse@newspacesystems.com>
2024-02-24 16:47:27 +01:00
Peter0x44
31c6a340ab
Remove all uses of deps/mingw (#3805)
The purpose of this directory in GLFW is to provide some headers that
"mingw.org" doesn't. Raylib has long been unable to build with mingw.org
due to using certain symbols that aren't exposed in their headers.
(_ftelli64 and _access, among others.). Mingw-w64 already has the
necessary headers included, and doesn't need any of these external
implementations. For some reason, this also causes the following error
when building with Visual Studio's clang:

clang  -c rglfw.c -Wall -D_GNU_SOURCE -DPLATFORM_DESKTOP -DGRAPHICS_API_OPENGL_33 -Wno-missing-braces -Werror=pointer-arith -fno-strict-aliasing  -std=c99 -O1 -Werror=implicit-function-declaration -I. -Iexternal/glfw/include -Iexternal/glfw/deps/mingw
In file included from rglfw.c:61:
In file included from ./external/glfw/src/init.c:30:
In file included from ./external/glfw/src/internal.h:331:
In file included from ./external/glfw/src/platform.h:31:
In file included from ./external/glfw/src/win32_platform.h:70:
external/glfw/deps/mingw\xinput.h:227:26: error: a parameter list without types is only allowed in a function definition
  227 | void WINAPI XInputEnable(WINBOOL);
      |

If the last -Iexternal/glfw/deps/mingw is removed, the build works fine.

So, this workaround causes other problems, while not actually helping
raylib.

0bb605cd79/src/CMakeLists.txt (L272-L279)

GLFW's CMakeLists.txt first checks if either dinput.h or xinput.h are
provided by the toolchain, before telling the compiler to search for
headers in that directory. For EVERY compiler that can build raylib,
this is true.

In summary: This directory causes issues when building with some
compilers, and every toolchain that needs this workaround can't build
raylib anyway.
2024-02-22 23:06:22 +01:00
Nikita Blizniuk
54e0af40c1
fixed loading GLTF animations with 1 frame (#3804) 2024-02-19 18:51:04 +01:00
Ray
e42e3188f5 Remove some unneeded line breaks 2024-02-18 11:59:40 +01:00
João Foscarini
c251e9309e
Fix implicit conversion from float to double then back to float again (#3799) 2024-02-17 10:41:03 +01:00
Ray
401c5a8638 Minor tweaks to avoid some CodeQL warnings 2024-02-13 15:58:02 +01:00
Ray
bb741f53a8 Update rtext.c 2024-02-13 10:43:24 +01:00
Mingjie Shen
6280771dad
[rtext] Change strcpy to strncpy to fix buffer overflow (#3795) 2024-02-13 10:38:13 +01:00
Jeffery Myers
4cd71a9750
Fix warnings in raylib (#3793) 2024-02-10 20:02:05 +01:00
Ray
dd8b5613ca REVIEWED: DrawPixel() not drawing 2024-02-08 08:45:59 +01:00
Ray
e52ae870f2 Reverted Makefile GL_ENABLE_GET_PROC_ADDRESS #3713 2024-02-05 21:38:13 +01:00
Ray
ea31bd47e5 REVIEWED: PLATFORM_WEB build flags, added GL_ENABLE_GET_PROC_ADDRESS
Reviewed flags formating
2024-02-05 21:12:57 +01:00
Danil
6a8cc62b67
Fix GetCameraRight (#3784) 2024-02-05 20:53:14 +01:00
Ray
e9291fa4c7 Update rtext.c 2024-02-04 22:50:54 +01:00
Ray
615ee9d177 REVIEWED: rlLoadFramebuffer() 2024-02-04 12:13:56 +01:00
Ray
80580746e5 Reorder functions 2024-02-04 12:02:58 +01:00
Ray
d34956b197 Merge branch 'master' of https://github.com/raysan5/raylib 2024-02-04 11:53:04 +01:00
Ray
c31559101a REVIEWED: rlLoadFramebuffer(), parameters not required 2024-02-04 11:52:49 +01:00
Luís Almeida
9a5dddc311
Added viewport independent raycast (#3709)
* added viewport independent raycast

* Renamed GetMouseRayEx to GetViewRay
2024-02-04 11:37:10 +01:00
Ray
f033b30703 Review formating and some defines naming consistency 2024-02-04 11:33:38 +01:00
oblerion
d91e9104aa
[rcore] Fix GetFileNameWithoutExt() (#3771)
* Update rcore.c

fix [rcore] GetFileNameWithoutExt

* Update rcore.c

* Update rcore.c

* Update rcore.c

* Update rcore.c

* Update rcore.c

* Update rcore.c

* Update rcore.c

* Update rcore.c

* Update rcore.c

* Update rcore.c

* Update rcore.c
2024-02-04 11:28:58 +01:00
A
a96b224b38
Add gamepad support to PLATFORM_DESKTOP_SDL (#3776)
Co-authored-by: Arthur <hi@thenightwat.ch>
2024-02-04 11:24:05 +01:00
Ray
868d515fbc Update rtext.c 2024-02-04 11:18:46 +01:00
Ray
eed56a45d6 REVIEWED: LoadFontDataBDF() name and formating 2024-02-04 11:10:46 +01:00
Stanley Fuller
0932cd3059
[rtext] Add BDF font support (#3735)
* Add BDF font support

* Include font ascent in glyph y-offset when loading BDF font
2024-02-03 19:28:12 +01:00
IoIxD
7ec43022c1
Fix segfault in ExportWaveAsCode (#3769)
`char *txtData = (char *)RL_CALLOC(waveDataSize * 6 + 2000, sizeof(char));`

assumes every chunk being added to txtData is 6 bytes. This is not always true, sometimes a newline is involved and the data becomes 12 bytes instead, and this can cause a random segfault.

This commit changes `6` to `12`, and explains why in the comment.
2024-02-01 21:16:57 +01:00
Marrony Neris
c0b081fac0
Fix MeasureTextEx() height calculation (#3770) 2024-02-01 21:14:22 +01:00
Ray
25306eae42 REVIEWED: Issue on parsing #3765 2024-02-01 00:05:30 +01:00
Ray
d79828076f REVIEWED: macOS issues #3767 2024-02-01 00:03:06 +01:00
Ray
deaffb0698 Review PR #3746 formating 2024-01-29 21:16:17 +01:00
Jeffery Myers
bebf9547bd
[CORE,RLGL] Fix scale issues when ending a mode (#3746)
* Only restore GL scale back to screen scale if we are returning to a screen, not a render texture.

* blankspace

* reset back to default screen scale when ending a render texture since we are back on the default fbo
2024-01-29 21:10:23 +01:00
Brian E
812645b077
cleaned away unused macros in rcamera.h (#3762) 2024-01-28 13:49:07 +01:00
Alessandro Nikolaev
cf10cdd6b3
Added missing "standalone" functions to raudio.c & fixed return bug (#3760)
* Added GetFileNameWithoutExt, GetFileName & strprbrk to raudio.c

* Gave return values to SaveFileData & SaveFileText in raudio.c
2024-01-28 13:46:27 +01:00
veins1
f4add5f10d
Fix rlSetUniformSampler (#3759)
Fix rlSetUniformSampler not setting sampler uniform if the same texture was already passed to a different sampler uniform
2024-01-28 13:45:19 +01:00
Victor Gallet
ff1eeafb95
Fix bug to retrieve material specular map in DrawMesh function, with incorrect index (#3758) 2024-01-23 12:37:54 +01:00
Idir Carlos Aliane
cb97a8063d
[rtext.c] fixing some comments to align comments style (#3756) 2024-01-22 23:15:25 +01:00
Idir Carlos Aliane
6f1c31b25d
Change some minor comments to align with comments style (#3755) 2024-01-22 21:26:18 +01:00
Idir Carlos Aliane
c133fee286
[raymath.h] Small code refactor (#3753)
* [raymath.h] Small refactor to avoid duplicated code

* Fixing some blank spaces to match same syle convention
2024-01-22 19:48:18 +01:00
Brian E
27645e16ab
fixed small typo, replaced th with the (#3752) 2024-01-22 11:36:38 +01:00
Antonio Raúl
ef92ced370
fix CheckCollisionPointPoly (#3750) 2024-01-22 11:35:55 +01:00
Alexandre Almeida
5c25913e09
Fix Android keycode translation and duplicate key constants (#3733)
* Fix Android keycode translation

* Simplify code a bit

* Rename KEYCODE_MAPPED_NUM to KEYCODE_MAP_SIZE

* Fix KEY_R and KEY_MENU duplicate

* Update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-20 21:22:33 +01:00
John
192f7f1b29
[rcore rglfw] Feature Test Macros before include (#3737)
Move/Add Feature Test Macros before any includes.
See: [GNU Feature Test Macros](https://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html)
> You should define these macros by using ‘#define’ preprocessor directives at the top of your source code files. These directives must come before any #include of a system header file. It is best to make them the very first thing in the file, preceded only by comments.

Alternative changes to rcore would be to change _POSIX_C_SOURCE to
200809L, which removes the need to define _XOPEN_SOURCE >= 500.

These changes allow for compilation with -std=c* (such as -std=c99)
without adding -D macros to the build step.

Co-authored-by: JayLCypher <jaylcypher@github.com>
2024-01-20 21:08:19 +01:00
Hongyu Ouyang
0a8165c0ac
Make raylib/raygui work better on touchscreen (#3728)
* Fix that touch doesn't work for click/drag/raygui

* Add comments

* comments update
2024-01-20 21:05:30 +01:00
Ray
c57b8d5a6a REVIEWED: ImageKernelConvolution(), formating and warnings 2024-01-15 20:32:46 +01:00
Blockguy24
d2b1256e5c
Fix bounds check for ImageDrawRectangleRec (#3732) 2024-01-14 11:21:29 +01:00
Ray
cb2572fe07 Avoid asserts because could crash some decompressions https://github.com/raysan5/raygui/issues/364 2024-01-13 16:57:25 +01:00
Karl Zylinski
520c8cffb2
Simplified GetWindowScaleDPI() so it does not fetch the wrong DPI scale some times (Windows looks at center of window while the old raylib code looked on upper left corner of window, now it just uses the glfw function to fetch the window's current scaling). Also introduced a callback to update the CORE.Window.screenScaling when the content scaling updates, previously scaling did not work correctly on systems with multiple monitors that have different DPI scaling. (#3701) 2024-01-13 10:49:04 +01:00
Andrew Lee
b7141d556e
Add shared library build option for build.zig and update to zig 0.12.0-dev.2139 (#3727)
* update build.zig to 0.12.0-dev.2139 and add shared lib option

* add no-sanitize workarounds
2024-01-13 10:46:53 +01:00
kolunmi
9d628d1d49
Enable animation names for the m3d model format. (#3714) 2024-01-11 19:49:25 +01:00
freakmangd
482722d881
Update to latest zig 0.12.0dev while keeping 0.11.0 compatibility (#3715)
* update build.zig for latest zig 0.12.0dev while still allowing 0.11.0

* update examples/build.zig and add nicer message for type mismatch
2024-01-11 19:48:37 +01:00
Lieven Petersen
a820c37ab2
implemented fill color TODO in ImageResizeCanvas() (#3720) 2024-01-11 19:48:14 +01:00
Le Juez Victor
746f129bfe
Fix ImageDrawRectangleRec (#3721) 2024-01-11 19:37:42 +01:00
Hongyu Ouyang
64ba5cb570
Update a comment (#3724) 2024-01-11 19:33:24 +01:00
Tim Romero
2c124c96df
[rtext] Adjust font atlas area calculation so padding area is not underestimated at small font sizes. (#3719) 2024-01-10 21:34:04 +01:00
Alice Nyaa
be0ea89f83
Simplified for loop for some image manip functions (#3712) 2024-01-06 19:41:43 +01:00
Ray
a4dc325a0c Reviewed Makefile SDL2 expected include/lib paths #3705 2024-01-05 22:51:46 +01:00
Ray
b4cb0f3e7d REVIEWED: LoadImageAnimFromMemory() #3704 2024-01-05 22:33:56 +01:00
Ray
e428ec940b Merge branch 'master' of https://github.com/raysan5/raylib 2024-01-05 22:33:22 +01:00
Ray
c95b71d40d Update raudio.c 2024-01-05 22:33:02 +01:00
ubkp
19bdcedf1c
Hide unused warnings from stb_image_resize2.h (#3708) 2024-01-05 22:22:58 +01:00
Ray
3f1e59a7cf Update copyright to 2024 2024-01-02 20:58:12 +01:00
Ray
1f3121d2fa Revert "Update raylib.h"
This reverts commit 7ea6adb29e.
2023-12-28 23:17:07 +01:00
Ray
dde738a2fd Merge branch 'master' of https://github.com/raysan5/raylib 2023-12-28 23:16:57 +01:00
ubkp
fd5e1e6afb
[rtextures] Fix LoadImageAnimFromMemory() warning for fileData (#3686)
* Fix LoadImageAnimFromMemory() warning for fileData

* Add LoadImageAnimFromMemory() to raylib.h

* Fix missing ; on previous commit
2023-12-28 23:15:04 +01:00
ubkp
5b5a2d035d
Fix TextReplace warning for const (#3687) 2023-12-28 23:13:47 +01:00
Ray
7ea6adb29e Update raylib.h 2023-12-28 22:10:10 +01:00
IoIxD
3fc43c1096
LoadImageAnimFromMemory (#3681) 2023-12-28 20:12:52 +01:00
maverikou
7cfdf33ff0
TextReplace const correctness (#3678)
* TextReplace const correctness

* cleanup
2023-12-28 20:09:49 +01:00
ubkp
43b4f90eb7
Fix SUPPORT_WINMM_HIGHRES_TIMER for PLATFORM_DESKTOP_SDL (#3679) 2023-12-28 20:08:04 +01:00
WisonYe
1727ddb9ea
[ fix-crash-caused-by-zig-build ] - Fixed 'Illegal instruction' crash on 'rtextures' and 'raudio' model that caused by zig build. (#3682) 2023-12-28 15:41:33 +01:00
Jeffery Myers
ad64a43b34
[rshapes] Expose shapes drawing texture and rectangle (#3677)
* provide access to the shape texture so that shapes can be extended outside of raylib with the same optimizations as internal raylib functions.

* PR feedback, comply with C standards

* oops
2023-12-28 15:40:03 +01:00
Ray
e039a221a3 Review formating 2023-12-23 14:07:45 +01:00
Antonis Geralis
7ca95512d8
Review UnloadAutomationEventList (#3658)
* Review UnloadAutomationEventList

* Update raylib.h

* Update rcore.c

* Update core_automation_events.c

* Fix mistake
2023-12-23 12:14:39 +01:00
Ray
efe3510a9a REVIEWED: SDL text input to Unicode codepoints #3650
REVIEWED: GLFW naming conventions to reflect codepoints reading
2023-12-23 12:04:19 +01:00
Ray
1792bce292 REVIEWED: LoadTextureCubemap(), added mipmaps #3665 2023-12-23 11:26:23 +01:00
Ray
68b6c79c3f Update rlgl.h 2023-12-20 01:03:52 +01:00
Ray
2fe68a8a12 REVIEWED PR deferred render 2023-12-20 00:51:51 +01:00
Jett
e71153258b
fix for deferred rendering example. (#3655)
* fix for deferred rendering example.

* missed defines to build.
2023-12-20 00:27:59 +01:00
Cinghy Creations
57a5ebe6c6
Don't use a separate thread when polling for gamepad events on DRM platforms (#3641) 2023-12-19 10:47:04 +01:00
kolunmi
8b5943d930
[rmodels] Set cgltf callbacks to use LoadFileData() and UnloadFileData() (#3652) 2023-12-19 10:38:57 +01:00
ubkp
9fcfc8d64b
[rcore] Fix ShowCursor(), HideCursor() and review SetMouseCursor() for PLATFORM_WEB (#3647)
* Fix ShowCursor(), HideCursor() and review SetMouseCursor() for PLATFORM_WEB

* Add static to cursorLUT[]

* Re-review SetMouseCursor()
2023-12-17 13:46:21 +01:00
ubkp
2487174b48
Fix CORE.Input.Mouse.cursorHidden with callbacks for PLATFORM_WEB (#3644) 2023-12-16 18:25:55 +01:00
ubkp
0df78d4eeb
Fix fullscreen known issue 1 for PLATFORM_WEB (#3642) 2023-12-16 18:22:02 +01:00
Ray
f3adde8bbd REVIEWED: DrawSplineLinear() to SUPPORT_SPLINE_MITERS 2023-12-15 18:40:19 +01:00
Toctave
0fc1765ff3
Implement miters in DrawSplineLinear (#3585)
* Implement miters in DrawSplineLinear

* Follow raylib style
2023-12-15 18:34:34 +01:00
Dongkun Lee
9de79861ea
BM Font Extender (#3536)
* loadbmfont

* bmfontextender

* bm font

* Modify LoadBM Font

* Delete loadbmfontex.diff

* REVIEWED: `LoadBMFont()` PR

* Update rtext.c

* Update rtext.c

---------

Co-authored-by: Dongkun Lee <hope81dklee@outlook.com>
Co-authored-by: Ray <raysan5@gmail.com>
2023-12-15 18:32:01 +01:00
ubkp
e001f7e75e
Add ToggleFullscreen() and required changes for PLATFORM_WEB (#3634) 2023-12-15 17:36:27 +01:00
ubkp
489f0b93f9
[rcore] Add GetWindowPosition() implementation for PLATFORM_WEB and fixes #3636 style/format (#3637)
* Add GetWindowPosition() implementation for PLATFORM_WEB and fixes #3636 style/format

* Remove double space
2023-12-15 16:24:45 +01:00
ubkp
10c82595b0
Add GetMonitorWidth() and GetMonitorHeight() implementations for PLATFORM_WEB (#3636) 2023-12-14 20:55:33 +01:00
Ray
38626dcffd REVIEWED: HighDPI support on Web platform #3372 -WIP-
NOTE: The code is commented until the build system gets updated to latest emscripten.
2023-12-14 15:32:53 +01:00
Ray
d29b36310f Merge branch 'master' of https://github.com/raysan5/raylib 2023-12-14 15:32:45 +01:00
Ray
88db11fda4 Update rtextures.c 2023-12-14 15:30:48 +01:00
Matthew Oros
cec2261e96
[rcore] Flip VR screens (#3633) 2023-12-13 21:24:24 +01:00
Matthew Oros
387506faab
[rcore] Remove unused vScreenCenter (#3632) 2023-12-13 21:22:44 +01:00
Romash
222f6f7877
Fix box blur symmetry & simplify code (#3631) 2023-12-13 21:21:08 +01:00
Benjamin Schmid Ties
6083d2b9f3
fixed coding style in function TextToFloat (#3627)
* function to convert string to float

* fix code to match coding conventions
2023-12-13 21:20:13 +01:00
Ray
c5ebdb8ba7 REVIEWED: Issue in sequence generation #3612 2023-12-11 09:33:21 +01:00
Ray
6f3c87a999 Fix #3613 2023-12-11 09:21:30 +01:00
ubkp
a2e45239c3
[rcore] Complement SetWindowState() and ClearWindowState() for PLATFORM_WEB (#3625)
* Complement SetWindowState() and ClearWindowState() for PLATFORM_WEB

* Add FLAG_WINDOW_RESIZABLE to SetWindowState() and ClearWindowState() for PLATFORM_WEB
2023-12-11 09:11:42 +01:00
ubkp
39457ace2f
[rcore] Add ToggleBorderlessWindowed() implementation for PLATFORM_WEB (#3622)
* Add ToggleBorderlessWindowed() for PLATFORM_WEB

* Fix coding convention
2023-12-11 09:11:20 +01:00
ubkp
44eeda2475
Optimize gesture handling for PLATFORM_DRM (#3616) 2023-12-11 08:58:55 +01:00
ubkp
ed8a18ea64
[rcore] Fix real touch gestures for PLATFORM_DESKTOP_SDL (#3614)
* Fix touch gestures for PLATFORM_DESKTOP_SDL

* Complement note and optimization

* Events optimization

* Optimize gesture handling

* Reverts previous commit and fixes GESTURE_DRAG to not trigger GESTURE_SWIPE* when it ends

* Reapply previous gesture handling optimization also fixing GESTURE_DRAG to not trigger GESTURE_SWIPE* when it ends
2023-12-11 08:57:51 +01:00
David Williams
032cc497ca
Updating CMake version to 5.0 so libraries are correctly versioned (#3615) 2023-12-09 19:33:12 +01:00
ubkp
a9ba51aa72
[rcore] Fix IsMouseButtonUp() for PLATFORM_WEB and PLATFORM_DRM (#3611)
* Fix IsMouseButtonUp() for PLATFORM_WEB

* Fix IsMouseButtonUp() for PLATFORM_DRM
2023-12-07 19:53:27 +01:00
ubkp
ab9bddb3bd
[rcore] Fix IsMouseButtonUp() and add touch events for PLATFORM_DESKTOP_SDL (#3610)
* Fix IsMouseButtonUp() and add touch events for PLATFORM_DESKTOP_SDL

* Fix coding convention
2023-12-07 19:53:02 +01:00
Kenneth M
8b33d1eeb9
Fix IsMouseButtonUp() (#3609) 2023-12-07 19:50:36 +01:00
lesleyrs
6b93180130
Fix for free camera mode (#3603)
* fix free and fp cam

* revert
2023-12-07 19:49:49 +01:00
ubkp
d99617d084
[rcore] Fix IsKeyPressedRepeat() for PLATFORM_DESKTOP_SDL (#3605)
* Fix IsKeyPressedRepeat() for PLATFORM_DESKTOP_SDL

* Fix missing space
2023-12-07 19:47:58 +01:00
ubkp
984e83c2d0
Fix GetKeyPressed and GetCharPressed for SDL (#3604) 2023-12-05 10:02:48 +01:00
Ray
731b210f51 REVIEWED: WARNING: LoadFontData() avoid fallback glyphs
This is a redesign on font loading, missing glyphs are skipped instead of falling back to font `.notdef` special character (usually "tofu" character).
It is changed because not all fonts support a fallback glyph.
One improvement could be allowing users to define a custom fallback character, for example `?` glyph.
2023-12-04 17:32:55 +01:00
Ray
a016b4ded2 REVIEWED: LoadFontData(), load image only if glyph has been found in font 2023-12-03 20:17:16 +01:00
Ray
8a586249d7 Fix Wrong Makefile flag #3593 2023-12-03 20:16:19 +01:00
Ray
d0a783e362 Revert "Fix Windows Hardcoding (#3600)"
This reverts commit 4ae2af0bcc.
2023-12-03 20:08:48 +01:00
Ray
5aa84a34ea Revert "Fix warning while using external GLFW older than version 3.4.0 (#3599)"
This reverts commit f1b0d15813.
2023-12-03 20:06:34 +01:00
mr sihc
4ae2af0bcc
Fix Windows Hardcoding (#3600)
Compiles on Linux & co. now
2023-12-03 19:55:16 +01:00
Marco Maia
f1b0d15813
Fix warning while using external GLFW older than version 3.4.0 (#3599)
Co-authored-by: Marco Maia <marco.maia@iarasystems.com.br>
2023-12-03 19:53:52 +01:00
ubkp
0748dc2d1e
Remove a duplicated loop for PLATFORM_DRM (#3590) 2023-12-01 14:55:48 +01:00
Peter0x44
55e7d1aad1
Expose OpenGL take 2 (#3588)
For some reason, there are actually two macros needed to control this.
Yes, I tried with only one, both are needed
2023-11-30 22:43:02 +01:00
Peter0x44
ef5069862d
Fix mistake in pr #3572 (#3587) 2023-11-30 20:07:50 +01:00
Ray
e9ddb15d9d REVIEWED: rlgl function description and comments 2023-11-30 19:04:38 +01:00
Ray
6b136fac67 ADDED: ExportMeshAsCode() 2023-11-30 13:01:19 +01:00
ubkp
e84099bfd4
Fix CheckCollisionCircleRec() (#3584) 2023-11-30 10:11:45 +01:00
ubkp
bd81bdc24a
Fix IsKeyPressedRepeat() for PLATFORM_DRM direct input (#3583) 2023-11-30 10:09:57 +01:00
Peter0x44
e7a486fa81
Hide unneeded internal symbols when building raylib as an so or dylib (#3573) 2023-11-28 20:43:45 +01:00
RadsammyT
fe53ba80dd
Fix typos in src/platforms/rcore_*.c (#3581) 2023-11-28 20:39:10 +01:00
ubkp
1906f1eddf
Fix SetMousePosition() for SDL (#3580) 2023-11-28 20:37:04 +01:00
ubkp
811abcb19f
Fix rcamera.h so mouse/keyboard and gamepad can coexist for input (#3579) 2023-11-27 16:36:09 +01:00
ubkp
c35c531551
Fix SetWindowIcon() for SDL (#3578) 2023-11-27 16:34:17 +01:00
Emmanuel Méra
fc4b0c9aec
Corrected the path of android ndk toolchains for OSX platforms (#3574) 2023-11-25 19:11:29 +01:00
Peter0x44
94aba23ef4
Expose glad functions when building raylib as a shared lib (#3572) 2023-11-24 00:41:44 +01:00
Steven Schveighoffer
b122270aa3
Fix version info in rlgl.h (#3558) 2023-11-21 22:47:52 +01:00
Ray
4dae94821b Merge branch 'master' of https://github.com/raysan5/raylib 2023-11-21 00:15:06 +01:00
Ray
299cd9b830 Update rcore.c 2023-11-21 00:14:42 +01:00
Ray
994c4f4bdf
Update rcore_desktop_sdl.c 2023-11-20 23:21:04 +01:00
MrScautHD
0137efde7a
Expanding Possibilities: Integrating Additional glTF / GLB Data Formats for Enhanced 3D Experiences (#3546)
* Add more gltf data formats

* Fix forgot to save bone ids

* Fix misstake

* Fix code format

* Removed useless formats
2023-11-18 20:07:30 +01:00
Alexandre Almeida
f6de0358e1
Disable unused miniaudio features (#3544)
* Disable unused miniaudio features

* Fix mistakes
2023-11-18 20:06:19 +01:00
Karim
21469e92b0
Image convolution function ImageKernelConvolution (#3528)
* Added image convultion ImageKernelConvolution

* comment changes

* spelling changes and change to kernel size

* removed kernel normalization inside function

* fix to formating
2023-11-18 20:05:45 +01:00
_Tradam
e41a0c9721
fix for running gles2 with sdl on desktop (#3542) 2023-11-18 20:03:13 +01:00
Dennis E. Hamilton
f607cac267
Preparing for 5.1-dev (#3550)
Adjusting raylib.h to reflect post-5.0 changes now.
2023-11-18 20:01:02 +01:00
Ray
e84a420766 Update miniaudio to v0.11.21 2023-11-15 10:25:09 +01:00
ubkp
db70db5f4d
Fix missing keys on PLATFORM_DESKTOP_SDL (#3539) 2023-11-14 11:49:27 +01:00
Ray
5c79c5a2ec Update rcore.c 2023-11-13 16:11:10 +01:00
ubkp
87f26c845c
Fix mouse button order for SDL (#3534) 2023-11-13 00:16:31 +01:00
Ray
4f67f5f159 REVIEWED: TakeScreenshot(), potential issues 2023-11-12 12:38:10 +01:00
Le Juez Victor
9099077075
[rlgl] Fixed return type of GetCompressedFormatName (#3529)
The return type of `GetCompressedFormatName` has been corrected from `char *` to `const char *`
2023-11-12 00:09:00 +01:00
Ray
1b88f2ec03 Review #3526 2023-11-11 20:53:36 +01:00
ubkp
9634c84e1c
Fix automation recording (#3523) 2023-11-11 16:06:23 +01:00
Ray
107ece438a Reviewed duplicate lines 2023-11-10 19:48:47 +01:00
Ray
e4ea116857 Reviewing automation events on web... 2023-11-10 19:25:28 +01:00
Ray
16b79f2c70 Format tweaks 2023-11-10 19:22:22 +01:00
Ray
30dcbaff20 Update rlgl.h 2023-11-10 13:33:42 +01:00
Ray
737cd0be7f Updated for upcoming raylib 5.0 2023-11-10 13:27:13 +01:00
maksut
1b524bb2ec
WindowShouldClose(), reset shouldClose flag when window is inited (#3518) 2023-11-09 23:36:22 +01:00
Ray
80aafdb38f REVIEWED: BeginScissorMode() #3510 2023-11-09 23:35:24 +01:00
Ray
c471d22965 Update miniaudio.h 2023-11-09 23:22:30 +01:00
Ray
33580991c7 Update shell.html 2023-11-08 19:34:38 +01:00
Ray
e7114a5c2a Update rcore.c 2023-11-08 19:34:29 +01:00
Ray
bd3ffa7db3 REDESIGNED: Spline drawing functionality
This change allows more versatile and consistent splines drawing. It also gives more control to advance users to draw splines as individual segments.
2023-11-08 17:42:35 +01:00
Ray
fe757b6267 Update rtextures.c 2023-11-08 17:40:23 +01:00
ubkp
271a72f2f2
Fix absRange for PLATFORM_DRM (#3517) 2023-11-07 22:15:23 +01:00
Ray
f01d3db739 ADDED: GetSplinePoint*() functions for spline evaluation
RENAMED: `DrawLine<spline_type>()` to `DrawSpline<spline_type>()` for more consistent and clear naming
REVIEWED: Bezier drawing parameters order, more consistent
REVIEWED: Spline-based examples -WIP-
2023-11-07 19:25:49 +01:00
Ray
c69e1c379b Merge branch 'master' of https://github.com/raysan5/raylib 2023-11-07 19:22:21 +01:00
Ray
e8a3f9f7fa ADDED: Open-graph image alt properties 2023-11-07 19:22:12 +01:00
ubkp
9a2b735645
Fix mouse/touch/gestures for PLATFORM_DRM (#3515) 2023-11-07 19:02:24 +01:00
Ray
a57ac0b18e Update m3d.h 2023-11-07 13:52:36 +01:00
Ray
30987eaf06 Update cgltf.h 2023-11-07 13:52:33 +01:00
Ray
02aa1ee873 Updated dr audio libraries 2023-11-07 13:48:48 +01:00
Ray
11de73dfd6 Update miniaudio.h 2023-11-07 13:44:55 +01:00
Jeffery Myers
6cd37e57a6
Fix warnings in visual studio (#3512) 2023-11-06 20:31:07 +01:00
Ray
0a9bd393dc REVIEWED: sinfl external library to avoid ASAN complaints #3349 2023-11-06 19:30:00 +01:00
Ray
8b2103fc77 REVIEWED: ScanDirectoryFiles*()- Paths building slashes sides #3507 2023-11-06 19:15:11 +01:00
Ray
8739c28949 REVIEWED: Scissor mode to support RenderTexture #3510 2023-11-06 19:09:12 +01:00
gulrak
56b5a5c4f0
BeginScissorMode checks for render texture to avoid using GetWindowScaleDPI (#3510) 2023-11-06 19:03:12 +01:00
Ray
304bf2cd17 ADDED: Flag to know we are rendering to texture #3510 2023-11-06 19:02:11 +01:00
JupiterRider
2252f747b7
Update Makefile (#3509) 2023-11-05 19:42:56 +01:00
Ray
925978ffde Update qoa.h 2023-11-05 19:41:22 +01:00
Ray
6ebfc6023b Update rl_gputex.h 2023-11-05 19:40:00 +01:00
Ray
57f77c3858 Update qoi.h 2023-11-05 19:39:57 +01:00
Ray
53451e98a7 Updated open graph for examples 2023-11-05 13:02:29 +01:00
Ray
cbf0324c34 Updating web shells open-graph info 2023-11-05 12:18:54 +01:00
freakmangd
39b539c42f
Allow raylib to be built with zig 0.11.0 and zig 0.12.0dev (master) (#3506)
* allow zig 0.11.0 and 0.12.0dev to build raylib

* update comment
2023-11-04 21:05:21 +01:00
Ray
32e4be6fb9 Update rcore.c 2023-11-03 22:23:50 +01:00
Ray
2d1b211920 ADDED: LoadRandomSequence()/UnloadRandomSequence() 2023-11-03 20:21:43 +01:00
AndreaBoroni
5da0074fed
Fixed Issue 3504 (#3505) 2023-11-03 19:12:42 +01:00
Ray
301d1b85ab Update raylib version to **raylib 5.0** 2023-11-02 18:18:27 +01:00
Ray
3c3e311190 Remove unneeded line on web platform 2023-11-02 18:18:05 +01:00
Ray
807516a991 Support OpenGL ES 3.0 building on Web
For some reason, the equivalent requested context (WebGL 2.0) is not provided, despite being properly requested.
2023-11-02 18:13:37 +01:00
Ray
b40f93b9e3 Comments tweaks 2023-11-02 18:12:22 +01:00
Ray
01bbd42519 Update rprand.h 2023-11-02 18:11:13 +01:00
ubkp
fe34fc7c6b
Partial fix the gesture system for DRM (#3502) 2023-11-02 17:35:11 +01:00
Caleb Barger
ba75a7a23b
build.zig updates for 0.11.0 release. (#3501) 2023-11-02 09:14:34 +01:00
ubkp
de1ceae4b0
[core] Fix gestures for PLATFORM_DESKTOP_SDL (#3499)
* Fix gestures for SDL

* Review the gesture handling for SDL

* Review 2
2023-11-02 09:13:41 +01:00
Ray
35d27fb11b REVIEWED: Pointers exposing not required for ES3 2023-11-02 09:04:05 +01:00
Ray
d77c918d51 Update rcore_web.c 2023-11-01 16:24:06 +01:00
Ray
c563490cf8 Update rcore_web.c 2023-11-01 15:28:31 +01:00
Ray
64d64cc181 REVIEWED: Potential code issues reported by CodeQL #3476 2023-11-01 15:28:18 +01:00
ubkp
ba21b8d274
Moves keymapUS[] and fixes GetCharPressed for DRM (#3498) 2023-11-01 12:20:33 +01:00
Ray
1407f6eb46 ADDED: rlBlitFramebuffer(), required for deferred render 2023-10-31 20:46:06 +01:00
Ray
15142a30f5 Update rmodels.c 2023-10-31 20:20:11 +01:00
Ray
43f36b9b05 REDESIGNED: LoadOBJ(), fix #3398
- Now triangulated  meshes are properly supported
 - Simplified code to consider issue situation
 - Removed mesh split per material, just define separate mesh if multiple materials are required
2023-10-31 20:15:45 +01:00
Ray
de7beef05d Remove trailing spaces 2023-10-31 15:54:52 +01:00
Ray
f88604e6d5 Reviewed QOA seek PR 2023-10-31 15:54:38 +01:00
Ray
0a3567439d Comments tweaks 2023-10-31 15:49:42 +01:00
veins1
6842012748
Fix QOA seeking (#3494) 2023-10-31 15:48:24 +01:00
Ray
0d186a0557 REVIEWED: LoadModel(), removed cube fallback mechanism #3459 2023-10-31 11:32:07 +01:00
ubkp
ab61bad168
Fix relative mouse mode for DRM (#3492) 2023-10-31 10:16:12 +01:00
Jett
ff04d52f12
Added rlEnablePointMode (#3490)
for rendering meshes with points.
similar to wire mode.
(NOTE) they still backface cull, so disable that if you want to show the entire mesh.
2023-10-31 08:43:32 +01:00
Ray
7677e4b928 REVIEWED: GetModelBoundingBox() #3485 2023-10-30 20:41:33 +01:00
Ray
b8fce54c0f Minor tweaks 2023-10-30 13:29:14 +01:00