raylib-bindings 0.8.0 → 0.8.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 30d5d5d44196c7d658ad79f1b0f07559659c317bfebe8919f66962410858c198
4
- data.tar.gz: 2799d2b0aa40c4718fe77c2911df1213ec9944431ea1b6cf130eb8430c9b299a
3
+ metadata.gz: 196a5c659a18e76e08aecdeff2609dc915f1f4d0992336c41ddb350f213081a7
4
+ data.tar.gz: 3ef6aa18b938166d109077eca9f221724e5fc7a12ebe1ac1030abecc99417233
5
5
  SHA512:
6
- metadata.gz: b6555d1f82012f054ab9b4034dbbe6bdfd08cb57ae7e4f37c19e9e7328e9c94f088192aea6eba36835d6a8828680c113a5596e7bec9f8f349e0f79fdf582a1e1
7
- data.tar.gz: ca9cea2966cd67574c9b5bcb105bbea6d79a2998d436063e5ce55030c528a6b92fe2e9c7e7b22fe77f6977f209a98d2f3b85e013fd39d6b8a7c9a5178f339526
6
+ metadata.gz: 9fc7720c6ae2f45b0a80ab0b5184064c0a8b3d21034afdd15cf078c0bbedafe120824d6275e6c447694264f425c2baac6b6baf0c18f12f5b325576087d09b0d2
7
+ data.tar.gz: 1c437efd367e4d80d24508c6633c4920791237722f19d8193d495390c4da3c3eed346523d3114c0a302fccbafc85e8589bd74b36ecdccd6766f4352c95b06252
data/ChangeLog CHANGED
@@ -1,3 +1,15 @@
1
+ 2026-06-06 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * Updated with latest raylib ( https://github.com/raysan5/raylib/commit/ca46387b64d7c1d7505828b2c67d234d1ed0b81d ) and raygui ( https://github.com/raysan5/raygui/commit/d2d1feed5ce8bf89d7e8ff0e7868a063867b486a )
4
+
5
+ 2026-05-03 vaiorabbit <http://twitter.com/vaiorabbit>
6
+
7
+ * examples/toon_character_sprites.rb : Added
8
+
9
+ 2026-05-02 vaiorabbit <http://twitter.com/vaiorabbit>
10
+
11
+ * examples/flocking_plain.rb, examples/flocking_optimized.rb : Added
12
+
1
13
  2026-04-25 vaiorabbit <http://twitter.com/vaiorabbit>
2
14
 
3
15
  * raylib v6.0 ( https://github.com/raysan5/raylib/releases/tag/6.0 )
data/README.md CHANGED
@@ -3,15 +3,15 @@
3
3
  # Yet another raylib wrapper for Ruby #
4
4
 
5
5
  * Created : 2021-10-17
6
- * Last modified : 2026-04-25
6
+ * Last modified : 2026-06-06
7
7
 
8
8
  Provides Ruby bindings for raylib-related libraries including:
9
9
 
10
- * [raylib](https://github.com/raysan5/raylib) version [6.0]( https://github.com/raysan5/raylib/releases/tag/6.0 )
10
+ * [raylib](https://github.com/raysan5/raylib) version [6.1-dev]( https://github.com/raysan5/raylib/commit/ca46387b64d7c1d7505828b2c67d234d1ed0b81d )
11
11
  * raylib
12
12
  * raymath
13
13
  * rlgl
14
- * [raygui](https://github.com/raysan5/raygui) version [5.0-dev]( https://github.com/raysan5/raygui/commit/3b2855842ab578a034f827c38cf8f62c042fc983 )
14
+ * [raygui](https://github.com/raysan5/raygui) version [5.0-dev]( https://github.com/raysan5/raygui/commit/d2d1feed5ce8bf89d7e8ff0e7868a063867b486a )
15
15
  * [Physac](https://github.com/raysan5/physac) version [1.1]( https://github.com/raysan5/physac/commit/4a8e17f263fb8e1150b3fbafc96f880c7d7a4833 )
16
16
 
17
17
  <img src="https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/bitmap_font_rb.png" width="125"> <img src="https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/game_of_life_simple_rb.png" width="125"> <img src="https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/lissajous_curve_rb.png" width="125"> <img src="https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/procedural_texture_rb.png" width="125"> <img src="https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/reversi_board_rb.png" width="125"> <img src="https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/utf8_font_rb.png" width="125">
@@ -187,12 +187,20 @@ See the projects below to learn how to use this library:
187
187
  * <img src="https://raw.githubusercontent.com/vaiorabbit/raylib-bindings-flapper/main/doc/screenshot_01.png" width="150">
188
188
  * <https://github.com/vaiorabbit/raylib-bindings-flapper>
189
189
 
190
+ * Animal Tower : Ruby raylib bindings demo
191
+ * <img src="https://github.com/vaiorabbit/raylib-bindings-animal-tower/blob/bfda0f669e7f7f43938adb08a04aeaa0aeeb6958/doc/screenshot_00.png" width="600">
192
+ * <https://github.com/vaiorabbit/raylib-bindings-animal-tower>
193
+
190
194
  ### Libraries ###
191
195
 
192
196
  * raylib-bindings-tileson : Provides Ruby bindings for raylib-tileson ( https://github.com/RobLoach/raylib-tileson )
193
197
  * <img src="https://raw.githubusercontent.com/vaiorabbit/raylib-bindings-tileson/main/doc/screenshot_00.png" width="600">
194
198
  * <https://github.com/vaiorabbit/raylib-bindings-tileson>
195
199
 
200
+ ## Projects using raylib-bindings
201
+
202
+ See <https://github.com/vaiorabbit/raylib-bindings/tree/main/doc/gallery/gallery.md>
203
+
196
204
  ## Limitation ##
197
205
 
198
206
  * `SetTraceLogCallback` and `TraceLogCallback` are unusable since Ruby-FFI does not support `:varargs` parameter in callbacks (`Proc`, etc.)
Binary file
Binary file
data/lib/libraylib.dll CHANGED
Binary file
Binary file
Binary file
data/lib/physac.dll CHANGED
Binary file
Binary file
Binary file
data/lib/raygui.dll CHANGED
Binary file
Binary file
data/lib/raygui.x86_64.so CHANGED
Binary file
data/lib/raygui_main.rb CHANGED
@@ -11,8 +11,8 @@ module Raylib
11
11
 
12
12
  # Define/Macro
13
13
 
14
- RAYGUI_VERSION_MAJOR = 4
15
- RAYGUI_VERSION_MINOR = 5
14
+ RAYGUI_VERSION_MAJOR = 5
15
+ RAYGUI_VERSION_MINOR = 0
16
16
  RAYGUI_VERSION_PATCH = 0
17
17
  RAYGUI_VERSION = "5.0-dev"
18
18
  SCROLLBAR_LEFT_SIDE = 0
@@ -104,7 +104,7 @@ module Raylib
104
104
  # enum GuiProgressBarProperty
105
105
  # ProgressBar
106
106
  PROGRESS_PADDING = 16 # ProgressBar internal padding
107
- PROGRESS_SIDE = 17 # ProgressBar increment side: 0-left->right, 1-right-left
107
+ PROGRESS_SIDE = 17 # ProgressBar increment side: 0-left->right, 1-right-left
108
108
 
109
109
  # enum GuiScrollBarProperty
110
110
  # ScrollBar
@@ -409,12 +409,13 @@ module Raylib
409
409
  ICON_CONE = 247
410
410
  ICON_ELLIPSOID = 248
411
411
  ICON_CAPSULE = 249
412
- ICON_250 = 250
413
- ICON_251 = 251
414
- ICON_252 = 252
415
- ICON_253 = 253
416
- ICON_254 = 254
417
- ICON_255 = 255
412
+ ICON_FILETYPE_FONT = 250
413
+ ICON_FILETYPE_3D = 251
414
+ ICON_FILETYPE_CODE_XML = 252
415
+ ICON_FILETYPE_CODE_C = 253
416
+ ICON_FILETYPE_CODE_PYTHON = 254
417
+ ICON_FILETYPE_CODE_JS = 255
418
+ ICON_FILETYPE_ICON = 256
418
419
 
419
420
 
420
421
  # Typedef
@@ -536,6 +537,13 @@ module Raylib
536
537
  # @return [void]
537
538
  [:GuiLoadStyle, :GuiLoadStyle, [:pointer], :void],
538
539
 
540
+ # @!method GuiLoadStyleFromMemory(fileData, dataSize)
541
+ # GuiLoadStyleFromMemory : Load style from memory (binary only)
542
+ # @param fileData [const unsigned char *]
543
+ # @param dataSize [int]
544
+ # @return [void]
545
+ [:GuiLoadStyleFromMemory, :GuiLoadStyleFromMemory, [:pointer, :int], :void],
546
+
539
547
  # @!method GuiLoadStyleDefault()
540
548
  # GuiLoadStyleDefault : Load style default over global style
541
549
  # @return [void]
@@ -823,7 +831,7 @@ module Raylib
823
831
  [:GuiListView, :GuiListView, [Rectangle.by_value, :pointer, :pointer, :pointer], :int],
824
832
 
825
833
  # @!method GuiListViewEx(bounds, text, count, scrollIndex, active, focus)
826
- # GuiListViewEx : List View with extended parameters
834
+ # GuiListViewEx : List View using text entries list and returning focus entry
827
835
  # @param bounds [Rectangle]
828
836
  # @param text [char **]
829
837
  # @param count [int]
data/lib/raylib_helper.rb CHANGED
@@ -363,12 +363,12 @@ module Raylib
363
363
  def initialize
364
364
  @anims = nil
365
365
  @anim_ptrs = nil
366
- @framePoses = nil # array of Transform**
366
+ @keyframePoses = nil # array of Transform**
367
367
  end
368
368
 
369
369
  def anim(index) = @anims[index]
370
370
  def anims_count = @anims.length
371
- def frame_count(index) = @anims[index][:frameCount]
371
+ def frame_count(index) = @anims[index][:keyframeCount]
372
372
 
373
373
  # @return BoneInfo
374
374
  def bone_info(anim_index, bone_index)
@@ -377,7 +377,7 @@ module Raylib
377
377
 
378
378
  # @return Transform*
379
379
  def frame_pose(index, frame)
380
- @framePoses[index] + frame * FFI::NativeType::POINTER.size # Transform*
380
+ @keyframePoses[index] + frame * FFI::NativeType::POINTER.size # Transform*
381
381
  end
382
382
 
383
383
  # @return Transform
@@ -393,9 +393,9 @@ module Raylib
393
393
  # @return self
394
394
  def setup(fileName)
395
395
  @anims, @anim_ptrs = LoadAndAllocateModelAnimations(fileName)
396
- @framePoses = []
396
+ @keyframePoses = []
397
397
  @anims.each do |anim|
398
- @framePoses << anim[:framePoses]
398
+ @keyframePoses << anim[:keyframePoses]
399
399
  end
400
400
  self
401
401
  end
@@ -423,7 +423,7 @@ module Raylib
423
423
  # @param anim_ptrs [pointer to loaded memory]
424
424
  def UnloadAndFreeModelAnimations(anims, anim_ptrs)
425
425
  anims.each do |anim|
426
- UnloadModelAnimation(anim)
426
+ UnloadModelAnimations(anim, 1)
427
427
  end
428
428
  MemFree(anim_ptrs)
429
429
  end
data/lib/raylib_main.rb CHANGED
@@ -12,9 +12,9 @@ module Raylib
12
12
  # Define/Macro
13
13
 
14
14
  RAYLIB_VERSION_MAJOR = 6
15
- RAYLIB_VERSION_MINOR = 0
15
+ RAYLIB_VERSION_MINOR = 1
16
16
  RAYLIB_VERSION_PATCH = 0
17
- RAYLIB_VERSION = "6.0"
17
+ RAYLIB_VERSION = "6.1-dev"
18
18
 
19
19
  # Enum
20
20
 
@@ -1420,12 +1420,12 @@ module Raylib
1420
1420
  [:DisableEventWaiting, :DisableEventWaiting, [], :void],
1421
1421
 
1422
1422
  # @!method ShowCursor()
1423
- # ShowCursor : Shows cursor
1423
+ # ShowCursor : Show cursor
1424
1424
  # @return [void]
1425
1425
  [:ShowCursor, :ShowCursor, [], :void],
1426
1426
 
1427
1427
  # @!method HideCursor()
1428
- # HideCursor : Hides cursor
1428
+ # HideCursor : Hide cursor
1429
1429
  # @return [void]
1430
1430
  [:HideCursor, :HideCursor, [], :void],
1431
1431
 
@@ -1435,12 +1435,12 @@ module Raylib
1435
1435
  [:IsCursorHidden, :IsCursorHidden, [], :bool],
1436
1436
 
1437
1437
  # @!method EnableCursor()
1438
- # EnableCursor : Enables cursor (unlock cursor)
1438
+ # EnableCursor : Enable cursor (unlock cursor)
1439
1439
  # @return [void]
1440
1440
  [:EnableCursor, :EnableCursor, [], :void],
1441
1441
 
1442
1442
  # @!method DisableCursor()
1443
- # DisableCursor : Disables cursor (lock cursor)
1443
+ # DisableCursor : Disable cursor (lock cursor)
1444
1444
  # @return [void]
1445
1445
  [:DisableCursor, :DisableCursor, [], :void],
1446
1446
 
@@ -1450,18 +1450,18 @@ module Raylib
1450
1450
  [:IsCursorOnScreen, :IsCursorOnScreen, [], :bool],
1451
1451
 
1452
1452
  # @!method ClearBackground(color)
1453
- # ClearBackground : Set background color (framebuffer clear color)
1453
+ # ClearBackground : Clear background (framebuffer) to color
1454
1454
  # @param color [Color]
1455
1455
  # @return [void]
1456
1456
  [:ClearBackground, :ClearBackground, [Color.by_value], :void],
1457
1457
 
1458
1458
  # @!method BeginDrawing()
1459
- # BeginDrawing : Setup canvas (framebuffer) to start drawing
1459
+ # BeginDrawing : Begin canvas (framebuffer) drawing
1460
1460
  # @return [void]
1461
1461
  [:BeginDrawing, :BeginDrawing, [], :void],
1462
1462
 
1463
1463
  # @!method EndDrawing()
1464
- # EndDrawing : End canvas drawing and swap buffers (double buffering)
1464
+ # EndDrawing : End canvas (framebuffer) drawing and swap buffers (double buffering)
1465
1465
  # @return [void]
1466
1466
  [:EndDrawing, :EndDrawing, [], :void],
1467
1467
 
@@ -1472,7 +1472,7 @@ module Raylib
1472
1472
  [:BeginMode2D, :BeginMode2D, [Camera2D.by_value], :void],
1473
1473
 
1474
1474
  # @!method EndMode2D()
1475
- # EndMode2D : Ends 2D mode with custom camera
1475
+ # EndMode2D : End 2D mode with custom camera
1476
1476
  # @return [void]
1477
1477
  [:EndMode2D, :EndMode2D, [], :void],
1478
1478
 
@@ -1483,7 +1483,7 @@ module Raylib
1483
1483
  [:BeginMode3D, :BeginMode3D, [Camera3D.by_value], :void],
1484
1484
 
1485
1485
  # @!method EndMode3D()
1486
- # EndMode3D : Ends 3D mode and returns to default 2D orthographic mode
1486
+ # EndMode3D : End 3D mode and returns to default 2D orthographic mode
1487
1487
  # @return [void]
1488
1488
  [:EndMode3D, :EndMode3D, [], :void],
1489
1489
 
@@ -1494,7 +1494,7 @@ module Raylib
1494
1494
  [:BeginTextureMode, :BeginTextureMode, [RenderTexture2D.by_value], :void],
1495
1495
 
1496
1496
  # @!method EndTextureMode()
1497
- # EndTextureMode : Ends drawing to render texture
1497
+ # EndTextureMode : End drawing to render texture
1498
1498
  # @return [void]
1499
1499
  [:EndTextureMode, :EndTextureMode, [], :void],
1500
1500
 
@@ -1572,7 +1572,7 @@ module Raylib
1572
1572
  [:LoadShaderFromMemory, :LoadShaderFromMemory, [:pointer, :pointer], Shader.by_value],
1573
1573
 
1574
1574
  # @!method IsShaderValid(shader)
1575
- # IsShaderValid : Check if a shader is valid (loaded on GPU)
1575
+ # IsShaderValid : Check if shader is valid (loaded on GPU)
1576
1576
  # @param shader [Shader]
1577
1577
  # @return [bool]
1578
1578
  [:IsShaderValid, :IsShaderValid, [Shader.by_value], :bool],
@@ -1649,14 +1649,14 @@ module Raylib
1649
1649
  [:GetScreenToWorldRayEx, :GetScreenToWorldRayEx, [Vector2.by_value, Camera.by_value, :int, :int], Ray.by_value],
1650
1650
 
1651
1651
  # @!method GetWorldToScreen(position, camera)
1652
- # GetWorldToScreen : Get the screen space position for a 3d world space position
1652
+ # GetWorldToScreen : Get screen space position for a 3d world space position
1653
1653
  # @param position [Vector3]
1654
1654
  # @param camera [Camera]
1655
1655
  # @return [Vector2]
1656
1656
  [:GetWorldToScreen, :GetWorldToScreen, [Vector3.by_value, Camera.by_value], Vector2.by_value],
1657
1657
 
1658
1658
  # @!method GetWorldToScreenEx(position, camera, width, height)
1659
- # GetWorldToScreenEx : Get size position for a 3d world space position
1659
+ # GetWorldToScreenEx : Get sized screen space position for a 3d world space position
1660
1660
  # @param position [Vector3]
1661
1661
  # @param camera [Camera]
1662
1662
  # @param width [int]
@@ -1665,14 +1665,14 @@ module Raylib
1665
1665
  [:GetWorldToScreenEx, :GetWorldToScreenEx, [Vector3.by_value, Camera.by_value, :int, :int], Vector2.by_value],
1666
1666
 
1667
1667
  # @!method GetWorldToScreen2D(position, camera)
1668
- # GetWorldToScreen2D : Get the screen space position for a 2d camera world space position
1668
+ # GetWorldToScreen2D : Get screen space position for a 2d camera world space position
1669
1669
  # @param position [Vector2]
1670
1670
  # @param camera [Camera2D]
1671
1671
  # @return [Vector2]
1672
1672
  [:GetWorldToScreen2D, :GetWorldToScreen2D, [Vector2.by_value, Camera2D.by_value], Vector2.by_value],
1673
1673
 
1674
1674
  # @!method GetScreenToWorld2D(position, camera)
1675
- # GetScreenToWorld2D : Get the world space position for a 2d camera screen space position
1675
+ # GetScreenToWorld2D : Get world space position for a 2d camera screen space position
1676
1676
  # @param position [Vector2]
1677
1677
  # @param camera [Camera2D]
1678
1678
  # @return [Vector2]
@@ -1761,7 +1761,7 @@ module Raylib
1761
1761
  [:TakeScreenshot, :TakeScreenshot, [:pointer], :void],
1762
1762
 
1763
1763
  # @!method SetConfigFlags(flags)
1764
- # SetConfigFlags : Setup init configuration flags (view FLAGS)
1764
+ # SetConfigFlags : Set up init configuration flags (view FLAGS)
1765
1765
  # @param flags [unsigned int]
1766
1766
  # @return [void]
1767
1767
  [:SetConfigFlags, :SetConfigFlags, [:uint], :void],
@@ -1827,7 +1827,7 @@ module Raylib
1827
1827
  # @!method SaveFileData(fileName, data, dataSize)
1828
1828
  # SaveFileData : Save data to file from byte array (write), returns true on success
1829
1829
  # @param fileName [const char *]
1830
- # @param data [void *]
1830
+ # @param data [const void *]
1831
1831
  # @param dataSize [int]
1832
1832
  # @return [bool]
1833
1833
  [:SaveFileData, :SaveFileData, [:pointer, :pointer, :int], :bool],
@@ -1884,34 +1884,34 @@ module Raylib
1884
1884
  [:SetSaveFileTextCallback, :SetSaveFileTextCallback, [:SaveFileTextCallback], :void],
1885
1885
 
1886
1886
  # @!method FileRename(fileName, fileRename)
1887
- # FileRename : Rename file (if exists)
1887
+ # FileRename : Rename file (if exists), returns 0 on success
1888
1888
  # @param fileName [const char *]
1889
1889
  # @param fileRename [const char *]
1890
1890
  # @return [int]
1891
1891
  [:FileRename, :FileRename, [:pointer, :pointer], :int],
1892
1892
 
1893
1893
  # @!method FileRemove(fileName)
1894
- # FileRemove : Remove file (if exists)
1894
+ # FileRemove : Remove file (if exists), returns 0 on success
1895
1895
  # @param fileName [const char *]
1896
1896
  # @return [int]
1897
1897
  [:FileRemove, :FileRemove, [:pointer], :int],
1898
1898
 
1899
1899
  # @!method FileCopy(srcPath, dstPath)
1900
- # FileCopy : Copy file from one path to another, dstPath created if it doesn't exist
1900
+ # FileCopy : Copy file from one path to another, dstPath created if it doesn't exist, returns 0 on success
1901
1901
  # @param srcPath [const char *]
1902
1902
  # @param dstPath [const char *]
1903
1903
  # @return [int]
1904
1904
  [:FileCopy, :FileCopy, [:pointer, :pointer], :int],
1905
1905
 
1906
1906
  # @!method FileMove(srcPath, dstPath)
1907
- # FileMove : Move file from one directory to another, dstPath created if it doesn't exist
1907
+ # FileMove : Move file from one directory to another, dstPath created if it doesn't exist, returns 0 on success
1908
1908
  # @param srcPath [const char *]
1909
1909
  # @param dstPath [const char *]
1910
1910
  # @return [int]
1911
1911
  [:FileMove, :FileMove, [:pointer, :pointer], :int],
1912
1912
 
1913
1913
  # @!method FileTextReplace(fileName, search, replacement)
1914
- # FileTextReplace : Replace text in an existing file
1914
+ # FileTextReplace : Replace text in an existing file, returns 0 on success
1915
1915
  # @param fileName [const char *]
1916
1916
  # @param search [const char *]
1917
1917
  # @param replacement [const char *]
@@ -1919,7 +1919,7 @@ module Raylib
1919
1919
  [:FileTextReplace, :FileTextReplace, [:pointer, :pointer, :pointer], :int],
1920
1920
 
1921
1921
  # @!method FileTextFindIndex(fileName, search)
1922
- # FileTextFindIndex : Find text in existing file
1922
+ # FileTextFindIndex : Find text in existing file, returns -1 if index not found or index otherwise
1923
1923
  # @param fileName [const char *]
1924
1924
  # @param search [const char *]
1925
1925
  # @return [int]
@@ -1932,7 +1932,7 @@ module Raylib
1932
1932
  [:FileExists, :FileExists, [:pointer], :bool],
1933
1933
 
1934
1934
  # @!method DirectoryExists(dirPath)
1935
- # DirectoryExists : Check if a directory path exists
1935
+ # DirectoryExists : Check if directory path exists
1936
1936
  # @param dirPath [const char *]
1937
1937
  # @return [bool]
1938
1938
  [:DirectoryExists, :DirectoryExists, [:pointer], :bool],
@@ -2003,13 +2003,13 @@ module Raylib
2003
2003
  [:MakeDirectory, :MakeDirectory, [:pointer], :int],
2004
2004
 
2005
2005
  # @!method ChangeDirectory(dirPath)
2006
- # ChangeDirectory : Change working directory, return true on success
2006
+ # ChangeDirectory : Change working directory, returns 0 on success
2007
2007
  # @param dirPath [const char *]
2008
- # @return [bool]
2009
- [:ChangeDirectory, :ChangeDirectory, [:pointer], :bool],
2008
+ # @return [int]
2009
+ [:ChangeDirectory, :ChangeDirectory, [:pointer], :int],
2010
2010
 
2011
2011
  # @!method IsPathFile(path)
2012
- # IsPathFile : Check if a given path is a file or a directory
2012
+ # IsPathFile : Check if given path is a file or a directory
2013
2013
  # @param path [const char *]
2014
2014
  # @return [bool]
2015
2015
  [:IsPathFile, :IsPathFile, [:pointer], :bool],
@@ -2027,7 +2027,7 @@ module Raylib
2027
2027
  [:LoadDirectoryFiles, :LoadDirectoryFiles, [:pointer], FilePathList.by_value],
2028
2028
 
2029
2029
  # @!method LoadDirectoryFilesEx(basePath, filter, scanSubdirs)
2030
- # LoadDirectoryFilesEx : Load directory filepaths with extension filtering and subdir scan; some filters available: "*.*", "FILES*", "DIRS*"
2030
+ # LoadDirectoryFilesEx : Load directory filepaths with extension filtering and subdir scan; some filters available: '*.*','FILES*','DIRS*'
2031
2031
  # @param basePath [const char *]
2032
2032
  # @param filter [const char *]
2033
2033
  # @param scanSubdirs [bool]
@@ -2041,7 +2041,7 @@ module Raylib
2041
2041
  [:UnloadDirectoryFiles, :UnloadDirectoryFiles, [FilePathList.by_value], :void],
2042
2042
 
2043
2043
  # @!method IsFileDropped()
2044
- # IsFileDropped : Check if a file has been dropped into window
2044
+ # IsFileDropped : Check if file has been dropped into window
2045
2045
  # @return [bool]
2046
2046
  [:IsFileDropped, :IsFileDropped, [], :bool],
2047
2047
 
@@ -2103,28 +2103,28 @@ module Raylib
2103
2103
 
2104
2104
  # @!method ComputeCRC32(data, dataSize)
2105
2105
  # ComputeCRC32 : Compute CRC32 hash code
2106
- # @param data [unsigned char *]
2106
+ # @param data [const unsigned char *]
2107
2107
  # @param dataSize [int]
2108
2108
  # @return [unsigned int]
2109
2109
  [:ComputeCRC32, :ComputeCRC32, [:pointer, :int], :uint],
2110
2110
 
2111
2111
  # @!method ComputeMD5(data, dataSize)
2112
2112
  # ComputeMD5 : Compute MD5 hash code, returns static int[4] (16 bytes)
2113
- # @param data [unsigned char *]
2113
+ # @param data [const unsigned char *]
2114
2114
  # @param dataSize [int]
2115
2115
  # @return [unsigned int *]
2116
2116
  [:ComputeMD5, :ComputeMD5, [:pointer, :int], :pointer],
2117
2117
 
2118
2118
  # @!method ComputeSHA1(data, dataSize)
2119
2119
  # ComputeSHA1 : Compute SHA1 hash code, returns static int[5] (20 bytes)
2120
- # @param data [unsigned char *]
2120
+ # @param data [const unsigned char *]
2121
2121
  # @param dataSize [int]
2122
2122
  # @return [unsigned int *]
2123
2123
  [:ComputeSHA1, :ComputeSHA1, [:pointer, :int], :pointer],
2124
2124
 
2125
2125
  # @!method ComputeSHA256(data, dataSize)
2126
2126
  # ComputeSHA256 : Compute SHA256 hash code, returns static int[8] (32 bytes)
2127
- # @param data [unsigned char *]
2127
+ # @param data [const unsigned char *]
2128
2128
  # @param dataSize [int]
2129
2129
  # @return [unsigned int *]
2130
2130
  [:ComputeSHA256, :ComputeSHA256, [:pointer, :int], :pointer],
@@ -2177,31 +2177,31 @@ module Raylib
2177
2177
  [:PlayAutomationEvent, :PlayAutomationEvent, [AutomationEvent.by_value], :void],
2178
2178
 
2179
2179
  # @!method IsKeyPressed(key)
2180
- # IsKeyPressed : Check if a key has been pressed once
2180
+ # IsKeyPressed : Check if key has been pressed once
2181
2181
  # @param key [int]
2182
2182
  # @return [bool]
2183
2183
  [:IsKeyPressed, :IsKeyPressed, [:int], :bool],
2184
2184
 
2185
2185
  # @!method IsKeyPressedRepeat(key)
2186
- # IsKeyPressedRepeat : Check if a key has been pressed again
2186
+ # IsKeyPressedRepeat : Check if key has been pressed again
2187
2187
  # @param key [int]
2188
2188
  # @return [bool]
2189
2189
  [:IsKeyPressedRepeat, :IsKeyPressedRepeat, [:int], :bool],
2190
2190
 
2191
2191
  # @!method IsKeyDown(key)
2192
- # IsKeyDown : Check if a key is being pressed
2192
+ # IsKeyDown : Check if key is being pressed
2193
2193
  # @param key [int]
2194
2194
  # @return [bool]
2195
2195
  [:IsKeyDown, :IsKeyDown, [:int], :bool],
2196
2196
 
2197
2197
  # @!method IsKeyReleased(key)
2198
- # IsKeyReleased : Check if a key has been released once
2198
+ # IsKeyReleased : Check if key has been released once
2199
2199
  # @param key [int]
2200
2200
  # @return [bool]
2201
2201
  [:IsKeyReleased, :IsKeyReleased, [:int], :bool],
2202
2202
 
2203
2203
  # @!method IsKeyUp(key)
2204
- # IsKeyUp : Check if a key is NOT being pressed
2204
+ # IsKeyUp : Check if key is NOT being pressed
2205
2205
  # @param key [int]
2206
2206
  # @return [bool]
2207
2207
  [:IsKeyUp, :IsKeyUp, [:int], :bool],
@@ -2229,7 +2229,7 @@ module Raylib
2229
2229
  [:SetExitKey, :SetExitKey, [:int], :void],
2230
2230
 
2231
2231
  # @!method IsGamepadAvailable(gamepad)
2232
- # IsGamepadAvailable : Check if a gamepad is available
2232
+ # IsGamepadAvailable : Check if gamepad is available
2233
2233
  # @param gamepad [int]
2234
2234
  # @return [bool]
2235
2235
  [:IsGamepadAvailable, :IsGamepadAvailable, [:int], :bool],
@@ -2241,28 +2241,28 @@ module Raylib
2241
2241
  [:GetGamepadName, :GetGamepadName, [:int], :pointer],
2242
2242
 
2243
2243
  # @!method IsGamepadButtonPressed(gamepad, button)
2244
- # IsGamepadButtonPressed : Check if a gamepad button has been pressed once
2244
+ # IsGamepadButtonPressed : Check if gamepad button has been pressed once
2245
2245
  # @param gamepad [int]
2246
2246
  # @param button [int]
2247
2247
  # @return [bool]
2248
2248
  [:IsGamepadButtonPressed, :IsGamepadButtonPressed, [:int, :int], :bool],
2249
2249
 
2250
2250
  # @!method IsGamepadButtonDown(gamepad, button)
2251
- # IsGamepadButtonDown : Check if a gamepad button is being pressed
2251
+ # IsGamepadButtonDown : Check if gamepad button is being pressed
2252
2252
  # @param gamepad [int]
2253
2253
  # @param button [int]
2254
2254
  # @return [bool]
2255
2255
  [:IsGamepadButtonDown, :IsGamepadButtonDown, [:int, :int], :bool],
2256
2256
 
2257
2257
  # @!method IsGamepadButtonReleased(gamepad, button)
2258
- # IsGamepadButtonReleased : Check if a gamepad button has been released once
2258
+ # IsGamepadButtonReleased : Check if gamepad button has been released once
2259
2259
  # @param gamepad [int]
2260
2260
  # @param button [int]
2261
2261
  # @return [bool]
2262
2262
  [:IsGamepadButtonReleased, :IsGamepadButtonReleased, [:int, :int], :bool],
2263
2263
 
2264
2264
  # @!method IsGamepadButtonUp(gamepad, button)
2265
- # IsGamepadButtonUp : Check if a gamepad button is NOT being pressed
2265
+ # IsGamepadButtonUp : Check if gamepad button is NOT being pressed
2266
2266
  # @param gamepad [int]
2267
2267
  # @param button [int]
2268
2268
  # @return [bool]
@@ -2302,25 +2302,25 @@ module Raylib
2302
2302
  [:SetGamepadVibration, :SetGamepadVibration, [:int, :float, :float, :float], :void],
2303
2303
 
2304
2304
  # @!method IsMouseButtonPressed(button)
2305
- # IsMouseButtonPressed : Check if a mouse button has been pressed once
2305
+ # IsMouseButtonPressed : Check if mouse button has been pressed once
2306
2306
  # @param button [int]
2307
2307
  # @return [bool]
2308
2308
  [:IsMouseButtonPressed, :IsMouseButtonPressed, [:int], :bool],
2309
2309
 
2310
2310
  # @!method IsMouseButtonDown(button)
2311
- # IsMouseButtonDown : Check if a mouse button is being pressed
2311
+ # IsMouseButtonDown : Check if mouse button is being pressed
2312
2312
  # @param button [int]
2313
2313
  # @return [bool]
2314
2314
  [:IsMouseButtonDown, :IsMouseButtonDown, [:int], :bool],
2315
2315
 
2316
2316
  # @!method IsMouseButtonReleased(button)
2317
- # IsMouseButtonReleased : Check if a mouse button has been released once
2317
+ # IsMouseButtonReleased : Check if mouse button has been released once
2318
2318
  # @param button [int]
2319
2319
  # @return [bool]
2320
2320
  [:IsMouseButtonReleased, :IsMouseButtonReleased, [:int], :bool],
2321
2321
 
2322
2322
  # @!method IsMouseButtonUp(button)
2323
- # IsMouseButtonUp : Check if a mouse button is NOT being pressed
2323
+ # IsMouseButtonUp : Check if mouse button is NOT being pressed
2324
2324
  # @param button [int]
2325
2325
  # @return [bool]
2326
2326
  [:IsMouseButtonUp, :IsMouseButtonUp, [:int], :bool],
@@ -2416,7 +2416,7 @@ module Raylib
2416
2416
  [:SetGesturesEnabled, :SetGesturesEnabled, [:uint], :void],
2417
2417
 
2418
2418
  # @!method IsGestureDetected(gesture)
2419
- # IsGestureDetected : Check if a gesture have been detected
2419
+ # IsGestureDetected : Check if gesture has been detected
2420
2420
  # @param gesture [unsigned int]
2421
2421
  # @return [bool]
2422
2422
  [:IsGestureDetected, :IsGestureDetected, [:uint], :bool],
@@ -2467,10 +2467,10 @@ module Raylib
2467
2467
  # @return [void]
2468
2468
  [:UpdateCameraPro, :UpdateCameraPro, [:pointer, Vector3.by_value, Vector3.by_value, :float], :void],
2469
2469
 
2470
- # @!method SetShapesTexture(texture, source)
2470
+ # @!method SetShapesTexture(texture, rec)
2471
2471
  # SetShapesTexture : Set texture and rectangle to be used on shapes drawing
2472
2472
  # @param texture [Texture2D]
2473
- # @param source [Rectangle]
2473
+ # @param rec [Rectangle]
2474
2474
  # @return [void]
2475
2475
  [:SetShapesTexture, :SetShapesTexture, [Texture2D.by_value, Rectangle.by_value], :void],
2476
2476
 
@@ -2783,7 +2783,7 @@ module Raylib
2783
2783
  [:DrawRectangleRoundedLines, :DrawRectangleRoundedLines, [Rectangle.by_value, :float, :int, Color.by_value], :void],
2784
2784
 
2785
2785
  # @!method DrawRectangleRoundedLinesEx(rec, roundness, segments, lineThick, color)
2786
- # DrawRectangleRoundedLinesEx : Draw rectangle with rounded edges outline
2786
+ # DrawRectangleRoundedLinesEx : Draw rectangle lines with rounded edges outline
2787
2787
  # @param rec [Rectangle]
2788
2788
  # @param roundness [float]
2789
2789
  # @param segments [int]
@@ -2801,6 +2801,17 @@ module Raylib
2801
2801
  # @return [void]
2802
2802
  [:DrawTriangle, :DrawTriangle, [Vector2.by_value, Vector2.by_value, Vector2.by_value, Color.by_value], :void],
2803
2803
 
2804
+ # @!method DrawTriangleGradient(v1, v2, v3, c1, c2, c3)
2805
+ # DrawTriangleGradient : Draw triangle with interpolated colors (vertex in counter-clockwise order!)
2806
+ # @param v1 [Vector2]
2807
+ # @param v2 [Vector2]
2808
+ # @param v3 [Vector2]
2809
+ # @param c1 [Color]
2810
+ # @param c2 [Color]
2811
+ # @param c3 [Color]
2812
+ # @return [void]
2813
+ [:DrawTriangleGradient, :DrawTriangleGradient, [Vector2.by_value, Vector2.by_value, Vector2.by_value, Color.by_value, Color.by_value, Color.by_value], :void],
2814
+
2804
2815
  # @!method DrawTriangleLines(v1, v2, v3, color)
2805
2816
  # DrawTriangleLines : Draw triangle outline (vertex in counter-clockwise order!)
2806
2817
  # @param v1 [Vector2]
@@ -2827,7 +2838,7 @@ module Raylib
2827
2838
  [:DrawTriangleStrip, :DrawTriangleStrip, [:pointer, :int, Color.by_value], :void],
2828
2839
 
2829
2840
  # @!method DrawPoly(center, sides, radius, rotation, color)
2830
- # DrawPoly : Draw a regular polygon (Vector version)
2841
+ # DrawPoly : Draw a polygon of n sides
2831
2842
  # @param center [Vector2]
2832
2843
  # @param sides [int]
2833
2844
  # @param radius [float]
@@ -2982,14 +2993,14 @@ module Raylib
2982
2993
  # @return [Vector2]
2983
2994
  [:GetSplinePointCatmullRom, :GetSplinePointCatmullRom, [Vector2.by_value, Vector2.by_value, Vector2.by_value, Vector2.by_value, :float], Vector2.by_value],
2984
2995
 
2985
- # @!method GetSplinePointBezierQuad(p1, c2, p3, t)
2986
- # GetSplinePointBezierQuad : Get (evaluate) spline point: Quadratic Bezier
2996
+ # @!method GetSplinePointBezierQuadratic(p1, c2, p3, t)
2997
+ # GetSplinePointBezierQuadratic : Get (evaluate) spline point: Quadratic Bezier
2987
2998
  # @param p1 [Vector2]
2988
2999
  # @param c2 [Vector2]
2989
3000
  # @param p3 [Vector2]
2990
3001
  # @param t [float]
2991
3002
  # @return [Vector2]
2992
- [:GetSplinePointBezierQuad, :GetSplinePointBezierQuad, [Vector2.by_value, Vector2.by_value, Vector2.by_value, :float], Vector2.by_value],
3003
+ [:GetSplinePointBezierQuadratic, :GetSplinePointBezierQuadratic, [Vector2.by_value, Vector2.by_value, Vector2.by_value, :float], Vector2.by_value],
2993
3004
 
2994
3005
  # @!method GetSplinePointBezierCubic(p1, c2, c3, p4, t)
2995
3006
  # GetSplinePointBezierCubic : Get (evaluate) spline point: Cubic Bezier
@@ -3026,7 +3037,7 @@ module Raylib
3026
3037
  [:CheckCollisionCircleRec, :CheckCollisionCircleRec, [Vector2.by_value, :float, Rectangle.by_value], :bool],
3027
3038
 
3028
3039
  # @!method CheckCollisionCircleLine(center, radius, p1, p2)
3029
- # CheckCollisionCircleLine : Check if circle collides with a line created betweeen two points [p1] and [p2]
3040
+ # CheckCollisionCircleLine : Check if circle collides with a line created between two points [p1] and [p2]
3030
3041
  # @param center [Vector2]
3031
3042
  # @param radius [float]
3032
3043
  # @param p1 [Vector2]
@@ -3139,7 +3150,7 @@ module Raylib
3139
3150
  [:LoadImageFromTexture, :LoadImageFromTexture, [Texture2D.by_value], Image.by_value],
3140
3151
 
3141
3152
  # @!method LoadImageFromScreen()
3142
- # LoadImageFromScreen : Load image from screen buffer and (screenshot)
3153
+ # LoadImageFromScreen : Load image from screen buffer (screenshot)
3143
3154
  # @return [Image]
3144
3155
  [:LoadImageFromScreen, :LoadImageFromScreen, [], Image.by_value],
3145
3156
 
@@ -3458,9 +3469,9 @@ module Raylib
3458
3469
  # @!method ImageColorContrast(image, contrast)
3459
3470
  # ImageColorContrast : Modify image color: contrast (-100 to 100)
3460
3471
  # @param image [Image *]
3461
- # @param contrast [float]
3472
+ # @param contrast [int]
3462
3473
  # @return [void]
3463
- [:ImageColorContrast, :ImageColorContrast, [:pointer, :float], :void],
3474
+ [:ImageColorContrast, :ImageColorContrast, [:pointer, :int], :void],
3464
3475
 
3465
3476
  # @!method ImageColorBrightness(image, brightness)
3466
3477
  # ImageColorBrightness : Modify image color: brightness (-255 to 255)
@@ -3638,14 +3649,25 @@ module Raylib
3638
3649
  # @return [void]
3639
3650
  [:ImageDrawRectangleRec, :ImageDrawRectangleRec, [:pointer, Rectangle.by_value, Color.by_value], :void],
3640
3651
 
3641
- # @!method ImageDrawRectangleLines(dst, rec, thick, color)
3652
+ # @!method ImageDrawRectangleLines(dst, posX, posY, width, height, color)
3642
3653
  # ImageDrawRectangleLines : Draw rectangle lines within an image
3643
3654
  # @param dst [Image *]
3655
+ # @param posX [int]
3656
+ # @param posY [int]
3657
+ # @param width [int]
3658
+ # @param height [int]
3659
+ # @param color [Color]
3660
+ # @return [void]
3661
+ [:ImageDrawRectangleLines, :ImageDrawRectangleLines, [:pointer, :int, :int, :int, :int, Color.by_value], :void],
3662
+
3663
+ # @!method ImageDrawRectangleLinesEx(dst, rec, thick, color)
3664
+ # ImageDrawRectangleLinesEx : Draw rectangle lines within an image with extended parameters
3665
+ # @param dst [Image *]
3644
3666
  # @param rec [Rectangle]
3645
3667
  # @param thick [int]
3646
3668
  # @param color [Color]
3647
3669
  # @return [void]
3648
- [:ImageDrawRectangleLines, :ImageDrawRectangleLines, [:pointer, Rectangle.by_value, :int, Color.by_value], :void],
3670
+ [:ImageDrawRectangleLinesEx, :ImageDrawRectangleLinesEx, [:pointer, Rectangle.by_value, :int, Color.by_value], :void],
3649
3671
 
3650
3672
  # @!method ImageDrawTriangle(dst, v1, v2, v3, color)
3651
3673
  # ImageDrawTriangle : Draw triangle within an image
@@ -3657,8 +3679,8 @@ module Raylib
3657
3679
  # @return [void]
3658
3680
  [:ImageDrawTriangle, :ImageDrawTriangle, [:pointer, Vector2.by_value, Vector2.by_value, Vector2.by_value, Color.by_value], :void],
3659
3681
 
3660
- # @!method ImageDrawTriangleEx(dst, v1, v2, v3, c1, c2, c3)
3661
- # ImageDrawTriangleEx : Draw triangle with interpolated colors within an image
3682
+ # @!method ImageDrawTriangleGradient(dst, v1, v2, v3, c1, c2, c3)
3683
+ # ImageDrawTriangleGradient : Draw triangle with interpolated colors within an image
3662
3684
  # @param dst [Image *]
3663
3685
  # @param v1 [Vector2]
3664
3686
  # @param v2 [Vector2]
@@ -3667,7 +3689,7 @@ module Raylib
3667
3689
  # @param c2 [Color]
3668
3690
  # @param c3 [Color]
3669
3691
  # @return [void]
3670
- [:ImageDrawTriangleEx, :ImageDrawTriangleEx, [:pointer, Vector2.by_value, Vector2.by_value, Vector2.by_value, Color.by_value, Color.by_value, Color.by_value], :void],
3692
+ [:ImageDrawTriangleGradient, :ImageDrawTriangleGradient, [:pointer, Vector2.by_value, Vector2.by_value, Vector2.by_value, Color.by_value, Color.by_value, Color.by_value], :void],
3671
3693
 
3672
3694
  # @!method ImageDrawTriangleLines(dst, v1, v2, v3, color)
3673
3695
  # ImageDrawTriangleLines : Draw triangle outline within an image
@@ -3757,7 +3779,7 @@ module Raylib
3757
3779
  [:LoadRenderTexture, :LoadRenderTexture, [:int, :int], RenderTexture2D.by_value],
3758
3780
 
3759
3781
  # @!method IsTextureValid(texture)
3760
- # IsTextureValid : Check if a texture is valid (loaded in GPU)
3782
+ # IsTextureValid : Check if texture is valid (loaded in GPU)
3761
3783
  # @param texture [Texture2D]
3762
3784
  # @return [bool]
3763
3785
  [:IsTextureValid, :IsTextureValid, [Texture2D.by_value], :bool],
@@ -3769,7 +3791,7 @@ module Raylib
3769
3791
  [:UnloadTexture, :UnloadTexture, [Texture2D.by_value], :void],
3770
3792
 
3771
3793
  # @!method IsRenderTextureValid(target)
3772
- # IsRenderTextureValid : Check if a render texture is valid (loaded in GPU)
3794
+ # IsRenderTextureValid : Check if render texture is valid (loaded in GPU)
3773
3795
  # @param target [RenderTexture2D]
3774
3796
  # @return [bool]
3775
3797
  [:IsRenderTextureValid, :IsRenderTextureValid, [RenderTexture2D.by_value], :bool],
@@ -3842,31 +3864,31 @@ module Raylib
3842
3864
  # @return [void]
3843
3865
  [:DrawTextureEx, :DrawTextureEx, [Texture2D.by_value, Vector2.by_value, :float, :float, Color.by_value], :void],
3844
3866
 
3845
- # @!method DrawTextureRec(texture, source, position, tint)
3867
+ # @!method DrawTextureRec(texture, rec, position, tint)
3846
3868
  # DrawTextureRec : Draw a part of a texture defined by a rectangle
3847
3869
  # @param texture [Texture2D]
3848
- # @param source [Rectangle]
3870
+ # @param rec [Rectangle]
3849
3871
  # @param position [Vector2]
3850
3872
  # @param tint [Color]
3851
3873
  # @return [void]
3852
3874
  [:DrawTextureRec, :DrawTextureRec, [Texture2D.by_value, Rectangle.by_value, Vector2.by_value, Color.by_value], :void],
3853
3875
 
3854
- # @!method DrawTexturePro(texture, source, dest, origin, rotation, tint)
3855
- # DrawTexturePro : Draw a part of a texture defined by a rectangle with 'pro' parameters
3876
+ # @!method DrawTexturePro(texture, srcrec, dstrec, origin, rotation, tint)
3877
+ # DrawTexturePro : Draw a part of a texture defined by a source rectangle to destination rectangle, with scaling and rotation
3856
3878
  # @param texture [Texture2D]
3857
- # @param source [Rectangle]
3858
- # @param dest [Rectangle]
3879
+ # @param srcrec [Rectangle]
3880
+ # @param dstrec [Rectangle]
3859
3881
  # @param origin [Vector2]
3860
3882
  # @param rotation [float]
3861
3883
  # @param tint [Color]
3862
3884
  # @return [void]
3863
3885
  [:DrawTexturePro, :DrawTexturePro, [Texture2D.by_value, Rectangle.by_value, Rectangle.by_value, Vector2.by_value, :float, Color.by_value], :void],
3864
3886
 
3865
- # @!method DrawTextureNPatch(texture, nPatchInfo, dest, origin, rotation, tint)
3866
- # DrawTextureNPatch : Draws a texture (or part of it) that stretches or shrinks nicely
3887
+ # @!method DrawTextureNPatch(texture, nPatchInfo, dstrec, origin, rotation, tint)
3888
+ # DrawTextureNPatch : Draw a texture (or part of it) that stretches or shrinks nicely
3867
3889
  # @param texture [Texture2D]
3868
3890
  # @param nPatchInfo [NPatchInfo]
3869
- # @param dest [Rectangle]
3891
+ # @param dstrec [Rectangle]
3870
3892
  # @param origin [Vector2]
3871
3893
  # @param rotation [float]
3872
3894
  # @param tint [Color]
@@ -3971,7 +3993,7 @@ module Raylib
3971
3993
 
3972
3994
  # @!method GetPixelColor(srcPtr, format)
3973
3995
  # GetPixelColor : Get Color from a source pixel pointer of certain format
3974
- # @param srcPtr [void *]
3996
+ # @param srcPtr [const void *]
3975
3997
  # @param format [int]
3976
3998
  # @return [Color]
3977
3999
  [:GetPixelColor, :GetPixelColor, [:pointer, :int], Color.by_value],
@@ -4032,7 +4054,7 @@ module Raylib
4032
4054
  [:LoadFontFromMemory, :LoadFontFromMemory, [:pointer, :pointer, :int, :int, :pointer, :int], Font.by_value],
4033
4055
 
4034
4056
  # @!method IsFontValid(font)
4035
- # IsFontValid : Check if a font is valid (font data loaded, WARNING: GPU texture not checked)
4057
+ # IsFontValid : Check if font is valid (font data loaded, WARNING: GPU texture not checked)
4036
4058
  # @param font [Font]
4037
4059
  # @return [bool]
4038
4060
  [:IsFontValid, :IsFontValid, [Font.by_value], :bool],
@@ -4132,7 +4154,7 @@ module Raylib
4132
4154
  [:DrawTextCodepoint, :DrawTextCodepoint, [Font.by_value, :int, Vector2.by_value, :float, Color.by_value], :void],
4133
4155
 
4134
4156
  # @!method DrawTextCodepoints(font, codepoints, codepointCount, position, fontSize, spacing, tint)
4135
- # DrawTextCodepoints : Draw multiple character (codepoint)
4157
+ # DrawTextCodepoints : Draw multiple characters (codepoint)
4136
4158
  # @param font [Font]
4137
4159
  # @param codepoints [const int *]
4138
4160
  # @param codepointCount [int]
@@ -4278,7 +4300,7 @@ module Raylib
4278
4300
  [:TextCopy, :TextCopy, [:pointer, :pointer], :int],
4279
4301
 
4280
4302
  # @!method TextIsEqual(text1, text2)
4281
- # TextIsEqual : Check if two text string are equal
4303
+ # TextIsEqual : Check if two text strings are equal
4282
4304
  # @param text1 [const char *]
4283
4305
  # @param text2 [const char *]
4284
4306
  # @return [bool]
@@ -4548,13 +4570,13 @@ module Raylib
4548
4570
  # @return [void]
4549
4571
  [:DrawSphereWires, :DrawSphereWires, [Vector3.by_value, :float, :int, :int, Color.by_value], :void],
4550
4572
 
4551
- # @!method DrawCylinder(position, radiusTop, radiusBottom, height, slices, color)
4573
+ # @!method DrawCylinder(position, radiusTop, radiusBottom, height, sides, color)
4552
4574
  # DrawCylinder : Draw a cylinder/cone
4553
4575
  # @param position [Vector3]
4554
4576
  # @param radiusTop [float]
4555
4577
  # @param radiusBottom [float]
4556
4578
  # @param height [float]
4557
- # @param slices [int]
4579
+ # @param sides [int]
4558
4580
  # @param color [Color]
4559
4581
  # @return [void]
4560
4582
  [:DrawCylinder, :DrawCylinder, [Vector3.by_value, :float, :float, :float, :int, Color.by_value], :void],
@@ -4570,13 +4592,13 @@ module Raylib
4570
4592
  # @return [void]
4571
4593
  [:DrawCylinderEx, :DrawCylinderEx, [Vector3.by_value, Vector3.by_value, :float, :float, :int, Color.by_value], :void],
4572
4594
 
4573
- # @!method DrawCylinderWires(position, radiusTop, radiusBottom, height, slices, color)
4595
+ # @!method DrawCylinderWires(position, radiusTop, radiusBottom, height, sides, color)
4574
4596
  # DrawCylinderWires : Draw a cylinder/cone wires
4575
4597
  # @param position [Vector3]
4576
4598
  # @param radiusTop [float]
4577
4599
  # @param radiusBottom [float]
4578
4600
  # @param height [float]
4579
- # @param slices [int]
4601
+ # @param sides [int]
4580
4602
  # @param color [Color]
4581
4603
  # @return [void]
4582
4604
  [:DrawCylinderWires, :DrawCylinderWires, [Vector3.by_value, :float, :float, :float, :int, Color.by_value], :void],
@@ -4592,24 +4614,24 @@ module Raylib
4592
4614
  # @return [void]
4593
4615
  [:DrawCylinderWiresEx, :DrawCylinderWiresEx, [Vector3.by_value, Vector3.by_value, :float, :float, :int, Color.by_value], :void],
4594
4616
 
4595
- # @!method DrawCapsule(startPos, endPos, radius, slices, rings, color)
4617
+ # @!method DrawCapsule(startPos, endPos, radius, rings, slices, color)
4596
4618
  # DrawCapsule : Draw a capsule with the center of its sphere caps at startPos and endPos
4597
4619
  # @param startPos [Vector3]
4598
4620
  # @param endPos [Vector3]
4599
4621
  # @param radius [float]
4600
- # @param slices [int]
4601
4622
  # @param rings [int]
4623
+ # @param slices [int]
4602
4624
  # @param color [Color]
4603
4625
  # @return [void]
4604
4626
  [:DrawCapsule, :DrawCapsule, [Vector3.by_value, Vector3.by_value, :float, :int, :int, Color.by_value], :void],
4605
4627
 
4606
- # @!method DrawCapsuleWires(startPos, endPos, radius, slices, rings, color)
4628
+ # @!method DrawCapsuleWires(startPos, endPos, radius, rings, slices, color)
4607
4629
  # DrawCapsuleWires : Draw capsule wireframe with the center of its sphere caps at startPos and endPos
4608
4630
  # @param startPos [Vector3]
4609
4631
  # @param endPos [Vector3]
4610
4632
  # @param radius [float]
4611
- # @param slices [int]
4612
4633
  # @param rings [int]
4634
+ # @param slices [int]
4613
4635
  # @param color [Color]
4614
4636
  # @return [void]
4615
4637
  [:DrawCapsuleWires, :DrawCapsuleWires, [Vector3.by_value, Vector3.by_value, :float, :int, :int, Color.by_value], :void],
@@ -4649,7 +4671,7 @@ module Raylib
4649
4671
  [:LoadModelFromMesh, :LoadModelFromMesh, [Mesh.by_value], Model.by_value],
4650
4672
 
4651
4673
  # @!method IsModelValid(model)
4652
- # IsModelValid : Check if a model is valid (loaded in GPU, VAO/VBOs)
4674
+ # IsModelValid : Check if model is valid (loaded in GPU, VAO/VBOs)
4653
4675
  # @param model [Model]
4654
4676
  # @return [bool]
4655
4677
  [:IsModelValid, :IsModelValid, [Model.by_value], :bool],
@@ -4723,22 +4745,22 @@ module Raylib
4723
4745
  # @return [void]
4724
4746
  [:DrawBillboard, :DrawBillboard, [Camera.by_value, Texture2D.by_value, Vector3.by_value, :float, Color.by_value], :void],
4725
4747
 
4726
- # @!method DrawBillboardRec(camera, texture, source, position, size, tint)
4727
- # DrawBillboardRec : Draw a billboard texture defined by source
4748
+ # @!method DrawBillboardRec(camera, texture, rec, position, size, tint)
4749
+ # DrawBillboardRec : Draw a billboard texture defined by rectangle
4728
4750
  # @param camera [Camera]
4729
4751
  # @param texture [Texture2D]
4730
- # @param source [Rectangle]
4752
+ # @param rec [Rectangle]
4731
4753
  # @param position [Vector3]
4732
4754
  # @param size [Vector2]
4733
4755
  # @param tint [Color]
4734
4756
  # @return [void]
4735
4757
  [:DrawBillboardRec, :DrawBillboardRec, [Camera.by_value, Texture2D.by_value, Rectangle.by_value, Vector3.by_value, Vector2.by_value, Color.by_value], :void],
4736
4758
 
4737
- # @!method DrawBillboardPro(camera, texture, source, position, up, size, origin, rotation, tint)
4738
- # DrawBillboardPro : Draw a billboard texture defined by source and rotation
4759
+ # @!method DrawBillboardPro(camera, texture, rec, position, up, size, origin, rotation, tint)
4760
+ # DrawBillboardPro : Draw a billboard texture defined by source rectangle with scaling and rotation
4739
4761
  # @param camera [Camera]
4740
4762
  # @param texture [Texture2D]
4741
- # @param source [Rectangle]
4763
+ # @param rec [Rectangle]
4742
4764
  # @param position [Vector3]
4743
4765
  # @param up [Vector3]
4744
4766
  # @param size [Vector2]
@@ -4915,7 +4937,7 @@ module Raylib
4915
4937
  [:LoadMaterialDefault, :LoadMaterialDefault, [], Material.by_value],
4916
4938
 
4917
4939
  # @!method IsMaterialValid(material)
4918
- # IsMaterialValid : Check if a material is valid (shader assigned, map textures loaded in GPU)
4940
+ # IsMaterialValid : Check if material is valid (shader assigned, map textures loaded in GPU)
4919
4941
  # @param material [Material]
4920
4942
  # @return [bool]
4921
4943
  [:IsMaterialValid, :IsMaterialValid, [Material.by_value], :bool],
@@ -5089,7 +5111,7 @@ module Raylib
5089
5111
  [:LoadWaveFromMemory, :LoadWaveFromMemory, [:pointer, :pointer, :int], Wave.by_value],
5090
5112
 
5091
5113
  # @!method IsWaveValid(wave)
5092
- # IsWaveValid : Checks if wave data is valid (data loaded and parameters)
5114
+ # IsWaveValid : Check if wave data is valid (data loaded and parameters)
5093
5115
  # @param wave [Wave]
5094
5116
  # @return [bool]
5095
5117
  [:IsWaveValid, :IsWaveValid, [Wave.by_value], :bool],
@@ -5107,22 +5129,22 @@ module Raylib
5107
5129
  [:LoadSoundFromWave, :LoadSoundFromWave, [Wave.by_value], Sound.by_value],
5108
5130
 
5109
5131
  # @!method LoadSoundAlias(source)
5110
- # LoadSoundAlias : Create a new sound that shares the same sample data as the source sound, does not own the sound data
5132
+ # LoadSoundAlias : Load sound alias, new sound that shares the same sample data as the source sound, does not own the sound data
5111
5133
  # @param source [Sound]
5112
5134
  # @return [Sound]
5113
5135
  [:LoadSoundAlias, :LoadSoundAlias, [Sound.by_value], Sound.by_value],
5114
5136
 
5115
5137
  # @!method IsSoundValid(sound)
5116
- # IsSoundValid : Checks if a sound is valid (data loaded and buffers initialized)
5138
+ # IsSoundValid : Check if sound is valid (data loaded and buffers initialized)
5117
5139
  # @param sound [Sound]
5118
5140
  # @return [bool]
5119
5141
  [:IsSoundValid, :IsSoundValid, [Sound.by_value], :bool],
5120
5142
 
5121
- # @!method UpdateSound(sound, data, sampleCount)
5143
+ # @!method UpdateSound(sound, data, frameCount)
5122
5144
  # UpdateSound : Update sound buffer with new data (default data format: 32 bit float, stereo)
5123
5145
  # @param sound [Sound]
5124
5146
  # @param data [const void *]
5125
- # @param sampleCount [int]
5147
+ # @param frameCount [int]
5126
5148
  # @return [void]
5127
5149
  [:UpdateSound, :UpdateSound, [Sound.by_value, :pointer, :int], :void],
5128
5150
 
@@ -5139,7 +5161,7 @@ module Raylib
5139
5161
  [:UnloadSound, :UnloadSound, [Sound.by_value], :void],
5140
5162
 
5141
5163
  # @!method UnloadSoundAlias(alias)
5142
- # UnloadSoundAlias : Unload a sound alias (does not deallocate sample data)
5164
+ # UnloadSoundAlias : Unload sound alias (does not deallocate sample data)
5143
5165
  # @param alias [Sound]
5144
5166
  # @return [void]
5145
5167
  [:UnloadSoundAlias, :UnloadSoundAlias, [Sound.by_value], :void],
@@ -5183,7 +5205,7 @@ module Raylib
5183
5205
  [:ResumeSound, :ResumeSound, [Sound.by_value], :void],
5184
5206
 
5185
5207
  # @!method IsSoundPlaying(sound)
5186
- # IsSoundPlaying : Check if a sound is currently playing
5208
+ # IsSoundPlaying : Check if sound is currently playing
5187
5209
  # @param sound [Sound]
5188
5210
  # @return [bool]
5189
5211
  [:IsSoundPlaying, :IsSoundPlaying, [Sound.by_value], :bool],
@@ -5259,7 +5281,7 @@ module Raylib
5259
5281
  [:LoadMusicStreamFromMemory, :LoadMusicStreamFromMemory, [:pointer, :pointer, :int], Music.by_value],
5260
5282
 
5261
5283
  # @!method IsMusicValid(music)
5262
- # IsMusicValid : Checks if a music stream is valid (context and buffers initialized)
5284
+ # IsMusicValid : Check if music stream is valid (context and buffers initialized)
5263
5285
  # @param music [Music]
5264
5286
  # @return [bool]
5265
5287
  [:IsMusicValid, :IsMusicValid, [Music.by_value], :bool],
@@ -5283,7 +5305,7 @@ module Raylib
5283
5305
  [:IsMusicStreamPlaying, :IsMusicStreamPlaying, [Music.by_value], :bool],
5284
5306
 
5285
5307
  # @!method UpdateMusicStream(music)
5286
- # UpdateMusicStream : Updates buffers for music streaming
5308
+ # UpdateMusicStream : Update buffers for music streaming
5287
5309
  # @param music [Music]
5288
5310
  # @return [void]
5289
5311
  [:UpdateMusicStream, :UpdateMusicStream, [Music.by_value], :void],
@@ -5321,14 +5343,14 @@ module Raylib
5321
5343
  [:SetMusicVolume, :SetMusicVolume, [Music.by_value, :float], :void],
5322
5344
 
5323
5345
  # @!method SetMusicPitch(music, pitch)
5324
- # SetMusicPitch : Set pitch for a music (1.0 is base level)
5346
+ # SetMusicPitch : Set pitch for music (1.0 is base level)
5325
5347
  # @param music [Music]
5326
5348
  # @param pitch [float]
5327
5349
  # @return [void]
5328
5350
  [:SetMusicPitch, :SetMusicPitch, [Music.by_value, :float], :void],
5329
5351
 
5330
5352
  # @!method SetMusicPan(music, pan)
5331
- # SetMusicPan : Set pan for a music (-1.0 left, 0.0 center, 1.0 right)
5353
+ # SetMusicPan : Set pan for music (-1.0 left, 0.0 center, 1.0 right)
5332
5354
  # @param music [Music]
5333
5355
  # @param pan [float]
5334
5356
  # @return [void]
@@ -5355,7 +5377,7 @@ module Raylib
5355
5377
  [:LoadAudioStream, :LoadAudioStream, [:uint, :uint, :uint], AudioStream.by_value],
5356
5378
 
5357
5379
  # @!method IsAudioStreamValid(stream)
5358
- # IsAudioStreamValid : Checks if an audio stream is valid (buffers initialized)
5380
+ # IsAudioStreamValid : Check if an audio stream is valid (buffers initialized)
5359
5381
  # @param stream [AudioStream]
5360
5382
  # @return [bool]
5361
5383
  [:IsAudioStreamValid, :IsAudioStreamValid, [AudioStream.by_value], :bool],
@@ -5425,7 +5447,7 @@ module Raylib
5425
5447
  [:SetAudioStreamPitch, :SetAudioStreamPitch, [AudioStream.by_value, :float], :void],
5426
5448
 
5427
5449
  # @!method SetAudioStreamPan(stream, pan)
5428
- # SetAudioStreamPan : Set pan for audio stream (-1.0 to 1.0 range, 0.0 is centered)
5450
+ # SetAudioStreamPan : Set pan for audio stream (-1.0 left, 0.0 center, 1.0 right)
5429
5451
  # @param stream [AudioStream]
5430
5452
  # @param pan [float]
5431
5453
  # @return [void]
data/lib/rlgl.rb CHANGED
@@ -253,11 +253,11 @@ module Raylib
253
253
  # Dynamic vertex buffers (position + texcoords + colors + indices arrays)
254
254
  class RlVertexBuffer < FFI::Struct
255
255
  layout(
256
- :elementCount, :int, # Number of elements in the buffer (QUADS)
257
- :vertices, :pointer, # Vertex position (XYZ - 3 components per vertex) (shader-location = 0)
258
- :texcoords, :pointer, # Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1)
256
+ :elementCount, :int,
257
+ :vertices, :pointer,
258
+ :texcoords, :pointer,
259
259
  :normals, :pointer, # Vertex normal (XYZ - 3 components per vertex) (shader-location = 2)
260
- :colors, :pointer, # Vertex colors (RGBA - 4 components per vertex) (shader-location = 3)
260
+ :colors, :pointer,
261
261
  :indices, :pointer, # Vertex indices (in case vertex data comes indexed) (6 indices per quad)
262
262
  :vaoId, :uint, # OpenGL Vertex Array Object id
263
263
  :vboId, [:uint, 5], # OpenGL Vertex Buffer Objects id (5 types of vertex data)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raylib-bindings
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - vaiorabbit