koffi 0.9.5 → 0.9.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (882) hide show
  1. package/LICENSE.txt +661 -0
  2. package/README.md +74 -9
  3. package/package.json +27 -7
  4. package/src/call.hh +2 -1
  5. package/src/call_arm32.cc +525 -0
  6. package/src/call_arm32_fwd.S +108 -0
  7. package/src/call_arm64.cc +90 -63
  8. package/src/call_arm64_fwd.S +24 -29
  9. package/src/call_x64_sysv.cc +61 -48
  10. package/src/call_x64_win.cc +69 -43
  11. package/src/call_x86.cc +83 -62
  12. package/src/ffi.cc +166 -37
  13. package/src/ffi.hh +43 -12
  14. package/src/util.cc +72 -32
  15. package/src/util.hh +127 -18
  16. package/test/files/node32.cmd +6 -0
  17. package/test/files/node64.cmd +6 -0
  18. package/test/registry/machines.json +185 -0
  19. package/test/registry/sha256sum.txt +24 -0
  20. package/test/test.js +625 -0
  21. package/test/tests/misc.c +40 -0
  22. package/test/tests/misc.js +54 -0
  23. package/test/tests/raylib.js +167 -0
  24. package/vendor/dragonbox/include/dragonbox/dragonbox.h +6 -2
  25. package/vendor/dragonbox/other_files/Dragonbox.pdf +0 -0
  26. package/vendor/libcc/libcc.cc +36 -18
  27. package/vendor/libcc/libcc.hh +23 -1
  28. package/vendor/raylib/BINDINGS.md +123 -0
  29. package/vendor/raylib/CHANGELOG +1495 -0
  30. package/vendor/raylib/CMakeLists.txt +33 -0
  31. package/vendor/raylib/CMakeOptions.txt +87 -0
  32. package/vendor/raylib/CONTRIBUTING.md +76 -0
  33. package/vendor/raylib/CONTRIBUTORS.md +63 -0
  34. package/vendor/raylib/CONVENTIONS.md +95 -0
  35. package/vendor/raylib/HISTORY.md +364 -0
  36. package/vendor/raylib/LICENSE +16 -0
  37. package/vendor/raylib/README.md +141 -0
  38. package/vendor/raylib/ROADMAP.md +76 -0
  39. package/vendor/raylib/SPONSORS.md +68 -0
  40. package/vendor/raylib/cmake/AddIfFlagCompiles.cmake +12 -0
  41. package/vendor/raylib/cmake/BuildOptions.cmake +18 -0
  42. package/vendor/raylib/cmake/CompileDefinitions.cmake +110 -0
  43. package/vendor/raylib/cmake/CompilerFlags.cmake +79 -0
  44. package/vendor/raylib/cmake/EnumOption.cmake +9 -0
  45. package/vendor/raylib/cmake/GlfwImport.cmake +34 -0
  46. package/vendor/raylib/cmake/InstallConfigurations.cmake +29 -0
  47. package/vendor/raylib/cmake/JoinPaths.cmake +26 -0
  48. package/vendor/raylib/cmake/LibraryConfigurations.cmake +108 -0
  49. package/vendor/raylib/cmake/LibraryPathToLinkerFlags.cmake +24 -0
  50. package/vendor/raylib/cmake/PackConfigurations.cmake +13 -0
  51. package/vendor/raylib/cmake/PopulateConfigVariablesLocally.cmake +11 -0
  52. package/vendor/raylib/cmake/raylib-config-version.cmake +21 -0
  53. package/vendor/raylib/cmake/raylib-config.cmake +76 -0
  54. package/vendor/raylib/examples/CMakeLists.txt +139 -0
  55. package/vendor/raylib/examples/Makefile +565 -0
  56. package/vendor/raylib/examples/Makefile.Android +405 -0
  57. package/vendor/raylib/examples/Makefile.Web +1053 -0
  58. package/vendor/raylib/examples/README.md +203 -0
  59. package/vendor/raylib/examples/audio/audio_module_playing.c +146 -0
  60. package/vendor/raylib/examples/audio/audio_module_playing.png +0 -0
  61. package/vendor/raylib/examples/audio/audio_multichannel_sound.c +73 -0
  62. package/vendor/raylib/examples/audio/audio_multichannel_sound.png +0 -0
  63. package/vendor/raylib/examples/audio/audio_music_stream.c +93 -0
  64. package/vendor/raylib/examples/audio/audio_music_stream.png +0 -0
  65. package/vendor/raylib/examples/audio/audio_raw_stream.c +167 -0
  66. package/vendor/raylib/examples/audio/audio_raw_stream.png +0 -0
  67. package/vendor/raylib/examples/audio/audio_sound_loading.c +64 -0
  68. package/vendor/raylib/examples/audio/audio_sound_loading.png +0 -0
  69. package/vendor/raylib/examples/audio/resources/LICENSE.md +10 -0
  70. package/vendor/raylib/examples/audio/resources/coin.wav +0 -0
  71. package/vendor/raylib/examples/audio/resources/country.mp3 +0 -0
  72. package/vendor/raylib/examples/audio/resources/mini1111.xm +0 -0
  73. package/vendor/raylib/examples/audio/resources/sound.wav +0 -0
  74. package/vendor/raylib/examples/audio/resources/spring.wav +0 -0
  75. package/vendor/raylib/examples/audio/resources/target.flac +0 -0
  76. package/vendor/raylib/examples/audio/resources/target.ogg +0 -0
  77. package/vendor/raylib/examples/audio/resources/weird.wav +0 -0
  78. package/vendor/raylib/examples/build.zig +86 -0
  79. package/vendor/raylib/examples/core/core_2d_camera.c +132 -0
  80. package/vendor/raylib/examples/core/core_2d_camera.png +0 -0
  81. package/vendor/raylib/examples/core/core_2d_camera_platformer.c +293 -0
  82. package/vendor/raylib/examples/core/core_2d_camera_platformer.png +0 -0
  83. package/vendor/raylib/examples/core/core_2d_camera_smooth_pixelperfect.png +0 -0
  84. package/vendor/raylib/examples/core/core_3d_camera_first_person.c +97 -0
  85. package/vendor/raylib/examples/core/core_3d_camera_first_person.png +0 -0
  86. package/vendor/raylib/examples/core/core_3d_camera_free.c +83 -0
  87. package/vendor/raylib/examples/core/core_3d_camera_free.png +0 -0
  88. package/vendor/raylib/examples/core/core_3d_camera_mode.c +73 -0
  89. package/vendor/raylib/examples/core/core_3d_camera_mode.png +0 -0
  90. package/vendor/raylib/examples/core/core_3d_picking.c +107 -0
  91. package/vendor/raylib/examples/core/core_3d_picking.png +0 -0
  92. package/vendor/raylib/examples/core/core_basic_screen_manager.c +150 -0
  93. package/vendor/raylib/examples/core/core_basic_screen_manager.png +0 -0
  94. package/vendor/raylib/examples/core/core_basic_window.c +62 -0
  95. package/vendor/raylib/examples/core/core_basic_window.png +0 -0
  96. package/vendor/raylib/examples/core/core_basic_window_web.c +85 -0
  97. package/vendor/raylib/examples/core/core_custom_frame_control.c +125 -0
  98. package/vendor/raylib/examples/core/core_custom_frame_control.png +0 -0
  99. package/vendor/raylib/examples/core/core_custom_logging.c +84 -0
  100. package/vendor/raylib/examples/core/core_custom_logging.png +0 -0
  101. package/vendor/raylib/examples/core/core_drop_files.c +76 -0
  102. package/vendor/raylib/examples/core/core_drop_files.png +0 -0
  103. package/vendor/raylib/examples/core/core_input_gamepad.c +195 -0
  104. package/vendor/raylib/examples/core/core_input_gamepad.png +0 -0
  105. package/vendor/raylib/examples/core/core_input_gestures.c +115 -0
  106. package/vendor/raylib/examples/core/core_input_gestures.png +0 -0
  107. package/vendor/raylib/examples/core/core_input_keys.c +59 -0
  108. package/vendor/raylib/examples/core/core_input_keys.png +0 -0
  109. package/vendor/raylib/examples/core/core_input_mouse.c +65 -0
  110. package/vendor/raylib/examples/core/core_input_mouse.png +0 -0
  111. package/vendor/raylib/examples/core/core_input_mouse_wheel.c +58 -0
  112. package/vendor/raylib/examples/core/core_input_mouse_wheel.png +0 -0
  113. package/vendor/raylib/examples/core/core_input_multitouch.c +70 -0
  114. package/vendor/raylib/examples/core/core_input_multitouch.png +0 -0
  115. package/vendor/raylib/examples/core/core_loading_thread.c +147 -0
  116. package/vendor/raylib/examples/core/core_loading_thread.png +0 -0
  117. package/vendor/raylib/examples/core/core_quat_conversion.c +132 -0
  118. package/vendor/raylib/examples/core/core_quat_conversion.png +0 -0
  119. package/vendor/raylib/examples/core/core_random_values.c +67 -0
  120. package/vendor/raylib/examples/core/core_random_values.png +0 -0
  121. package/vendor/raylib/examples/core/core_scissor_test.c +71 -0
  122. package/vendor/raylib/examples/core/core_scissor_test.png +0 -0
  123. package/vendor/raylib/examples/core/core_smooth_pixelperfect.c +117 -0
  124. package/vendor/raylib/examples/core/core_smooth_pixelperfect.png +0 -0
  125. package/vendor/raylib/examples/core/core_split_screen.c +155 -0
  126. package/vendor/raylib/examples/core/core_split_screen.png +0 -0
  127. package/vendor/raylib/examples/core/core_storage_values.c +87 -0
  128. package/vendor/raylib/examples/core/core_storage_values.png +0 -0
  129. package/vendor/raylib/examples/core/core_vr_simulator.c +143 -0
  130. package/vendor/raylib/examples/core/core_vr_simulator.png +0 -0
  131. package/vendor/raylib/examples/core/core_window_flags.c +191 -0
  132. package/vendor/raylib/examples/core/core_window_flags.png +0 -0
  133. package/vendor/raylib/examples/core/core_window_letterbox.c +112 -0
  134. package/vendor/raylib/examples/core/core_window_letterbox.png +0 -0
  135. package/vendor/raylib/examples/core/core_world_screen.c +78 -0
  136. package/vendor/raylib/examples/core/core_world_screen.png +0 -0
  137. package/vendor/raylib/examples/core/resources/LICENSE.md +4 -0
  138. package/vendor/raylib/examples/core/resources/distortion100.fs +52 -0
  139. package/vendor/raylib/examples/core/resources/distortion330.fs +53 -0
  140. package/vendor/raylib/examples/core/resources/ps3.png +0 -0
  141. package/vendor/raylib/examples/core/resources/xbox.png +0 -0
  142. package/vendor/raylib/examples/examples_template.c +100 -0
  143. package/vendor/raylib/examples/models/models_animation.c +114 -0
  144. package/vendor/raylib/examples/models/models_animation.png +0 -0
  145. package/vendor/raylib/examples/models/models_billboard.c +75 -0
  146. package/vendor/raylib/examples/models/models_billboard.png +0 -0
  147. package/vendor/raylib/examples/models/models_box_collisions.c +121 -0
  148. package/vendor/raylib/examples/models/models_box_collisions.png +0 -0
  149. package/vendor/raylib/examples/models/models_cubicmap.c +87 -0
  150. package/vendor/raylib/examples/models/models_cubicmap.png +0 -0
  151. package/vendor/raylib/examples/models/models_first_person_maze.c +122 -0
  152. package/vendor/raylib/examples/models/models_first_person_maze.png +0 -0
  153. package/vendor/raylib/examples/models/models_geometric_shapes.c +80 -0
  154. package/vendor/raylib/examples/models/models_geometric_shapes.png +0 -0
  155. package/vendor/raylib/examples/models/models_heightmap.c +82 -0
  156. package/vendor/raylib/examples/models/models_heightmap.png +0 -0
  157. package/vendor/raylib/examples/models/models_loading.c +146 -0
  158. package/vendor/raylib/examples/models/models_loading.png +0 -0
  159. package/vendor/raylib/examples/models/models_loading_gltf.c +105 -0
  160. package/vendor/raylib/examples/models/models_loading_gltf.png +0 -0
  161. package/vendor/raylib/examples/models/models_loading_vox.c +130 -0
  162. package/vendor/raylib/examples/models/models_loading_vox.png +0 -0
  163. package/vendor/raylib/examples/models/models_mesh_generation.c +179 -0
  164. package/vendor/raylib/examples/models/models_mesh_generation.png +0 -0
  165. package/vendor/raylib/examples/models/models_mesh_picking.c +223 -0
  166. package/vendor/raylib/examples/models/models_mesh_picking.png +0 -0
  167. package/vendor/raylib/examples/models/models_orthographic_projection.c +99 -0
  168. package/vendor/raylib/examples/models/models_orthographic_projection.png +0 -0
  169. package/vendor/raylib/examples/models/models_rlgl_solar_system.c +172 -0
  170. package/vendor/raylib/examples/models/models_rlgl_solar_system.png +0 -0
  171. package/vendor/raylib/examples/models/models_skybox.c +262 -0
  172. package/vendor/raylib/examples/models/models_skybox.png +0 -0
  173. package/vendor/raylib/examples/models/models_waving_cubes.c +112 -0
  174. package/vendor/raylib/examples/models/models_waving_cubes.png +0 -0
  175. package/vendor/raylib/examples/models/models_yaw_pitch_roll.c +117 -0
  176. package/vendor/raylib/examples/models/models_yaw_pitch_roll.png +0 -0
  177. package/vendor/raylib/examples/models/resources/LICENSE.md +23 -0
  178. package/vendor/raylib/examples/models/resources/billboard.png +0 -0
  179. package/vendor/raylib/examples/models/resources/cubicmap.png +0 -0
  180. package/vendor/raylib/examples/models/resources/cubicmap_atlas.png +0 -0
  181. package/vendor/raylib/examples/models/resources/dresden_square_1k.hdr +0 -0
  182. package/vendor/raylib/examples/models/resources/dresden_square_2k.hdr +0 -0
  183. package/vendor/raylib/examples/models/resources/heightmap.png +0 -0
  184. package/vendor/raylib/examples/models/resources/models/gltf/AnimatedMorphCube.glb +0 -0
  185. package/vendor/raylib/examples/models/resources/models/gltf/AnimatedTriangle.gltf +118 -0
  186. package/vendor/raylib/examples/models/resources/models/gltf/BoxAnimated.glb +0 -0
  187. package/vendor/raylib/examples/models/resources/models/gltf/LICENSE +23 -0
  188. package/vendor/raylib/examples/models/resources/models/gltf/girl.glb +0 -0
  189. package/vendor/raylib/examples/models/resources/models/gltf/raylib_32x32.glb +0 -0
  190. package/vendor/raylib/examples/models/resources/models/gltf/rigged_figure.glb +0 -0
  191. package/vendor/raylib/examples/models/resources/models/gltf/vertex_colored_object.glb +0 -0
  192. package/vendor/raylib/examples/models/resources/models/iqm/guy.blend +0 -0
  193. package/vendor/raylib/examples/models/resources/models/iqm/guy.iqm +0 -0
  194. package/vendor/raylib/examples/models/resources/models/iqm/guyanim.iqm +0 -0
  195. package/vendor/raylib/examples/models/resources/models/iqm/guytex.png +0 -0
  196. package/vendor/raylib/examples/models/resources/models/iqm/vertex_colored_object.iqm +0 -0
  197. package/vendor/raylib/examples/models/resources/models/obj/bridge.obj +1725 -0
  198. package/vendor/raylib/examples/models/resources/models/obj/bridge_diffuse.png +0 -0
  199. package/vendor/raylib/examples/models/resources/models/obj/castle.obj +12919 -0
  200. package/vendor/raylib/examples/models/resources/models/obj/castle_diffuse.png +0 -0
  201. package/vendor/raylib/examples/models/resources/models/obj/cube.obj +68 -0
  202. package/vendor/raylib/examples/models/resources/models/obj/cube_diffuse.png +0 -0
  203. package/vendor/raylib/examples/models/resources/models/obj/house.obj +4564 -0
  204. package/vendor/raylib/examples/models/resources/models/obj/house_diffuse.png +0 -0
  205. package/vendor/raylib/examples/models/resources/models/obj/market.obj +7301 -0
  206. package/vendor/raylib/examples/models/resources/models/obj/market_diffuse.png +0 -0
  207. package/vendor/raylib/examples/models/resources/models/obj/plane.obj +10858 -0
  208. package/vendor/raylib/examples/models/resources/models/obj/plane_diffuse.png +0 -0
  209. package/vendor/raylib/examples/models/resources/models/obj/turret.obj +1888 -0
  210. package/vendor/raylib/examples/models/resources/models/obj/turret_diffuse.png +0 -0
  211. package/vendor/raylib/examples/models/resources/models/obj/well.obj +1030 -0
  212. package/vendor/raylib/examples/models/resources/models/obj/well_diffuse.png +0 -0
  213. package/vendor/raylib/examples/models/resources/models/vox/LICENSE +9 -0
  214. package/vendor/raylib/examples/models/resources/models/vox/chr_knight.vox +0 -0
  215. package/vendor/raylib/examples/models/resources/models/vox/chr_sword.vox +0 -0
  216. package/vendor/raylib/examples/models/resources/models/vox/monu9.vox +0 -0
  217. package/vendor/raylib/examples/models/resources/shaders/glsl100/cubemap.fs +29 -0
  218. package/vendor/raylib/examples/models/resources/shaders/glsl100/cubemap.vs +20 -0
  219. package/vendor/raylib/examples/models/resources/shaders/glsl100/skybox.fs +31 -0
  220. package/vendor/raylib/examples/models/resources/shaders/glsl100/skybox.vs +24 -0
  221. package/vendor/raylib/examples/models/resources/shaders/glsl330/cubemap.fs +30 -0
  222. package/vendor/raylib/examples/models/resources/shaders/glsl330/cubemap.vs +20 -0
  223. package/vendor/raylib/examples/models/resources/shaders/glsl330/skybox.fs +30 -0
  224. package/vendor/raylib/examples/models/resources/shaders/glsl330/skybox.vs +24 -0
  225. package/vendor/raylib/examples/models/resources/skybox.png +0 -0
  226. package/vendor/raylib/examples/models/rlights.h +183 -0
  227. package/vendor/raylib/examples/others/easings.h +263 -0
  228. package/vendor/raylib/examples/others/easings_testbed.c +227 -0
  229. package/vendor/raylib/examples/others/embedded_files_loading.c +103 -0
  230. package/vendor/raylib/examples/others/external/include/GLFW/glfw3.h +5538 -0
  231. package/vendor/raylib/examples/others/external/include/GLFW/glfw3native.h +572 -0
  232. package/vendor/raylib/examples/others/external/include/glad.h +5466 -0
  233. package/vendor/raylib/examples/others/external/lib/libglfw3.a +0 -0
  234. package/vendor/raylib/examples/others/raudio_standalone.c +152 -0
  235. package/vendor/raylib/examples/others/raylib_opengl_interop.c +152 -0
  236. package/vendor/raylib/examples/others/raylib_opengl_interop.png +0 -0
  237. package/vendor/raylib/examples/others/resources/audio/country.mp3 +0 -0
  238. package/vendor/raylib/examples/others/resources/audio/target.ogg +0 -0
  239. package/vendor/raylib/examples/others/resources/audio/weird.wav +0 -0
  240. package/vendor/raylib/examples/others/resources/audio_data.h +4893 -0
  241. package/vendor/raylib/examples/others/resources/image_data.h +9848 -0
  242. package/vendor/raylib/examples/others/resources/shaders/glsl100/point_particle.fs +16 -0
  243. package/vendor/raylib/examples/others/resources/shaders/glsl100/point_particle.vs +24 -0
  244. package/vendor/raylib/examples/others/resources/shaders/glsl330/point_particle.fs +17 -0
  245. package/vendor/raylib/examples/others/resources/shaders/glsl330/point_particle.vs +24 -0
  246. package/vendor/raylib/examples/others/resources/shaders/glsl430/gol.glsl +41 -0
  247. package/vendor/raylib/examples/others/resources/shaders/glsl430/gol_render.glsl +29 -0
  248. package/vendor/raylib/examples/others/resources/shaders/glsl430/gol_transfert.glsl +51 -0
  249. package/vendor/raylib/examples/others/rlgl_compute_shader.c +173 -0
  250. package/vendor/raylib/examples/others/rlgl_standalone.c +469 -0
  251. package/vendor/raylib/examples/physics/physics_demo.c +128 -0
  252. package/vendor/raylib/examples/physics/physics_demo.png +0 -0
  253. package/vendor/raylib/examples/physics/physics_friction.c +142 -0
  254. package/vendor/raylib/examples/physics/physics_friction.png +0 -0
  255. package/vendor/raylib/examples/physics/physics_movement.c +128 -0
  256. package/vendor/raylib/examples/physics/physics_movement.png +0 -0
  257. package/vendor/raylib/examples/physics/physics_restitution.c +129 -0
  258. package/vendor/raylib/examples/physics/physics_restitution.png +0 -0
  259. package/vendor/raylib/examples/physics/physics_shatter.c +111 -0
  260. package/vendor/raylib/examples/physics/physics_shatter.png +0 -0
  261. package/vendor/raylib/examples/raylib_compile_execute.bat +32 -0
  262. package/vendor/raylib/examples/raylib_makefile_example.bat +27 -0
  263. package/vendor/raylib/examples/shaders/resources/LICENSE.md +11 -0
  264. package/vendor/raylib/examples/shaders/resources/fudesumi.png +0 -0
  265. package/vendor/raylib/examples/shaders/resources/mask.png +0 -0
  266. package/vendor/raylib/examples/shaders/resources/models/barracks.obj +22251 -0
  267. package/vendor/raylib/examples/shaders/resources/models/barracks_diffuse.png +0 -0
  268. package/vendor/raylib/examples/shaders/resources/models/church.obj +5116 -0
  269. package/vendor/raylib/examples/shaders/resources/models/church_diffuse.png +0 -0
  270. package/vendor/raylib/examples/shaders/resources/models/watermill.obj +5316 -0
  271. package/vendor/raylib/examples/shaders/resources/models/watermill_diffuse.png +0 -0
  272. package/vendor/raylib/examples/shaders/resources/plasma.png +0 -0
  273. package/vendor/raylib/examples/shaders/resources/raysan.png +0 -0
  274. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/base.fs +23 -0
  275. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/base.vs +26 -0
  276. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/base_lighting.vs +59 -0
  277. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/base_lighting_instanced.vs +36 -0
  278. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/bloom.fs +39 -0
  279. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/blur.fs +34 -0
  280. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/color_mix.fs +26 -0
  281. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/cross_hatching.fs +47 -0
  282. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/cross_stitching.fs +57 -0
  283. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/cubes_panning.fs +60 -0
  284. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/depth.fs +26 -0
  285. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/distortion.fs +54 -0
  286. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/dream_vision.fs +37 -0
  287. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/eratosthenes.fs +60 -0
  288. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/fisheye.fs +43 -0
  289. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/fog.fs +94 -0
  290. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/grayscale.fs +25 -0
  291. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/julia_set.fs +83 -0
  292. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/lighting.fs +81 -0
  293. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/mask.fs +24 -0
  294. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/outline.fs +34 -0
  295. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/palette_switch.fs +41 -0
  296. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/pixelizer.fs +32 -0
  297. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/posterization.fs +29 -0
  298. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/predator.fs +31 -0
  299. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/raymarching.fs +431 -0
  300. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/reload.fs +39 -0
  301. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/scanlines.fs +44 -0
  302. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/sobel.fs +40 -0
  303. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/spotlight.fs +77 -0
  304. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/swirl.fs +46 -0
  305. package/vendor/raylib/examples/shaders/resources/shaders/glsl100/wave.fs +36 -0
  306. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/base.fs +22 -0
  307. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/base.vs +26 -0
  308. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/base_lighting.vs +59 -0
  309. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/bloom.fs +37 -0
  310. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/blur.fs +32 -0
  311. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/cross_hatching.fs +45 -0
  312. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/cross_stitching.fs +55 -0
  313. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/distortion.fs +52 -0
  314. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/dream_vision.fs +35 -0
  315. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/fisheye.fs +41 -0
  316. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/fog.fs +92 -0
  317. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/grayscale.fs +23 -0
  318. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/palette_switch.fs +27 -0
  319. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/pixelizer.fs +30 -0
  320. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/posterization.fs +27 -0
  321. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/predator.fs +29 -0
  322. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/scanlines.fs +42 -0
  323. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/sobel.fs +38 -0
  324. package/vendor/raylib/examples/shaders/resources/shaders/glsl120/swirl.fs +44 -0
  325. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/base.fs +25 -0
  326. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/base.vs +26 -0
  327. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/base_lighting.vs +32 -0
  328. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/base_lighting_instanced.vs +36 -0
  329. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/bloom.fs +40 -0
  330. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/blur.fs +35 -0
  331. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/color_mix.fs +27 -0
  332. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/cross_hatching.fs +48 -0
  333. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/cross_stitching.fs +59 -0
  334. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/cubes_panning.fs +61 -0
  335. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/depth.fs +27 -0
  336. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/distortion.fs +56 -0
  337. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/dream_vision.fs +34 -0
  338. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/eratosthenes.fs +59 -0
  339. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/fisheye.fs +40 -0
  340. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/fog.fs +95 -0
  341. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/grayscale.fs +26 -0
  342. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/julia_set.fs +81 -0
  343. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/lighting.fs +82 -0
  344. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/mask.fs +22 -0
  345. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/outline.fs +35 -0
  346. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/overdraw.fs +26 -0
  347. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/palette_switch.fs +30 -0
  348. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/pixelizer.fs +33 -0
  349. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/posterization.fs +31 -0
  350. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/predator.fs +32 -0
  351. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/raymarching.fs +430 -0
  352. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/reload.fs +40 -0
  353. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/scanlines.fs +49 -0
  354. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/sobel.fs +41 -0
  355. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/spotlight.fs +65 -0
  356. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/swirl.fs +47 -0
  357. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/wave.fs +37 -0
  358. package/vendor/raylib/examples/shaders/resources/space.png +0 -0
  359. package/vendor/raylib/examples/shaders/resources/texel_checker.png +0 -0
  360. package/vendor/raylib/examples/shaders/rlights.h +183 -0
  361. package/vendor/raylib/examples/shaders/shaders_basic_lighting.c +152 -0
  362. package/vendor/raylib/examples/shaders/shaders_basic_lighting.png +0 -0
  363. package/vendor/raylib/examples/shaders/shaders_custom_uniform.c +127 -0
  364. package/vendor/raylib/examples/shaders/shaders_custom_uniform.png +0 -0
  365. package/vendor/raylib/examples/shaders/shaders_eratosthenes.c +92 -0
  366. package/vendor/raylib/examples/shaders/shaders_eratosthenes.png +0 -0
  367. package/vendor/raylib/examples/shaders/shaders_fog.c +160 -0
  368. package/vendor/raylib/examples/shaders/shaders_fog.png +0 -0
  369. package/vendor/raylib/examples/shaders/shaders_hot_reloading.c +130 -0
  370. package/vendor/raylib/examples/shaders/shaders_hot_reloading.png +0 -0
  371. package/vendor/raylib/examples/shaders/shaders_julia_set.c +191 -0
  372. package/vendor/raylib/examples/shaders/shaders_julia_set.png +0 -0
  373. package/vendor/raylib/examples/shaders/shaders_mesh_instancing.c +224 -0
  374. package/vendor/raylib/examples/shaders/shaders_mesh_instancing.png +0 -0
  375. package/vendor/raylib/examples/shaders/shaders_model_shader.c +103 -0
  376. package/vendor/raylib/examples/shaders/shaders_model_shader.png +0 -0
  377. package/vendor/raylib/examples/shaders/shaders_multi_sample2d.c +105 -0
  378. package/vendor/raylib/examples/shaders/shaders_multi_sample2d.png +0 -0
  379. package/vendor/raylib/examples/shaders/shaders_palette_switch.c +147 -0
  380. package/vendor/raylib/examples/shaders/shaders_palette_switch.png +0 -0
  381. package/vendor/raylib/examples/shaders/shaders_postprocessing.c +170 -0
  382. package/vendor/raylib/examples/shaders/shaders_postprocessing.png +0 -0
  383. package/vendor/raylib/examples/shaders/shaders_raymarching.c +113 -0
  384. package/vendor/raylib/examples/shaders/shaders_raymarching.png +0 -0
  385. package/vendor/raylib/examples/shaders/shaders_shapes_textures.c +116 -0
  386. package/vendor/raylib/examples/shaders/shaders_shapes_textures.png +0 -0
  387. package/vendor/raylib/examples/shaders/shaders_simple_mask.c +144 -0
  388. package/vendor/raylib/examples/shaders/shaders_simple_mask.png +0 -0
  389. package/vendor/raylib/examples/shaders/shaders_spotlight.c +254 -0
  390. package/vendor/raylib/examples/shaders/shaders_spotlight.png +0 -0
  391. package/vendor/raylib/examples/shaders/shaders_texture_drawing.c +80 -0
  392. package/vendor/raylib/examples/shaders/shaders_texture_drawing.png +0 -0
  393. package/vendor/raylib/examples/shaders/shaders_texture_outline.c +97 -0
  394. package/vendor/raylib/examples/shaders/shaders_texture_outline.png +0 -0
  395. package/vendor/raylib/examples/shaders/shaders_texture_waves.c +110 -0
  396. package/vendor/raylib/examples/shaders/shaders_texture_waves.png +0 -0
  397. package/vendor/raylib/examples/shapes/shapes_basic_shapes.c +78 -0
  398. package/vendor/raylib/examples/shapes/shapes_basic_shapes.png +0 -0
  399. package/vendor/raylib/examples/shapes/shapes_bouncing_ball.c +76 -0
  400. package/vendor/raylib/examples/shapes/shapes_bouncing_ball.png +0 -0
  401. package/vendor/raylib/examples/shapes/shapes_collision_area.c +108 -0
  402. package/vendor/raylib/examples/shapes/shapes_collision_area.png +0 -0
  403. package/vendor/raylib/examples/shapes/shapes_colors_palette.c +99 -0
  404. package/vendor/raylib/examples/shapes/shapes_colors_palette.png +0 -0
  405. package/vendor/raylib/examples/shapes/shapes_draw_circle_sector.c +83 -0
  406. package/vendor/raylib/examples/shapes/shapes_draw_circle_sector.png +0 -0
  407. package/vendor/raylib/examples/shapes/shapes_draw_rectangle_rounded.c +89 -0
  408. package/vendor/raylib/examples/shapes/shapes_draw_rectangle_rounded.png +0 -0
  409. package/vendor/raylib/examples/shapes/shapes_draw_ring.c +96 -0
  410. package/vendor/raylib/examples/shapes/shapes_draw_ring.png +0 -0
  411. package/vendor/raylib/examples/shapes/shapes_easings_ball_anim.c +110 -0
  412. package/vendor/raylib/examples/shapes/shapes_easings_ball_anim.png +0 -0
  413. package/vendor/raylib/examples/shapes/shapes_easings_box_anim.c +136 -0
  414. package/vendor/raylib/examples/shapes/shapes_easings_box_anim.png +0 -0
  415. package/vendor/raylib/examples/shapes/shapes_easings_rectangle_array.c +118 -0
  416. package/vendor/raylib/examples/shapes/shapes_easings_rectangle_array.png +0 -0
  417. package/vendor/raylib/examples/shapes/shapes_following_eyes.c +104 -0
  418. package/vendor/raylib/examples/shapes/shapes_following_eyes.png +0 -0
  419. package/vendor/raylib/examples/shapes/shapes_lines_bezier.c +59 -0
  420. package/vendor/raylib/examples/shapes/shapes_lines_bezier.png +0 -0
  421. package/vendor/raylib/examples/shapes/shapes_logo_raylib.c +56 -0
  422. package/vendor/raylib/examples/shapes/shapes_logo_raylib.png +0 -0
  423. package/vendor/raylib/examples/shapes/shapes_logo_raylib_anim.c +160 -0
  424. package/vendor/raylib/examples/shapes/shapes_logo_raylib_anim.png +0 -0
  425. package/vendor/raylib/examples/shapes/shapes_rectangle_scaling.c +94 -0
  426. package/vendor/raylib/examples/shapes/shapes_rectangle_scaling.png +0 -0
  427. package/vendor/raylib/examples/text/resources/KAISG.ttf +0 -0
  428. package/vendor/raylib/examples/text/resources/LICENSE.md +20 -0
  429. package/vendor/raylib/examples/text/resources/anonymous_pro_bold.ttf +0 -0
  430. package/vendor/raylib/examples/text/resources/custom_alagard.png +0 -0
  431. package/vendor/raylib/examples/text/resources/custom_jupiter_crash.png +0 -0
  432. package/vendor/raylib/examples/text/resources/custom_mecha.png +0 -0
  433. package/vendor/raylib/examples/text/resources/dejavu.fnt +1115 -0
  434. package/vendor/raylib/examples/text/resources/dejavu.png +0 -0
  435. package/vendor/raylib/examples/text/resources/fonts/alagard.png +0 -0
  436. package/vendor/raylib/examples/text/resources/fonts/alpha_beta.png +0 -0
  437. package/vendor/raylib/examples/text/resources/fonts/jupiter_crash.png +0 -0
  438. package/vendor/raylib/examples/text/resources/fonts/mecha.png +0 -0
  439. package/vendor/raylib/examples/text/resources/fonts/pixantiqua.png +0 -0
  440. package/vendor/raylib/examples/text/resources/fonts/pixelplay.png +0 -0
  441. package/vendor/raylib/examples/text/resources/fonts/romulus.png +0 -0
  442. package/vendor/raylib/examples/text/resources/fonts/setback.png +0 -0
  443. package/vendor/raylib/examples/text/resources/noto_cjk.fnt +580 -0
  444. package/vendor/raylib/examples/text/resources/noto_cjk.png +0 -0
  445. package/vendor/raylib/examples/text/resources/pixantiqua.fnt +188 -0
  446. package/vendor/raylib/examples/text/resources/pixantiqua.png +0 -0
  447. package/vendor/raylib/examples/text/resources/pixantiqua.ttf +0 -0
  448. package/vendor/raylib/examples/text/resources/shaders/glsl100/alpha_discard.fs +20 -0
  449. package/vendor/raylib/examples/text/resources/shaders/glsl100/sdf.fs +25 -0
  450. package/vendor/raylib/examples/text/resources/shaders/glsl330/alpha_discard.fs +19 -0
  451. package/vendor/raylib/examples/text/resources/shaders/glsl330/sdf.fs +26 -0
  452. package/vendor/raylib/examples/text/resources/symbola.fnt +191 -0
  453. package/vendor/raylib/examples/text/resources/symbola.png +0 -0
  454. package/vendor/raylib/examples/text/text_draw_3d.c +739 -0
  455. package/vendor/raylib/examples/text/text_draw_3d.png +0 -0
  456. package/vendor/raylib/examples/text/text_font_filters.c +134 -0
  457. package/vendor/raylib/examples/text/text_font_filters.png +0 -0
  458. package/vendor/raylib/examples/text/text_font_loading.c +91 -0
  459. package/vendor/raylib/examples/text/text_font_loading.png +0 -0
  460. package/vendor/raylib/examples/text/text_font_sdf.c +141 -0
  461. package/vendor/raylib/examples/text/text_font_sdf.png +0 -0
  462. package/vendor/raylib/examples/text/text_font_spritefont.c +85 -0
  463. package/vendor/raylib/examples/text/text_font_spritefont.png +0 -0
  464. package/vendor/raylib/examples/text/text_format_text.c +62 -0
  465. package/vendor/raylib/examples/text/text_format_text.png +0 -0
  466. package/vendor/raylib/examples/text/text_input_box.c +127 -0
  467. package/vendor/raylib/examples/text/text_input_box.png +0 -0
  468. package/vendor/raylib/examples/text/text_raylib_fonts.c +105 -0
  469. package/vendor/raylib/examples/text/text_raylib_fonts.png +0 -0
  470. package/vendor/raylib/examples/text/text_rectangle_bounds.c +264 -0
  471. package/vendor/raylib/examples/text/text_rectangle_bounds.png +0 -0
  472. package/vendor/raylib/examples/text/text_unicode.c +465 -0
  473. package/vendor/raylib/examples/text/text_unicode.png +0 -0
  474. package/vendor/raylib/examples/text/text_writing_anim.c +62 -0
  475. package/vendor/raylib/examples/text/text_writing_anim.png +0 -0
  476. package/vendor/raylib/examples/textures/resources/KAISG.ttf +0 -0
  477. package/vendor/raylib/examples/textures/resources/LICENSE.md +18 -0
  478. package/vendor/raylib/examples/textures/resources/boom.wav +0 -0
  479. package/vendor/raylib/examples/textures/resources/button.png +0 -0
  480. package/vendor/raylib/examples/textures/resources/buttonfx.wav +0 -0
  481. package/vendor/raylib/examples/textures/resources/cat.png +0 -0
  482. package/vendor/raylib/examples/textures/resources/custom_jupiter_crash.png +0 -0
  483. package/vendor/raylib/examples/textures/resources/cyberpunk_street_background.png +0 -0
  484. package/vendor/raylib/examples/textures/resources/cyberpunk_street_foreground.png +0 -0
  485. package/vendor/raylib/examples/textures/resources/cyberpunk_street_midground.png +0 -0
  486. package/vendor/raylib/examples/textures/resources/explosion.png +0 -0
  487. package/vendor/raylib/examples/textures/resources/fudesumi.png +0 -0
  488. package/vendor/raylib/examples/textures/resources/fudesumi.raw +0 -0
  489. package/vendor/raylib/examples/textures/resources/ninepatch_button.png +0 -0
  490. package/vendor/raylib/examples/textures/resources/parrots.png +0 -0
  491. package/vendor/raylib/examples/textures/resources/patterns.png +0 -0
  492. package/vendor/raylib/examples/textures/resources/raylib_logo.png +0 -0
  493. package/vendor/raylib/examples/textures/resources/scarfy.png +0 -0
  494. package/vendor/raylib/examples/textures/resources/spark_flame.png +0 -0
  495. package/vendor/raylib/examples/textures/resources/wabbit_alpha.png +0 -0
  496. package/vendor/raylib/examples/textures/textures_background_scrolling.c +87 -0
  497. package/vendor/raylib/examples/textures/textures_background_scrolling.png +0 -0
  498. package/vendor/raylib/examples/textures/textures_blend_modes.c +93 -0
  499. package/vendor/raylib/examples/textures/textures_blend_modes.png +0 -0
  500. package/vendor/raylib/examples/textures/textures_bunnymark.c +120 -0
  501. package/vendor/raylib/examples/textures/textures_bunnymark.png +0 -0
  502. package/vendor/raylib/examples/textures/textures_draw_tiled.c +165 -0
  503. package/vendor/raylib/examples/textures/textures_draw_tiled.png +0 -0
  504. package/vendor/raylib/examples/textures/textures_image_drawing.c +91 -0
  505. package/vendor/raylib/examples/textures/textures_image_drawing.png +0 -0
  506. package/vendor/raylib/examples/textures/textures_image_generation.c +102 -0
  507. package/vendor/raylib/examples/textures/textures_image_generation.png +0 -0
  508. package/vendor/raylib/examples/textures/textures_image_loading.c +64 -0
  509. package/vendor/raylib/examples/textures/textures_image_loading.png +0 -0
  510. package/vendor/raylib/examples/textures/textures_image_processing.c +169 -0
  511. package/vendor/raylib/examples/textures/textures_image_processing.png +0 -0
  512. package/vendor/raylib/examples/textures/textures_image_text.c +83 -0
  513. package/vendor/raylib/examples/textures/textures_image_text.png +0 -0
  514. package/vendor/raylib/examples/textures/textures_logo_raylib.c +57 -0
  515. package/vendor/raylib/examples/textures/textures_logo_raylib.png +0 -0
  516. package/vendor/raylib/examples/textures/textures_mouse_painting.c +221 -0
  517. package/vendor/raylib/examples/textures/textures_mouse_painting.png +0 -0
  518. package/vendor/raylib/examples/textures/textures_npatch_drawing.c +109 -0
  519. package/vendor/raylib/examples/textures/textures_npatch_drawing.png +0 -0
  520. package/vendor/raylib/examples/textures/textures_particles_blending.c +135 -0
  521. package/vendor/raylib/examples/textures/textures_particles_blending.png +0 -0
  522. package/vendor/raylib/examples/textures/textures_polygon.c +100 -0
  523. package/vendor/raylib/examples/textures/textures_polygon.png +0 -0
  524. package/vendor/raylib/examples/textures/textures_raw_data.c +99 -0
  525. package/vendor/raylib/examples/textures/textures_raw_data.png +0 -0
  526. package/vendor/raylib/examples/textures/textures_rectangle.c +99 -0
  527. package/vendor/raylib/examples/textures/textures_rectangle.png +0 -0
  528. package/vendor/raylib/examples/textures/textures_sprite_button.c +97 -0
  529. package/vendor/raylib/examples/textures/textures_sprite_button.png +0 -0
  530. package/vendor/raylib/examples/textures/textures_sprite_explosion.c +120 -0
  531. package/vendor/raylib/examples/textures/textures_sprite_explosion.png +0 -0
  532. package/vendor/raylib/examples/textures/textures_srcrec_dstrec.c +82 -0
  533. package/vendor/raylib/examples/textures/textures_srcrec_dstrec.png +0 -0
  534. package/vendor/raylib/examples/textures/textures_to_image.c +68 -0
  535. package/vendor/raylib/examples/textures/textures_to_image.png +0 -0
  536. package/vendor/raylib/logo/raylib.ico +0 -0
  537. package/vendor/raylib/logo/raylib_128x128.png +0 -0
  538. package/vendor/raylib/logo/raylib_144x144.png +0 -0
  539. package/vendor/raylib/logo/raylib_16x16.png +0 -0
  540. package/vendor/raylib/logo/raylib_180x180.png +0 -0
  541. package/vendor/raylib/logo/raylib_24x24.png +0 -0
  542. package/vendor/raylib/logo/raylib_256x256.png +0 -0
  543. package/vendor/raylib/logo/raylib_32x32.png +0 -0
  544. package/vendor/raylib/logo/raylib_36x36.png +0 -0
  545. package/vendor/raylib/logo/raylib_48x48.png +0 -0
  546. package/vendor/raylib/logo/raylib_512x512.png +0 -0
  547. package/vendor/raylib/logo/raylib_64x64.png +0 -0
  548. package/vendor/raylib/logo/raylib_72x72.png +0 -0
  549. package/vendor/raylib/logo/raylib_96x96.png +0 -0
  550. package/vendor/raylib/logo/raylib_logo_animation.gif +0 -0
  551. package/vendor/raylib/parser/LICENSE +16 -0
  552. package/vendor/raylib/parser/README.md +63 -0
  553. package/vendor/raylib/parser/raylib_api.json +6668 -0
  554. package/vendor/raylib/parser/raylib_api.txt +3568 -0
  555. package/vendor/raylib/parser/raylib_api.xml +2509 -0
  556. package/vendor/raylib/parser/raylib_parser.c +1003 -0
  557. package/vendor/raylib/projects/4coder/Makefile +401 -0
  558. package/vendor/raylib/projects/4coder/Makefile.Android +300 -0
  559. package/vendor/raylib/projects/4coder/main.c +39 -0
  560. package/vendor/raylib/projects/4coder/project.4coder +54 -0
  561. package/vendor/raylib/projects/Builder/README.md +24 -0
  562. package/vendor/raylib/projects/Builder/examples/README.md +1 -0
  563. package/vendor/raylib/projects/Builder/examples/meson.build +25 -0
  564. package/vendor/raylib/projects/Builder/meson.build +25 -0
  565. package/vendor/raylib/projects/CMake/CMakeLists.txt +44 -0
  566. package/vendor/raylib/projects/CMake/core_basic_window.c +62 -0
  567. package/vendor/raylib/projects/CodeBlocks/README.md +22 -0
  568. package/vendor/raylib/projects/CodeBlocks/compiler_settings.png +0 -0
  569. package/vendor/raylib/projects/CodeBlocks/core_basic_window.c +58 -0
  570. package/vendor/raylib/projects/CodeBlocks/core_basic_window.cbp +137 -0
  571. package/vendor/raylib/projects/Geany/core_basic_window.c +52 -0
  572. package/vendor/raylib/projects/Geany/raylib.c.tags +452 -0
  573. package/vendor/raylib/projects/Geany/raylib_compile_execute.bat +21 -0
  574. package/vendor/raylib/projects/Geany/raylib_compile_sources.bat +42 -0
  575. package/vendor/raylib/projects/Geany/raylib_project.geany +41 -0
  576. package/vendor/raylib/projects/Notepad++/README.md +19 -0
  577. package/vendor/raylib/projects/Notepad++/c_raylib.xml +3104 -0
  578. package/vendor/raylib/projects/Notepad++/npes_saved_mingw.txt +0 -0
  579. package/vendor/raylib/projects/Notepad++/npes_saved_tcc.txt +0 -0
  580. package/vendor/raylib/projects/Notepad++/npes_saved_w64devkit.txt +0 -0
  581. package/vendor/raylib/projects/Notepad++/npes_saved_zig.txt +0 -0
  582. package/vendor/raylib/projects/Notepad++/raylib_npp_parser/raylib_npp.xml +3060 -0
  583. package/vendor/raylib/projects/Notepad++/raylib_npp_parser/raylib_npp_parser.c +150 -0
  584. package/vendor/raylib/projects/Notepad++/raylib_npp_parser/raylib_to_parse.h +631 -0
  585. package/vendor/raylib/projects/README.md +18 -0
  586. package/vendor/raylib/projects/SublimeText/README.md +13 -0
  587. package/vendor/raylib/projects/SublimeText/raylib.sublime-build +13 -0
  588. package/vendor/raylib/projects/SublimeText/raylib.sublime-project +8 -0
  589. package/vendor/raylib/projects/VS2019/examples/audio_module_playing.vcxproj +387 -0
  590. package/vendor/raylib/projects/VS2019/examples/audio_multichannel_sound.vcxproj +387 -0
  591. package/vendor/raylib/projects/VS2019/examples/audio_music_stream.vcxproj +387 -0
  592. package/vendor/raylib/projects/VS2019/examples/audio_raw_stream.vcxproj +387 -0
  593. package/vendor/raylib/projects/VS2019/examples/audio_sound_loading.vcxproj +387 -0
  594. package/vendor/raylib/projects/VS2019/examples/core_2d_camera.vcxproj +387 -0
  595. package/vendor/raylib/projects/VS2019/examples/core_2d_camera_platformer.vcxproj +387 -0
  596. package/vendor/raylib/projects/VS2019/examples/core_3d_camera_first_person.vcxproj +387 -0
  597. package/vendor/raylib/projects/VS2019/examples/core_3d_camera_free.vcxproj +387 -0
  598. package/vendor/raylib/projects/VS2019/examples/core_3d_camera_mode.vcxproj +387 -0
  599. package/vendor/raylib/projects/VS2019/examples/core_3d_picking.vcxproj +387 -0
  600. package/vendor/raylib/projects/VS2019/examples/core_basic_window.vcxproj +387 -0
  601. package/vendor/raylib/projects/VS2019/examples/core_custom_logging.vcxproj +387 -0
  602. package/vendor/raylib/projects/VS2019/examples/core_drop_files.vcxproj +387 -0
  603. package/vendor/raylib/projects/VS2019/examples/core_input_gamepad.vcxproj +387 -0
  604. package/vendor/raylib/projects/VS2019/examples/core_input_gestures.vcxproj +387 -0
  605. package/vendor/raylib/projects/VS2019/examples/core_input_keys.vcxproj +387 -0
  606. package/vendor/raylib/projects/VS2019/examples/core_input_mouse.vcxproj +387 -0
  607. package/vendor/raylib/projects/VS2019/examples/core_input_mouse_wheel.vcxproj +387 -0
  608. package/vendor/raylib/projects/VS2019/examples/core_input_multitouch.vcxproj +387 -0
  609. package/vendor/raylib/projects/VS2019/examples/core_loading_thread.vcxproj +387 -0
  610. package/vendor/raylib/projects/VS2019/examples/core_quat_conversion.vcxproj +387 -0
  611. package/vendor/raylib/projects/VS2019/examples/core_random_values.vcxproj +387 -0
  612. package/vendor/raylib/projects/VS2019/examples/core_scissor_test.vcxproj +387 -0
  613. package/vendor/raylib/projects/VS2019/examples/core_split_screen.vcxproj +387 -0
  614. package/vendor/raylib/projects/VS2019/examples/core_storage_values.vcxproj +387 -0
  615. package/vendor/raylib/projects/VS2019/examples/core_vr_simulator.vcxproj +387 -0
  616. package/vendor/raylib/projects/VS2019/examples/core_window_flags.vcxproj +387 -0
  617. package/vendor/raylib/projects/VS2019/examples/core_window_letterbox.vcxproj +387 -0
  618. package/vendor/raylib/projects/VS2019/examples/core_world_screen.vcxproj +387 -0
  619. package/vendor/raylib/projects/VS2019/examples/easings_testbed.vcxproj +387 -0
  620. package/vendor/raylib/projects/VS2019/examples/embedded_files_loading.vcxproj +387 -0
  621. package/vendor/raylib/projects/VS2019/examples/models_animation.vcxproj +387 -0
  622. package/vendor/raylib/projects/VS2019/examples/models_billboard.vcxproj +387 -0
  623. package/vendor/raylib/projects/VS2019/examples/models_box_collisions.vcxproj +387 -0
  624. package/vendor/raylib/projects/VS2019/examples/models_cubicmap.vcxproj +387 -0
  625. package/vendor/raylib/projects/VS2019/examples/models_first_person_maze.vcxproj +387 -0
  626. package/vendor/raylib/projects/VS2019/examples/models_geometric_shapes.vcxproj +387 -0
  627. package/vendor/raylib/projects/VS2019/examples/models_heightmap.vcxproj +387 -0
  628. package/vendor/raylib/projects/VS2019/examples/models_loading.vcxproj +387 -0
  629. package/vendor/raylib/projects/VS2019/examples/models_loading_gltf.vcxproj +387 -0
  630. package/vendor/raylib/projects/VS2019/examples/models_loading_vox.vcxproj +387 -0
  631. package/vendor/raylib/projects/VS2019/examples/models_mesh_generation.vcxproj +387 -0
  632. package/vendor/raylib/projects/VS2019/examples/models_mesh_picking.vcxproj +387 -0
  633. package/vendor/raylib/projects/VS2019/examples/models_orthographic_projection.vcxproj +387 -0
  634. package/vendor/raylib/projects/VS2019/examples/models_rlgl_solar_system.vcxproj +387 -0
  635. package/vendor/raylib/projects/VS2019/examples/models_skybox.vcxproj +387 -0
  636. package/vendor/raylib/projects/VS2019/examples/models_waving_cubes.vcxproj +387 -0
  637. package/vendor/raylib/projects/VS2019/examples/models_yaw_pitch_roll.vcxproj +387 -0
  638. package/vendor/raylib/projects/VS2019/examples/physics_demo.vcxproj +387 -0
  639. package/vendor/raylib/projects/VS2019/examples/physics_friction.vcxproj +387 -0
  640. package/vendor/raylib/projects/VS2019/examples/physics_movement.vcxproj +387 -0
  641. package/vendor/raylib/projects/VS2019/examples/physics_restitution.vcxproj +387 -0
  642. package/vendor/raylib/projects/VS2019/examples/physics_shatter.vcxproj +387 -0
  643. package/vendor/raylib/projects/VS2019/examples/raudio_standalone.vcxproj +387 -0
  644. package/vendor/raylib/projects/VS2019/examples/rlgl_standalone.vcxproj +391 -0
  645. package/vendor/raylib/projects/VS2019/examples/shaders_basic_lighting.vcxproj +387 -0
  646. package/vendor/raylib/projects/VS2019/examples/shaders_custom_uniform.vcxproj +387 -0
  647. package/vendor/raylib/projects/VS2019/examples/shaders_eratosthenes.vcxproj +387 -0
  648. package/vendor/raylib/projects/VS2019/examples/shaders_fog.vcxproj +387 -0
  649. package/vendor/raylib/projects/VS2019/examples/shaders_hot_reloading.vcxproj +387 -0
  650. package/vendor/raylib/projects/VS2019/examples/shaders_julia_set.vcxproj +387 -0
  651. package/vendor/raylib/projects/VS2019/examples/shaders_mesh_instancing.vcxproj +387 -0
  652. package/vendor/raylib/projects/VS2019/examples/shaders_model_shader.vcxproj +387 -0
  653. package/vendor/raylib/projects/VS2019/examples/shaders_multi_sample2d.vcxproj +387 -0
  654. package/vendor/raylib/projects/VS2019/examples/shaders_palette_switch.vcxproj +387 -0
  655. package/vendor/raylib/projects/VS2019/examples/shaders_postprocessing.vcxproj +387 -0
  656. package/vendor/raylib/projects/VS2019/examples/shaders_raymarching.vcxproj +387 -0
  657. package/vendor/raylib/projects/VS2019/examples/shaders_shapes_textures.vcxproj +387 -0
  658. package/vendor/raylib/projects/VS2019/examples/shaders_simple_mask.vcxproj +387 -0
  659. package/vendor/raylib/projects/VS2019/examples/shaders_spotlight.vcxproj +387 -0
  660. package/vendor/raylib/projects/VS2019/examples/shaders_texture_drawing.vcxproj +387 -0
  661. package/vendor/raylib/projects/VS2019/examples/shaders_texture_waves.vcxproj +387 -0
  662. package/vendor/raylib/projects/VS2019/examples/shapes_basic_shapes.vcxproj +387 -0
  663. package/vendor/raylib/projects/VS2019/examples/shapes_bouncing_ball.vcxproj +387 -0
  664. package/vendor/raylib/projects/VS2019/examples/shapes_collision_area.vcxproj +387 -0
  665. package/vendor/raylib/projects/VS2019/examples/shapes_colors_palette.vcxproj +387 -0
  666. package/vendor/raylib/projects/VS2019/examples/shapes_draw_circle_sector.vcxproj +387 -0
  667. package/vendor/raylib/projects/VS2019/examples/shapes_draw_rectangle_rounded.vcxproj +387 -0
  668. package/vendor/raylib/projects/VS2019/examples/shapes_draw_ring.vcxproj +387 -0
  669. package/vendor/raylib/projects/VS2019/examples/shapes_easings_ball_anim.vcxproj +387 -0
  670. package/vendor/raylib/projects/VS2019/examples/shapes_easings_box_anim.vcxproj +387 -0
  671. package/vendor/raylib/projects/VS2019/examples/shapes_easings_rectangle_array.vcxproj +387 -0
  672. package/vendor/raylib/projects/VS2019/examples/shapes_following_eyes.vcxproj +387 -0
  673. package/vendor/raylib/projects/VS2019/examples/shapes_lines_bezier.vcxproj +387 -0
  674. package/vendor/raylib/projects/VS2019/examples/shapes_logo_raylib.vcxproj +387 -0
  675. package/vendor/raylib/projects/VS2019/examples/shapes_logo_raylib_anim.vcxproj +387 -0
  676. package/vendor/raylib/projects/VS2019/examples/shapes_rectangle_scaling.vcxproj +387 -0
  677. package/vendor/raylib/projects/VS2019/examples/text_font_filters.vcxproj +387 -0
  678. package/vendor/raylib/projects/VS2019/examples/text_font_loading.vcxproj +387 -0
  679. package/vendor/raylib/projects/VS2019/examples/text_font_sdf.vcxproj +387 -0
  680. package/vendor/raylib/projects/VS2019/examples/text_font_spritefont.vcxproj +387 -0
  681. package/vendor/raylib/projects/VS2019/examples/text_format_text.vcxproj +387 -0
  682. package/vendor/raylib/projects/VS2019/examples/text_input_box.vcxproj +387 -0
  683. package/vendor/raylib/projects/VS2019/examples/text_raylib_fonts.vcxproj +387 -0
  684. package/vendor/raylib/projects/VS2019/examples/text_rectangle_bounds.vcxproj +387 -0
  685. package/vendor/raylib/projects/VS2019/examples/text_unicode.vcxproj +387 -0
  686. package/vendor/raylib/projects/VS2019/examples/text_writing_anim.vcxproj +387 -0
  687. package/vendor/raylib/projects/VS2019/examples/textures_background_scrolling.vcxproj +387 -0
  688. package/vendor/raylib/projects/VS2019/examples/textures_blend_modes.vcxproj +387 -0
  689. package/vendor/raylib/projects/VS2019/examples/textures_bunnymark.vcxproj +387 -0
  690. package/vendor/raylib/projects/VS2019/examples/textures_draw_tiled.vcxproj +387 -0
  691. package/vendor/raylib/projects/VS2019/examples/textures_image_drawing.vcxproj +387 -0
  692. package/vendor/raylib/projects/VS2019/examples/textures_image_generation.vcxproj +387 -0
  693. package/vendor/raylib/projects/VS2019/examples/textures_image_loading.vcxproj +387 -0
  694. package/vendor/raylib/projects/VS2019/examples/textures_image_processing.vcxproj +387 -0
  695. package/vendor/raylib/projects/VS2019/examples/textures_image_text.vcxproj +387 -0
  696. package/vendor/raylib/projects/VS2019/examples/textures_logo_raylib.vcxproj +387 -0
  697. package/vendor/raylib/projects/VS2019/examples/textures_mouse_painting.vcxproj +387 -0
  698. package/vendor/raylib/projects/VS2019/examples/textures_npatch_drawing.vcxproj +387 -0
  699. package/vendor/raylib/projects/VS2019/examples/textures_particles_blending.vcxproj +387 -0
  700. package/vendor/raylib/projects/VS2019/examples/textures_raw_data.vcxproj +387 -0
  701. package/vendor/raylib/projects/VS2019/examples/textures_rectangle.vcxproj +387 -0
  702. package/vendor/raylib/projects/VS2019/examples/textures_sprite_button.vcxproj +387 -0
  703. package/vendor/raylib/projects/VS2019/examples/textures_sprite_explosion.vcxproj +387 -0
  704. package/vendor/raylib/projects/VS2019/examples/textures_srcrec_dstrec.vcxproj +387 -0
  705. package/vendor/raylib/projects/VS2019/examples/textures_to_image.vcxproj +387 -0
  706. package/vendor/raylib/projects/VS2019/raylib/raylib.rc +0 -0
  707. package/vendor/raylib/projects/VS2019/raylib/raylib.vcxproj +341 -0
  708. package/vendor/raylib/projects/VS2019/raylib/resource.h +14 -0
  709. package/vendor/raylib/projects/VS2019/raylib.sln +2274 -0
  710. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/android_native_app_glue.c +437 -0
  711. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/android_native_app_glue.h +344 -0
  712. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/main.c +64 -0
  713. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj +226 -0
  714. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj.filters +10 -0
  715. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj.user +4 -0
  716. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.Packaging/AndroidManifest.xml +22 -0
  717. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.Packaging/build.xml +90 -0
  718. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.Packaging/project.properties +3 -0
  719. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.Packaging/raylib_android.Packaging.androidproj +134 -0
  720. package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.Packaging/res/values/strings.xml +4 -0
  721. package/vendor/raylib/projects/VS2019-Android/raylib_android.sln +75 -0
  722. package/vendor/raylib/projects/VSCode/.vscode/c_cpp_properties.json +63 -0
  723. package/vendor/raylib/projects/VSCode/.vscode/launch.json +60 -0
  724. package/vendor/raylib/projects/VSCode/.vscode/settings.json +11 -0
  725. package/vendor/raylib/projects/VSCode/.vscode/tasks.json +71 -0
  726. package/vendor/raylib/projects/VSCode/Makefile +408 -0
  727. package/vendor/raylib/projects/VSCode/Makefile.Android +300 -0
  728. package/vendor/raylib/projects/VSCode/main.c +83 -0
  729. package/vendor/raylib/projects/VSCode/main.code-workspace +16 -0
  730. package/vendor/raylib/projects/scripts/README.md +68 -0
  731. package/vendor/raylib/projects/scripts/build-linux.sh +169 -0
  732. package/vendor/raylib/projects/scripts/build-osx.sh +171 -0
  733. package/vendor/raylib/projects/scripts/build-rpi.sh +169 -0
  734. package/vendor/raylib/projects/scripts/build-windows.bat +219 -0
  735. package/vendor/raylib/projects/scripts/core_basic_window.c +61 -0
  736. package/vendor/raylib/raylib.pc.in +13 -0
  737. package/vendor/raylib/src/CMakeLists.txt +121 -0
  738. package/vendor/raylib/src/Makefile +696 -0
  739. package/vendor/raylib/src/build.zig +60 -0
  740. package/vendor/raylib/src/config.h +230 -0
  741. package/vendor/raylib/src/external/cgltf.h +6501 -0
  742. package/vendor/raylib/src/external/dirent.h +183 -0
  743. package/vendor/raylib/src/external/dr_flac.h +12269 -0
  744. package/vendor/raylib/src/external/dr_mp3.h +4787 -0
  745. package/vendor/raylib/src/external/dr_wav.h +8019 -0
  746. package/vendor/raylib/src/external/glad.h +8640 -0
  747. package/vendor/raylib/src/external/glfw/.mailmap +10 -0
  748. package/vendor/raylib/src/external/glfw/CMake/GenerateMappings.cmake +33 -0
  749. package/vendor/raylib/src/external/glfw/CMake/Info.plist.in +38 -0
  750. package/vendor/raylib/src/external/glfw/CMake/MacOSXBundleInfo.plist.in +38 -0
  751. package/vendor/raylib/src/external/glfw/CMake/cmake_uninstall.cmake.in +29 -0
  752. package/vendor/raylib/src/external/glfw/CMake/glfw3.pc.in +13 -0
  753. package/vendor/raylib/src/external/glfw/CMake/glfw3Config.cmake.in +3 -0
  754. package/vendor/raylib/src/external/glfw/CMake/i686-w64-mingw32-clang.cmake +13 -0
  755. package/vendor/raylib/src/external/glfw/CMake/i686-w64-mingw32.cmake +13 -0
  756. package/vendor/raylib/src/external/glfw/CMake/modules/FindEpollShim.cmake +17 -0
  757. package/vendor/raylib/src/external/glfw/CMake/modules/FindOSMesa.cmake +18 -0
  758. package/vendor/raylib/src/external/glfw/CMake/modules/FindWaylandProtocols.cmake +26 -0
  759. package/vendor/raylib/src/external/glfw/CMake/modules/FindXKBCommon.cmake +34 -0
  760. package/vendor/raylib/src/external/glfw/CMake/x86_64-w64-mingw32-clang.cmake +13 -0
  761. package/vendor/raylib/src/external/glfw/CMake/x86_64-w64-mingw32.cmake +13 -0
  762. package/vendor/raylib/src/external/glfw/CMakeLists.txt +323 -0
  763. package/vendor/raylib/src/external/glfw/LICENSE.md +23 -0
  764. package/vendor/raylib/src/external/glfw/README.md +477 -0
  765. package/vendor/raylib/src/external/glfw/deps/getopt.c +230 -0
  766. package/vendor/raylib/src/external/glfw/deps/getopt.h +57 -0
  767. package/vendor/raylib/src/external/glfw/deps/glad/gl.h +3840 -0
  768. package/vendor/raylib/src/external/glfw/deps/glad/khrplatform.h +282 -0
  769. package/vendor/raylib/src/external/glfw/deps/glad/vk_platform.h +92 -0
  770. package/vendor/raylib/src/external/glfw/deps/glad/vulkan.h +3480 -0
  771. package/vendor/raylib/src/external/glfw/deps/glad_gl.c +1791 -0
  772. package/vendor/raylib/src/external/glfw/deps/glad_vulkan.c +593 -0
  773. package/vendor/raylib/src/external/glfw/deps/mingw/_mingw_dxhelper.h +117 -0
  774. package/vendor/raylib/src/external/glfw/deps/mingw/dinput.h +2467 -0
  775. package/vendor/raylib/src/external/glfw/deps/mingw/xinput.h +239 -0
  776. package/vendor/raylib/src/external/glfw/deps/vs2008/stdint.h +247 -0
  777. package/vendor/raylib/src/external/glfw/include/GLFW/glfw3.h +6075 -0
  778. package/vendor/raylib/src/external/glfw/include/GLFW/glfw3native.h +530 -0
  779. package/vendor/raylib/src/external/glfw/src/CMakeLists.txt +246 -0
  780. package/vendor/raylib/src/external/glfw/src/cocoa_init.m +620 -0
  781. package/vendor/raylib/src/external/glfw/src/cocoa_joystick.h +46 -0
  782. package/vendor/raylib/src/external/glfw/src/cocoa_joystick.m +483 -0
  783. package/vendor/raylib/src/external/glfw/src/cocoa_monitor.m +631 -0
  784. package/vendor/raylib/src/external/glfw/src/cocoa_platform.h +206 -0
  785. package/vendor/raylib/src/external/glfw/src/cocoa_time.c +62 -0
  786. package/vendor/raylib/src/external/glfw/src/cocoa_window.m +1923 -0
  787. package/vendor/raylib/src/external/glfw/src/context.c +756 -0
  788. package/vendor/raylib/src/external/glfw/src/egl_context.c +846 -0
  789. package/vendor/raylib/src/external/glfw/src/egl_context.h +229 -0
  790. package/vendor/raylib/src/external/glfw/src/glfw.rc.in +30 -0
  791. package/vendor/raylib/src/external/glfw/src/glfw_config.h.in +58 -0
  792. package/vendor/raylib/src/external/glfw/src/glx_context.c +699 -0
  793. package/vendor/raylib/src/external/glfw/src/glx_context.h +181 -0
  794. package/vendor/raylib/src/external/glfw/src/init.c +357 -0
  795. package/vendor/raylib/src/external/glfw/src/input.c +1406 -0
  796. package/vendor/raylib/src/external/glfw/src/internal.h +799 -0
  797. package/vendor/raylib/src/external/glfw/src/linux_joystick.c +428 -0
  798. package/vendor/raylib/src/external/glfw/src/linux_joystick.h +59 -0
  799. package/vendor/raylib/src/external/glfw/src/mappings.h +1550 -0
  800. package/vendor/raylib/src/external/glfw/src/mappings.h.in +73 -0
  801. package/vendor/raylib/src/external/glfw/src/monitor.c +542 -0
  802. package/vendor/raylib/src/external/glfw/src/nsgl_context.h +66 -0
  803. package/vendor/raylib/src/external/glfw/src/nsgl_context.m +369 -0
  804. package/vendor/raylib/src/external/glfw/src/null_init.c +57 -0
  805. package/vendor/raylib/src/external/glfw/src/null_joystick.c +53 -0
  806. package/vendor/raylib/src/external/glfw/src/null_joystick.h +31 -0
  807. package/vendor/raylib/src/external/glfw/src/null_monitor.c +159 -0
  808. package/vendor/raylib/src/external/glfw/src/null_platform.h +89 -0
  809. package/vendor/raylib/src/external/glfw/src/null_window.c +670 -0
  810. package/vendor/raylib/src/external/glfw/src/osmesa_context.c +372 -0
  811. package/vendor/raylib/src/external/glfw/src/osmesa_context.h +90 -0
  812. package/vendor/raylib/src/external/glfw/src/posix_thread.c +105 -0
  813. package/vendor/raylib/src/external/glfw/src/posix_thread.h +51 -0
  814. package/vendor/raylib/src/external/glfw/src/posix_time.c +90 -0
  815. package/vendor/raylib/src/external/glfw/src/posix_time.h +44 -0
  816. package/vendor/raylib/src/external/glfw/src/vulkan.c +332 -0
  817. package/vendor/raylib/src/external/glfw/src/wgl_context.c +798 -0
  818. package/vendor/raylib/src/external/glfw/src/wgl_context.h +160 -0
  819. package/vendor/raylib/src/external/glfw/src/win32_init.c +636 -0
  820. package/vendor/raylib/src/external/glfw/src/win32_joystick.c +753 -0
  821. package/vendor/raylib/src/external/glfw/src/win32_joystick.h +53 -0
  822. package/vendor/raylib/src/external/glfw/src/win32_monitor.c +537 -0
  823. package/vendor/raylib/src/external/glfw/src/win32_platform.h +462 -0
  824. package/vendor/raylib/src/external/glfw/src/win32_thread.c +99 -0
  825. package/vendor/raylib/src/external/glfw/src/win32_time.c +76 -0
  826. package/vendor/raylib/src/external/glfw/src/win32_window.c +2405 -0
  827. package/vendor/raylib/src/external/glfw/src/window.c +1114 -0
  828. package/vendor/raylib/src/external/glfw/src/wl_init.c +1310 -0
  829. package/vendor/raylib/src/external/glfw/src/wl_monitor.c +231 -0
  830. package/vendor/raylib/src/external/glfw/src/wl_platform.h +352 -0
  831. package/vendor/raylib/src/external/glfw/src/wl_window.c +1814 -0
  832. package/vendor/raylib/src/external/glfw/src/x11_init.c +1500 -0
  833. package/vendor/raylib/src/external/glfw/src/x11_monitor.c +614 -0
  834. package/vendor/raylib/src/external/glfw/src/x11_platform.h +798 -0
  835. package/vendor/raylib/src/external/glfw/src/x11_window.c +3310 -0
  836. package/vendor/raylib/src/external/glfw/src/xkb_unicode.c +942 -0
  837. package/vendor/raylib/src/external/glfw/src/xkb_unicode.h +28 -0
  838. package/vendor/raylib/src/external/jar_mod.h +1596 -0
  839. package/vendor/raylib/src/external/jar_xm.h +2470 -0
  840. package/vendor/raylib/src/external/miniaudio.h +70273 -0
  841. package/vendor/raylib/src/external/msf_gif.h +717 -0
  842. package/vendor/raylib/src/external/par_shapes.h +2155 -0
  843. package/vendor/raylib/src/external/sdefl.h +696 -0
  844. package/vendor/raylib/src/external/sinfl.h +584 -0
  845. package/vendor/raylib/src/external/stb_image.h +7897 -0
  846. package/vendor/raylib/src/external/stb_image_resize.h +2634 -0
  847. package/vendor/raylib/src/external/stb_image_write.h +1724 -0
  848. package/vendor/raylib/src/external/stb_rect_pack.h +623 -0
  849. package/vendor/raylib/src/external/stb_truetype.h +5077 -0
  850. package/vendor/raylib/src/external/stb_vorbis.h +5475 -0
  851. package/vendor/raylib/src/external/tinyobj_loader_c.h +1589 -0
  852. package/vendor/raylib/src/external/vox_loader.h +710 -0
  853. package/vendor/raylib/src/extras/easings.h +263 -0
  854. package/vendor/raylib/src/extras/physac.h +1977 -0
  855. package/vendor/raylib/src/extras/raygui.h +4342 -0
  856. package/vendor/raylib/src/extras/rmem.h +751 -0
  857. package/vendor/raylib/src/raudio.c +2380 -0
  858. package/vendor/raylib/src/raudio.h +198 -0
  859. package/vendor/raylib/src/raylib.dll.rc +27 -0
  860. package/vendor/raylib/src/raylib.dll.rc.data +0 -0
  861. package/vendor/raylib/src/raylib.h +1536 -0
  862. package/vendor/raylib/src/raylib.ico +0 -0
  863. package/vendor/raylib/src/raylib.rc +27 -0
  864. package/vendor/raylib/src/raylib.rc.data +0 -0
  865. package/vendor/raylib/src/raymath.h +1853 -0
  866. package/vendor/raylib/src/rcamera.h +567 -0
  867. package/vendor/raylib/src/rcore.c +6772 -0
  868. package/vendor/raylib/src/rgestures.h +566 -0
  869. package/vendor/raylib/src/rglfw.c +126 -0
  870. package/vendor/raylib/src/rlgl.h +4677 -0
  871. package/vendor/raylib/src/rmodels.c +5041 -0
  872. package/vendor/raylib/src/rshapes.c +1759 -0
  873. package/vendor/raylib/src/rtext.c +1790 -0
  874. package/vendor/raylib/src/rtextures.c +4761 -0
  875. package/vendor/raylib/src/shell.html +328 -0
  876. package/vendor/raylib/src/utils.c +433 -0
  877. package/vendor/raylib/src/utils.h +81 -0
  878. package/vendor/sqlite3/shell.c +23487 -0
  879. package/vendor/sqlite3/sqlite3.c +239246 -0
  880. package/vendor/sqlite3/sqlite3.h +12802 -0
  881. package/vendor/sqlite3/sqlite3ext.h +689 -0
  882. package/CMakeLists.txt +0 -60
