koffi 2.1.1 → 2.1.2

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 (311) hide show
  1. package/ChangeLog.md +6 -0
  2. package/build/qemu/2.1.2/koffi_darwin_arm64.tar.gz +0 -0
  3. package/build/qemu/2.1.2/koffi_darwin_x64.tar.gz +0 -0
  4. package/build/qemu/2.1.2/koffi_freebsd_arm64.tar.gz +0 -0
  5. package/build/qemu/2.1.2/koffi_freebsd_ia32.tar.gz +0 -0
  6. package/build/qemu/2.1.2/koffi_freebsd_x64.tar.gz +0 -0
  7. package/build/qemu/2.1.2/koffi_linux_arm32hf.tar.gz +0 -0
  8. package/build/qemu/2.1.2/koffi_linux_arm64.tar.gz +0 -0
  9. package/build/qemu/2.1.2/koffi_linux_ia32.tar.gz +0 -0
  10. package/build/qemu/2.1.2/koffi_linux_riscv64hf64.tar.gz +0 -0
  11. package/build/qemu/2.1.2/koffi_linux_x64.tar.gz +0 -0
  12. package/build/qemu/2.1.2/koffi_openbsd_ia32.tar.gz +0 -0
  13. package/build/qemu/2.1.2/koffi_openbsd_x64.tar.gz +0 -0
  14. package/build/qemu/2.1.2/koffi_win32_arm64.tar.gz +0 -0
  15. package/build/qemu/2.1.2/koffi_win32_ia32.tar.gz +0 -0
  16. package/build/qemu/2.1.2/koffi_win32_x64.tar.gz +0 -0
  17. package/doc/templates/badges.html +3 -0
  18. package/package.json +2 -2
  19. package/src/abi_arm64.cc +35 -1
  20. package/src/abi_x64_win.cc +2 -8
  21. package/src/abi_x86.cc +1 -7
  22. package/src/ffi.hh +1 -1
  23. package/src/util.hh +6 -0
  24. package/test/raylib.js +37 -5
  25. package/vendor/libcc/libcc.cc +430 -196
  26. package/vendor/libcc/libcc.hh +1417 -1283
  27. package/vendor/raylib/BINDINGS.md +87 -70
  28. package/vendor/raylib/CHANGELOG +263 -50
  29. package/vendor/raylib/CMakeLists.txt +12 -0
  30. package/vendor/raylib/CMakeOptions.txt +8 -1
  31. package/vendor/raylib/CONVENTIONS.md +2 -3
  32. package/vendor/raylib/FAQ.md +137 -0
  33. package/vendor/raylib/HISTORY.md +62 -29
  34. package/vendor/raylib/LICENSE +1 -1
  35. package/vendor/raylib/README.md +22 -17
  36. package/vendor/raylib/ROADMAP.md +8 -7
  37. package/vendor/raylib/cmake/CompileDefinitions.cmake +19 -15
  38. package/vendor/raylib/cmake/GlfwImport.cmake +2 -0
  39. package/vendor/raylib/cmake/LibraryConfigurations.cmake +22 -16
  40. package/vendor/raylib/cmake/raylib-config.cmake +52 -49
  41. package/vendor/raylib/examples/CMakeLists.txt +14 -9
  42. package/vendor/raylib/examples/Makefile +112 -125
  43. package/vendor/raylib/examples/Makefile.Android +1 -1
  44. package/vendor/raylib/examples/Makefile.Web +145 -158
  45. package/vendor/raylib/examples/README.md +141 -141
  46. package/vendor/raylib/examples/audio/audio_module_playing.c +9 -4
  47. package/vendor/raylib/examples/audio/audio_multichannel_sound.c +8 -3
  48. package/vendor/raylib/examples/audio/audio_music_stream.c +16 -11
  49. package/vendor/raylib/examples/audio/audio_raw_stream.c +57 -9
  50. package/vendor/raylib/examples/audio/audio_sound_loading.c +8 -3
  51. package/vendor/raylib/examples/audio/audio_stream_effects.c +179 -0
  52. package/vendor/raylib/examples/audio/audio_stream_effects.png +0 -0
  53. package/vendor/raylib/examples/build.zig +17 -6
  54. package/vendor/raylib/examples/core/core_2d_camera.c +8 -4
  55. package/vendor/raylib/examples/core/core_2d_camera_mouse_zoom.c +105 -0
  56. package/vendor/raylib/examples/core/core_2d_camera_mouse_zoom.png +0 -0
  57. package/vendor/raylib/examples/core/core_2d_camera_platformer.c +11 -6
  58. package/vendor/raylib/examples/core/core_3d_camera_first_person.c +9 -4
  59. package/vendor/raylib/examples/core/core_3d_camera_free.c +9 -4
  60. package/vendor/raylib/examples/core/core_3d_camera_mode.c +8 -3
  61. package/vendor/raylib/examples/core/core_3d_picking.c +9 -4
  62. package/vendor/raylib/examples/core/core_basic_screen_manager.c +9 -7
  63. package/vendor/raylib/examples/core/core_basic_window.c +8 -3
  64. package/vendor/raylib/examples/core/core_basic_window_web.c +13 -11
  65. package/vendor/raylib/examples/core/core_custom_frame_control.c +9 -4
  66. package/vendor/raylib/examples/core/core_custom_logging.c +12 -8
  67. package/vendor/raylib/examples/core/core_drop_files.c +20 -12
  68. package/vendor/raylib/examples/core/core_input_gamepad.c +20 -15
  69. package/vendor/raylib/examples/core/core_input_gestures.c +19 -15
  70. package/vendor/raylib/examples/core/core_input_keys.c +8 -3
  71. package/vendor/raylib/examples/core/core_input_mouse.c +8 -3
  72. package/vendor/raylib/examples/core/core_input_mouse_wheel.c +8 -3
  73. package/vendor/raylib/examples/core/core_input_multitouch.c +8 -3
  74. package/vendor/raylib/examples/core/core_loading_thread.c +10 -6
  75. package/vendor/raylib/examples/core/core_random_values.c +8 -3
  76. package/vendor/raylib/examples/core/core_scissor_test.c +8 -3
  77. package/vendor/raylib/examples/core/core_smooth_pixelperfect.c +9 -4
  78. package/vendor/raylib/examples/core/core_split_screen.c +8 -3
  79. package/vendor/raylib/examples/core/core_storage_values.c +109 -3
  80. package/vendor/raylib/examples/core/core_vr_simulator.c +15 -7
  81. package/vendor/raylib/examples/core/core_window_flags.c +8 -3
  82. package/vendor/raylib/examples/core/core_window_letterbox.c +13 -18
  83. package/vendor/raylib/examples/core/core_window_should_close.c +77 -0
  84. package/vendor/raylib/examples/core/core_window_should_close.png +0 -0
  85. package/vendor/raylib/examples/core/core_world_screen.c +9 -4
  86. package/vendor/raylib/examples/examples_template.c +8 -3
  87. package/vendor/raylib/examples/models/models_animation.c +11 -7
  88. package/vendor/raylib/examples/models/models_billboard.c +9 -4
  89. package/vendor/raylib/examples/models/models_box_collisions.c +8 -3
  90. package/vendor/raylib/examples/models/models_cubicmap.c +9 -4
  91. package/vendor/raylib/examples/models/models_first_person_maze.c +9 -4
  92. package/vendor/raylib/examples/models/models_geometric_shapes.c +8 -3
  93. package/vendor/raylib/examples/models/models_heightmap.c +9 -4
  94. package/vendor/raylib/examples/models/models_loading.c +21 -17
  95. package/vendor/raylib/examples/models/models_loading_gltf.c +15 -41
  96. package/vendor/raylib/examples/models/models_loading_vox.c +9 -4
  97. package/vendor/raylib/examples/models/models_mesh_generation.c +71 -58
  98. package/vendor/raylib/examples/models/models_mesh_picking.c +25 -7
  99. package/vendor/raylib/examples/models/models_orthographic_projection.c +8 -5
  100. package/vendor/raylib/examples/models/models_rlgl_solar_system.c +6 -4
  101. package/vendor/raylib/examples/models/models_skybox.c +16 -12
  102. package/vendor/raylib/examples/models/models_waving_cubes.c +9 -4
  103. package/vendor/raylib/examples/models/models_yaw_pitch_roll.c +12 -7
  104. package/vendor/raylib/examples/models/resources/LICENSE.md +9 -10
  105. package/vendor/raylib/examples/models/resources/models/gltf/LICENSE +2 -23
  106. package/vendor/raylib/examples/models/resources/models/gltf/{raylib_32x32.glb → raylib_logo_3d.glb} +0 -0
  107. package/vendor/raylib/examples/models/resources/models/gltf/robot.blend +0 -0
  108. package/vendor/raylib/examples/models/resources/models/gltf/robot.glb +0 -0
  109. package/vendor/raylib/examples/others/easings_testbed.c +10 -8
  110. package/vendor/raylib/examples/others/easings_testbed.png +0 -0
  111. package/vendor/raylib/examples/others/embedded_files_loading.c +10 -5
  112. package/vendor/raylib/examples/others/embedded_files_loading.png +0 -0
  113. package/vendor/raylib/examples/others/raylib_opengl_interop.c +10 -6
  114. package/vendor/raylib/{src/extras/easings.h → examples/others/reasings.h} +38 -38
  115. package/vendor/raylib/examples/others/rlgl_compute_shader.c +21 -20
  116. package/vendor/raylib/examples/others/rlgl_compute_shader.png +0 -0
  117. package/vendor/raylib/examples/others/rlgl_standalone.c +4 -4
  118. package/vendor/raylib/examples/others/rlgl_standalone.png +0 -0
  119. package/vendor/raylib/examples/raylib_compile_execute.bat +2 -2
  120. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/lighting.fs +1 -1
  121. package/vendor/raylib/examples/shaders/resources/shaders/glsl330/{base_lighting_instanced.vs → lighting_instancing.vs} +2 -2
  122. package/vendor/raylib/examples/shaders/rlights.h +14 -27
  123. package/vendor/raylib/examples/shaders/shaders_basic_lighting.c +24 -26
  124. package/vendor/raylib/examples/shaders/shaders_custom_uniform.c +10 -5
  125. package/vendor/raylib/examples/shaders/shaders_eratosthenes.c +13 -8
  126. package/vendor/raylib/examples/shaders/shaders_fog.c +8 -12
  127. package/vendor/raylib/examples/shaders/shaders_hot_reloading.c +10 -5
  128. package/vendor/raylib/examples/shaders/shaders_julia_set.c +9 -4
  129. package/vendor/raylib/examples/shaders/shaders_mesh_instancing.c +45 -119
  130. package/vendor/raylib/examples/shaders/shaders_model_shader.c +10 -5
  131. package/vendor/raylib/examples/shaders/shaders_multi_sample2d.c +8 -3
  132. package/vendor/raylib/examples/shaders/shaders_palette_switch.c +8 -3
  133. package/vendor/raylib/examples/shaders/shaders_postprocessing.c +9 -4
  134. package/vendor/raylib/examples/shaders/shaders_raymarching.c +14 -11
  135. package/vendor/raylib/examples/shaders/shaders_shapes_textures.c +8 -3
  136. package/vendor/raylib/examples/shaders/shaders_simple_mask.c +10 -5
  137. package/vendor/raylib/examples/shaders/shaders_spotlight.c +10 -6
  138. package/vendor/raylib/examples/shaders/shaders_texture_drawing.c +9 -4
  139. package/vendor/raylib/examples/shaders/shaders_texture_outline.c +8 -3
  140. package/vendor/raylib/examples/shaders/shaders_texture_waves.c +8 -3
  141. package/vendor/raylib/{src/extras → examples/shapes}/raygui.h +1290 -1141
  142. package/vendor/raylib/examples/{others/easings.h → shapes/reasings.h} +40 -40
  143. package/vendor/raylib/examples/shapes/shapes_basic_shapes.c +8 -3
  144. package/vendor/raylib/examples/shapes/shapes_bouncing_ball.c +8 -3
  145. package/vendor/raylib/examples/shapes/shapes_collision_area.c +10 -4
  146. package/vendor/raylib/examples/shapes/shapes_colors_palette.c +8 -3
  147. package/vendor/raylib/examples/shapes/shapes_draw_circle_sector.c +9 -4
  148. package/vendor/raylib/examples/shapes/shapes_draw_rectangle_rounded.c +9 -4
  149. package/vendor/raylib/examples/shapes/shapes_draw_ring.c +10 -6
  150. package/vendor/raylib/examples/shapes/shapes_easings_ball_anim.c +9 -4
  151. package/vendor/raylib/examples/shapes/shapes_easings_box_anim.c +9 -4
  152. package/vendor/raylib/examples/shapes/shapes_easings_rectangle_array.c +9 -4
  153. package/vendor/raylib/examples/shapes/shapes_following_eyes.c +8 -3
  154. package/vendor/raylib/examples/shapes/shapes_lines_bezier.c +8 -3
  155. package/vendor/raylib/examples/shapes/shapes_logo_raylib.c +8 -3
  156. package/vendor/raylib/examples/shapes/shapes_logo_raylib_anim.c +8 -3
  157. package/vendor/raylib/examples/shapes/shapes_rectangle_scaling.c +14 -5
  158. package/vendor/raylib/examples/shapes/shapes_top_down_lights.c +355 -0
  159. package/vendor/raylib/examples/shapes/shapes_top_down_lights.png +0 -0
  160. package/vendor/raylib/examples/text/resources/DotGothic16-Regular.ttf +0 -0
  161. package/vendor/raylib/examples/text/resources/DotGothic16-Regular_OFL.txt +93 -0
  162. package/vendor/raylib/examples/text/resources/LICENSE.md +1 -1
  163. package/vendor/raylib/examples/text/text_codepoints_loading.c +138 -0
  164. package/vendor/raylib/examples/text/text_codepoints_loading.png +0 -0
  165. package/vendor/raylib/examples/text/text_draw_3d.c +42 -33
  166. package/vendor/raylib/examples/text/text_font_filters.c +14 -11
  167. package/vendor/raylib/examples/text/text_font_loading.c +9 -4
  168. package/vendor/raylib/examples/text/text_font_sdf.c +9 -4
  169. package/vendor/raylib/examples/text/text_font_spritefont.c +12 -6
  170. package/vendor/raylib/examples/text/text_format_text.c +8 -3
  171. package/vendor/raylib/examples/text/text_input_box.c +8 -3
  172. package/vendor/raylib/examples/text/text_raylib_fonts.c +9 -4
  173. package/vendor/raylib/examples/text/text_rectangle_bounds.c +9 -5
  174. package/vendor/raylib/examples/text/text_unicode.c +9 -7
  175. package/vendor/raylib/examples/text/text_writing_anim.c +8 -3
  176. package/vendor/raylib/examples/textures/resources/scarfy_run.gif +0 -0
  177. package/vendor/raylib/examples/textures/textures_background_scrolling.c +8 -3
  178. package/vendor/raylib/examples/textures/textures_blend_modes.c +8 -3
  179. package/vendor/raylib/examples/textures/textures_bunnymark.c +8 -3
  180. package/vendor/raylib/examples/textures/textures_draw_tiled.c +14 -10
  181. package/vendor/raylib/examples/textures/textures_fog_of_war.c +154 -0
  182. package/vendor/raylib/examples/textures/textures_fog_of_war.png +0 -0
  183. package/vendor/raylib/examples/textures/textures_gif_player.c +121 -0
  184. package/vendor/raylib/examples/textures/textures_gif_player.png +0 -0
  185. package/vendor/raylib/examples/textures/textures_image_drawing.c +8 -3
  186. package/vendor/raylib/examples/textures/textures_image_generation.c +8 -3
  187. package/vendor/raylib/examples/textures/textures_image_loading.c +8 -3
  188. package/vendor/raylib/examples/textures/textures_image_processing.c +8 -3
  189. package/vendor/raylib/examples/textures/textures_image_text.c +8 -3
  190. package/vendor/raylib/examples/textures/textures_logo_raylib.c +8 -3
  191. package/vendor/raylib/examples/textures/textures_mouse_painting.c +9 -4
  192. package/vendor/raylib/examples/textures/textures_npatch_drawing.c +8 -3
  193. package/vendor/raylib/examples/textures/textures_particles_blending.c +8 -3
  194. package/vendor/raylib/examples/textures/textures_polygon.c +9 -5
  195. package/vendor/raylib/examples/textures/textures_raw_data.c +8 -3
  196. package/vendor/raylib/examples/textures/{textures_rectangle.c → textures_sprite_anim.c} +11 -5
  197. package/vendor/raylib/examples/textures/{textures_rectangle.png → textures_sprite_anim.png} +0 -0
  198. package/vendor/raylib/examples/textures/textures_sprite_button.c +8 -3
  199. package/vendor/raylib/examples/textures/textures_sprite_explosion.c +8 -3
  200. package/vendor/raylib/examples/textures/textures_srcrec_dstrec.c +8 -3
  201. package/vendor/raylib/examples/textures/textures_to_image.c +8 -3
  202. package/vendor/raylib/parser/LICENSE +1 -1
  203. package/vendor/raylib/parser/Makefile +28 -0
  204. package/vendor/raylib/parser/README.md +49 -5
  205. package/vendor/raylib/parser/output/raylib_api.json +10717 -0
  206. package/vendor/raylib/parser/output/raylib_api.lua +7435 -0
  207. package/vendor/raylib/parser/{raylib_api.txt → output/raylib_api.txt} +1371 -824
  208. package/vendor/raylib/parser/{raylib_api.xml → output/raylib_api.xml} +827 -595
  209. package/vendor/raylib/parser/raylib_parser.c +1174 -196
  210. package/vendor/raylib/projects/4coder/Makefile +2 -4
  211. package/vendor/raylib/projects/4coder/main.c +0 -1
  212. package/vendor/raylib/projects/CMake/CMakeLists.txt +13 -16
  213. package/vendor/raylib/projects/CMake/README.md +27 -0
  214. package/vendor/raylib/projects/CMake/core_basic_window.c +52 -31
  215. package/vendor/raylib/projects/CodeBlocks/README.md +4 -4
  216. package/vendor/raylib/projects/Geany/core_basic_window.c +1 -1
  217. package/vendor/raylib/projects/Notepad++/c_raylib.xml +168 -128
  218. package/vendor/raylib/projects/Notepad++/npes_saved_tcc.txt +0 -0
  219. package/vendor/raylib/projects/Notepad++/npes_saved_w64devkit.txt +0 -0
  220. package/vendor/raylib/projects/Notepad++/npes_saved_zig.txt +0 -0
  221. package/vendor/raylib/projects/Notepad++/raylib_npp_parser/raylib_npp.xml +168 -84
  222. package/vendor/raylib/projects/Notepad++/raylib_npp_parser/raylib_to_parse.h +67 -51
  223. package/vendor/raylib/projects/README.md +1 -1
  224. package/vendor/raylib/projects/VSCode/.vscode/c_cpp_properties.json +1 -1
  225. package/vendor/raylib/projects/VSCode/Makefile +8 -11
  226. package/vendor/raylib/projects/VSCode/main.c +53 -26
  227. package/vendor/raylib/projects/VSCode/resources/LICENSE +1 -0
  228. package/vendor/raylib/projects/scripts/build-linux.sh +6 -6
  229. package/vendor/raylib/projects/scripts/build-osx.sh +6 -6
  230. package/vendor/raylib/projects/scripts/build-rpi.sh +6 -6
  231. package/vendor/raylib/projects/scripts/build-windows.bat +2 -2
  232. package/vendor/raylib/src/CMakeLists.txt +6 -7
  233. package/vendor/raylib/src/Makefile +209 -103
  234. package/vendor/raylib/src/build.zig +56 -20
  235. package/vendor/raylib/src/config.h +32 -27
  236. package/vendor/raylib/src/external/cgltf.h +342 -104
  237. package/vendor/raylib/src/external/dr_wav.h +487 -225
  238. package/vendor/raylib/src/external/glfw/src/posix_time.c +1 -3
  239. package/vendor/raylib/src/external/glfw/src/wl_init.c +1 -3
  240. package/vendor/raylib/src/external/jar_xm.h +2 -1
  241. package/vendor/raylib/src/external/miniaudio.h +62251 -42061
  242. package/vendor/raylib/src/external/qoi.h +671 -0
  243. package/vendor/raylib/src/external/stb_vorbis.h +1 -1
  244. package/vendor/raylib/src/external/vox_loader.h +30 -25
  245. package/vendor/raylib/src/minshell.html +82 -0
  246. package/vendor/raylib/src/raudio.c +359 -201
  247. package/vendor/raylib/src/raylib.dll.rc +5 -5
  248. package/vendor/raylib/src/raylib.dll.rc.data +0 -0
  249. package/vendor/raylib/src/raylib.h +95 -63
  250. package/vendor/raylib/src/raylib.rc +5 -5
  251. package/vendor/raylib/src/raylib.rc.data +0 -0
  252. package/vendor/raylib/src/raymath.h +391 -133
  253. package/vendor/raylib/src/rcamera.h +32 -41
  254. package/vendor/raylib/src/rcore.c +775 -471
  255. package/vendor/raylib/src/rgestures.h +5 -5
  256. package/vendor/raylib/src/rglfw.c +3 -3
  257. package/vendor/raylib/src/rlgl.h +184 -144
  258. package/vendor/raylib/src/rmodels.c +207 -144
  259. package/vendor/raylib/src/rshapes.c +105 -47
  260. package/vendor/raylib/src/rtext.c +255 -38
  261. package/vendor/raylib/src/rtextures.c +167 -71
  262. package/vendor/raylib/src/shell.html +63 -63
  263. package/vendor/raylib/src/utils.c +49 -3
  264. package/vendor/raylib/src/utils.h +3 -3
  265. package/build/qemu/2.1.1/koffi_darwin_arm64.tar.gz +0 -0
  266. package/build/qemu/2.1.1/koffi_darwin_x64.tar.gz +0 -0
  267. package/build/qemu/2.1.1/koffi_freebsd_arm64.tar.gz +0 -0
  268. package/build/qemu/2.1.1/koffi_freebsd_ia32.tar.gz +0 -0
  269. package/build/qemu/2.1.1/koffi_freebsd_x64.tar.gz +0 -0
  270. package/build/qemu/2.1.1/koffi_linux_arm32hf.tar.gz +0 -0
  271. package/build/qemu/2.1.1/koffi_linux_arm64.tar.gz +0 -0
  272. package/build/qemu/2.1.1/koffi_linux_ia32.tar.gz +0 -0
  273. package/build/qemu/2.1.1/koffi_linux_riscv64hf64.tar.gz +0 -0
  274. package/build/qemu/2.1.1/koffi_linux_x64.tar.gz +0 -0
  275. package/build/qemu/2.1.1/koffi_openbsd_ia32.tar.gz +0 -0
  276. package/build/qemu/2.1.1/koffi_openbsd_x64.tar.gz +0 -0
  277. package/build/qemu/2.1.1/koffi_win32_arm64.tar.gz +0 -0
  278. package/build/qemu/2.1.1/koffi_win32_ia32.tar.gz +0 -0
  279. package/build/qemu/2.1.1/koffi_win32_x64.tar.gz +0 -0
  280. package/vendor/raylib/CONTRIBUTORS.md +0 -63
  281. package/vendor/raylib/SPONSORS.md +0 -68
  282. package/vendor/raylib/examples/core/core_quat_conversion.c +0 -132
  283. package/vendor/raylib/examples/core/core_quat_conversion.png +0 -0
  284. package/vendor/raylib/examples/models/resources/models/gltf/AnimatedMorphCube.glb +0 -0
  285. package/vendor/raylib/examples/models/resources/models/gltf/AnimatedTriangle.gltf +0 -118
  286. package/vendor/raylib/examples/models/resources/models/gltf/BoxAnimated.glb +0 -0
  287. package/vendor/raylib/examples/models/resources/models/gltf/girl.glb +0 -0
  288. package/vendor/raylib/examples/models/resources/models/gltf/rigged_figure.glb +0 -0
  289. package/vendor/raylib/examples/models/resources/models/gltf/vertex_colored_object.glb +0 -0
  290. package/vendor/raylib/examples/models/resources/models/iqm/vertex_colored_object.iqm +0 -0
  291. package/vendor/raylib/examples/models/rlights.h +0 -183
  292. package/vendor/raylib/examples/others/raudio_standalone.c +0 -152
  293. package/vendor/raylib/examples/others/resources/audio/country.mp3 +0 -0
  294. package/vendor/raylib/examples/others/resources/audio/target.ogg +0 -0
  295. package/vendor/raylib/examples/others/resources/audio/weird.wav +0 -0
  296. package/vendor/raylib/examples/physics/physics_demo.c +0 -128
  297. package/vendor/raylib/examples/physics/physics_demo.png +0 -0
  298. package/vendor/raylib/examples/physics/physics_friction.c +0 -142
  299. package/vendor/raylib/examples/physics/physics_friction.png +0 -0
  300. package/vendor/raylib/examples/physics/physics_movement.c +0 -128
  301. package/vendor/raylib/examples/physics/physics_movement.png +0 -0
  302. package/vendor/raylib/examples/physics/physics_restitution.c +0 -129
  303. package/vendor/raylib/examples/physics/physics_restitution.png +0 -0
  304. package/vendor/raylib/examples/physics/physics_shatter.c +0 -111
  305. package/vendor/raylib/examples/physics/physics_shatter.png +0 -0
  306. package/vendor/raylib/parser/raylib_api.json +0 -6668
  307. package/vendor/raylib/projects/VS2019/raylib/raylib.rc +0 -0
  308. package/vendor/raylib/projects/VS2019/raylib/resource.h +0 -14
  309. package/vendor/raylib/src/extras/physac.h +0 -1977
  310. package/vendor/raylib/src/extras/rmem.h +0 -751
  311. package/vendor/raylib/src/raudio.h +0 -198
