Commit graph

9,623 commits

Author SHA1 Message Date
Bigfoot71
7ac973b4b8 fix pixel origin in line rasterization
my bad, an oversight in my previous fix.
This offset should have been moved here rather than per pixel during truncation.
2026-03-17 01:23:22 +01:00
Bigfoot71
fd6fdcce91 update rlgl - support of rlsw's framebuffers 2026-03-17 01:09:42 +01:00
Bigfoot71
42ddf558f9 support of GL_DRAW_FRAMEBUFFER_BINDING 2026-03-17 01:08:00 +01:00
Bigfoot71
5791f537c4 fix line shaking issue 2026-03-17 00:48:15 +01:00
Bigfoot71
4928008e6d fix quad sorting + simplify quad rasterization part 2026-03-17 00:02:30 +01:00
Bigfoot71
dc9d2c90bc add glRenderbufferStorage binding
+ tweaks and fixes
2026-03-16 23:31:04 +01:00
Bigfoot71
e89c8a4440 fix ndc projection + review presentation
and rename rlsw's resize/copy/blit
2026-03-16 21:58:15 +01:00
Bigfoot71
9654fffa22 added FBO API + refactored rasterizer dispatch logic 2026-03-16 21:05:15 +01:00
Bigfoot71
fae2e88ff6 added a reusable object pool system
will allow management of both textures and framebuffers
added support for `glTexSubImage2D`
added handling of 'GL_OUT_OF_MEMORY' errors
removed the default internal texture (unused)
2026-03-15 22:39:41 +01:00
Bigfoot71
52d4fbaea6 review uint8_t <-> float conversion 2026-03-15 17:42:42 +01:00
Bigfoot71
f73909a71a style tweaks 2026-03-15 16:06:56 +01:00
Bigfoot71
08a8c6c80e texture read/write cleanup + tweaks
I made the  pointers parameters `restrict` for reading/writing textures, which resulted in a slight improvement.
And I reviewed the `static inline` statements, which could potentially bias the compiler; no difference, but it's cleaner.
2026-03-15 15:14:45 +01:00
Bigfoot71
3f141c1698 fix depth write 2026-03-15 14:27:05 +01:00
Bigfoot71
10ca5b7c91 review pixel get/set
less ops for certain formats + fixes
2026-03-15 03:14:25 +01:00
Bigfoot71
84dc84cfca review framebuffer blit/copy
This greatly simplifies the framebuffer blit/copy logic while now supporting all pixel formats. It is slightly slower in debug builds, but this path is mainly kept for compatibility anyway. The `copy_fast` version is still used for the "normal" cases when presenting to the screen.
2026-03-15 02:00:09 +01:00
Bigfoot71
1d62a2569f use of textures for the framebuffer
- Framebuffers can now use all texture types that are already available.
- The 24-bit depth format has been removed as it is no longer needed.
- Framebuffer formats are still defined at compile time.
- The allocated texture size is now preserved, which avoids frequent reallocations when resizing framebuffers and will allow the use of `glTexSubImage2D`.
2026-03-15 00:54:32 +01:00
Bigfoot71
30d8fedc40 review texture formats
Added support for `R3G3B2`, `R5G6B5`, `R4G4B4A4` and `R5G5B5A1`
Added depth formats
2026-03-14 19:10:28 +01:00
Ray
a6d5a7ffbc Update GitHub usernames for contributors 2026-03-13 19:44:06 +01:00
Ray
f89d38b086 Resolveed conflicts 2026-03-13 18:55:36 +01:00
ghera
38ed50c07b
[rcore][android] Fix CMake shared build and improve --wrap WARNING docs (#5646) 2026-03-13 18:53:39 +01:00
Wertual08
4b9d802d4e
Adapt build.zig to redesigned raylib build features config system (#5645) 2026-03-13 18:53:11 +01:00
dan-hoang
70cb8d15e0
[examples] Add audio_stream_callback (#5638)
* Add audio_raw_stream_callback.c

* Update audio_raw_stream_callback.c to more closely follow raylib coding conventions

* Remove spaces before asterisks in comments in audio_raw_stream_callback.c

* Put SetTargetFPS(30) before while(!WindowShouldClose()) in audio_raw_stream_callback.c

* Add audio_stream_callback.c

* Delete examples/audio/audio_raw_stream_callback.c

* Delete examples/audio/audio_raw_stream_callback.png

* Update audio_raw_stream.c to more closely follow raylib coding conventions

Drawing code wasn't tabbed in

* Remove screenshot code in audio_stream_callback.c

* Update raylib version and copyright year in audio_raw_stream.c

* Update audio_stream_callback.c

Used if instead of switch to compact code; seemed more readable in this case.
2026-03-13 18:51:49 +01:00
Ray
7763da41d7 Merge branch 'master' of https://github.com/raysan5/raylib 2026-03-13 18:50:37 +01:00
Ray
6ba6df3af3 Remove trailing spaces 2026-03-13 18:50:26 +01:00
Ray
7b9a2a4145 Update HISTORY.md 2026-03-13 18:49:57 +01:00
Jack
f83590aa37
Update BINDINGS.md (#5648) 2026-03-13 07:30:48 +01:00
Joel Torres
c5712db1e0
Update raylib-odin binding license (#5647) 2026-03-13 07:30:05 +01:00
Thomas Anderson
f9ea607385
fix error in textinsert, found by github user chrg127 (#5644) 2026-03-12 11:38:06 +01:00
Thomas Prowse
8a93587eaa
Fix raycasting logic in models_basic_voxel.c (#5643)
The original logic iterated through the world and broke at the first found voxel that intersected the ray. This broke in some cases, removing a voxel out of view. I changed the algorithm to track the closest found voxel, and remove it at the end of the loop if one was found.
2026-03-12 11:36:53 +01:00
Thomas Anderson
64e8bfcfb6
remove path override/change for linux (#5641) 2026-03-12 11:35:48 +01:00
Thomas Anderson
4e360c97f4
remove duplicate line in makefile (#5640) 2026-03-12 11:34:38 +01:00
dan-hoang
ee4f4a29c2
[examples] Update audio_raw_stream.c (#5637)
* Update audio_raw_stream.c

* Update audio_raw_stream.c to more closely follow raylib coding conventions

* Update audio_raw_stream.c to more closely follow raylib coding conventions

I accidentally put the file in the wrong folder.

* Delete examples/audio_raw_stream.c

* Remove spaces before asterisks in comments in audio_raw_stream.c

* Put SetTargetFPS(30) before while (!WindowShouldClose()) in audio_raw_stream.c
2026-03-12 11:33:47 +01:00
Thomas Prowse
6cebf63cba
Change GetRenderWidth() to GetScreenWidth() for consistency (#5635) 2026-03-11 00:21:53 +01:00
Thomas Anderson
7b1096dc53
[raylib.h] fix audio pan comment (#5633)
* fix audio pan comment -- found by a.b.c.d.a.b.c.d

* rlparser: update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-10 09:51:12 +01:00
Ray
e40ddfabbb **WARNING: BREAKING:** REDESIGNED: rlgl shader loading API function names for more consistency #5631
ADDED: `rlUnloadShader()` to unload shaders (that function was missing and compute shaders leak memory)
RENAMED: `rlCompileShader()` to p `rlLoadShader()` to be consistent with `rlUnloadShader()`
RENAMED: `rlLoadShaderCode()` to `rlLoadShaderProgram()`, more descriptive of return
RENAMED: `rlLoadShaderProgram()` to `rlLoadShaderProgramEx()`
RENAMED: `rlLoadComputeShaderProgram()` to `rlLoadShaderProgramCompute()`
RENAMED: Some functions parameters for consistency
2026-03-09 14:23:54 +01:00
Ray
2b207be11e ADDED: rlUnloadShader() #5631 2026-03-09 13:22:29 +01:00
Ray
d604cd7f65 Update rmodels.c 2026-03-09 12:52:27 +01:00
victorberdugo1
78023ffca5
Fix memory leak in LoadGLTF when model has no bones (#5629)
Co-authored-by: Victor <victor@localhost.localdomain>
2026-03-09 12:50:19 +01:00
Ray
32005b9edf Update textures_bunnymark.c 2026-03-08 23:00:05 +01:00
Ray
99cab6d3a7 Update rtext.c 2026-03-06 17:11:48 +01:00
Ray
1839b3edb0 Update shaders_cel_shading.c 2026-03-06 17:11:44 +01:00
Ray
eed30b6f90 Update HISTORY.md 2026-03-06 16:54:15 +01:00
Ray
a0ffefcb9d Update rlgl.h 2026-03-06 16:53:56 +01:00
Ray
12039ba7d0 Update raylib.h 2026-03-06 16:53:40 +01:00
JoeStrout
c8d1f3e750
Make LoadFontFromImage limit its scanning to image dimensions. (#5626) 2026-03-06 16:52:58 +01:00
Gleb A
54f630774d
[example] cel-shading and outline using inverted hull (#5615)
* added cel-shading and outline using inverted hull example

* new screenshot

* added glsl100+120 compat

* updated view

* unnecessary spacing
2026-03-06 16:52:28 +01:00
Maicon Santana
3e926d65a0
add x11 libraries for raylib as glfw make private (#5625) 2026-03-05 14:51:16 +01:00
ghera
f9ee714c76
[rcore][android] Add WARNING comment for --wrap=fopen build system requirements (#5624)
Co-authored-by: Federico Gherardi <ghera@libero.it>
2026-03-05 11:50:47 +01:00
github-actions[bot]
ea00b97c59 rlparser: update raylib_api.* by CI 2026-03-05 10:50:09 +00:00
moe li
02b592cd7b
[rtext] Add MeasureTextCodepoints() for direct measurement of codepoints (#5623)
* Measuring length of an array of codepoints

* Applied style changes and removed default measurement function
2026-03-05 11:49:57 +01:00