@@ -0,0 +1,631 @@
1
+ //------------------------------------------------------------------------------------
2
+ // Window and Graphics Device Functions (Module: core)
3
+ //------------------------------------------------------------------------------------
4
+
5
+ // Window-related functions
6
+ RLAPI void InitWindow(int width, int height, const char *title); // Initialize window and OpenGL context
7
+ RLAPI bool WindowShouldClose(void); // Check if KEY_ESCAPE pressed or Close icon pressed
8
+ RLAPI void CloseWindow(void); // Close window and unload OpenGL context
9
+ RLAPI bool IsWindowReady(void); // Check if window has been initialized successfully
10
+ RLAPI bool IsWindowFullscreen(void); // Check if window is currently fullscreen
11
+ RLAPI bool IsWindowHidden(void); // Check if window is currently hidden (only PLATFORM_DESKTOP)
12
+ RLAPI bool IsWindowMinimized(void); // Check if window is currently minimized (only PLATFORM_DESKTOP)
13
+ RLAPI bool IsWindowMaximized(void); // Check if window is currently maximized (only PLATFORM_DESKTOP)
14
+ RLAPI bool IsWindowFocused(void); // Check if window is currently focused (only PLATFORM_DESKTOP)
15
+ RLAPI bool IsWindowResized(void); // Check if window has been resized last frame
16
+ RLAPI bool IsWindowState(unsigned int flag); // Check if one specific window flag is enabled
17
+ RLAPI void SetWindowState(unsigned int flags); // Set window configuration state using flags
18
+ RLAPI void ClearWindowState(unsigned int flags); // Clear window configuration state flags
19
+ RLAPI void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed (only PLATFORM_DESKTOP)
20
+ RLAPI void MaximizeWindow(void); // Set window state: maximized, if resizable (only PLATFORM_DESKTOP)
21
+ RLAPI void MinimizeWindow(void); // Set window state: minimized, if resizable (only PLATFORM_DESKTOP)
22
+ RLAPI void RestoreWindow(void); // Set window state: not minimized/maximized (only PLATFORM_DESKTOP)
23
+ RLAPI void SetWindowIcon(Image image); // Set icon for window (only PLATFORM_DESKTOP)
24
+ RLAPI void SetWindowTitle(const char *title); // Set title for window (only PLATFORM_DESKTOP)
25
+ RLAPI void SetWindowPosition(int x, int y); // Set window position on screen (only PLATFORM_DESKTOP)
26
+ RLAPI void SetWindowMonitor(int monitor); // Set monitor for the current window (fullscreen mode)
27
+ RLAPI void SetWindowMinSize(int width, int height); // Set window minimum dimensions (for FLAG_WINDOW_RESIZABLE)
28
+ RLAPI void SetWindowSize(int width, int height); // Set window dimensions
29
+ RLAPI void *GetWindowHandle(void); // Get native window handle
30
+ RLAPI int GetScreenWidth(void); // Get current screen width
31
+ RLAPI int GetScreenHeight(void); // Get current screen height
32
+ RLAPI int GetMonitorCount(void); // Get number of connected monitors
33
+ RLAPI int GetCurrentMonitor(void); // Get current connected monitor
34
+ RLAPI Vector2 GetMonitorPosition(int monitor); // Get specified monitor position
35
+ RLAPI int GetMonitorWidth(int monitor); // Get specified monitor width (max available by monitor)
36
+ RLAPI int GetMonitorHeight(int monitor); // Get specified monitor height (max available by monitor)
37
+ RLAPI int GetMonitorPhysicalWidth(int monitor); // Get specified monitor physical width in millimetres
38
+ RLAPI int GetMonitorPhysicalHeight(int monitor); // Get specified monitor physical height in millimetres
39
+ RLAPI int GetMonitorRefreshRate(int monitor); // Get specified monitor refresh rate
40
+ RLAPI Vector2 GetWindowPosition(void); // Get window position XY on monitor
41
+ RLAPI Vector2 GetWindowScaleDPI(void); // Get window scale DPI factor
42
+ RLAPI const char *GetMonitorName(int monitor); // Get the human-readable, UTF-8 encoded name of the primary monitor
43
+ RLAPI void SetClipboardText(const char *text); // Set clipboard text content
44
+ RLAPI const char *GetClipboardText(void); // Get clipboard text content
45
+
46
+ // Custom frame control functions
47
+ // NOTE: Those functions are intended for advance users that want full control over the frame processing
48
+ // By default EndDrawing() does this job: draws everything + SwapScreenBuffer() + manage frame timming + PollInputEvents()
49
+ // To avoid that behaviour and control frame processes manually, enable in config.h: SUPPORT_CUSTOM_FRAME_CONTROL
50
+ RLAPI void SwapScreenBuffer(void); // Swap back buffer with front buffer (screen drawing)
51
+ RLAPI void PollInputEvents(void); // Register all input events
52
+ RLAPI void WaitTime(float ms); // Wait for some milliseconds (halt program execution)
53
+
54
+ // Cursor-related functions
55
+ RLAPI void ShowCursor(void); // Shows cursor
56
+ RLAPI void HideCursor(void); // Hides cursor
57
+ RLAPI bool IsCursorHidden(void); // Check if cursor is not visible
58
+ RLAPI void EnableCursor(void); // Enables cursor (unlock cursor)
59
+ RLAPI void DisableCursor(void); // Disables cursor (lock cursor)
60
+ RLAPI bool IsCursorOnScreen(void); // Check if cursor is on the screen
61
+
62
+ // Drawing-related functions
63
+ RLAPI void ClearBackground(Color color); // Set background color (framebuffer clear color)
64
+ RLAPI void BeginDrawing(void); // Setup canvas (framebuffer) to start drawing
65
+ RLAPI void EndDrawing(void); // End canvas drawing and swap buffers (double buffering)
66
+ RLAPI void BeginMode2D(Camera2D camera); // Begin 2D mode with custom camera (2D)
67
+ RLAPI void EndMode2D(void); // Ends 2D mode with custom camera
68
+ RLAPI void BeginMode3D(Camera3D camera); // Begin 3D mode with custom camera (3D)
69
+ RLAPI void EndMode3D(void); // Ends 3D mode and returns to default 2D orthographic mode
70
+ RLAPI void BeginTextureMode(RenderTexture2D target); // Begin drawing to render texture
71
+ RLAPI void EndTextureMode(void); // Ends drawing to render texture
72
+ RLAPI void BeginShaderMode(Shader shader); // Begin custom shader drawing
73
+ RLAPI void EndShaderMode(void); // End custom shader drawing (use default shader)
74
+ RLAPI void BeginBlendMode(int mode); // Begin blending mode (alpha, additive, multiplied, subtract, custom)
75
+ RLAPI void EndBlendMode(void); // End blending mode (reset to default: alpha blending)
76
+ RLAPI void BeginScissorMode(int x, int y, int width, int height); // Begin scissor mode (define screen area for following drawing)
77
+ RLAPI void EndScissorMode(void); // End scissor mode
78
+ RLAPI void BeginVrStereoMode(VrStereoConfig config); // Begin stereo rendering (requires VR simulator)
79
+ RLAPI void EndVrStereoMode(void); // End stereo rendering (requires VR simulator)
80
+
81
+ // VR stereo config functions for VR simulator
82
+ RLAPI VrStereoConfig LoadVrStereoConfig(VrDeviceInfo device); // Load VR stereo config for VR simulator device parameters
83
+ RLAPI void UnloadVrStereoConfig(VrStereoConfig config); // Unload VR stereo config
84
+
85
+ // Shader management functions
86
+ // NOTE: Shader functionality is not available on OpenGL 1.1
87
+ RLAPI Shader LoadShader(const char *vsFileName, const char *fsFileName); // Load shader from files and bind default locations
88
+ RLAPI Shader LoadShaderFromMemory(const char *vsCode, const char *fsCode); // Load shader from code strings and bind default locations
89
+ RLAPI int GetShaderLocation(Shader shader, const char *uniformName); // Get shader uniform location
90
+ RLAPI int GetShaderLocationAttrib(Shader shader, const char *attribName); // Get shader attribute location
91
+ RLAPI void SetShaderValue(Shader shader, int locIndex, const void *value, int uniformType); // Set shader uniform value
92
+ RLAPI void SetShaderValueV(Shader shader, int locIndex, const void *value, int uniformType, int count); // Set shader uniform value vector
93
+ RLAPI void SetShaderValueMatrix(Shader shader, int locIndex, Matrix mat); // Set shader uniform value (matrix 4x4)
94
+ RLAPI void SetShaderValueTexture(Shader shader, int locIndex, Texture2D texture); // Set shader uniform value for texture (sampler2d)
95
+ RLAPI void UnloadShader(Shader shader); // Unload shader from GPU memory (VRAM)
96
+
97
+ // Screen-space-related functions
98
+ RLAPI Ray GetMouseRay(Vector2 mousePosition, Camera camera); // Get a ray trace from mouse position
99
+ RLAPI Matrix GetCameraMatrix(Camera camera); // Get camera transform matrix (view matrix)
100
+ RLAPI Matrix GetCameraMatrix2D(Camera2D camera); // Get camera 2d transform matrix
101
+ RLAPI Vector2 GetWorldToScreen(Vector3 position, Camera camera); // Get the screen space position for a 3d world space position
102
+ RLAPI Vector2 GetWorldToScreenEx(Vector3 position, Camera camera, int width, int height); // Get size position for a 3d world space position
103
+ RLAPI Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera); // Get the screen space position for a 2d camera world space position
104
+ RLAPI Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position
105
+
106
+ // Timing-related functions
107
+ RLAPI void SetTargetFPS(int fps); // Set target FPS (maximum)
108
+ RLAPI int GetFPS(void); // Get current FPS
109
+ RLAPI float GetFrameTime(void); // Get time in seconds for last frame drawn (delta time)
110
+ RLAPI double GetTime(void); // Get elapsed time in seconds since InitWindow()
111
+
112
+ // Misc. functions
113
+ RLAPI int GetRandomValue(int min, int max); // Get a random value between min and max (both included)
114
+ RLAPI void SetRandomSeed(unsigned int seed); // Set the seed for the random number generator
115
+ RLAPI void TakeScreenshot(const char *fileName); // Takes a screenshot of current screen (filename extension defines format)
116
+ RLAPI void SetConfigFlags(unsigned int flags); // Setup init configuration flags (view FLAGS)
117
+
118
+ RLAPI void TraceLog(int logLevel, const char *text, ...); // Show trace log messages (LOG_DEBUG, LOG_INFO, LOG_WARNING, LOG_ERROR...)
119
+ RLAPI void SetTraceLogLevel(int logLevel); // Set the current threshold (minimum) log level
120
+ RLAPI void *MemAlloc(int size); // Internal memory allocator
121
+ RLAPI void *MemRealloc(void *ptr, int size); // Internal memory reallocator
122
+ RLAPI void MemFree(void *ptr); // Internal memory free
123
+
124
+ // Set custom callbacks
125
+ // WARNING: Callbacks setup is intended for advance users
126
+ RLAPI void SetTraceLogCallback(TraceLogCallback callback); // Set custom trace log
127
+ RLAPI void SetLoadFileDataCallback(LoadFileDataCallback callback); // Set custom file binary data loader
128
+ RLAPI void SetSaveFileDataCallback(SaveFileDataCallback callback); // Set custom file binary data saver
129
+ RLAPI void SetLoadFileTextCallback(LoadFileTextCallback callback); // Set custom file text data loader
130
+ RLAPI void SetSaveFileTextCallback(SaveFileTextCallback callback); // Set custom file text data saver
131
+
132
+ // Files management functions
133
+ RLAPI unsigned char *LoadFileData(const char *fileName, unsigned int *bytesRead); // Load file data as byte array (read)
134
+ RLAPI void UnloadFileData(unsigned char *data); // Unload file data allocated by LoadFileData()
135
+ RLAPI bool SaveFileData(const char *fileName, void *data, unsigned int bytesToWrite); // Save data to file from byte array (write), returns true on success
136
+ RLAPI char *LoadFileText(const char *fileName); // Load text data from file (read), returns a '\0' terminated string
137
+ RLAPI void UnloadFileText(char *text); // Unload file text data allocated by LoadFileText()
138
+ RLAPI bool SaveFileText(const char *fileName, char *text); // Save text data to file (write), string must be '\0' terminated, returns true on success
139
+ RLAPI bool FileExists(const char *fileName); // Check if file exists
140
+ RLAPI bool DirectoryExists(const char *dirPath); // Check if a directory path exists
141
+ RLAPI bool IsFileExtension(const char *fileName, const char *ext);// Check file extension (including point: .png, .wav)
142
+ RLAPI const char *GetFileExtension(const char *fileName); // Get pointer to extension for a filename string (includes dot: '.png')
143
+ RLAPI const char *GetFileName(const char *filePath); // Get pointer to filename for a path string
144
+ RLAPI const char *GetFileNameWithoutExt(const char *filePath); // Get filename string without extension (uses static string)
145
+ RLAPI const char *GetDirectoryPath(const char *filePath); // Get full path for a given fileName with path (uses static string)
146
+ RLAPI const char *GetPrevDirectoryPath(const char *dirPath); // Get previous directory path for a given path (uses static string)
147
+ RLAPI const char *GetWorkingDirectory(void); // Get current working directory (uses static string)
148
+ RLAPI char **GetDirectoryFiles(const char *dirPath, int *count); // Get filenames in a directory path (memory should be freed)
149
+ RLAPI void ClearDirectoryFiles(void); // Clear directory files paths buffers (free memory)
150
+ RLAPI bool ChangeDirectory(const char *dir); // Change working directory, return true on success
151
+ RLAPI bool IsFileDropped(void); // Check if a file has been dropped into window
152
+ RLAPI char **GetDroppedFiles(int *count); // Get dropped files names (memory should be freed)
153
+ RLAPI void ClearDroppedFiles(void); // Clear dropped files paths buffer (free memory)
154
+ RLAPI long GetFileModTime(const char *fileName); // Get file modification time (last write time)
155
+
156
+ // Compression/Encoding functionality
157
+ RLAPI unsigned char *CompressData(unsigned char *data, int dataLength, int *compDataLength); // Compress data (DEFLATE algorithm)
158
+ RLAPI unsigned char *DecompressData(unsigned char *compData, int compDataLength, int *dataLength); // Decompress data (DEFLATE algorithm)
159
+ RLAPI char *EncodeDataBase64(const unsigned char *data, int dataLength, int *outputLength); // Encode data to Base64 string
160
+ RLAPI unsigned char *DecodeDataBase64(unsigned char *data, int *outputLength); // Decode Base64 string data
161
+
162
+ // Persistent storage management
163
+ RLAPI bool SaveStorageValue(unsigned int position, int value); // Save integer value to storage file (to defined position), returns true on success
164
+ RLAPI int LoadStorageValue(unsigned int position); // Load integer value from storage file (from defined position)
165
+
166
+ RLAPI void OpenURL(const char *url); // Open URL with default system browser (if available)
167
+
168
+ //------------------------------------------------------------------------------------
169
+ // Input Handling Functions (Module: core)
170
+ //------------------------------------------------------------------------------------
171
+
172
+ // Input-related functions: keyboard
173
+ RLAPI bool IsKeyPressed(int key); // Check if a key has been pressed once
174
+ RLAPI bool IsKeyDown(int key); // Check if a key is being pressed
175
+ RLAPI bool IsKeyReleased(int key); // Check if a key has been released once
176
+ RLAPI bool IsKeyUp(int key); // Check if a key is NOT being pressed
177
+ RLAPI void SetExitKey(int key); // Set a custom key to exit program (default is ESC)
178
+ RLAPI int GetKeyPressed(void); // Get key pressed (keycode), call it multiple times for keys queued, returns 0 when the queue is empty
179
+ RLAPI int GetCharPressed(void); // Get char pressed (unicode), call it multiple times for chars queued, returns 0 when the queue is empty
180
+
181
+ // Input-related functions: gamepads
182
+ RLAPI bool IsGamepadAvailable(int gamepad); // Check if a gamepad is available
183
+ RLAPI const char *GetGamepadName(int gamepad); // Get gamepad internal name id
184
+ RLAPI bool IsGamepadButtonPressed(int gamepad, int button); // Check if a gamepad button has been pressed once
185
+ RLAPI bool IsGamepadButtonDown(int gamepad, int button); // Check if a gamepad button is being pressed
186
+ RLAPI bool IsGamepadButtonReleased(int gamepad, int button); // Check if a gamepad button has been released once
187
+ RLAPI bool IsGamepadButtonUp(int gamepad, int button); // Check if a gamepad button is NOT being pressed
188
+ RLAPI int GetGamepadButtonPressed(void); // Get the last gamepad button pressed
189
+ RLAPI int GetGamepadAxisCount(int gamepad); // Get gamepad axis count for a gamepad
190
+ RLAPI float GetGamepadAxisMovement(int gamepad, int axis); // Get axis movement value for a gamepad axis
191
+ RLAPI int SetGamepadMappings(const char *mappings); // Set internal gamepad mappings (SDL_GameControllerDB)
192
+
193
+ // Input-related functions: mouse
194
+ RLAPI bool IsMouseButtonPressed(int button); // Check if a mouse button has been pressed once
195
+ RLAPI bool IsMouseButtonDown(int button); // Check if a mouse button is being pressed
196
+ RLAPI bool IsMouseButtonReleased(int button); // Check if a mouse button has been released once
197
+ RLAPI bool IsMouseButtonUp(int button); // Check if a mouse button is NOT being pressed
198
+ RLAPI int GetMouseX(void); // Get mouse position X
199
+ RLAPI int GetMouseY(void); // Get mouse position Y
200
+ RLAPI Vector2 GetMousePosition(void); // Get mouse position XY
201
+ RLAPI Vector2 GetMouseDelta(void); // Get mouse delta between frames
202
+ RLAPI void SetMousePosition(int x, int y); // Set mouse position XY
203
+ RLAPI void SetMouseOffset(int offsetX, int offsetY); // Set mouse offset
204
+ RLAPI void SetMouseScale(float scaleX, float scaleY); // Set mouse scaling
205
+ RLAPI float GetMouseWheelMove(void); // Get mouse wheel movement Y
206
+ RLAPI void SetMouseCursor(int cursor); // Set mouse cursor
207
+
208
+ // Input-related functions: touch
209
+ RLAPI int GetTouchX(void); // Get touch position X for touch point 0 (relative to screen size)
210
+ RLAPI int GetTouchY(void); // Get touch position Y for touch point 0 (relative to screen size)
211
+ RLAPI Vector2 GetTouchPosition(int index); // Get touch position XY for a touch point index (relative to screen size)
212
+ RLAPI int GetTouchPointId(int index); // Get touch point identifier for given index
213
+ RLAPI int GetTouchPointCount(void); // Get number of touch points
214
+
215
+ //------------------------------------------------------------------------------------
216
+ // Gestures and Touch Handling Functions (Module: rgestures)
217
+ //------------------------------------------------------------------------------------
218
+ RLAPI void SetGesturesEnabled(unsigned int flags); // Enable a set of gestures using flags
219
+ RLAPI bool IsGestureDetected(int gesture); // Check if a gesture have been detected
220
+ RLAPI int GetGestureDetected(void); // Get latest detected gesture
221
+ RLAPI float GetGestureHoldDuration(void); // Get gesture hold time in milliseconds
222
+ RLAPI Vector2 GetGestureDragVector(void); // Get gesture drag vector
223
+ RLAPI float GetGestureDragAngle(void); // Get gesture drag angle
224
+ RLAPI Vector2 GetGesturePinchVector(void); // Get gesture pinch delta
225
+ RLAPI float GetGesturePinchAngle(void); // Get gesture pinch angle
226
+
227
+ //------------------------------------------------------------------------------------
228
+ // Camera System Functions (Module: rcamera)
229
+ //------------------------------------------------------------------------------------
230
+ RLAPI void SetCameraMode(Camera camera, int mode); // Set camera mode (multiple camera modes available)
231
+ RLAPI void UpdateCamera(Camera *camera); // Update camera position for selected mode
232
+
233
+ RLAPI void SetCameraPanControl(int keyPan); // Set camera pan key to combine with mouse movement (free camera)
234
+ RLAPI void SetCameraAltControl(int keyAlt); // Set camera alt key to combine with mouse movement (free camera)
235
+ RLAPI void SetCameraSmoothZoomControl(int keySmoothZoom); // Set camera smooth zoom key to combine with mouse (free camera)
236
+ RLAPI void SetCameraMoveControls(int keyFront, int keyBack, int keyRight, int keyLeft, int keyUp, int keyDown); // Set camera move controls (1st person and 3rd person cameras)
237
+
238
+ //------------------------------------------------------------------------------------
239
+ // Basic Shapes Drawing Functions (Module: shapes)
240
+ //------------------------------------------------------------------------------------
241
+ // Set texture and rectangle to be used on shapes drawing
242
+ // NOTE: It can be useful when using basic shapes and one single font,
243
+ // defining a font char white rectangle would allow drawing everything in a single draw call
244
+ RLAPI void SetShapesTexture(Texture2D texture, Rectangle source); // Set texture and rectangle to be used on shapes drawing
245
+
246
+ // Basic shapes drawing functions
247
+ RLAPI void DrawPixel(int posX, int posY, Color color); // Draw a pixel
248
+ RLAPI void DrawPixelV(Vector2 position, Color color); // Draw a pixel (Vector version)
249
+ RLAPI void DrawLine(int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw a line
250
+ RLAPI void DrawLineV(Vector2 startPos, Vector2 endPos, Color color); // Draw a line (Vector version)
251
+ RLAPI void DrawLineEx(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw a line defining thickness
252
+ RLAPI void DrawLineBezier(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw a line using cubic-bezier curves in-out
253
+ RLAPI void DrawLineBezierQuad(Vector2 startPos, Vector2 endPos, Vector2 controlPos, float thick, Color color); // Draw line using quadratic bezier curves with a control point
254
+ RLAPI void DrawLineBezierCubic(Vector2 startPos, Vector2 endPos, Vector2 startControlPos, Vector2 endControlPos, float thick, Color color); // Draw line using cubic bezier curves with 2 control points
255
+ RLAPI void DrawLineStrip(Vector2 *points, int pointCount, Color color); // Draw lines sequence
256
+ RLAPI void DrawCircle(int centerX, int centerY, float radius, Color color); // Draw a color-filled circle
257
+ RLAPI void DrawCircleSector(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw a piece of a circle
258
+ RLAPI void DrawCircleSectorLines(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw circle sector outline
259
+ RLAPI void DrawCircleGradient(int centerX, int centerY, float radius, Color color1, Color color2); // Draw a gradient-filled circle
260
+ RLAPI void DrawCircleV(Vector2 center, float radius, Color color); // Draw a color-filled circle (Vector version)
261
+ RLAPI void DrawCircleLines(int centerX, int centerY, float radius, Color color); // Draw circle outline
262
+ RLAPI void DrawEllipse(int centerX, int centerY, float radiusH, float radiusV, Color color); // Draw ellipse
263
+ RLAPI void DrawEllipseLines(int centerX, int centerY, float radiusH, float radiusV, Color color); // Draw ellipse outline
264
+ RLAPI void DrawRing(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color); // Draw ring
265
+ RLAPI void DrawRingLines(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color); // Draw ring outline
266
+ RLAPI void DrawRectangle(int posX, int posY, int width, int height, Color color); // Draw a color-filled rectangle
267
+ RLAPI void DrawRectangleV(Vector2 position, Vector2 size, Color color); // Draw a color-filled rectangle (Vector version)
268
+ RLAPI void DrawRectangleRec(Rectangle rec, Color color); // Draw a color-filled rectangle
269
+ RLAPI void DrawRectanglePro(Rectangle rec, Vector2 origin, float rotation, Color color); // Draw a color-filled rectangle with pro parameters
270
+ RLAPI void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2);// Draw a vertical-gradient-filled rectangle
271
+ RLAPI void DrawRectangleGradientH(int posX, int posY, int width, int height, Color color1, Color color2);// Draw a horizontal-gradient-filled rectangle
272
+ RLAPI void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // Draw a gradient-filled rectangle with custom vertex colors
273
+ RLAPI void DrawRectangleLines(int posX, int posY, int width, int height, Color color); // Draw rectangle outline
274
+ RLAPI void DrawRectangleLinesEx(Rectangle rec, float lineThick, Color color); // Draw rectangle outline with extended parameters
275
+ RLAPI void DrawRectangleRounded(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle with rounded edges
276
+ RLAPI void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, float lineThick, Color color); // Draw rectangle with rounded edges outline
277
+ RLAPI void DrawTriangle(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!)
278
+ RLAPI void DrawTriangleLines(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline (vertex in counter-clockwise order!)
279
+ RLAPI void DrawTriangleFan(Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points (first vertex is the center)
280
+ RLAPI void DrawTriangleStrip(Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points
281
+ RLAPI void DrawPoly(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a regular polygon (Vector version)
282
+ RLAPI void DrawPolyLines(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a polygon outline of n sides
283
+ RLAPI void DrawPolyLinesEx(Vector2 center, int sides, float radius, float rotation, float lineThick, Color color); // Draw a polygon outline of n sides with extended parameters
284
+
285
+ // Basic shapes collision detection functions
286
+ RLAPI bool CheckCollisionRecs(Rectangle rec1, Rectangle rec2); // Check collision between two rectangles
287
+ RLAPI bool CheckCollisionCircles(Vector2 center1, float radius1, Vector2 center2, float radius2); // Check collision between two circles
288
+ RLAPI bool CheckCollisionCircleRec(Vector2 center, float radius, Rectangle rec); // Check collision between circle and rectangle
289
+ RLAPI bool CheckCollisionPointRec(Vector2 point, Rectangle rec); // Check if point is inside rectangle
290
+ RLAPI bool CheckCollisionPointCircle(Vector2 point, Vector2 center, float radius); // Check if point is inside circle
291
+ RLAPI bool CheckCollisionPointTriangle(Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3); // Check if point is inside a triangle
292
+ RLAPI bool CheckCollisionLines(Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2 *collisionPoint); // Check the collision between two lines defined by two points each, returns collision point by reference
293
+ RLAPI bool CheckCollisionPointLine(Vector2 point, Vector2 p1, Vector2 p2, int threshold); // Check if point belongs to line created between two points [p1] and [p2] with defined margin in pixels [threshold]
294
+ RLAPI Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2); // Get collision rectangle for two rectangles collision
295
+
296
+ //------------------------------------------------------------------------------------
297
+ // Texture Loading and Drawing Functions (Module: textures)
298
+ //------------------------------------------------------------------------------------
299
+
300
+ // Image loading functions
301
+ // NOTE: This functions do not require GPU access
302
+ RLAPI Image LoadImage(const char *fileName); // Load image from file into CPU memory (RAM)
303
+ RLAPI Image LoadImageRaw(const char *fileName, int width, int height, int format, int headerSize); // Load image from RAW file data
304
+ RLAPI Image LoadImageAnim(const char *fileName, int *frames); // Load image sequence from file (frames appended to image.data)
305
+ RLAPI Image LoadImageFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load image from memory buffer, fileType refers to extension: i.e. '.png'
306
+ RLAPI Image LoadImageFromTexture(Texture2D texture); // Load image from GPU texture data
307
+ RLAPI Image LoadImageFromScreen(void); // Load image from screen buffer and (screenshot)
308
+ RLAPI void UnloadImage(Image image); // Unload image from CPU memory (RAM)
309
+ RLAPI bool ExportImage(Image image, const char *fileName); // Export image data to file, returns true on success
310
+ RLAPI bool ExportImageAsCode(Image image, const char *fileName); // Export image as code file defining an array of bytes, returns true on success
311
+
312
+ // Image generation functions
313
+ RLAPI Image GenImageColor(int width, int height, Color color); // Generate image: plain color
314
+ RLAPI Image GenImageGradientV(int width, int height, Color top, Color bottom); // Generate image: vertical gradient
315
+ RLAPI Image GenImageGradientH(int width, int height, Color left, Color right); // Generate image: horizontal gradient
316
+ RLAPI Image GenImageGradientRadial(int width, int height, float density, Color inner, Color outer); // Generate image: radial gradient
317
+ RLAPI Image GenImageChecked(int width, int height, int checksX, int checksY, Color col1, Color col2); // Generate image: checked
318
+ RLAPI Image GenImageWhiteNoise(int width, int height, float factor); // Generate image: white noise
319
+ RLAPI Image GenImageCellular(int width, int height, int tileSize); // Generate image: cellular algorithm, bigger tileSize means bigger cells
320
+
321
+ // Image manipulation functions
322
+ RLAPI Image ImageCopy(Image image); // Create an image duplicate (useful for transformations)
323
+ RLAPI Image ImageFromImage(Image image, Rectangle rec); // Create an image from another image piece
324
+ RLAPI Image ImageText(const char *text, int fontSize, Color color); // Create an image from text (default font)
325
+ RLAPI Image ImageTextEx(Font font, const char *text, float fontSize, float spacing, Color tint); // Create an image from text (custom sprite font)
326
+ RLAPI void ImageFormat(Image *image, int newFormat); // Convert image data to desired format
327
+ RLAPI void ImageToPOT(Image *image, Color fill); // Convert image to POT (power-of-two)
328
+ RLAPI void ImageCrop(Image *image, Rectangle crop); // Crop an image to a defined rectangle
329
+ RLAPI void ImageAlphaCrop(Image *image, float threshold); // Crop image depending on alpha value
330
+ RLAPI void ImageAlphaClear(Image *image, Color color, float threshold); // Clear alpha channel to desired color
331
+ RLAPI void ImageAlphaMask(Image *image, Image alphaMask); // Apply alpha mask to image
332
+ RLAPI void ImageAlphaPremultiply(Image *image); // Premultiply alpha channel
333
+ RLAPI void ImageResize(Image *image, int newWidth, int newHeight); // Resize image (Bicubic scaling algorithm)
334
+ RLAPI void ImageResizeNN(Image *image, int newWidth,int newHeight); // Resize image (Nearest-Neighbor scaling algorithm)
335
+ RLAPI void ImageResizeCanvas(Image *image, int newWidth, int newHeight, int offsetX, int offsetY, Color fill); // Resize canvas and fill with color
336
+ RLAPI void ImageMipmaps(Image *image); // Compute all mipmap levels for a provided image
337
+ RLAPI void ImageDither(Image *image, int rBpp, int gBpp, int bBpp, int aBpp); // Dither image data to 16bpp or lower (Floyd-Steinberg dithering)
338
+ RLAPI void ImageFlipVertical(Image *image); // Flip image vertically
339
+ RLAPI void ImageFlipHorizontal(Image *image); // Flip image horizontally
340
+ RLAPI void ImageRotateCW(Image *image); // Rotate image clockwise 90deg
341
+ RLAPI void ImageRotateCCW(Image *image); // Rotate image counter-clockwise 90deg
342
+ RLAPI void ImageColorTint(Image *image, Color color); // Modify image color: tint
343
+ RLAPI void ImageColorInvert(Image *image); // Modify image color: invert
344
+ RLAPI void ImageColorGrayscale(Image *image); // Modify image color: grayscale
345
+ RLAPI void ImageColorContrast(Image *image, float contrast); // Modify image color: contrast (-100 to 100)
346
+ RLAPI void ImageColorBrightness(Image *image, int brightness); // Modify image color: brightness (-255 to 255)
347
+ RLAPI void ImageColorReplace(Image *image, Color color, Color replace); // Modify image color: replace color
348
+ RLAPI Color *LoadImageColors(Image image); // Load color data from image as a Color array (RGBA - 32bit)
349
+ RLAPI Color *LoadImagePalette(Image image, int maxPaletteSize, int *colorCount); // Load colors palette from image as a Color array (RGBA - 32bit)
350
+ RLAPI void UnloadImageColors(Color *colors); // Unload color data loaded with LoadImageColors()
351
+ RLAPI void UnloadImagePalette(Color *colors); // Unload colors palette loaded with LoadImagePalette()
352
+ RLAPI Rectangle GetImageAlphaBorder(Image image, float threshold); // Get image alpha border rectangle
353
+ RLAPI Color GetImageColor(Image image, int x, int y); // Get image pixel color at (x, y) position
354
+
355
+ // Image drawing functions
356
+ // NOTE: Image software-rendering functions (CPU)
357
+ RLAPI void ImageClearBackground(Image *dst, Color color); // Clear image background with given color
358
+ RLAPI void ImageDrawPixel(Image *dst, int posX, int posY, Color color); // Draw pixel within an image
359
+ RLAPI void ImageDrawPixelV(Image *dst, Vector2 position, Color color); // Draw pixel within an image (Vector version)
360
+ RLAPI void ImageDrawLine(Image *dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw line within an image
361
+ RLAPI void ImageDrawLineV(Image *dst, Vector2 start, Vector2 end, Color color); // Draw line within an image (Vector version)
362
+ RLAPI void ImageDrawCircle(Image *dst, int centerX, int centerY, int radius, Color color); // Draw circle within an image
363
+ RLAPI void ImageDrawCircleV(Image *dst, Vector2 center, int radius, Color color); // Draw circle within an image (Vector version)
364
+ RLAPI void ImageDrawRectangle(Image *dst, int posX, int posY, int width, int height, Color color); // Draw rectangle within an image
365
+ RLAPI void ImageDrawRectangleV(Image *dst, Vector2 position, Vector2 size, Color color); // Draw rectangle within an image (Vector version)
366
+ RLAPI void ImageDrawRectangleRec(Image *dst, Rectangle rec, Color color); // Draw rectangle within an image
367
+ RLAPI void ImageDrawRectangleLines(Image *dst, Rectangle rec, int thick, Color color); // Draw rectangle lines within an image
368
+ RLAPI void ImageDraw(Image *dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint); // Draw a source image within a destination image (tint applied to source)
369
+ RLAPI void ImageDrawText(Image *dst, const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font) within an image (destination)
370
+ RLAPI void ImageDrawTextEx(Image *dst, Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text (custom sprite font) within an image (destination)
371
+
372
+ // Texture loading functions
373
+ // NOTE: These functions require GPU access
374
+ RLAPI Texture2D LoadTexture(const char *fileName); // Load texture from file into GPU memory (VRAM)
375
+ RLAPI Texture2D LoadTextureFromImage(Image image); // Load texture from image data
376
+ RLAPI TextureCubemap LoadTextureCubemap(Image image, int layout); // Load cubemap from image, multiple image cubemap layouts supported
377
+ RLAPI RenderTexture2D LoadRenderTexture(int width, int height); // Load texture for rendering (framebuffer)
378
+ RLAPI void UnloadTexture(Texture2D texture); // Unload texture from GPU memory (VRAM)
379
+ RLAPI void UnloadRenderTexture(RenderTexture2D target); // Unload render texture from GPU memory (VRAM)
380
+ RLAPI void UpdateTexture(Texture2D texture, const void *pixels); // Update GPU texture with new data
381
+ RLAPI void UpdateTextureRec(Texture2D texture, Rectangle rec, const void *pixels); // Update GPU texture rectangle with new data
382
+
383
+ // Texture configuration functions
384
+ RLAPI void GenTextureMipmaps(Texture2D *texture); // Generate GPU mipmaps for a texture
385
+ RLAPI void SetTextureFilter(Texture2D texture, int filter); // Set texture scaling filter mode
386
+ RLAPI void SetTextureWrap(Texture2D texture, int wrap); // Set texture wrapping mode
387
+
388
+ // Texture drawing functions
389
+ RLAPI void DrawTexture(Texture2D texture, int posX, int posY, Color tint); // Draw a Texture2D
390
+ RLAPI void DrawTextureV(Texture2D texture, Vector2 position, Color tint); // Draw a Texture2D with position defined as Vector2
391
+ RLAPI void DrawTextureEx(Texture2D texture, Vector2 position, float rotation, float scale, Color tint); // Draw a Texture2D with extended parameters
392
+ RLAPI void DrawTextureRec(Texture2D texture, Rectangle source, Vector2 position, Color tint); // Draw a part of a texture defined by a rectangle
393
+ RLAPI void DrawTextureQuad(Texture2D texture, Vector2 tiling, Vector2 offset, Rectangle quad, Color tint); // Draw texture quad with tiling and offset parameters
394
+ RLAPI void DrawTextureTiled(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, float scale, Color tint); // Draw part of a texture (defined by a rectangle) with rotation and scale tiled into dest.
395
+ RLAPI void DrawTexturePro(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draw a part of a texture defined by a rectangle with 'pro' parameters
396
+ RLAPI void DrawTextureNPatch(Texture2D texture, NPatchInfo nPatchInfo, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draws a texture (or part of it) that stretches or shrinks nicely
397
+ RLAPI void DrawTexturePoly(Texture2D texture, Vector2 center, Vector2 *points, Vector2 *texcoords, int pointCount, Color tint); // Draw a textured polygon
398
+
399
+ // Color/pixel related functions
400
+ RLAPI Color Fade(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f
401
+ RLAPI int ColorToInt(Color color); // Get hexadecimal value for a Color
402
+ RLAPI Vector4 ColorNormalize(Color color); // Get Color normalized as float [0..1]
403
+ RLAPI Color ColorFromNormalized(Vector4 normalized); // Get Color from normalized values [0..1]
404
+ RLAPI Vector3 ColorToHSV(Color color); // Get HSV values for a Color, hue [0..360], saturation/value [0..1]
405
+ RLAPI Color ColorFromHSV(float hue, float saturation, float value); // Get a Color from HSV values, hue [0..360], saturation/value [0..1]
406
+ RLAPI Color ColorAlpha(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f
407
+ RLAPI Color ColorAlphaBlend(Color dst, Color src, Color tint); // Get src alpha-blended into dst color with tint
408
+ RLAPI Color GetColor(unsigned int hexValue); // Get Color structure from hexadecimal value
409
+ RLAPI Color GetPixelColor(void *srcPtr, int format); // Get Color from a source pixel pointer of certain format
410
+ RLAPI void SetPixelColor(void *dstPtr, Color color, int format); // Set color formatted into destination pixel pointer
411
+ RLAPI int GetPixelDataSize(int width, int height, int format); // Get pixel data size in bytes for certain format
412
+
413
+ //------------------------------------------------------------------------------------
414
+ // Font Loading and Text Drawing Functions (Module: text)
415
+ //------------------------------------------------------------------------------------
416
+
417
+ // Font loading/unloading functions
418
+ RLAPI Font GetFontDefault(void); // Get the default Font
419
+ RLAPI Font LoadFont(const char *fileName); // Load font from file into GPU memory (VRAM)
420
+ RLAPI Font LoadFontEx(const char *fileName, int fontSize, int *fontChars, int glyphCount); // Load font from file with extended parameters
421
+ RLAPI Font LoadFontFromImage(Image image, Color key, int firstChar); // Load font from Image (XNA style)
422
+ RLAPI Font LoadFontFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int glyphCount); // Load font from memory buffer, fileType refers to extension: i.e. '.ttf'
423
+ RLAPI GlyphInfo *LoadFontData(const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int glyphCount, int type); // Load font data for further use
424
+ RLAPI Image GenImageFontAtlas(const GlyphInfo *chars, Rectangle **recs, int glyphCount, int fontSize, int padding, int packMethod); // Generate image font atlas using chars info
425
+ RLAPI void UnloadFontData(GlyphInfo *chars, int glyphCount); // Unload font chars info data (RAM)
426
+ RLAPI void UnloadFont(Font font); // Unload Font from GPU memory (VRAM)
427
+
428
+ // Text drawing functions
429
+ RLAPI void DrawFPS(int posX, int posY); // Draw current FPS
430
+ RLAPI void DrawText(const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font)
431
+ RLAPI void DrawTextEx(Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text using font and additional parameters
432
+ RLAPI void DrawTextPro(Font font, const char *text, Vector2 position, Vector2 origin, float rotation, float fontSize, float spacing, Color tint); // Draw text using Font and pro parameters (rotation)
433
+ RLAPI void DrawTextCodepoint(Font font, int codepoint, Vector2 position, float fontSize, Color tint); // Draw one character (codepoint)
434
+
435
+ // Text font info functions
436
+ RLAPI int MeasureText(const char *text, int fontSize); // Measure string width for default font
437
+ RLAPI Vector2 MeasureTextEx(Font font, const char *text, float fontSize, float spacing); // Measure string size for Font
438
+ RLAPI int GetGlyphIndex(Font font, int codepoint); // Get glyph index position in font for a codepoint (unicode character), fallback to '?' if not found
439
+ RLAPI GlyphInfo GetGlyphInfo(Font font, int codepoint); // Get glyph font info data for a codepoint (unicode character), fallback to '?' if not found
440
+ RLAPI Rectangle GetGlyphAtlasRec(Font font, int codepoint); // Get glyph rectangle in font atlas for a codepoint (unicode character), fallback to '?' if not found
441
+
442
+ // Text codepoints management functions (unicode characters)
443
+ RLAPI int *LoadCodepoints(const char *text, int *count); // Load all codepoints from a UTF-8 text string, codepoints count returned by parameter
444
+ RLAPI void UnloadCodepoints(int *codepoints); // Unload codepoints data from memory
445
+ RLAPI int GetCodepointCount(const char *text); // Get total number of codepoints in a UTF-8 encoded string
446
+ RLAPI int GetCodepoint(const char *text, int *bytesProcessed); // Get next codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure
447
+ RLAPI const char *CodepointToUTF8(int codepoint, int *byteSize); // Encode one codepoint into UTF-8 byte array (array length returned as parameter)
448
+ RLAPI char *TextCodepointsToUTF8(int *codepoints, int length); // Encode text as codepoints array into UTF-8 text string (WARNING: memory must be freed!)
449
+
450
+ // Text strings management functions (no UTF-8 strings, only byte chars)
451
+ // NOTE: Some strings allocate memory internally for returned strings, just be careful!
452
+ RLAPI int TextCopy(char *dst, const char *src); // Copy one string to another, returns bytes copied
453
+ RLAPI bool TextIsEqual(const char *text1, const char *text2); // Check if two text string are equal
454
+ RLAPI unsigned int TextLength(const char *text); // Get text length, checks for '\0' ending
455
+ RLAPI const char *TextFormat(const char *text, ...); // Text formatting with variables (sprintf() style)
456
+ RLAPI const char *TextSubtext(const char *text, int position, int length); // Get a piece of a text string
457
+ RLAPI char *TextReplace(char *text, const char *replace, const char *by); // Replace text string (WARNING: memory must be freed!)
458
+ RLAPI char *TextInsert(const char *text, const char *insert, int position); // Insert text in a position (WARNING: memory must be freed!)
459
+ RLAPI const char *TextJoin(const char **textList, int count, const char *delimiter); // Join text strings with delimiter
460
+ RLAPI const char **TextSplit(const char *text, char delimiter, int *count); // Split text into multiple strings
461
+ RLAPI void TextAppend(char *text, const char *append, int *position); // Append text at specific position and move cursor!
462
+ RLAPI int TextFindIndex(const char *text, const char *find); // Find first text occurrence within a string
463
+ RLAPI const char *TextToUpper(const char *text); // Get upper case version of provided string
464
+ RLAPI const char *TextToLower(const char *text); // Get lower case version of provided string
465
+ RLAPI const char *TextToPascal(const char *text); // Get Pascal case notation version of provided string
466
+ RLAPI int TextToInteger(const char *text); // Get integer value from text (negative values not supported)
467
+
468
+ //------------------------------------------------------------------------------------
469
+ // Basic 3d Shapes Drawing Functions (Module: models)
470
+ //------------------------------------------------------------------------------------
471
+
472
+ // Basic geometric 3D shapes drawing functions
473
+ RLAPI void DrawLine3D(Vector3 startPos, Vector3 endPos, Color color); // Draw a line in 3D world space
474
+ RLAPI void DrawPoint3D(Vector3 position, Color color); // Draw a point in 3D space, actually a small line
475
+ RLAPI void DrawCircle3D(Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color); // Draw a circle in 3D world space
476
+ RLAPI void DrawTriangle3D(Vector3 v1, Vector3 v2, Vector3 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!)
477
+ RLAPI void DrawTriangleStrip3D(Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points
478
+ RLAPI void DrawCube(Vector3 position, float width, float height, float length, Color color); // Draw cube
479
+ RLAPI void DrawCubeV(Vector3 position, Vector3 size, Color color); // Draw cube (Vector version)
480
+ RLAPI void DrawCubeWires(Vector3 position, float width, float height, float length, Color color); // Draw cube wires
481
+ RLAPI void DrawCubeWiresV(Vector3 position, Vector3 size, Color color); // Draw cube wires (Vector version)
482
+ RLAPI void DrawCubeTexture(Texture2D texture, Vector3 position, float width, float height, float length, Color color); // Draw cube textured
483
+ RLAPI void DrawCubeTextureRec(Texture2D texture, Rectangle source, Vector3 position, float width, float height, float length, Color color); // Draw cube with a region of a texture
484
+ RLAPI void DrawSphere(Vector3 centerPos, float radius, Color color); // Draw sphere
485
+ RLAPI void DrawSphereEx(Vector3 centerPos, float radius, int rings, int slices, Color color); // Draw sphere with extended parameters
486
+ RLAPI void DrawSphereWires(Vector3 centerPos, float radius, int rings, int slices, Color color); // Draw sphere wires
487
+ RLAPI void DrawCylinder(Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color); // Draw a cylinder/cone
488
+ RLAPI void DrawCylinderEx(Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color); // Draw a cylinder with base at startPos and top at endPos
489
+ RLAPI void DrawCylinderWires(Vector3 position, float radiusTop, float radiusBottom, float height, int slices, Color color); // Draw a cylinder/cone wires
490
+ RLAPI void DrawCylinderWiresEx(Vector3 startPos, Vector3 endPos, float startRadius, float endRadius, int sides, Color color); // Draw a cylinder wires with base at startPos and top at endPos
491
+ RLAPI void DrawPlane(Vector3 centerPos, Vector2 size, Color color); // Draw a plane XZ
492
+ RLAPI void DrawRay(Ray ray, Color color); // Draw a ray line
493
+ RLAPI void DrawGrid(int slices, float spacing); // Draw a grid (centered at (0, 0, 0))
494
+
495
+ //------------------------------------------------------------------------------------
496
+ // Model 3d Loading and Drawing Functions (Module: models)
497
+ //------------------------------------------------------------------------------------
498
+
499
+ // Model management functions
500
+ RLAPI Model LoadModel(const char *fileName); // Load model from files (meshes and materials)
501
+ RLAPI Model LoadModelFromMesh(Mesh mesh); // Load model from generated mesh (default material)
502
+ RLAPI void UnloadModel(Model model); // Unload model (including meshes) from memory (RAM and/or VRAM)
503
+ RLAPI void UnloadModelKeepMeshes(Model model); // Unload model (but not meshes) from memory (RAM and/or VRAM)
504
+ RLAPI BoundingBox GetModelBoundingBox(Model model); // Compute model bounding box limits (considers all meshes)
505
+
506
+ // Model drawing functions
507
+ RLAPI void DrawModel(Model model, Vector3 position, float scale, Color tint); // Draw a model (with texture if set)
508
+ RLAPI void DrawModelEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model with extended parameters
509
+ RLAPI void DrawModelWires(Model model, Vector3 position, float scale, Color tint); // Draw a model wires (with texture if set)
510
+ RLAPI void DrawModelWiresEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model wires (with texture if set) with extended parameters
511
+ RLAPI void DrawBoundingBox(BoundingBox box, Color color); // Draw bounding box (wires)
512
+ RLAPI void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float size, Color tint); // Draw a billboard texture
513
+ RLAPI void DrawBillboardRec(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint); // Draw a billboard texture defined by source
514
+ RLAPI void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint); // Draw a billboard texture defined by source and rotation
515
+
516
+ // Mesh management functions
517
+ RLAPI void UploadMesh(Mesh *mesh, bool dynamic); // Upload mesh vertex data in GPU and provide VAO/VBO ids
518
+ RLAPI void UpdateMeshBuffer(Mesh mesh, int index, void *data, int dataSize, int offset); // Update mesh vertex data in GPU for a specific buffer index
519
+ RLAPI void UnloadMesh(Mesh mesh); // Unload mesh data from CPU and GPU
520
+ RLAPI void DrawMesh(Mesh mesh, Material material, Matrix transform); // Draw a 3d mesh with material and transform
521
+ RLAPI void DrawMeshInstanced(Mesh mesh, Material material, Matrix *transforms, int instances); // Draw multiple mesh instances with material and different transforms
522
+ RLAPI bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success
523
+ RLAPI BoundingBox GetMeshBoundingBox(Mesh mesh); // Compute mesh bounding box limits
524
+ RLAPI void GenMeshTangents(Mesh *mesh); // Compute mesh tangents
525
+ RLAPI void GenMeshBinormals(Mesh *mesh); // Compute mesh binormals
526
+
527
+ // Mesh generation functions
528
+ RLAPI Mesh GenMeshPoly(int sides, float radius); // Generate polygonal mesh
529
+ RLAPI Mesh GenMeshPlane(float width, float length, int resX, int resZ); // Generate plane mesh (with subdivisions)
530
+ RLAPI Mesh GenMeshCube(float width, float height, float length); // Generate cuboid mesh
531
+ RLAPI Mesh GenMeshSphere(float radius, int rings, int slices); // Generate sphere mesh (standard sphere)
532
+ RLAPI Mesh GenMeshHemiSphere(float radius, int rings, int slices); // Generate half-sphere mesh (no bottom cap)
533
+ RLAPI Mesh GenMeshCylinder(float radius, float height, int slices); // Generate cylinder mesh
534
+ RLAPI Mesh GenMeshCone(float radius, float height, int slices); // Generate cone/pyramid mesh
535
+ RLAPI Mesh GenMeshTorus(float radius, float size, int radSeg, int sides); // Generate torus mesh
536
+ RLAPI Mesh GenMeshKnot(float radius, float size, int radSeg, int sides); // Generate trefoil knot mesh
537
+ RLAPI Mesh GenMeshHeightmap(Image heightmap, Vector3 size); // Generate heightmap mesh from image data
538
+ RLAPI Mesh GenMeshCubicmap(Image cubicmap, Vector3 cubeSize); // Generate cubes-based map mesh from image data
539
+
540
+ // Material loading/unloading functions
541
+ RLAPI Material *LoadMaterials(const char *fileName, int *materialCount); // Load materials from model file
542
+ RLAPI Material LoadMaterialDefault(void); // Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps)
543
+ RLAPI void UnloadMaterial(Material material); // Unload material from GPU memory (VRAM)
544
+ RLAPI void SetMaterialTexture(Material *material, int mapType, Texture2D texture); // Set texture for a material map type (MATERIAL_MAP_DIFFUSE, MATERIAL_MAP_SPECULAR...)
545
+ RLAPI void SetModelMeshMaterial(Model *model, int meshId, int materialId); // Set material for a mesh
546
+
547
+ // Model animations loading/unloading functions
548
+ RLAPI ModelAnimation *LoadModelAnimations(const char *fileName, unsigned int *animCount); // Load model animations from file
549
+ RLAPI void UpdateModelAnimation(Model model, ModelAnimation anim, int frame); // Update model animation pose
550
+ RLAPI void UnloadModelAnimation(ModelAnimation anim); // Unload animation data
551
+ RLAPI void UnloadModelAnimations(ModelAnimation* animations, unsigned int count); // Unload animation array data
552
+ RLAPI bool IsModelAnimationValid(Model model, ModelAnimation anim); // Check model animation skeleton match
553
+
554
+ // Collision detection functions
555
+ RLAPI bool CheckCollisionSpheres(Vector3 center1, float radius1, Vector3 center2, float radius2); // Check collision between two spheres
556
+ RLAPI bool CheckCollisionBoxes(BoundingBox box1, BoundingBox box2); // Check collision between two bounding boxes
557
+ RLAPI bool CheckCollisionBoxSphere(BoundingBox box, Vector3 center, float radius); // Check collision between box and sphere
558
+ RLAPI RayCollision GetRayCollisionSphere(Ray ray, Vector3 center, float radius); // Get collision info between ray and sphere
559
+ RLAPI RayCollision GetRayCollisionBox(Ray ray, BoundingBox box); // Get collision info between ray and box
560
+ RLAPI RayCollision GetRayCollisionModel(Ray ray, Model model); // Get collision info between ray and model
561
+ RLAPI RayCollision GetRayCollisionMesh(Ray ray, Mesh mesh, Matrix transform); // Get collision info between ray and mesh
562
+ RLAPI RayCollision GetRayCollisionTriangle(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3); // Get collision info between ray and triangle
563
+ RLAPI RayCollision GetRayCollisionQuad(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4); // Get collision info between ray and quad
564
+
565
+ //------------------------------------------------------------------------------------
566
+ // Audio Loading and Playing Functions (Module: audio)
567
+ //------------------------------------------------------------------------------------
568
+
569
+ // Audio device management functions
570
+ RLAPI void InitAudioDevice(void); // Initialize audio device and context
571
+ RLAPI void CloseAudioDevice(void); // Close the audio device and context
572
+ RLAPI bool IsAudioDeviceReady(void); // Check if audio device has been initialized successfully
573
+ RLAPI void SetMasterVolume(float volume); // Set master volume (listener)
574
+
575
+ // Wave/Sound loading/unloading functions
576
+ RLAPI Wave LoadWave(const char *fileName); // Load wave data from file
577
+ RLAPI Wave LoadWaveFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load wave from memory buffer, fileType refers to extension: i.e. '.wav'
578
+ RLAPI Sound LoadSound(const char *fileName); // Load sound from file
579
+ RLAPI Sound LoadSoundFromWave(Wave wave); // Load sound from wave data
580
+ RLAPI void UpdateSound(Sound sound, const void *data, int sampleCount); // Update sound buffer with new data
581
+ RLAPI void UnloadWave(Wave wave); // Unload wave data
582
+ RLAPI void UnloadSound(Sound sound); // Unload sound
583
+ RLAPI bool ExportWave(Wave wave, const char *fileName); // Export wave data to file, returns true on success
584
+ RLAPI bool ExportWaveAsCode(Wave wave, const char *fileName); // Export wave sample data to code (.h), returns true on success
585
+
586
+ // Wave/Sound management functions
587
+ RLAPI void PlaySound(Sound sound); // Play a sound
588
+ RLAPI void StopSound(Sound sound); // Stop playing a sound
589
+ RLAPI void PauseSound(Sound sound); // Pause a sound
590
+ RLAPI void ResumeSound(Sound sound); // Resume a paused sound
591
+ RLAPI void PlaySoundMulti(Sound sound); // Play a sound (using multichannel buffer pool)
592
+ RLAPI void StopSoundMulti(void); // Stop any sound playing (using multichannel buffer pool)
593
+ RLAPI int GetSoundsPlaying(void); // Get number of sounds playing in the multichannel
594
+ RLAPI bool IsSoundPlaying(Sound sound); // Check if a sound is currently playing
595
+ RLAPI void SetSoundVolume(Sound sound, float volume); // Set volume for a sound (1.0 is max level)
596
+ RLAPI void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level)
597
+ RLAPI void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels); // Convert wave data to desired format
598
+ RLAPI Wave WaveCopy(Wave wave); // Copy a wave to a new wave
599
+ RLAPI void WaveCrop(Wave *wave, int initSample, int finalSample); // Crop a wave to defined samples range
600
+ RLAPI float *LoadWaveSamples(Wave wave); // Load samples data from wave as a floats array
601
+ RLAPI void UnloadWaveSamples(float *samples); // Unload samples data loaded with LoadWaveSamples()
602
+
603
+ // Music management functions
604
+ RLAPI Music LoadMusicStream(const char *fileName); // Load music stream from file
605
+ RLAPI Music LoadMusicStreamFromMemory(const char *fileType, unsigned char *data, int dataSize); // Load music stream from data
606
+ RLAPI void UnloadMusicStream(Music music); // Unload music stream
607
+ RLAPI void PlayMusicStream(Music music); // Start music playing
608
+ RLAPI bool IsMusicStreamPlaying(Music music); // Check if music is playing
609
+ RLAPI void UpdateMusicStream(Music music); // Updates buffers for music streaming
610
+ RLAPI void StopMusicStream(Music music); // Stop music playing
611
+ RLAPI void PauseMusicStream(Music music); // Pause music playing
612
+ RLAPI void ResumeMusicStream(Music music); // Resume playing paused music
613
+ RLAPI void SeekMusicStream(Music music, float position); // Seek music to a position (in seconds)
614
+ RLAPI void SetMusicVolume(Music music, float volume); // Set volume for music (1.0 is max level)
615
+ RLAPI void SetMusicPitch(Music music, float pitch); // Set pitch for a music (1.0 is base level)
616
+ RLAPI float GetMusicTimeLength(Music music); // Get music time length (in seconds)
617
+ RLAPI float GetMusicTimePlayed(Music music); // Get current music time played (in seconds)
618
+
619
+ // AudioStream management functions
620
+ RLAPI AudioStream LoadAudioStream(unsigned int sampleRate, unsigned int sampleSize, unsigned int channels); // Load audio stream (to stream raw audio pcm data)
621
+ RLAPI void UnloadAudioStream(AudioStream stream); // Unload audio stream and free memory
622
+ RLAPI void UpdateAudioStream(AudioStream stream, const void *data, int frameCount); // Update audio stream buffers with data
623
+ RLAPI bool IsAudioStreamProcessed(AudioStream stream); // Check if any audio stream buffers requires refill
624
+ RLAPI void PlayAudioStream(AudioStream stream); // Play audio stream
625
+ RLAPI void PauseAudioStream(AudioStream stream); // Pause audio stream
626
+ RLAPI void ResumeAudioStream(AudioStream stream); // Resume audio stream
627
+ RLAPI bool IsAudioStreamPlaying(AudioStream stream); // Check if audio stream is playing
628
+ RLAPI void StopAudioStream(AudioStream stream); // Stop audio stream
629
+ RLAPI void SetAudioStreamVolume(AudioStream stream, float volume); // Set volume for audio stream (1.0 is max level)
630
+ RLAPI void SetAudioStreamPitch(AudioStream stream, float pitch); // Set pitch for audio stream (1.0 is base level)
631
+ RLAPI void SetAudioStreamBufferSizeDefault(int size); // Default size for new audio streams