@@ -1,8 +1,8 @@
1
1
  GLFW_ICON ICON "raylib.ico"
2
2
 
3
3
  1 VERSIONINFO
4
- FILEVERSION 4,0,0,0
5
- PRODUCTVERSION 4,0,0,0
4
+ FILEVERSION 4,2,0,0
5
+ PRODUCTVERSION 4,2,0,0
6
6
  BEGIN
7
7
  BLOCK "StringFileInfo"
8
8
  BEGIN
@@ -11,12 +11,12 @@ BEGIN
11
11
  BEGIN
12
12
  //VALUE "CompanyName", "raylib technologies"
13
13
  VALUE "FileDescription", "raylib dynamic library (www.raylib.com)"
14
- VALUE "FileVersion", "4.0.0"
14
+ VALUE "FileVersion", "4.2.0"
15
15
  VALUE "InternalName", "raylib.dll"
16
- VALUE "LegalCopyright", "(c) 2021 Ramon Santamaria (@raysan5)"
16
+ VALUE "LegalCopyright", "(c) 2022 Ramon Santamaria (@raysan5)"
17
17
  VALUE "OriginalFilename", "raylib.dll"
18
18
  VALUE "ProductName", "raylib"
19
- VALUE "ProductVersion", "4.0.0"
19
+ VALUE "ProductVersion", "4.2.0"
20
20
  END
