Commit Graph

1424 Commits

Author SHA1 Message Date
Ray
02d98a3e44 REVIEWED: 2d camera zoom, add alternative method #3977 2024-05-15 16:33:06 +02:00
Ray
479bd84400 Update shaders_palette_switch.c 2024-05-15 16:19:53 +02:00
Mike Will
46f9806359
Use logarithmic scaling for a 2d example with zoom functionality (#3977) 2024-05-15 16:19:22 +02:00
Ray
08ae888722 Update Makefile 2024-05-07 20:40: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
Ray
34d00d5217 Minor formatting tweaks 2024-05-05 19:46:31 +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
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
77cabc8bf2 Update shapes_draw_rectangle_rounded.c 2024-04-20 20:32:37 +02:00
Ray
68201c10c2 Update models_cubicmap.c 2024-04-20 19:58:14 +02:00
Benji
b00e467494
Revert "Build specific example using -DBUILD_EXAMPLE cmake flag (#3921)" (#3922)
This reverts commit c1fd98591d.
2024-04-19 08:43:24 +02:00
Benji
c1fd98591d
Build specific example using -DBUILD_EXAMPLE cmake flag (#3921) 2024-04-17 19:26:18 +02:00
Ray
112ce672e1 FIX: #3918 2024-04-17 19:12:47 +02:00
Ray
a6a08c75eb Update corrupted-header sounds #3554 2024-04-17 18:30:02 +02:00
Yousif
a4819f99cb
Update shaders_hybrid_render.c (#3908)
Fix typo
2024-04-10 10:36:03 +02:00
iP
1fad8277a3
optimisation of the "bone socket" tutorial (#3864)
Less matrix operations doing.
2024-03-10 21:49:04 +01:00
Rob Loach
ba066656f7
[cmake] Disable SDL rlgl_standalone example (#3861)
* cmake: For SDL, disable rlgl_standalone

* cmake: Only build rlgl_standalone when on Desktop, and not shared libs
2024-03-08 12:33:40 +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
Rob Loach
fccdfa7926
cmake: For SDL build, link the glfw dependency (#3860) 2024-03-07 12:11:46 +01:00
johann nadalutti
53221eb799
feat: vox_loader normals and new voxels shader (#3843) 2024-02-29 18:28:51 +01:00
Dalton Overmyer
077ab6d56b
Add an example that generates a random sequence. (#3846) 2024-02-29 18:26:49 +01:00
aiafrasinei
2aed94cfc2
Fix examples warnings for macos (#3842) 2024-02-27 22:15:09 +01:00
Ray
7fae41b5c6 Update models_bone_socket.c 2024-02-26 11:03:12 +01:00
Ray
3086bf1668 Update models_bone_socket.c 2024-02-26 10:49:01 +01:00
iP
2a263a09cc
bone socket tutorial (#3833)
Tutorial on how to use bones as sockets to calculate the position of something.
2024-02-26 10:30:22 +01:00
Peter0x44
1df91e74b9
Fix building of raylib_opengl_interop on PLATFORM_DESKTOP_SDL (#3826)
I tested this with CMake. I don't know if the examples makefile
currently handles this case.
2024-02-26 10:29:21 +01:00
Peter0x44
b86f78f6b1
Fix examples linking with CMake and -DPLATFORM=SDL (#3825)
Currently, every example fails linking likeso:

[  3%] Linking C executable audio_mixed_processor
/usr/bin/ld: ../raylib/libraylib.a(raudio.c.o): undefined reference to symbol 'exp@@GLIBC_2.29'
/usr/bin/ld: /usr/lib/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Apparently, linking libm explicitly is the solution.
2024-02-26 10:25:47 +01:00
Abhishek Rathore
bda919033d
Fixed typo in a comment (#3816) (#3817)
Fixed a grammatical error by removing "are" to change `... but some are have multiple purposes ...` to `... but some have multiple purposes ...` in `textures/textures_image_generation`
2024-02-23 19:17:33 +01:00
Ray
23616153d4 Update Makefile 2024-02-22 23:25:05 +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
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
Ray
615ee9d177 REVIEWED: rlLoadFramebuffer() 2024-02-04 12:13:56 +01:00
Ray
40f3df5b86 Update core_2d_camera_platformer.c 2024-01-24 21:17:11 +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
Hongyu Ouyang
721e273547
Fix a bug in examples/shapes/shapes_following_eyes (#3710) 2024-01-06 11:32:10 +01:00
Ray
3afb4dda97 Update raygui.h 2024-01-05 22:32:59 +01:00
Ray
3f1e59a7cf Update copyright to 2024 2024-01-02 20:58:12 +01:00
Ray
36df9c5bd6 Update shaders_basic_pbr.c 2023-12-23 18:16:06 +01:00
Ray
e039a221a3 Review formating 2023-12-23 14:07:45 +01:00
Ray
706f74bce0 Update shaders_basic_pbr.c 2023-12-23 13:32:47 +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
bb18018f29 REVIEWED: shaders_basic_pbr, added more comments 2023-12-21 21:32:53 +01:00
Ray
4805dddc18 Update shaders_deferred_render.c 2023-12-21 21:32:00 +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
TheManTheMythTheGameDev
1fc3d9aeb2
Add shadowmapping example (#3653) 2023-12-19 10:37:41 +01:00
TheManTheMythTheGameDev
34a9163c52
Remove dependencies from PBR example (#3649)
* Remove dependencies from PBR example

* Reviewed example PR

---------

Co-authored-by: Ray <raysan5@gmail.com>
2023-12-19 10:36:03 +01:00
devdad
9bdc217987
basic PBR example (#3621)
* basic pbr example

pbr implementation  includes rpbr.h and few shader files header only file, which self contain everything needed for pbr rendering. Few textures and one model of the car which is under free licence which is included inside basic_pbr.c example file  currently supported shader versions are 120 and 330 , version 100 has small issue which I have to resolve

* Unloading PBRMAterial

I forgot unloading PBRMaterial

* fix small issue with texOffset assigment.

value was Vector4 at first but I found out it would be unclear for and users, so I change to have two Vector2 instead, but forgot to assign offset .

* Changed size of textures and file name changed

Changed size of textures from 2048x2048 to 1024x1024 and file name changed to shaders_basic_pbr.c ,
Added the function PBRModel PBRModelLoadFromMesh(Mesh mesh);
but GenMeshPlane(2, 2.0, 3, 3) culdn't be used because it crash once GenMeshTangents() is used with that plane mesh
2023-12-15 17:13:44 +01:00
Matthew Oros
387506faab
[rcore] Remove unused vScreenCenter (#3632) 2023-12-13 21:22:44 +01:00
lipx
a57a0ecd96
Update audio_stream_effects.c (#3618)
* Update audio_stream_effects.c

This may slightly improve performance and be more welcoming for new users despite being an more advanced feature. 
void * usually throws an error in most compilers and it would be better to just avoid it.

Also added <stdbool.h> because booleans are, sometimes, not defined by <stddef.h>.

* Update audio_stream_effects.c
2023-12-13 21:19:14 +01:00
riadbettole
31d3ed97c7
Update audio_raw_stream.c (#3624)
AudioInputCallBack has this
    audioFrequency += 1.0f;
    audioFrequency -= 1.0f;

cancels out each others
2023-12-11 09:12:30 +01:00
Ray
a3a73b9332 REVIEWED: textures_image_kernel #3556
Added screenshot
2023-11-21 22:55:47 +01:00
Sergey Zapunidi
ce26e26177
Added missing textures_image_kernel example in web makefile (#3555)
* Added missing textures_image_kernel example in web makefile

* Added missing --preload-file for textures_image_kernel

---------

Co-authored-by: zap <zap@physlab.ru>
2023-11-20 20:49:58 +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
Jussi Viitala
25c6c12150
Added glsl 100 and 120 shaders to lightmap example. (#3543)
* Added glsl 100 and 120 shaders to lightmap example.

* Fixed lightmap example resource loading on web.
2023-11-18 20:02:33 +01:00
Ray
e7ba72ded9 Update core_automation_events.c 2023-11-10 19:36:58 +01:00
Ray
e4ea116857 Reviewing automation events on web... 2023-11-10 19:25:28 +01:00
Miloslav Milenkov
a92c34d83c
Changed keybinds for the automation example to avoid conflict with browser shortcuts (#3519) 2023-11-10 15:04:04 +01:00
Ray
21dc42d2ad Updated examples 2023-11-09 09:53:25 +01:00
Ray
c69b89cc42 Update example: shapes_splines_drawing 2023-11-09 02:01:00 +01:00
Ray
4c2340aea6 Update core_2d_camera_platformer.c 2023-11-08 23:35:27 +01:00
Ray
9c2308bdc3 Examples reviews 2023-11-08 23:28:31 +01:00
Ray
022b464b0b Remove BOM 2023-11-08 20:37:35 +01:00
Ray
040b945fef Reviewed some examples and warnings 2023-11-08 20:09:32 +01:00
Ray
bee6d7f065 Update Makefile.Web 2023-11-08 19:34:44 +01:00
Ray
9d8a11f21a Update textures_textured_curve.c 2023-11-08 18:13:25 +01:00
Ray
21354119cc REVIEWED: Makefile.Web, reorganize and add examples 2023-11-08 18:10:29 +01:00
Ray
bbf0c3a46d REVIEWED: Added new examples to VS2022 solution 2023-11-08 17:41:08 +01:00
Ray
580fbf441c Update textures_textured_curve.c 2023-11-07 20:02:55 +01:00
Ray
4b87cc455d Update shapes_splines_drawing.c 2023-11-07 19:58:45 +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
Jeffery Myers
6cd37e57a6
Fix warnings in visual studio (#3512) 2023-11-06 20:31:07 +01:00
Ray
fc21a8e552 Update raygui.h 2023-11-06 20:14:40 +01:00
Ray
2a67ac0027 REVIEWED: rlgl_standalone examples #3487
Example is intended for `PLATFORM_DESKTOP` only and OpenGL 3.3 Core profile.
2023-11-05 20:11:53 +01:00
Ray
8b3c18de54 Updated GLFW for 64bit 2023-11-05 20:11:14 +01:00
Ray
b40f93b9e3 Comments tweaks 2023-11-02 18:12:22 +01:00
Ray
64d64cc181 REVIEWED: Potential code issues reported by CodeQL #3476 2023-11-01 15:28:18 +01:00
Jeffery Myers
38205d67da
Remove unused structures from lighting fragment shaders (#3497) 2023-11-01 12:16:14 +01:00
Ray
df0f7ba61e Update shaders_deferred_render.c 2023-10-31 20:59:08 +01:00
Ray
aca854ccbf Update shaders_deferred_render.c 2023-10-31 20:46:10 +01:00
Justin
3645244f9f
examples/shaders: Add an example for deferred shading (#3496)
* add example for deferred rendering/shading

* adapt convention

---------

Co-authored-by: 27justin <me@justin.cx>
2023-10-31 20:13:12 +01:00
ubkp
d8acceca14
Fix example core_3d_camera_free (#3488) 2023-10-31 10:10:43 +01:00
ubkp
15632876f7
Fix examples Makefile for SDL (#3486) 2023-10-30 12:02:35 +01:00
Ray
4625c41431 ADDED: Support for SDL building on Makefile 2023-10-29 20:44:18 +01:00
Ray
2da8cc383c Update Makefile.Web 2023-10-29 19:46:34 +01:00
Josh Colclough
975d4154e6
Fix the Julia set shader example (#3467)
* Simplify POI selection

* Improve mouse logic

* Add colour cycles to the shader to show finer details. Works well with high iteration numbers

* Testing things...

* Actually fix zoom. Also allow user to reset camera with 'R'

* Reset max iterations

* Tidying & comments

* Revert to original if statement

* Make mouse logic more readable

* Style conventions

* Coding conventions - f postifx on floating points

* Missed a few f postfixes
2023-10-29 16:41:02 +01:00
Ray
f721429f25 ADDED: SetAutomationEventBaseFrame(int frame) 2023-10-27 01:19:10 +02:00
Ray
98fcbe3fe2 Update core_automation_events.c 2023-10-27 00:50:02 +02:00
Ray
654b4e6257 Update core_automation_events.c 2023-10-27 00:45:00 +02:00
Ray
99dac5451c ADDED: Automation Events System, exposed to users
Added new API to record and play events
Added examples illustrating functionality
2023-10-26 23:59:19 +02:00
ubkp
8f517b7651
Fix compilation for PLATFORM_WEB examples (#3454) 2023-10-23 10:05:40 +02:00
Keith Stellyes
ea325c54e8
fix examples Makefile to use Makefile.Web when building for web (#3449)
Co-authored-by: Keith Stellyes <keith@keithstellyes.com>
2023-10-22 14:58:35 +02:00
Ray
fc6152613f REVIEWED: raylib 5.0-dev version for a future release 2023-10-18 00:33:05 +02:00
Ray
7290ea9bfb Update models_mesh_generation.c 2023-10-17 10:59:25 +02:00
MichaelFiber
18bedbd095
[core] Change axisCount to be an array (#3421)
* Update `PLATFORM_DRM` implementation of `GetGamepadAxisCount`

* Update

* Update `PLATFORM_DRM` implementation of `GetGamepadName`

* Add example to test gamepad info functions
Fix typo

* Update new gamepad info example

* Move axis count update out of GamepadThread - race condition

* Remove pointless if statement

* Start integrating stuff from the mikesinput lib

* Add more logging

* Add semicolon

* Add forgotten static

* More fixes

* Update axisCount to be array

* More debugging

* Add forgotten index to ready check

* Add path logging

* Missing parenthesis

* Add missing slash

* Fix axis count being reset to 0

* Fix missing paren

* Test polling joystick button events

* Major updates

* Fix missing array index

* Fix another missing array index

* Update example

* dumb logging

* Wrong constant for ev.code handling

* More dumb logging

* Remove some logging

* Add FPS to gamepad info example and try for max FPS

* tweak

* Revert example

* Add fps back

* Clean up after merge

* Switch axisCount to be an array
2023-10-14 22:51:35 +02:00
Purple4pur
4981acb241
fix zig syntax errors in examples, and make it install executables correctly (#3395) 2023-10-13 19:55:52 +02:00