21
21
  END
22
22
  BLOCK "VarFileInfo"
@@ -1,6 +1,6 @@
1
1
  /**********************************************************************************************
2
2
  *
3
- * raylib v4.0 - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com)
3
+ * raylib v4.2 - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com)
4
4
  *
5
5
  * FEATURES:
6
6
  * - NO external dependencies, all required libraries included with raylib
@@ -33,8 +33,8 @@
33
33
  *
34
34
  * OPTIONAL DEPENDENCIES (included):
35
35
  * [rcore] msf_gif (Miles Fogle) for GIF recording
36
- * [rcore] sinfl (Micha Mettke) for DEFLATE decompression algorythm
37
- * [rcore] sdefl (Micha Mettke) for DEFLATE compression algorythm
36
+ * [rcore] sinfl (Micha Mettke) for DEFLATE decompression algorithm
37
+ * [rcore] sdefl (Micha Mettke) for DEFLATE compression algorithm
38
38
  * [rtextures] stb_image (Sean Barret) for images loading (BMP, TGA, PNG, JPEG, HDR...)
39
39
  * [rtextures] stb_image_write (Sean Barret) for image writing (BMP, TGA, PNG, JPG)
40
40
  * [rtextures] stb_image_resize (Sean Barret) for image resizing algorithms
@@ -56,7 +56,7 @@
56
56
  * raylib is licensed under an unmodified zlib/libpng license, which is an OSI-certified,
57
57
  * BSD-like license that allows static linking with closed source software:
58
58
  *
59
- * Copyright (c) 2013-2021 Ramon Santamaria (@raysan5)
59
+ * Copyright (c) 2013-2022 Ramon Santamaria (@raysan5)
60
60
  *
61
61
  * This software is provided "as-is", without any express or implied warranty. In no event
62
62
  * will the authors be held liable for any damages arising from the use of this software.
@@ -80,12 +80,15 @@
80
80
 
81
81
  #include <stdarg.h> // Required for: va_list - Only used by TraceLogCallback
82
82
 
83
- #define RAYLIB_VERSION "4.0"
83
+ #define RAYLIB_VERSION "4.2"
84
84
 
85
85
  // Function specifiers in case library is build/used as a shared library (Windows)
86
86
  // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll
87
87
  #if defined(_WIN32)
88
88
  #if defined(BUILD_LIBTYPE_SHARED)
89
+ #if defined(__TINYC__)
90
+ #define __declspec(x) __attribute__((x))
91
+ #endif
89
92
  #define RLAPI __declspec(dllexport) // We are building the library as a Win32 shared library (.dll)
90
93
  #elif defined(USE_LIBTYPE_SHARED)
91
94
  #define RLAPI __declspec(dllimport) // We are using the library as a Win32 shared library (.dll)
@@ -110,6 +113,7 @@
110
113
  #endif
111
114
 
112
115
  // Allow custom memory allocators
116
+ // NOTE: Require recompiling raylib sources
113
117
  #ifndef RL_MALLOC
114
118
  #define RL_MALLOC(sz) malloc(sz)
115
119
  #endif
@@ -177,10 +181,10 @@
177
181
  // Structures Definition
178
182
  //----------------------------------------------------------------------------------
179
183
  // Boolean type
180
- #if defined(__STDC__) && __STDC_VERSION__ >= 199901L
184
+ #if (defined(__STDC__) && __STDC_VERSION__ >= 199901L) || (defined(_MSC_VER) && _MSC_VER >= 1800)
181
185
  #include <stdbool.h>
182
186
  #elif !defined(__cplusplus) && !defined(bool)
183
- typedef enum bool { false, true } bool;
187
+ typedef enum bool { false = 0, true = !false } bool;
184
188
  #define RL_BOOL_TYPE
185
189
  #endif
186
190
 
@@ -322,7 +326,7 @@ typedef struct Mesh {
322
326
  // Vertex attributes data
323
327
  float *vertices; // Vertex position (XYZ - 3 components per vertex) (shader-location = 0)
324
328
  float *texcoords; // Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1)
325
- float *texcoords2; // Vertex second texture coordinates (useful for lightmaps) (shader-location = 5)
329
+ float *texcoords2; // Vertex texture second coordinates (UV - 2 components per vertex) (shader-location = 5)
326
330
  float *normals; // Vertex normals (XYZ - 3 components per vertex) (shader-location = 2)
327
331
  float *tangents; // Vertex tangents (XYZW - 4 components per vertex) (shader-location = 4)
328
332
  unsigned char *colors; // Vertex colors (RGBA - 4 components per vertex) (shader-location = 3)
@@ -425,11 +429,15 @@ typedef struct Wave {
425
429
  void *data; // Buffer data pointer
426
430
  } Wave;
427
431
 
432
+ // Opaque structs declaration
433
+ // NOTE: Actual structs are defined internally in raudio module
428
434
  typedef struct rAudioBuffer rAudioBuffer;
435
+ typedef struct rAudioProcessor rAudioProcessor;
429
436
 
430
437
  // AudioStream, custom audio stream
431
438
  typedef struct AudioStream {
432
439
  rAudioBuffer *buffer; // Pointer to internal data used by the audio system
440
+ rAudioProcessor *processor; // Pointer to internal data processor, useful for audio effects
433
441
 
434
442
  unsigned int sampleRate; // Frequency (samples per second)
435
443
  unsigned int sampleSize; // Bit depth (bits per sample): 8, 16, 32 (24 not supported)
@@ -478,6 +486,13 @@ typedef struct VrStereoConfig {
478
486
  float scaleIn[2]; // VR distortion scale in
479
487
  } VrStereoConfig;
480
488
 
489
+ // File path list
490
+ typedef struct FilePathList {
491
+ unsigned int capacity; // Filepaths max entries
492
+ unsigned int count; // Filepaths entries count
493
+ char **paths; // Filepaths entries
494
+ } FilePathList;
495
+
481
496
  //----------------------------------------------------------------------------------
482
497
  // Enumerators Definition
483
498
  //----------------------------------------------------------------------------------
@@ -497,6 +512,7 @@ typedef enum {
497
512
  FLAG_WINDOW_ALWAYS_RUN = 0x00000100, // Set to allow windows running while minimized
498
513
  FLAG_WINDOW_TRANSPARENT = 0x00000010, // Set to allow transparent framebuffer
499
514
  FLAG_WINDOW_HIGHDPI = 0x00002000, // Set to support HighDPI
515
+ FLAG_WINDOW_MOUSE_PASSTHROUGH = 0x00004000, // Set to support mouse passthrough, only supported when FLAG_WINDOW_UNDECORATED
500
516
  FLAG_MSAA_4X_HINT = 0x00000020, // Set to try enabling MSAA 4X
501
517
  FLAG_INTERLACED_HINT = 0x00010000 // Set to try enabling interlaced video format (for V3D)
502
518
  } ConfigFlags;
@@ -799,7 +815,7 @@ typedef enum {
799
815
  // NOTE 1: Filtering considers mipmaps if available in the texture
800
816
  // NOTE 2: Filter is accordingly set for minification and magnification
801
817
  typedef enum {
802
- TEXTURE_FILTER_POINT = 0, // No filter, just pixel aproximation
818
+ TEXTURE_FILTER_POINT = 0, // No filter, just pixel approximation
803
819
  TEXTURE_FILTER_BILINEAR, // Linear filtering
804
820
  TEXTURE_FILTER_TRILINEAR, // Trilinear filtering (linear with mipmaps)
805
821
  TEXTURE_FILTER_ANISOTROPIC_4X, // Anisotropic filtering 4x
@@ -839,7 +855,8 @@ typedef enum {
839
855
  BLEND_MULTIPLIED, // Blend textures multiplying colors
840
856
  BLEND_ADD_COLORS, // Blend textures adding colors (alternative)
841
857
  BLEND_SUBTRACT_COLORS, // Blend textures subtracting colors (alternative)
842
- BLEND_CUSTOM // Belnd textures using custom src/dst factors (use rlSetBlendMode())
858
+ BLEND_ALPHA_PREMULTIPLY, // Blend premultiplied textures considering alpha
859
+ BLEND_CUSTOM // Blend textures using custom src/dst factors (use rlSetBlendMode())
843
860
  } BlendMode;
844
861
 
845
862
  // Gesture
@@ -885,8 +902,8 @@ typedef enum {
885
902
  typedef void (*TraceLogCallback)(int logLevel, const char *text, va_list args); // Logging: Redirect trace log messages
886
903
  typedef unsigned char *(*LoadFileDataCallback)(const char *fileName, unsigned int *bytesRead); // FileIO: Load binary data
887
904
  typedef bool (*SaveFileDataCallback)(const char *fileName, void *data, unsigned int bytesToWrite); // FileIO: Save binary data
888
- typedef char *(*LoadFileTextCallback)(const char *fileName); // FileIO: Load text data
889
- typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileIO: Save text data
905
+ typedef char *(*LoadFileTextCallback)(const char *fileName); // FileIO: Load text data
906
+ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileIO: Save text data
890
907
 
891
908
  //------------------------------------------------------------------------------------
892
909
  // Global Variables Definition
@@ -913,7 +930,7 @@ RLAPI bool IsWindowMaximized(void); // Check if wi
913
930
  RLAPI bool IsWindowFocused(void); // Check if window is currently focused (only PLATFORM_DESKTOP)
914
931
  RLAPI bool IsWindowResized(void); // Check if window has been resized last frame
915
932
  RLAPI bool IsWindowState(unsigned int flag); // Check if one specific window flag is enabled
916
- RLAPI void SetWindowState(unsigned int flags); // Set window configuration state using flags
933
+ RLAPI void SetWindowState(unsigned int flags); // Set window configuration state using flags (only PLATFORM_DESKTOP)
917
934
  RLAPI void ClearWindowState(unsigned int flags); // Clear window configuration state flags
918
935
  RLAPI void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed (only PLATFORM_DESKTOP)
919
936
  RLAPI void MaximizeWindow(void); // Set window state: maximized, if resizable (only PLATFORM_DESKTOP)
@@ -925,14 +942,17 @@ RLAPI void SetWindowPosition(int x, int y); // Set window
925
942
  RLAPI void SetWindowMonitor(int monitor); // Set monitor for the current window (fullscreen mode)
926
943
  RLAPI void SetWindowMinSize(int width, int height); // Set window minimum dimensions (for FLAG_WINDOW_RESIZABLE)
927
944
  RLAPI void SetWindowSize(int width, int height); // Set window dimensions
945
+ RLAPI void SetWindowOpacity(float opacity); // Set window opacity [0.0f..1.0f] (only PLATFORM_DESKTOP)
928
946
  RLAPI void *GetWindowHandle(void); // Get native window handle
929
947
  RLAPI int GetScreenWidth(void); // Get current screen width
930
948
  RLAPI int GetScreenHeight(void); // Get current screen height
949
+ RLAPI int GetRenderWidth(void); // Get current render width (it considers HiDPI)
950
+ RLAPI int GetRenderHeight(void); // Get current render height (it considers HiDPI)
931
951
  RLAPI int GetMonitorCount(void); // Get number of connected monitors
932
952
  RLAPI int GetCurrentMonitor(void); // Get current connected monitor
933
953
  RLAPI Vector2 GetMonitorPosition(int monitor); // Get specified monitor position
934
- RLAPI int GetMonitorWidth(int monitor); // Get specified monitor width (max available by monitor)
935
- RLAPI int GetMonitorHeight(int monitor); // Get specified monitor height (max available by monitor)
954
+ RLAPI int GetMonitorWidth(int monitor); // Get specified monitor width (current video mode used by monitor)
955
+ RLAPI int GetMonitorHeight(int monitor); // Get specified monitor height (current video mode used by monitor)
936
956
  RLAPI int GetMonitorPhysicalWidth(int monitor); // Get specified monitor physical width in millimetres
937
957
  RLAPI int GetMonitorPhysicalHeight(int monitor); // Get specified monitor physical height in millimetres
938
958
  RLAPI int GetMonitorRefreshRate(int monitor); // Get specified monitor refresh rate
@@ -941,6 +961,8 @@ RLAPI Vector2 GetWindowScaleDPI(void); // Get window
941
961
  RLAPI const char *GetMonitorName(int monitor); // Get the human-readable, UTF-8 encoded name of the primary monitor
942
962
  RLAPI void SetClipboardText(const char *text); // Set clipboard text content
943
963
  RLAPI const char *GetClipboardText(void); // Get clipboard text content
964
+ RLAPI void EnableEventWaiting(void); // Enable waiting for events on EndDrawing(), no automatic event polling
965
+ RLAPI void DisableEventWaiting(void); // Disable waiting for events on EndDrawing(), automatic events polling
944
966
 
945
967
  // Custom frame control functions
946
968
  // NOTE: Those functions are intended for advance users that want full control over the frame processing
@@ -948,7 +970,7 @@ RLAPI const char *GetClipboardText(void); // Get clipboa
948
970
  // To avoid that behaviour and control frame processes manually, enable in config.h: SUPPORT_CUSTOM_FRAME_CONTROL
949
971
  RLAPI void SwapScreenBuffer(void); // Swap back buffer with front buffer (screen drawing)
950
972
  RLAPI void PollInputEvents(void); // Register all input events
951
- RLAPI void WaitTime(float ms); // Wait for some milliseconds (halt program execution)
973
+ RLAPI void WaitTime(double seconds); // Wait for some time (halt program execution)
952
974
 
953
975
  // Cursor-related functions
954
976
  RLAPI void ShowCursor(void); // Shows cursor
@@ -998,9 +1020,9 @@ RLAPI Ray GetMouseRay(Vector2 mousePosition, Camera camera); // Get a ray t
998
1020
  RLAPI Matrix GetCameraMatrix(Camera camera); // Get camera transform matrix (view matrix)
999
1021
  RLAPI Matrix GetCameraMatrix2D(Camera2D camera); // Get camera 2d transform matrix
1000
1022
  RLAPI Vector2 GetWorldToScreen(Vector3 position, Camera camera); // Get the screen space position for a 3d world space position
1023
+ RLAPI Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position
1001
1024
  RLAPI Vector2 GetWorldToScreenEx(Vector3 position, Camera camera, int width, int height); // Get size position for a 3d world space position
1002
1025
  RLAPI Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera); // Get the screen space position for a 2d camera world space position
1003
- RLAPI Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position
1004
1026
 
1005
1027
  // Timing-related functions
1006
1028
  RLAPI void SetTargetFPS(int fps); // Set target FPS (maximum)
@@ -1020,6 +1042,8 @@ RLAPI void *MemAlloc(int size); // Internal me
1020
1042
  RLAPI void *MemRealloc(void *ptr, int size); // Internal memory reallocator
1021
1043
  RLAPI void MemFree(void *ptr); // Internal memory free
1022
1044
 
1045
+ RLAPI void OpenURL(const char *url); // Open URL with default system browser (if available)
1046
+
1023
1047
  // Set custom callbacks
1024
1048
  // WARNING: Callbacks setup is intended for advance users
1025
1049
  RLAPI void SetTraceLogCallback(TraceLogCallback callback); // Set custom trace log
@@ -1029,40 +1053,39 @@ RLAPI void SetLoadFileTextCallback(LoadFileTextCallback callback); // Set custom
1029
1053
  RLAPI void SetSaveFileTextCallback(SaveFileTextCallback callback); // Set custom file text data saver
1030
1054
 
1031
1055
  // Files management functions
1032
- RLAPI unsigned char *LoadFileData(const char *fileName, unsigned int *bytesRead); // Load file data as byte array (read)
1056
+ RLAPI unsigned char *LoadFileData(const char *fileName, unsigned int *bytesRead); // Load file data as byte array (read)
1033
1057
  RLAPI void UnloadFileData(unsigned char *data); // Unload file data allocated by LoadFileData()
1034
- RLAPI bool SaveFileData(const char *fileName, void *data, unsigned int bytesToWrite); // Save data to file from byte array (write), returns true on success
1058
+ RLAPI bool SaveFileData(const char *fileName, void *data, unsigned int bytesToWrite); // Save data to file from byte array (write), returns true on success
1059
+ RLAPI bool ExportDataAsCode(const char *data, unsigned int size, const char *fileName); // Export data to code (.h), returns true on success
1035
1060
  RLAPI char *LoadFileText(const char *fileName); // Load text data from file (read), returns a '\0' terminated string
1036
1061
  RLAPI void UnloadFileText(char *text); // Unload file text data allocated by LoadFileText()
1037
1062
  RLAPI bool SaveFileText(const char *fileName, char *text); // Save text data to file (write), string must be '\0' terminated, returns true on success
1038
1063
  RLAPI bool FileExists(const char *fileName); // Check if file exists
1039
1064
  RLAPI bool DirectoryExists(const char *dirPath); // Check if a directory path exists
1040
- RLAPI bool IsFileExtension(const char *fileName, const char *ext);// Check file extension (including point: .png, .wav)
1065
+ RLAPI bool IsFileExtension(const char *fileName, const char *ext); // Check file extension (including point: .png, .wav)
1066
+ RLAPI int GetFileLength(const char *fileName); // Get file length in bytes (NOTE: GetFileSize() conflicts with windows.h)
1041
1067
  RLAPI const char *GetFileExtension(const char *fileName); // Get pointer to extension for a filename string (includes dot: '.png')
1042
1068
  RLAPI const char *GetFileName(const char *filePath); // Get pointer to filename for a path string
1043
1069
  RLAPI const char *GetFileNameWithoutExt(const char *filePath); // Get filename string without extension (uses static string)
1044
1070
  RLAPI const char *GetDirectoryPath(const char *filePath); // Get full path for a given fileName with path (uses static string)
1045
1071
  RLAPI const char *GetPrevDirectoryPath(const char *dirPath); // Get previous directory path for a given path (uses static string)
1046
1072
  RLAPI const char *GetWorkingDirectory(void); // Get current working directory (uses static string)
1047
- RLAPI char **GetDirectoryFiles(const char *dirPath, int *count); // Get filenames in a directory path (memory should be freed)
1048
- RLAPI void ClearDirectoryFiles(void); // Clear directory files paths buffers (free memory)
1073
+ RLAPI const char *GetApplicationDirectory(void); // Get the directory if the running application (uses static string)
1049
1074
  RLAPI bool ChangeDirectory(const char *dir); // Change working directory, return true on success
1075
+ RLAPI bool IsPathFile(const char *path); // Check if a given path is a file or a directory
1076
+ RLAPI FilePathList LoadDirectoryFiles(const char *dirPath); // Load directory filepaths
1077
+ RLAPI FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan
1078
+ RLAPI void UnloadDirectoryFiles(FilePathList files); // Unload filepaths
1050
1079
  RLAPI bool IsFileDropped(void); // Check if a file has been dropped into window
1051
- RLAPI char **GetDroppedFiles(int *count); // Get dropped files names (memory should be freed)
1052
- RLAPI void ClearDroppedFiles(void); // Clear dropped files paths buffer (free memory)
1080
+ RLAPI FilePathList LoadDroppedFiles(void); // Load dropped filepaths
1081
+ RLAPI void UnloadDroppedFiles(FilePathList files); // Unload dropped filepaths
1053
1082
  RLAPI long GetFileModTime(const char *fileName); // Get file modification time (last write time)
1054
1083
 
1055
1084
  // Compression/Encoding functionality
1056
- RLAPI unsigned char *CompressData(unsigned char *data, int dataLength, int *compDataLength); // Compress data (DEFLATE algorithm)
1057
- RLAPI unsigned char *DecompressData(unsigned char *compData, int compDataLength, int *dataLength); // Decompress data (DEFLATE algorithm)
1058
- RLAPI char *EncodeDataBase64(const unsigned char *data, int dataLength, int *outputLength); // Encode data to Base64 string
1059
- RLAPI unsigned char *DecodeDataBase64(unsigned char *data, int *outputLength); // Decode Base64 string data
1060
-
1061
- // Persistent storage management
1062
- RLAPI bool SaveStorageValue(unsigned int position, int value); // Save integer value to storage file (to defined position), returns true on success
1063
- RLAPI int LoadStorageValue(unsigned int position); // Load integer value from storage file (from defined position)
1064
-
1065
- RLAPI void OpenURL(const char *url); // Open URL with default system browser (if available)
1085
+ RLAPI unsigned char *CompressData(const unsigned char *data, int dataSize, int *compDataSize); // Compress data (DEFLATE algorithm), memory must be MemFree()
1086
+ RLAPI unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSize); // Decompress data (DEFLATE algorithm), memory must be MemFree()
1087
+ RLAPI char *EncodeDataBase64(const unsigned char *data, int dataSize, int *outputSize); // Encode data to Base64 string, memory must be MemFree()
1088
+ RLAPI unsigned char *DecodeDataBase64(const unsigned char *data, int *outputSize); // Decode Base64 string data, memory must be MemFree()
1066
1089
 
1067
1090
  //------------------------------------------------------------------------------------
1068
1091
  // Input Handling Functions (Module: core)
@@ -1101,7 +1124,8 @@ RLAPI Vector2 GetMouseDelta(void); // Get mouse delta
1101
1124
  RLAPI void SetMousePosition(int x, int y); // Set mouse position XY
1102
1125
  RLAPI void SetMouseOffset(int offsetX, int offsetY); // Set mouse offset
1103
1126
  RLAPI void SetMouseScale(float scaleX, float scaleY); // Set mouse scaling
1104
- RLAPI float GetMouseWheelMove(void); // Get mouse wheel movement Y
1127
+ RLAPI float GetMouseWheelMove(void); // Get mouse wheel movement for X or Y, whichever is larger
1128
+ RLAPI Vector2 GetMouseWheelMoveV(void); // Get mouse wheel movement for both X and Y
1105
1129
  RLAPI void SetMouseCursor(int cursor); // Set mouse cursor
1106
1130
 
1107
1131
  // Input-related functions: touch
@@ -1290,10 +1314,10 @@ RLAPI void DrawTextureV(Texture2D texture, Vector2 position, Color tint);
1290
1314
  RLAPI void DrawTextureEx(Texture2D texture, Vector2 position, float rotation, float scale, Color tint); // Draw a Texture2D with extended parameters
1291
1315
  RLAPI void DrawTextureRec(Texture2D texture, Rectangle source, Vector2 position, Color tint); // Draw a part of a texture defined by a rectangle
1292
1316
  RLAPI void DrawTextureQuad(Texture2D texture, Vector2 tiling, Vector2 offset, Rectangle quad, Color tint); // Draw texture quad with tiling and offset parameters
1293
- 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.
1317
+ 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.
1294
1318
  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
1295
1319
  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
1296
- RLAPI void DrawTexturePoly(Texture2D texture, Vector2 center, Vector2 *points, Vector2 *texcoords, int pointCount, Color tint); // Draw a textured polygon
1320
+ RLAPI void DrawTexturePoly(Texture2D texture, Vector2 center, Vector2 *points, Vector2 *texcoords, int pointCount, Color tint); // Draw a textured polygon
1297
1321
 
1298
1322
  // Color/pixel related functions
1299
1323
  RLAPI Color Fade(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f
@@ -1316,20 +1340,22 @@ RLAPI int GetPixelDataSize(int width, int height, int format); // G
1316
1340
  // Font loading/unloading functions
1317
1341
  RLAPI Font GetFontDefault(void); // Get the default Font
1318
1342
  RLAPI Font LoadFont(const char *fileName); // Load font from file into GPU memory (VRAM)
1319
- RLAPI Font LoadFontEx(const char *fileName, int fontSize, int *fontChars, int glyphCount); // Load font from file with extended parameters
1343
+ RLAPI Font LoadFontEx(const char *fileName, int fontSize, int *fontChars, int glyphCount); // Load font from file with extended parameters, use NULL for fontChars and 0 for glyphCount to load the default character set
1320
1344
  RLAPI Font LoadFontFromImage(Image image, Color key, int firstChar); // Load font from Image (XNA style)
1321
1345
  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'
1322
- RLAPI GlyphInfo *LoadFontData(const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int glyphCount, int type); // Load font data for further use
1323
- RLAPI Image GenImageFontAtlas(const GlyphInfo *chars, Rectangle **recs, int glyphCount, int fontSize, int padding, int packMethod); // Generate image font atlas using chars info
1324
- RLAPI void UnloadFontData(GlyphInfo *chars, int glyphCount); // Unload font chars info data (RAM)
1325
- RLAPI void UnloadFont(Font font); // Unload Font from GPU memory (VRAM)
1346
+ RLAPI GlyphInfo *LoadFontData(const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int glyphCount, int type); // Load font data for further use
1347
+ RLAPI Image GenImageFontAtlas(const GlyphInfo *chars, Rectangle **recs, int glyphCount, int fontSize, int padding, int packMethod); // Generate image font atlas using chars info
1348
+ RLAPI void UnloadFontData(GlyphInfo *chars, int glyphCount); // Unload font chars info data (RAM)
1349
+ RLAPI void UnloadFont(Font font); // Unload font from GPU memory (VRAM)
1350
+ RLAPI bool ExportFontAsCode(Font font, const char *fileName); // Export font as code file, returns true on success
1326
1351
 
1327
1352
  // Text drawing functions
1328
1353
  RLAPI void DrawFPS(int posX, int posY); // Draw current FPS
1329
1354
  RLAPI void DrawText(const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font)
1330
- RLAPI void DrawTextEx(Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text using font and additional parameters
1355
+ RLAPI void DrawTextEx(Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text using font and additional parameters
1331
1356
  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)
1332
- RLAPI void DrawTextCodepoint(Font font, int codepoint, Vector2 position, float fontSize, Color tint); // Draw one character (codepoint)
1357
+ RLAPI void DrawTextCodepoint(Font font, int codepoint, Vector2 position, float fontSize, Color tint); // Draw one character (codepoint)
1358
+ RLAPI void DrawTextCodepoints(Font font, const int *codepoints, int count, Vector2 position, float fontSize, float spacing, Color tint); // Draw multiple character (codepoint)
1333
1359
 
1334
1360
  // Text font info functions
1335
1361
  RLAPI int MeasureText(const char *text, int fontSize); // Measure string width for default font
@@ -1344,7 +1370,7 @@ RLAPI void UnloadCodepoints(int *codepoints); // Unload
1344
1370
  RLAPI int GetCodepointCount(const char *text); // Get total number of codepoints in a UTF-8 encoded string
1345
1371
  RLAPI int GetCodepoint(const char *text, int *bytesProcessed); // Get next codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure
1346
1372
  RLAPI const char *CodepointToUTF8(int codepoint, int *byteSize); // Encode one codepoint into UTF-8 byte array (array length returned as parameter)
1347
- RLAPI char *TextCodepointsToUTF8(int *codepoints, int length); // Encode text as codepoints array into UTF-8 text string (WARNING: memory must be freed!)
1373
+ RLAPI char *TextCodepointsToUTF8(const int *codepoints, int length); // Encode text as codepoints array into UTF-8 text string (WARNING: memory must be freed!)
1348
1374
 
1349
1375
  // Text strings management functions (no UTF-8 strings, only byte chars)
1350
1376
  // NOTE: Some strings allocate memory internally for returned strings, just be careful!
@@ -1373,7 +1399,7 @@ RLAPI void DrawLine3D(Vector3 startPos, Vector3 endPos, Color color);
1373
1399
  RLAPI void DrawPoint3D(Vector3 position, Color color); // Draw a point in 3D space, actually a small line
1374
1400
  RLAPI void DrawCircle3D(Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color); // Draw a circle in 3D world space
1375
1401
  RLAPI void DrawTriangle3D(Vector3 v1, Vector3 v2, Vector3 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!)
1376
- RLAPI void DrawTriangleStrip3D(Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points
1402
+ RLAPI void DrawTriangleStrip3D(Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points
1377
1403
  RLAPI void DrawCube(Vector3 position, float width, float height, float length, Color color); // Draw cube
1378
1404
  RLAPI void DrawCubeV(Vector3 position, Vector3 size, Color color); // Draw cube (Vector version)
1379
1405
  RLAPI void DrawCubeWires(Vector3 position, float width, float height, float length, Color color); // Draw cube wires
@@ -1414,14 +1440,13 @@ RLAPI void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source,
1414
1440
 
1415
1441
  // Mesh management functions
1416
1442
  RLAPI void UploadMesh(Mesh *mesh, bool dynamic); // Upload mesh vertex data in GPU and provide VAO/VBO ids
1417
- RLAPI void UpdateMeshBuffer(Mesh mesh, int index, void *data, int dataSize, int offset); // Update mesh vertex data in GPU for a specific buffer index
1443
+ RLAPI void UpdateMeshBuffer(Mesh mesh, int index, const void *data, int dataSize, int offset); // Update mesh vertex data in GPU for a specific buffer index
1418
1444
  RLAPI void UnloadMesh(Mesh mesh); // Unload mesh data from CPU and GPU
1419
1445
  RLAPI void DrawMesh(Mesh mesh, Material material, Matrix transform); // Draw a 3d mesh with material and transform
1420
- RLAPI void DrawMeshInstanced(Mesh mesh, Material material, Matrix *transforms, int instances); // Draw multiple mesh instances with material and different transforms
1446
+ RLAPI void DrawMeshInstanced(Mesh mesh, Material material, const Matrix *transforms, int instances); // Draw multiple mesh instances with material and different transforms
1421
1447
  RLAPI bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success
1422
1448
  RLAPI BoundingBox GetMeshBoundingBox(Mesh mesh); // Compute mesh bounding box limits
1423
1449
  RLAPI void GenMeshTangents(Mesh *mesh); // Compute mesh tangents
1424
- RLAPI void GenMeshBinormals(Mesh *mesh); // Compute mesh binormals
1425
1450
 
1426
1451
  // Mesh generation functions
1427
1452
  RLAPI Mesh GenMeshPoly(int sides, float radius); // Generate polygonal mesh
@@ -1447,23 +1472,23 @@ RLAPI void SetModelMeshMaterial(Model *model, int meshId, int materialId);
1447
1472
  RLAPI ModelAnimation *LoadModelAnimations(const char *fileName, unsigned int *animCount); // Load model animations from file
1448
1473
  RLAPI void UpdateModelAnimation(Model model, ModelAnimation anim, int frame); // Update model animation pose
1449
1474
  RLAPI void UnloadModelAnimation(ModelAnimation anim); // Unload animation data
1450
- RLAPI void UnloadModelAnimations(ModelAnimation* animations, unsigned int count); // Unload animation array data
1475
+ RLAPI void UnloadModelAnimations(ModelAnimation *animations, unsigned int count); // Unload animation array data
1451
1476
  RLAPI bool IsModelAnimationValid(Model model, ModelAnimation anim); // Check model animation skeleton match
1452
1477
 
1453
1478
  // Collision detection functions
1454
- RLAPI bool CheckCollisionSpheres(Vector3 center1, float radius1, Vector3 center2, float radius2); // Check collision between two spheres
1455
- RLAPI bool CheckCollisionBoxes(BoundingBox box1, BoundingBox box2); // Check collision between two bounding boxes
1456
- RLAPI bool CheckCollisionBoxSphere(BoundingBox box, Vector3 center, float radius); // Check collision between box and sphere
1457
- RLAPI RayCollision GetRayCollisionSphere(Ray ray, Vector3 center, float radius); // Get collision info between ray and sphere
1458
- RLAPI RayCollision GetRayCollisionBox(Ray ray, BoundingBox box); // Get collision info between ray and box
1459
- RLAPI RayCollision GetRayCollisionModel(Ray ray, Model model); // Get collision info between ray and model
1460
- RLAPI RayCollision GetRayCollisionMesh(Ray ray, Mesh mesh, Matrix transform); // Get collision info between ray and mesh
1461
- RLAPI RayCollision GetRayCollisionTriangle(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3); // Get collision info between ray and triangle
1462
- RLAPI RayCollision GetRayCollisionQuad(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4); // Get collision info between ray and quad
1479
+ RLAPI bool CheckCollisionSpheres(Vector3 center1, float radius1, Vector3 center2, float radius2); // Check collision between two spheres
1480
+ RLAPI bool CheckCollisionBoxes(BoundingBox box1, BoundingBox box2); // Check collision between two bounding boxes
1481
+ RLAPI bool CheckCollisionBoxSphere(BoundingBox box, Vector3 center, float radius); // Check collision between box and sphere
1482
+ RLAPI RayCollision GetRayCollisionSphere(Ray ray, Vector3 center, float radius); // Get collision info between ray and sphere
1483
+ RLAPI RayCollision GetRayCollisionBox(Ray ray, BoundingBox box); // Get collision info between ray and box
1484
+ RLAPI RayCollision GetRayCollisionMesh(Ray ray, Mesh mesh, Matrix transform); // Get collision info between ray and mesh
1485
+ RLAPI RayCollision GetRayCollisionTriangle(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3); // Get collision info between ray and triangle
1486
+ RLAPI RayCollision GetRayCollisionQuad(Ray ray, Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4); // Get collision info between ray and quad
1463
1487
 
1464
1488
  //------------------------------------------------------------------------------------
1465
1489
  // Audio Loading and Playing Functions (Module: audio)
1466
1490
  //------------------------------------------------------------------------------------
1491
+ typedef void (*AudioCallback)(void *bufferData, unsigned int frames);
1467
1492
 
1468
1493
  // Audio device management functions
1469
1494
  RLAPI void InitAudioDevice(void); // Initialize audio device and context
@@ -1493,15 +1518,16 @@ RLAPI int GetSoundsPlaying(void); // Get num
1493
1518
  RLAPI bool IsSoundPlaying(Sound sound); // Check if a sound is currently playing
1494
1519
  RLAPI void SetSoundVolume(Sound sound, float volume); // Set volume for a sound (1.0 is max level)
1495
1520
  RLAPI void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level)
1496
- RLAPI void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels); // Convert wave data to desired format
1521
+ RLAPI void SetSoundPan(Sound sound, float pan); // Set pan for a sound (0.5 is center)
1497
1522
  RLAPI Wave WaveCopy(Wave wave); // Copy a wave to a new wave
1498
1523
  RLAPI void WaveCrop(Wave *wave, int initSample, int finalSample); // Crop a wave to defined samples range
1499
- RLAPI float *LoadWaveSamples(Wave wave); // Load samples data from wave as a floats array
1524
+ RLAPI void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels); // Convert wave data to desired format
1525
+ RLAPI float *LoadWaveSamples(Wave wave); // Load samples data from wave as a 32bit float data array
1500
1526
  RLAPI void UnloadWaveSamples(float *samples); // Unload samples data loaded with LoadWaveSamples()
1501
1527
 
1502
1528
  // Music management functions
1503
1529
  RLAPI Music LoadMusicStream(const char *fileName); // Load music stream from file
1504
- RLAPI Music LoadMusicStreamFromMemory(const char *fileType, unsigned char *data, int dataSize); // Load music stream from data
1530
+ RLAPI Music LoadMusicStreamFromMemory(const char *fileType, const unsigned char *data, int dataSize); // Load music stream from data
1505
1531
  RLAPI void UnloadMusicStream(Music music); // Unload music stream
1506
1532
  RLAPI void PlayMusicStream(Music music); // Start music playing
1507
1533
  RLAPI bool IsMusicStreamPlaying(Music music); // Check if music is playing
@@ -1512,12 +1538,13 @@ RLAPI void ResumeMusicStream(Music music); // Resume
1512
1538
  RLAPI void SeekMusicStream(Music music, float position); // Seek music to a position (in seconds)
1513
1539
  RLAPI void SetMusicVolume(Music music, float volume); // Set volume for music (1.0 is max level)
1514
1540
  RLAPI void SetMusicPitch(Music music, float pitch); // Set pitch for a music (1.0 is base level)
1541
+ RLAPI void SetMusicPan(Music music, float pan); // Set pan for a music (0.5 is center)
1515
1542
  RLAPI float GetMusicTimeLength(Music music); // Get music time length (in seconds)
1516
1543
  RLAPI float GetMusicTimePlayed(Music music); // Get current music time played (in seconds)
1517
1544
 
1518
1545
  // AudioStream management functions
1519
1546
  RLAPI AudioStream LoadAudioStream(unsigned int sampleRate, unsigned int sampleSize, unsigned int channels); // Load audio stream (to stream raw audio pcm data)
1520
- RLAPI void UnloadAudioStream(AudioStream stream); // Unload audio stream and free memory
1547
+ RLAPI void UnloadAudioStream(AudioStream stream); // Unload audio stream and free memory
1521
1548
  RLAPI void UpdateAudioStream(AudioStream stream, const void *data, int frameCount); // Update audio stream buffers with data
1522
1549
  RLAPI bool IsAudioStreamProcessed(AudioStream stream); // Check if any audio stream buffers requires refill
1523
1550
  RLAPI void PlayAudioStream(AudioStream stream); // Play audio stream
@@ -1527,7 +1554,12 @@ RLAPI bool IsAudioStreamPlaying(AudioStream stream); // Check i
1527
1554
  RLAPI void StopAudioStream(AudioStream stream); // Stop audio stream
1528
1555
  RLAPI void SetAudioStreamVolume(AudioStream stream, float volume); // Set volume for audio stream (1.0 is max level)
1529
1556
  RLAPI void SetAudioStreamPitch(AudioStream stream, float pitch); // Set pitch for audio stream (1.0 is base level)
1557
+ RLAPI void SetAudioStreamPan(AudioStream stream, float pan); // Set pan for audio stream (0.5 is centered)
1530
1558
  RLAPI void SetAudioStreamBufferSizeDefault(int size); // Default size for new audio streams
1559
+ RLAPI void SetAudioStreamCallback(AudioStream stream, AudioCallback callback); // Audio thread callback to request new data
1560
+
1561
+ RLAPI void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Attach audio stream processor to stream
1562
+ RLAPI void DetachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Detach audio stream processor from stream
1531
1563
 
1532
1564
  #if defined(__cplusplus)
1533
1565
  }
@@ -1,8 +1,8 @@
1
1
  GLFW_ICON ICON "raylib.ico"
2
2
 
3
3
  1 VERSIONINFO
4
- FILEVERSION 4,0,0,0
5
- PRODUCTVERSION 4,0,0,0
4
+ FILEVERSION 4,2,0,0
5
+ PRODUCTVERSION 4,2,0,0
6
6
  BEGIN
7
7
  BLOCK "StringFileInfo"
8
8
  BEGIN
@@ -11,12 +11,12 @@ BEGIN
11
11
  BEGIN
12
12
  //VALUE "CompanyName", "raylib technologies"
13
13
  VALUE "FileDescription", "raylib application (www.raylib.com)"
14
- VALUE "FileVersion", "4.0.0"
14
+ VALUE "FileVersion", "4.2.0"
15
15
  VALUE "InternalName", "raylib app"
16
- VALUE "LegalCopyright", "(c) 2021 Ramon Santamaria (@raysan5)"
16
+ VALUE "LegalCopyright", "(c) 2022 Ramon Santamaria (@raysan5)"
17
17
  //VALUE "OriginalFilename", "raylib_app.exe"
18
18
  VALUE "ProductName", "raylib app"
19
- VALUE "ProductVersion", "4.0.0"
19
+ VALUE "ProductVersion", "4.2.0"
20
20
  END
21
21
  END
22
22
  BLOCK "VarFileInfo"
Binary file