raylib-bindings 0.0.4 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f265f2bb3b641937a614df8d8e98be0fba842b114f1679edd40c455341231d20
4
- data.tar.gz: b8e08199f775b11a269ca3e15fefefd5e5914cf4d01c52666120b8f627f0ab04
3
+ metadata.gz: 8593b9ef115baafa884f5d0e2b8e47248b415f0070c0d30bda2159e544cc41a9
4
+ data.tar.gz: 6338b99322c0abc4f6404e80ca9b7cecd98c3a9b1b6ab8a1455e00f638cff3f0
5
5
  SHA512:
6
- metadata.gz: cdba348025d42f7c2bfaaea76dddddf08cc77f7696c3c87695e779b467cdcbb892c02d6a3e4bebd97b381f565f40fb629e9c5faa01f8b209634de82f58e41811
7
- data.tar.gz: f80d020a1d7ad6e1843ae2ed8b3b6898f9a00795c6d4410dbe8ee0a9e9d00586a53c3321cd038d82e4b6f4a6471968c906440db3aa9108a6de49a01d137383d6
6
+ metadata.gz: 378cc6b3cf55d646b6c4295db4e1581cf4772e32cad2e1ecc3bc2aab147bafd9552cd75517aa2191b6c8fc3e75ba4d60907e731f27c234bb21cdf46075861d4d
7
+ data.tar.gz: b3ac769d989b37e4a5501bdff70fc8bdda35a7fc08eba28b1b9073fb210356cea0be750b6599cc73923b22a348adb7928fe0cbcfeeb872e048b4794c98b5c1fa
data/ChangeLog CHANGED
@@ -1,3 +1,42 @@
1
+ 2022-06-08 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * Pulled latest raylib ( https://github.com/raysan5/raylib/commit/70ec71a373db426685590127122e77bfd66cbf69 ) / and raygui ( https://github.com/raysan5/raygui/commit/47269f30ce55f0399096d1bee4188b8b8c0d7186 )
4
+ * Updated submodules appropriately
5
+
6
+ 2022-04-29 vaiorabbit <http://twitter.com/vaiorabbit>
7
+
8
+ * script/rebuild_libs_windows.cmd: Added
9
+ * Pulled latest raylib ( https://github.com/raysan5/raylib/commit/5c66cc1c9bb4a3ae4af7cc6f82a521137ed5484d ) / Updated submodules appropriately
10
+ * [Windows] Updated DLLs with the latest raylib ( https://github.com/raysan5/raylib/commit/5c66cc1c9bb4a3ae4af7cc6f82a521137ed5484d ) and raygui ( https://github.com/raysan5/raygui/commit/865bb293764073c01e74314ef647464f1f10fd96 )
11
+ * [macOS] Updated DLLs with the latest raylib
12
+
13
+ 2022-04-24 vaiorabbit <http://twitter.com/vaiorabbit>
14
+
15
+ * Pulled latest raylib ( https://github.com/raysan5/raylib/commit/233cf3970c9148c4963cfdea20e49e761104f9de ) and raygui ( https://github.com/raysan5/raygui/commit/865bb293764073c01e74314ef647464f1f10fd96 )
16
+ * examples/models_mesh_picking.rb: Applied changes done by https://github.com/raysan5/raylib/commit/90fc7c0376f39d7b19d632e1d69dec715ec3f2a8
17
+
18
+ 2022-02-26 vaiorabbit <http://twitter.com/vaiorabbit>
19
+
20
+ * Pulled latest raylib ( https://github.com/raysan5/raylib/commit/ead8003044aab21f8d155b91ec0bce90cd193500 ), raygui ( https://github.com/raysan5/raygui/commit/c8d8fb5a865a6730cec2c609704333577463feb1 ) and Physac ( https://github.com/victorfisac/Physac/commit/c9c6b3e7054d609e93e52e70f17d5b4dd043575d )
21
+ * Fixed incomplete parsing flow
22
+
23
+ 2022-01-20 vaiorabbit <http://twitter.com/vaiorabbit>
24
+
25
+ * examples/core_2d_camera.rb: Added
26
+ * examples/shapes_lines_bezier.rb: Added
27
+
28
+ 2022-01-19 vaiorabbit <http://twitter.com/vaiorabbit>
29
+
30
+ * examples/lissajous_curve.rb: Added
31
+
32
+ 2022-01-17 vaiorabbit <http://twitter.com/vaiorabbit>
33
+
34
+ * raygui: Revert to https://github.com/raysan5/raygui/commit/7a2964302ada73438092d0ad11e54f9f9590547a (See https://github.com/vaiorabbit/raylib-bindings/issues/2 for details)
35
+
36
+ 2022-01-16 vaiorabbit <http://twitter.com/vaiorabbit>
37
+
38
+ * examples/audio_raw_stream.rb: Added
39
+
1
40
  2022-01-15 vaiorabbit <http://twitter.com/vaiorabbit>
2
41
 
3
42
  * raylib_dll/build_raylib_macos.sh: Stop copying symbolic links
data/README.md CHANGED
@@ -2,10 +2,17 @@
2
2
 
3
3
  # Yet another raylib wrapper for Ruby #
4
4
 
5
- Provides latest [raylib](https://github.com/raysan5/raylib) API for Ruby
6
-
7
5
  * Created : 2021-10-17
8
- * Last modified : 2022-01-15
6
+ * Last modified : 2022-06-08
7
+
8
+ Provides Ruby bindings for raylib-related libraries including:
9
+
10
+ * [raylib](https://github.com/raysan5/raylib)
11
+ * raylib
12
+ * raymath
13
+ * rlgl
14
+ * [raygui](https://github.com/raysan5/raygui)
15
+ * [Physac](https://github.com/victorfisac/Physac)
9
16
 
10
17
  ## Features ##
11
18
 
@@ -15,12 +22,38 @@ Provides latest [raylib](https://github.com/raysan5/raylib) API for Ruby
15
22
 
16
23
  ## Prerequisites ##
17
24
 
25
+ * Ruby interpreter
26
+ * Tested on:
27
+ * [macOS]
28
+ * ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin20]
29
+ * [Windows] https://rubyinstaller.org/downloads/ Ruby+Devkit
30
+ * ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x64-mingw-ucrt]
31
+
32
+ * Compiler
33
+ * Tested on:
34
+ * [macOS] clang
35
+
36
+ Apple clang version 13.0.0 (clang-1300.0.29.3)
37
+ Target: arm64-apple-darwin20.6.0
38
+ Thread model: posix
39
+ InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
40
+
41
+ * [Windows] gcc
42
+
43
+ gcc (Rev10, Built by MSYS2 project) 11.2.0
44
+
45
+ * CMake https://cmake.org/download/
46
+
47
+ <details>
48
+ <summary>Older versions</summary>
49
+
18
50
  * Ruby interpreter
19
51
  * Tested on:
20
52
  * [macOS]
21
53
  * ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin20]
22
54
  * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [arm64-darwin20]
23
55
  * [Windows] https://rubyinstaller.org/downloads/ Ruby+Devkit
56
+ * ruby 3.1.1p18 (2022-02-18 revision 53f5fc4236) [x64-mingw-ucrt]
24
57
  * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x64-mingw32]
25
58
 
26
59
  * Compiler
@@ -34,9 +67,9 @@ Provides latest [raylib](https://github.com/raysan5/raylib) API for Ruby
34
67
 
35
68
  * [Windows] gcc
36
69
 
37
- gcc (Rev5, Built by MSYS2 project) 10.3.0
70
+ gcc (Rev9, Built by MSYS2 project) 11.2.0
38
71
 
39
- * CMake https://cmake.org/download/
72
+ </details>
40
73
 
41
74
  ## Limitation ##
42
75
 
@@ -59,24 +92,24 @@ Shared libraries in `lib` directory are built on top of these products and are a
59
92
 
60
93
  All ruby codes here are available under the terms of the zlib/libpng License ( http://opensource.org/licenses/Zlib ).
61
94
 
62
- Ruby-raylib : Yet another raylib wrapper for Ruby
63
- Copyright (c) 2021-2022 vaiorabbit <http://twitter.com/vaiorabbit>
95
+ Ruby-raylib : Yet another raylib wrapper for Ruby
96
+ Copyright (c) 2021-2022 vaiorabbit <http://twitter.com/vaiorabbit>
64
97
 
65
- This software is provided 'as-is', without any express or implied
66
- warranty. In no event will the authors be held liable for any damages
67
- arising from the use of this software.
98
+ This software is provided 'as-is', without any express or implied
99
+ warranty. In no event will the authors be held liable for any damages
100
+ arising from the use of this software.
68
101
 
69
- Permission is granted to anyone to use this software for any purpose,
70
- including commercial applications, and to alter it and redistribute it
71
- freely, subject to the following restrictions:
102
+ Permission is granted to anyone to use this software for any purpose,
103
+ including commercial applications, and to alter it and redistribute it
104
+ freely, subject to the following restrictions:
72
105
 
73
- 1. The origin of this software must not be misrepresented; you must not
74
- claim that you wrote the original software. If you use this software
75
- in a product, an acknowledgment in the product documentation would be
76
- appreciated but is not required.
106
+ 1. The origin of this software must not be misrepresented; you must not
107
+ claim that you wrote the original software. If you use this software
108
+ in a product, an acknowledgment in the product documentation would be
109
+ appreciated but is not required.
77
110
 
78
- 2. Altered source versions must be plainly marked as such, and must not be
79
- misrepresented as being the original software.
111
+ 2. Altered source versions must be plainly marked as such, and must not be
112
+ misrepresented as being the original software.
80
113
 
81
- 3. This notice may not be removed or altered from any source
82
- distribution.
114
+ 3. This notice may not be removed or altered from any source
115
+ distribution.
data/lib/libraylib.dll CHANGED
Binary file
data/lib/libraylib.dylib CHANGED
Binary file
data/lib/physac.dll CHANGED
Binary file
data/lib/physac.dylib CHANGED
Binary file
data/lib/raygui.dll CHANGED
Binary file
data/lib/raygui.dylib CHANGED
Binary file
data/lib/raygui.rb CHANGED
@@ -10,17 +10,19 @@ module Raylib
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
- RAYGUI_VERSION = "3.0"
13
+ RAYGUI_VERSION = "3.2-dev"
14
+ SCROLLBAR_LEFT_SIDE = 0
15
+ SCROLLBAR_RIGHT_SIDE = 1
14
16
 
15
17
  # Enum
16
18
 
17
- GUI_STATE_NORMAL = 0
18
- GUI_STATE_FOCUSED = 1
19
- GUI_STATE_PRESSED = 2
20
- GUI_STATE_DISABLED = 3
21
- GUI_TEXT_ALIGN_LEFT = 0
22
- GUI_TEXT_ALIGN_CENTER = 1
23
- GUI_TEXT_ALIGN_RIGHT = 2
19
+ STATE_NORMAL = 0
20
+ STATE_FOCUSED = 1
21
+ STATE_PRESSED = 2
22
+ STATE_DISABLED = 3
23
+ TEXT_ALIGN_LEFT = 0
24
+ TEXT_ALIGN_CENTER = 1
25
+ TEXT_ALIGN_RIGHT = 2
24
26
  DEFAULT = 0
25
27
  LABEL = 1
26
28
  BUTTON = 2
@@ -61,27 +63,23 @@ module Raylib
61
63
  SLIDER_WIDTH = 16
62
64
  SLIDER_PADDING = 17
63
65
  PROGRESS_PADDING = 16
64
- CHECK_PADDING = 16
65
- COMBO_BUTTON_WIDTH = 16
66
- COMBO_BUTTON_PADDING = 17
67
- ARROW_PADDING = 16
68
- DROPDOWN_ITEMS_PADDING = 17
69
- TEXT_INNER_PADDING = 16
70
- TEXT_LINES_PADDING = 17
71
- COLOR_SELECTED_FG = 18
72
- COLOR_SELECTED_BG = 19
73
- SPIN_BUTTON_WIDTH = 16
74
- SPIN_BUTTON_PADDING = 17
75
66
  ARROWS_SIZE = 16
76
67
  ARROWS_VISIBLE = 17
77
68
  SCROLL_SLIDER_PADDING = 18
78
69
  SCROLL_SLIDER_SIZE = 19
79
70
  SCROLL_PADDING = 20
80
71
  SCROLL_SPEED = 21
81
- SCROLLBAR_LEFT_SIDE = 0
82
- SCROLLBAR_RIGHT_SIDE = 1
72
+ CHECK_PADDING = 16
73
+ COMBO_BUTTON_WIDTH = 16
74
+ COMBO_BUTTON_SPACING = 17
75
+ ARROW_PADDING = 16
76
+ DROPDOWN_ITEMS_SPACING = 17
77
+ TEXT_INNER_PADDING = 16
78
+ TEXT_LINES_SPACING = 17
79
+ SPIN_BUTTON_WIDTH = 16
80
+ SPIN_BUTTON_SPACING = 17
83
81
  LIST_ITEMS_HEIGHT = 16
84
- LIST_ITEMS_PADDING = 17
82
+ LIST_ITEMS_SPACING = 17
85
83
  SCROLLBAR_WIDTH = 18
86
84
  SCROLLBAR_SIDE = 19
87
85
  COLOR_SELECTOR_SIZE = 16
@@ -89,10 +87,266 @@ module Raylib
89
87
  HUEBAR_PADDING = 18
90
88
  HUEBAR_SELECTOR_HEIGHT = 19
91
89
  HUEBAR_SELECTOR_OVERFLOW = 20
90
+ ICON_NONE = 0
91
+ ICON_FOLDER_FILE_OPEN = 1
92
+ ICON_FILE_SAVE_CLASSIC = 2
93
+ ICON_FOLDER_OPEN = 3
94
+ ICON_FOLDER_SAVE = 4
95
+ ICON_FILE_OPEN = 5
96
+ ICON_FILE_SAVE = 6
97
+ ICON_FILE_EXPORT = 7
98
+ ICON_FILE_ADD = 8
99
+ ICON_FILE_DELETE = 9
100
+ ICON_FILETYPE_TEXT = 10
101
+ ICON_FILETYPE_AUDIO = 11
102
+ ICON_FILETYPE_IMAGE = 12
103
+ ICON_FILETYPE_PLAY = 13
104
+ ICON_FILETYPE_VIDEO = 14
105
+ ICON_FILETYPE_INFO = 15
106
+ ICON_FILE_COPY = 16
107
+ ICON_FILE_CUT = 17
108
+ ICON_FILE_PASTE = 18
109
+ ICON_CURSOR_HAND = 19
110
+ ICON_CURSOR_POINTER = 20
111
+ ICON_CURSOR_CLASSIC = 21
112
+ ICON_PENCIL = 22
113
+ ICON_PENCIL_BIG = 23
114
+ ICON_BRUSH_CLASSIC = 24
115
+ ICON_BRUSH_PAINTER = 25
116
+ ICON_WATER_DROP = 26
117
+ ICON_COLOR_PICKER = 27
118
+ ICON_RUBBER = 28
119
+ ICON_COLOR_BUCKET = 29
120
+ ICON_TEXT_T = 30
121
+ ICON_TEXT_A = 31
122
+ ICON_SCALE = 32
123
+ ICON_RESIZE = 33
124
+ ICON_FILTER_POINT = 34
125
+ ICON_FILTER_BILINEAR = 35
126
+ ICON_CROP = 36
127
+ ICON_CROP_ALPHA = 37
128
+ ICON_SQUARE_TOGGLE = 38
129
+ ICON_SYMMETRY = 39
130
+ ICON_SYMMETRY_HORIZONTAL = 40
131
+ ICON_SYMMETRY_VERTICAL = 41
132
+ ICON_LENS = 42
133
+ ICON_LENS_BIG = 43
134
+ ICON_EYE_ON = 44
135
+ ICON_EYE_OFF = 45
136
+ ICON_FILTER_TOP = 46
137
+ ICON_FILTER = 47
138
+ ICON_TARGET_POINT = 48
139
+ ICON_TARGET_SMALL = 49
140
+ ICON_TARGET_BIG = 50
141
+ ICON_TARGET_MOVE = 51
142
+ ICON_CURSOR_MOVE = 52
143
+ ICON_CURSOR_SCALE = 53
144
+ ICON_CURSOR_SCALE_RIGHT = 54
145
+ ICON_CURSOR_SCALE_LEFT = 55
146
+ ICON_UNDO = 56
147
+ ICON_REDO = 57
148
+ ICON_REREDO = 58
149
+ ICON_MUTATE = 59
150
+ ICON_ROTATE = 60
151
+ ICON_REPEAT = 61
152
+ ICON_SHUFFLE = 62
153
+ ICON_EMPTYBOX = 63
154
+ ICON_TARGET = 64
155
+ ICON_TARGET_SMALL_FILL = 65
156
+ ICON_TARGET_BIG_FILL = 66
157
+ ICON_TARGET_MOVE_FILL = 67
158
+ ICON_CURSOR_MOVE_FILL = 68
159
+ ICON_CURSOR_SCALE_FILL = 69
160
+ ICON_CURSOR_SCALE_RIGHT_FILL = 70
161
+ ICON_CURSOR_SCALE_LEFT_FILL = 71
162
+ ICON_UNDO_FILL = 72
163
+ ICON_REDO_FILL = 73
164
+ ICON_REREDO_FILL = 74
165
+ ICON_MUTATE_FILL = 75
166
+ ICON_ROTATE_FILL = 76
167
+ ICON_REPEAT_FILL = 77
168
+ ICON_SHUFFLE_FILL = 78
169
+ ICON_EMPTYBOX_SMALL = 79
170
+ ICON_BOX = 80
171
+ ICON_BOX_TOP = 81
172
+ ICON_BOX_TOP_RIGHT = 82
173
+ ICON_BOX_RIGHT = 83
174
+ ICON_BOX_BOTTOM_RIGHT = 84
175
+ ICON_BOX_BOTTOM = 85
176
+ ICON_BOX_BOTTOM_LEFT = 86
177
+ ICON_BOX_LEFT = 87
178
+ ICON_BOX_TOP_LEFT = 88
179
+ ICON_BOX_CENTER = 89
180
+ ICON_BOX_CIRCLE_MASK = 90
181
+ ICON_POT = 91
182
+ ICON_ALPHA_MULTIPLY = 92
183
+ ICON_ALPHA_CLEAR = 93
184
+ ICON_DITHERING = 94
185
+ ICON_MIPMAPS = 95
186
+ ICON_BOX_GRID = 96
187
+ ICON_GRID = 97
188
+ ICON_BOX_CORNERS_SMALL = 98
189
+ ICON_BOX_CORNERS_BIG = 99
190
+ ICON_FOUR_BOXES = 100
191
+ ICON_GRID_FILL = 101
192
+ ICON_BOX_MULTISIZE = 102
193
+ ICON_ZOOM_SMALL = 103
194
+ ICON_ZOOM_MEDIUM = 104
195
+ ICON_ZOOM_BIG = 105
196
+ ICON_ZOOM_ALL = 106
197
+ ICON_ZOOM_CENTER = 107
198
+ ICON_BOX_DOTS_SMALL = 108
199
+ ICON_BOX_DOTS_BIG = 109
200
+ ICON_BOX_CONCENTRIC = 110
201
+ ICON_BOX_GRID_BIG = 111
202
+ ICON_OK_TICK = 112
203
+ ICON_CROSS = 113
204
+ ICON_ARROW_LEFT = 114
205
+ ICON_ARROW_RIGHT = 115
206
+ ICON_ARROW_DOWN = 116
207
+ ICON_ARROW_UP = 117
208
+ ICON_ARROW_LEFT_FILL = 118
209
+ ICON_ARROW_RIGHT_FILL = 119
210
+ ICON_ARROW_DOWN_FILL = 120
211
+ ICON_ARROW_UP_FILL = 121
212
+ ICON_AUDIO = 122
213
+ ICON_FX = 123
214
+ ICON_WAVE = 124
215
+ ICON_WAVE_SINUS = 125
216
+ ICON_WAVE_SQUARE = 126
217
+ ICON_WAVE_TRIANGULAR = 127
218
+ ICON_CROSS_SMALL = 128
219
+ ICON_PLAYER_PREVIOUS = 129
220
+ ICON_PLAYER_PLAY_BACK = 130
221
+ ICON_PLAYER_PLAY = 131
222
+ ICON_PLAYER_PAUSE = 132
223
+ ICON_PLAYER_STOP = 133
224
+ ICON_PLAYER_NEXT = 134
225
+ ICON_PLAYER_RECORD = 135
226
+ ICON_MAGNET = 136
227
+ ICON_LOCK_CLOSE = 137
228
+ ICON_LOCK_OPEN = 138
229
+ ICON_CLOCK = 139
230
+ ICON_TOOLS = 140
231
+ ICON_GEAR = 141
232
+ ICON_GEAR_BIG = 142
233
+ ICON_BIN = 143
234
+ ICON_HAND_POINTER = 144
235
+ ICON_LASER = 145
236
+ ICON_COIN = 146
237
+ ICON_EXPLOSION = 147
238
+ ICON_1UP = 148
239
+ ICON_PLAYER = 149
240
+ ICON_PLAYER_JUMP = 150
241
+ ICON_KEY = 151
242
+ ICON_DEMON = 152
243
+ ICON_TEXT_POPUP = 153
244
+ ICON_GEAR_EX = 154
245
+ ICON_CRACK = 155
246
+ ICON_CRACK_POINTS = 156
247
+ ICON_STAR = 157
248
+ ICON_DOOR = 158
249
+ ICON_EXIT = 159
250
+ ICON_MODE_2D = 160
251
+ ICON_MODE_3D = 161
252
+ ICON_CUBE = 162
253
+ ICON_CUBE_FACE_TOP = 163
254
+ ICON_CUBE_FACE_LEFT = 164
255
+ ICON_CUBE_FACE_FRONT = 165
256
+ ICON_CUBE_FACE_BOTTOM = 166
257
+ ICON_CUBE_FACE_RIGHT = 167
258
+ ICON_CUBE_FACE_BACK = 168
259
+ ICON_CAMERA = 169
260
+ ICON_SPECIAL = 170
261
+ ICON_LINK_NET = 171
262
+ ICON_LINK_BOXES = 172
263
+ ICON_LINK_MULTI = 173
264
+ ICON_LINK = 174
265
+ ICON_LINK_BROKE = 175
266
+ ICON_TEXT_NOTES = 176
267
+ ICON_NOTEBOOK = 177
268
+ ICON_SUITCASE = 178
269
+ ICON_SUITCASE_ZIP = 179
270
+ ICON_MAILBOX = 180
271
+ ICON_MONITOR = 181
272
+ ICON_PRINTER = 182
273
+ ICON_PHOTO_CAMERA = 183
274
+ ICON_PHOTO_CAMERA_FLASH = 184
275
+ ICON_HOUSE = 185
276
+ ICON_HEART = 186
277
+ ICON_CORNER = 187
278
+ ICON_VERTICAL_BARS = 188
279
+ ICON_VERTICAL_BARS_FILL = 189
280
+ ICON_LIFE_BARS = 190
281
+ ICON_INFO = 191
282
+ ICON_CROSSLINE = 192
283
+ ICON_HELP = 193
284
+ ICON_FILETYPE_ALPHA = 194
285
+ ICON_FILETYPE_HOME = 195
286
+ ICON_LAYERS_VISIBLE = 196
287
+ ICON_LAYERS = 197
288
+ ICON_WINDOW = 198
289
+ ICON_HIDPI = 199
290
+ ICON_FILETYPE_BINARY = 200
291
+ ICON_HEX = 201
292
+ ICON_SHIELD = 202
293
+ ICON_FILE_NEW = 203
294
+ ICON_FOLDER_ADD = 204
295
+ ICON_ALARM = 205
296
+ ICON_206 = 206
297
+ ICON_207 = 207
298
+ ICON_208 = 208
299
+ ICON_209 = 209
300
+ ICON_210 = 210
301
+ ICON_211 = 211
302
+ ICON_212 = 212
303
+ ICON_213 = 213
304
+ ICON_214 = 214
305
+ ICON_215 = 215
306
+ ICON_216 = 216
307
+ ICON_217 = 217
308
+ ICON_218 = 218
309
+ ICON_219 = 219
310
+ ICON_220 = 220
311
+ ICON_221 = 221
312
+ ICON_222 = 222
313
+ ICON_223 = 223
314
+ ICON_224 = 224
315
+ ICON_225 = 225
316
+ ICON_226 = 226
317
+ ICON_227 = 227
318
+ ICON_228 = 228
319
+ ICON_229 = 229
320
+ ICON_230 = 230
321
+ ICON_231 = 231
322
+ ICON_232 = 232
323
+ ICON_233 = 233
324
+ ICON_234 = 234
325
+ ICON_235 = 235
326
+ ICON_236 = 236
327
+ ICON_237 = 237
328
+ ICON_238 = 238
329
+ ICON_239 = 239
330
+ ICON_240 = 240
331
+ ICON_241 = 241
332
+ ICON_242 = 242
333
+ ICON_243 = 243
334
+ ICON_244 = 244
335
+ ICON_245 = 245
336
+ ICON_246 = 246
337
+ ICON_247 = 247
338
+ ICON_248 = 248
339
+ ICON_249 = 249
340
+ ICON_250 = 250
341
+ ICON_251 = 251
342
+ ICON_252 = 252
343
+ ICON_253 = 253
344
+ ICON_254 = 254
345
+ ICON_255 = 255
92
346
 
93
347
  # Typedef
94
348
 
95
- typedef :int, :GuiControlState
349
+ typedef :int, :GuiState
96
350
  typedef :int, :GuiTextAlignment
97
351
  typedef :int, :GuiControl
98
352
  typedef :int, :GuiControlProperty
@@ -100,15 +354,15 @@ module Raylib
100
354
  typedef :int, :GuiToggleProperty
101
355
  typedef :int, :GuiSliderProperty
102
356
  typedef :int, :GuiProgressBarProperty
357
+ typedef :int, :GuiScrollBarProperty
103
358
  typedef :int, :GuiCheckBoxProperty
104
359
  typedef :int, :GuiComboBoxProperty
105
360
  typedef :int, :GuiDropdownBoxProperty
106
361
  typedef :int, :GuiTextBoxProperty
107
362
  typedef :int, :GuiSpinnerProperty
108
- typedef :int, :GuiScrollBarProperty
109
- typedef :int, :GuiScrollBarSide
110
363
  typedef :int, :GuiListViewProperty
111
364
  typedef :int, :GuiColorPickerProperty
365
+ typedef :int, :GuiIconName
112
366
 
113
367
  # Struct
114
368
 
@@ -116,7 +370,7 @@ module Raylib
116
370
  layout(
117
371
  :controlId, :ushort,
118
372
  :propertyId, :ushort,
119
- :propertyValue, :int,
373
+ :propertyValue, :uint,
120
374
  )
121
375
  end
122
376
 
@@ -159,7 +413,6 @@ module Raylib
159
413
  :GuiProgressBar,
160
414
  :GuiStatusBar,
161
415
  :GuiDummyRec,
162
- :GuiScrollBar,
163
416
  :GuiGrid,
164
417
  :GuiListView,
165
418
  :GuiListViewEx,
@@ -176,6 +429,7 @@ module Raylib
176
429
  :GuiGetIcons,
177
430
  :GuiGetIconData,
178
431
  :GuiSetIconData,
432
+ :GuiSetIconScale,
179
433
  :GuiSetIconPixel,
180
434
  :GuiClearIconPixel,
181
435
  :GuiCheckIconPixel,
@@ -215,12 +469,11 @@ module Raylib
215
469
  :GuiProgressBar => [Rectangle.by_value, :pointer, :pointer, :float, :float, :float],
216
470
  :GuiStatusBar => [Rectangle.by_value, :pointer],
217
471
  :GuiDummyRec => [Rectangle.by_value, :pointer],
218
- :GuiScrollBar => [Rectangle.by_value, :int, :int, :int],
219
- :GuiGrid => [Rectangle.by_value, :float, :int],
472
+ :GuiGrid => [Rectangle.by_value, :pointer, :float, :int],
220
473
  :GuiListView => [Rectangle.by_value, :pointer, :pointer, :int],
221
474
  :GuiListViewEx => [Rectangle.by_value, :pointer, :int, :pointer, :pointer, :int],
222
475
  :GuiMessageBox => [Rectangle.by_value, :pointer, :pointer, :pointer],
223
- :GuiTextInputBox => [Rectangle.by_value, :pointer, :pointer, :pointer, :pointer],
476
+ :GuiTextInputBox => [Rectangle.by_value, :pointer, :pointer, :pointer, :pointer, :int, :pointer],
224
477
  :GuiColorPicker => [Rectangle.by_value, :pointer, Color.by_value],
225
478
  :GuiColorPanel => [Rectangle.by_value, :pointer, Color.by_value],
226
479
  :GuiColorBarAlpha => [Rectangle.by_value, :pointer, :float],
@@ -232,6 +485,7 @@ module Raylib
232
485
  :GuiGetIcons => [],
233
486
  :GuiGetIconData => [:int],
234
487
  :GuiSetIconData => [:int, :pointer],
488
+ :GuiSetIconScale => [:uint],
235
489
  :GuiSetIconPixel => [:int, :int, :int],
236
490
  :GuiClearIconPixel => [:int, :int, :int],
237
491
  :GuiCheckIconPixel => [:int, :int, :int],
@@ -271,7 +525,6 @@ module Raylib
271
525
  :GuiProgressBar => :float,
272
526
  :GuiStatusBar => :void,
273
527
  :GuiDummyRec => :void,
274
- :GuiScrollBar => :int,
275
528
  :GuiGrid => Vector2.by_value,
276
529
  :GuiListView => :int,
277
530
  :GuiListViewEx => :int,
@@ -288,6 +541,7 @@ module Raylib
288
541
  :GuiGetIcons => :pointer,
289
542
  :GuiGetIconData => :pointer,
290
543
  :GuiSetIconData => :void,
544
+ :GuiSetIconScale => :void,
291
545
  :GuiSetIconPixel => :void,
292
546
  :GuiClearIconPixel => :void,
293
547
  :GuiCheckIconPixel => :bool,
data/lib/raylib_main.rb CHANGED
@@ -10,7 +10,7 @@ module Raylib
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
- RAYLIB_VERSION = "4.0"
13
+ RAYLIB_VERSION = "4.2-dev"
14
14
  DEG2RAD = Math::PI / 180.0
15
15
  RAD2DEG = 180.0 / Math::PI
16
16
 
@@ -285,7 +285,8 @@ module Raylib
285
285
  BLEND_MULTIPLIED = 2
286
286
  BLEND_ADD_COLORS = 3
287
287
  BLEND_SUBTRACT_COLORS = 4
288
- BLEND_CUSTOM = 5
288
+ BLEND_ALPHA_PREMULTIPLY = 5
289
+ BLEND_CUSTOM = 6
289
290
  GESTURE_NONE = 0
290
291
  GESTURE_TAP = 1
291
292
  GESTURE_DOUBLETAP = 2
@@ -331,11 +332,12 @@ module Raylib
331
332
  typedef :int, :CameraMode
332
333
  typedef :int, :CameraProjection
333
334
  typedef :int, :NPatchLayout
334
- callback :TraceLogCallback, [:int, :pointer, :pointer], :void
335
+ callback :TraceLogCallback, [:int, :pointer, :int], :void
335
336
  callback :LoadFileDataCallback, [:pointer, :pointer], :pointer
336
337
  callback :SaveFileDataCallback, [:pointer, :pointer, :uint], :bool
337
338
  callback :LoadFileTextCallback, [:pointer], :pointer
338
339
  callback :SaveFileTextCallback, [:pointer, :pointer], :bool
340
+ callback :AudioCallback, [:pointer, :uint], :void
339
341
 
340
342
  # Struct
341
343
 
@@ -607,6 +609,7 @@ module Raylib
607
609
  class AudioStream < FFI::Struct
608
610
  layout(
609
611
  :buffer, :pointer,
612
+ :processor, :pointer,
610
613
  :sampleRate, :uint,
611
614
  :sampleSize, :uint,
612
615
  :channels, :uint,
@@ -705,6 +708,8 @@ module Raylib
705
708
  :GetMonitorName,
706
709
  :SetClipboardText,
707
710
  :GetClipboardText,
711
+ :EnableEventWaiting,
712
+ :DisableEventWaiting,
708
713
  :SwapScreenBuffer,
709
714
  :PollInputEvents,
710
715
  :WaitTime,
@@ -746,9 +751,9 @@ module Raylib
746
751
  :GetCameraMatrix,
747
752
  :GetCameraMatrix2D,
748
753
  :GetWorldToScreen,
754
+ :GetScreenToWorld2D,
749
755
  :GetWorldToScreenEx,
750
756
  :GetWorldToScreen2D,
751
- :GetScreenToWorld2D,
752
757
  :SetTargetFPS,
753
758
  :GetFPS,
754
759
  :GetFrameTime,
@@ -770,12 +775,14 @@ module Raylib
770
775
  :LoadFileData,
771
776
  :UnloadFileData,
772
777
  :SaveFileData,
778
+ :ExportDataAsCode,
773
779
  :LoadFileText,
774
780
  :UnloadFileText,
775
781
  :SaveFileText,
776
782
  :FileExists,
777
783
  :DirectoryExists,
778
784
  :IsFileExtension,
785
+ :GetFileLength,
779
786
  :GetFileExtension,
780
787
  :GetFileName,
781
788
  :GetFileNameWithoutExt,
@@ -783,12 +790,12 @@ module Raylib
783
790
  :GetPrevDirectoryPath,
784
791
  :GetWorkingDirectory,
785
792
  :GetApplicationDirectory,
786
- :GetDirectoryFiles,
787
- :ClearDirectoryFiles,
788
793
  :ChangeDirectory,
794
+ :LoadDirectoryFiles,
795
+ :UnloadDirectoryFiles,
789
796
  :IsFileDropped,
790
- :GetDroppedFiles,
791
- :ClearDroppedFiles,
797
+ :LoadDroppedFiles,
798
+ :UnloadDroppedFiles,
792
799
  :GetFileModTime,
793
800
  :CompressData,
794
801
  :DecompressData,
@@ -1002,6 +1009,7 @@ module Raylib
1002
1009
  :DrawTextEx,
1003
1010
  :DrawTextPro,
1004
1011
  :DrawTextCodepoint,
1012
+ :DrawTextCodepoints,
1005
1013
  :MeasureText,
1006
1014
  :MeasureTextEx,
1007
1015
  :GetGlyphIndex,
@@ -1097,7 +1105,6 @@ module Raylib
1097
1105
  :CheckCollisionBoxSphere,
1098
1106
  :GetRayCollisionSphere,
1099
1107
  :GetRayCollisionBox,
1100
- :GetRayCollisionModel,
1101
1108
  :GetRayCollisionMesh,
1102
1109
  :GetRayCollisionTriangle,
1103
1110
  :GetRayCollisionQuad,
@@ -1124,9 +1131,10 @@ module Raylib
1124
1131
  :IsSoundPlaying,
1125
1132
  :SetSoundVolume,
1126
1133
  :SetSoundPitch,
1127
- :WaveFormat,
1134
+ :SetSoundPan,
1128
1135
  :WaveCopy,
1129
1136
  :WaveCrop,
1137
+ :WaveFormat,
1130
1138
  :LoadWaveSamples,
1131
1139
  :UnloadWaveSamples,
1132
1140
  :LoadMusicStream,
@@ -1141,6 +1149,7 @@ module Raylib
1141
1149
  :SeekMusicStream,
1142
1150
  :SetMusicVolume,
1143
1151
  :SetMusicPitch,
1152
+ :SetMusicPan,
1144
1153
  :GetMusicTimeLength,
1145
1154
  :GetMusicTimePlayed,
1146
1155
  :LoadAudioStream,
@@ -1154,7 +1163,11 @@ module Raylib
1154
1163
  :StopAudioStream,
1155
1164
  :SetAudioStreamVolume,
1156
1165
  :SetAudioStreamPitch,
1166
+ :SetAudioStreamPan,
1157
1167
  :SetAudioStreamBufferSizeDefault,
1168
+ :SetAudioStreamCallback,
1169
+ :AttachAudioStreamProcessor,
1170
+ :DetachAudioStreamProcessor,
1158
1171
  ]
1159
1172
  args = {
1160
1173
  :InitWindow => [:int, :int, :pointer],
@@ -1199,9 +1212,11 @@ module Raylib
1199
1212
  :GetMonitorName => [:int],
1200
1213
  :SetClipboardText => [:pointer],
1201
1214
  :GetClipboardText => [],
1215
+ :EnableEventWaiting => [],
1216
+ :DisableEventWaiting => [],
1202
1217
  :SwapScreenBuffer => [],
1203
1218
  :PollInputEvents => [],
1204
- :WaitTime => [:float],
1219
+ :WaitTime => [:double],
1205
1220
  :ShowCursor => [],
1206
1221
  :HideCursor => [],
1207
1222
  :IsCursorHidden => [],
@@ -1240,9 +1255,9 @@ module Raylib
1240
1255
  :GetCameraMatrix => [Camera.by_value],
1241
1256
  :GetCameraMatrix2D => [Camera2D.by_value],
1242
1257
  :GetWorldToScreen => [Vector3.by_value, Camera.by_value],
1258
+ :GetScreenToWorld2D => [Vector2.by_value, Camera2D.by_value],
1243
1259
  :GetWorldToScreenEx => [Vector3.by_value, Camera.by_value, :int, :int],
1244
1260
  :GetWorldToScreen2D => [Vector2.by_value, Camera2D.by_value],
1245
- :GetScreenToWorld2D => [Vector2.by_value, Camera2D.by_value],
1246
1261
  :SetTargetFPS => [:int],
1247
1262
  :GetFPS => [],
1248
1263
  :GetFrameTime => [],
@@ -1264,12 +1279,14 @@ module Raylib
1264
1279
  :LoadFileData => [:pointer, :pointer],
1265
1280
  :UnloadFileData => [:pointer],
1266
1281
  :SaveFileData => [:pointer, :pointer, :uint],
1282
+ :ExportDataAsCode => [:pointer, :uint, :pointer],
1267
1283
  :LoadFileText => [:pointer],
1268
1284
  :UnloadFileText => [:pointer],
1269
1285
  :SaveFileText => [:pointer, :pointer],
1270
1286
  :FileExists => [:pointer],
1271
1287
  :DirectoryExists => [:pointer],
1272
1288
  :IsFileExtension => [:pointer, :pointer],
1289
+ :GetFileLength => [:pointer],
1273
1290
  :GetFileExtension => [:pointer],
1274
1291
  :GetFileName => [:pointer],
1275
1292
  :GetFileNameWithoutExt => [:pointer],
@@ -1277,12 +1294,12 @@ module Raylib
1277
1294
  :GetPrevDirectoryPath => [:pointer],
1278
1295
  :GetWorkingDirectory => [],
1279
1296
  :GetApplicationDirectory => [],
1280
- :GetDirectoryFiles => [:pointer, :pointer],
1281
- :ClearDirectoryFiles => [],
1282
1297
  :ChangeDirectory => [:pointer],
1298
+ :LoadDirectoryFiles => [:pointer, :pointer],
1299
+ :UnloadDirectoryFiles => [],
1283
1300
  :IsFileDropped => [],
1284
- :GetDroppedFiles => [:pointer],
1285
- :ClearDroppedFiles => [],
1301
+ :LoadDroppedFiles => [:pointer],
1302
+ :UnloadDroppedFiles => [],
1286
1303
  :GetFileModTime => [:pointer],
1287
1304
  :CompressData => [:pointer, :int, :pointer],
1288
1305
  :DecompressData => [:pointer, :int, :pointer],
@@ -1496,6 +1513,7 @@ module Raylib
1496
1513
  :DrawTextEx => [Font.by_value, :pointer, Vector2.by_value, :float, :float, Color.by_value],
1497
1514
  :DrawTextPro => [Font.by_value, :pointer, Vector2.by_value, Vector2.by_value, :float, :float, :float, Color.by_value],
1498
1515
  :DrawTextCodepoint => [Font.by_value, :int, Vector2.by_value, :float, Color.by_value],
1516
+ :DrawTextCodepoints => [Font.by_value, :pointer, :int, Vector2.by_value, :float, :float, Color.by_value],
1499
1517
  :MeasureText => [:pointer, :int],
1500
1518
  :MeasureTextEx => [Font.by_value, :pointer, :float, :float],
1501
1519
  :GetGlyphIndex => [Font.by_value, :int],
@@ -1591,7 +1609,6 @@ module Raylib
1591
1609
  :CheckCollisionBoxSphere => [BoundingBox.by_value, Vector3.by_value, :float],
1592
1610
  :GetRayCollisionSphere => [Ray.by_value, Vector3.by_value, :float],
1593
1611
  :GetRayCollisionBox => [Ray.by_value, BoundingBox.by_value],
1594
- :GetRayCollisionModel => [Ray.by_value, Model.by_value],
1595
1612
  :GetRayCollisionMesh => [Ray.by_value, Mesh.by_value, Matrix.by_value],
1596
1613
  :GetRayCollisionTriangle => [Ray.by_value, Vector3.by_value, Vector3.by_value, Vector3.by_value],
1597
1614
  :GetRayCollisionQuad => [Ray.by_value, Vector3.by_value, Vector3.by_value, Vector3.by_value, Vector3.by_value],
@@ -1618,9 +1635,10 @@ module Raylib
1618
1635
  :IsSoundPlaying => [Sound.by_value],
1619
1636
  :SetSoundVolume => [Sound.by_value, :float],
1620
1637
  :SetSoundPitch => [Sound.by_value, :float],
1621
- :WaveFormat => [:pointer, :int, :int, :int],
1638
+ :SetSoundPan => [Sound.by_value, :float],
1622
1639
  :WaveCopy => [Wave.by_value],
1623
1640
  :WaveCrop => [:pointer, :int, :int],
1641
+ :WaveFormat => [:pointer, :int, :int, :int],
1624
1642
  :LoadWaveSamples => [Wave.by_value],
1625
1643
  :UnloadWaveSamples => [:pointer],
1626
1644
  :LoadMusicStream => [:pointer],
@@ -1635,6 +1653,7 @@ module Raylib
1635
1653
  :SeekMusicStream => [Music.by_value, :float],
1636
1654
  :SetMusicVolume => [Music.by_value, :float],
1637
1655
  :SetMusicPitch => [Music.by_value, :float],
1656
+ :SetMusicPan => [Music.by_value, :float],
1638
1657
  :GetMusicTimeLength => [Music.by_value],
1639
1658
  :GetMusicTimePlayed => [Music.by_value],
1640
1659
  :LoadAudioStream => [:uint, :uint, :uint],
@@ -1648,7 +1667,11 @@ module Raylib
1648
1667
  :StopAudioStream => [AudioStream.by_value],
1649
1668
  :SetAudioStreamVolume => [AudioStream.by_value, :float],
1650
1669
  :SetAudioStreamPitch => [AudioStream.by_value, :float],
1670
+ :SetAudioStreamPan => [AudioStream.by_value, :float],
1651
1671
  :SetAudioStreamBufferSizeDefault => [:int],
1672
+ :SetAudioStreamCallback => [AudioStream.by_value, :AudioCallback],
1673
+ :AttachAudioStreamProcessor => [AudioStream.by_value, :AudioCallback],
1674
+ :DetachAudioStreamProcessor => [AudioStream.by_value, :AudioCallback],
1652
1675
  }
1653
1676
  retvals = {
1654
1677
  :InitWindow => :void,
@@ -1693,6 +1716,8 @@ module Raylib
1693
1716
  :GetMonitorName => :pointer,
1694
1717
  :SetClipboardText => :void,
1695
1718
  :GetClipboardText => :pointer,
1719
+ :EnableEventWaiting => :void,
1720
+ :DisableEventWaiting => :void,
1696
1721
  :SwapScreenBuffer => :void,
1697
1722
  :PollInputEvents => :void,
1698
1723
  :WaitTime => :void,
@@ -1734,9 +1759,9 @@ module Raylib
1734
1759
  :GetCameraMatrix => Matrix.by_value,
1735
1760
  :GetCameraMatrix2D => Matrix.by_value,
1736
1761
  :GetWorldToScreen => Vector2.by_value,
1762
+ :GetScreenToWorld2D => Vector2.by_value,
1737
1763
  :GetWorldToScreenEx => Vector2.by_value,
1738
1764
  :GetWorldToScreen2D => Vector2.by_value,
1739
- :GetScreenToWorld2D => Vector2.by_value,
1740
1765
  :SetTargetFPS => :void,
1741
1766
  :GetFPS => :int,
1742
1767
  :GetFrameTime => :float,
@@ -1758,12 +1783,14 @@ module Raylib
1758
1783
  :LoadFileData => :pointer,
1759
1784
  :UnloadFileData => :void,
1760
1785
  :SaveFileData => :bool,
1786
+ :ExportDataAsCode => :bool,
1761
1787
  :LoadFileText => :pointer,
1762
1788
  :UnloadFileText => :void,
1763
1789
  :SaveFileText => :bool,
1764
1790
  :FileExists => :bool,
1765
1791
  :DirectoryExists => :bool,
1766
1792
  :IsFileExtension => :bool,
1793
+ :GetFileLength => :int,
1767
1794
  :GetFileExtension => :pointer,
1768
1795
  :GetFileName => :pointer,
1769
1796
  :GetFileNameWithoutExt => :pointer,
@@ -1771,12 +1798,12 @@ module Raylib
1771
1798
  :GetPrevDirectoryPath => :pointer,
1772
1799
  :GetWorkingDirectory => :pointer,
1773
1800
  :GetApplicationDirectory => :pointer,
1774
- :GetDirectoryFiles => :pointer,
1775
- :ClearDirectoryFiles => :void,
1776
1801
  :ChangeDirectory => :bool,
1802
+ :LoadDirectoryFiles => :pointer,
1803
+ :UnloadDirectoryFiles => :void,
1777
1804
  :IsFileDropped => :bool,
1778
- :GetDroppedFiles => :pointer,
1779
- :ClearDroppedFiles => :void,
1805
+ :LoadDroppedFiles => :pointer,
1806
+ :UnloadDroppedFiles => :void,
1780
1807
  :GetFileModTime => :long,
1781
1808
  :CompressData => :pointer,
1782
1809
  :DecompressData => :pointer,
@@ -1990,6 +2017,7 @@ module Raylib
1990
2017
  :DrawTextEx => :void,
1991
2018
  :DrawTextPro => :void,
1992
2019
  :DrawTextCodepoint => :void,
2020
+ :DrawTextCodepoints => :void,
1993
2021
  :MeasureText => :int,
1994
2022
  :MeasureTextEx => Vector2.by_value,
1995
2023
  :GetGlyphIndex => :int,
@@ -2085,7 +2113,6 @@ module Raylib
2085
2113
  :CheckCollisionBoxSphere => :bool,
2086
2114
  :GetRayCollisionSphere => RayCollision.by_value,
2087
2115
  :GetRayCollisionBox => RayCollision.by_value,
2088
- :GetRayCollisionModel => RayCollision.by_value,
2089
2116
  :GetRayCollisionMesh => RayCollision.by_value,
2090
2117
  :GetRayCollisionTriangle => RayCollision.by_value,
2091
2118
  :GetRayCollisionQuad => RayCollision.by_value,
@@ -2112,9 +2139,10 @@ module Raylib
2112
2139
  :IsSoundPlaying => :bool,
2113
2140
  :SetSoundVolume => :void,
2114
2141
  :SetSoundPitch => :void,
2115
- :WaveFormat => :void,
2142
+ :SetSoundPan => :void,
2116
2143
  :WaveCopy => Wave.by_value,
2117
2144
  :WaveCrop => :void,
2145
+ :WaveFormat => :void,
2118
2146
  :LoadWaveSamples => :pointer,
2119
2147
  :UnloadWaveSamples => :void,
2120
2148
  :LoadMusicStream => Music.by_value,
@@ -2129,6 +2157,7 @@ module Raylib
2129
2157
  :SeekMusicStream => :void,
2130
2158
  :SetMusicVolume => :void,
2131
2159
  :SetMusicPitch => :void,
2160
+ :SetMusicPan => :void,
2132
2161
  :GetMusicTimeLength => :float,
2133
2162
  :GetMusicTimePlayed => :float,
2134
2163
  :LoadAudioStream => AudioStream.by_value,
@@ -2142,7 +2171,11 @@ module Raylib
2142
2171
  :StopAudioStream => :void,
2143
2172
  :SetAudioStreamVolume => :void,
2144
2173
  :SetAudioStreamPitch => :void,
2174
+ :SetAudioStreamPan => :void,
2145
2175
  :SetAudioStreamBufferSizeDefault => :void,
2176
+ :SetAudioStreamCallback => :void,
2177
+ :AttachAudioStreamProcessor => :void,
2178
+ :DetachAudioStreamProcessor => :void,
2146
2179
  }
2147
2180
  symbols.each do |sym|
2148
2181
  begin
data/lib/raymath.rb CHANGED
@@ -10,6 +10,7 @@ module Raylib
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
+ EPSILON = 0.000001
13
14
 
14
15
  # Enum
15
16
 
@@ -40,6 +41,7 @@ module Raylib
40
41
  :Lerp,
41
42
  :Normalize,
42
43
  :Remap,
44
+ :FloatEquals,
43
45
  :Vector2Zero,
44
46
  :Vector2One,
45
47
  :Vector2Add,
@@ -50,16 +52,22 @@ module Raylib
50
52
  :Vector2LengthSqr,
51
53
  :Vector2DotProduct,
52
54
  :Vector2Distance,
55
+ :Vector2DistanceSqr,
53
56
  :Vector2Angle,
54
57
  :Vector2Scale,
55
58
  :Vector2Multiply,
56
59
  :Vector2Negate,
57
60
  :Vector2Divide,
58
61
  :Vector2Normalize,
62
+ :Vector2Transform,
59
63
  :Vector2Lerp,
60
64
  :Vector2Reflect,
61
65
  :Vector2Rotate,
62
66
  :Vector2MoveTowards,
67
+ :Vector2Invert,
68
+ :Vector2Clamp,
69
+ :Vector2ClampValue,
70
+ :Vector2Equals,
63
71
  :Vector3Zero,
64
72
  :Vector3One,
65
73
  :Vector3Add,
@@ -74,6 +82,7 @@ module Raylib
74
82
  :Vector3LengthSqr,
75
83
  :Vector3DotProduct,
76
84
  :Vector3Distance,
85
+ :Vector3DistanceSqr,
77
86
  :Vector3Angle,
78
87
  :Vector3Negate,
79
88
  :Vector3Divide,
@@ -88,11 +97,15 @@ module Raylib
88
97
  :Vector3Barycenter,
89
98
  :Vector3Unproject,
90
99
  :Vector3ToFloatV,
100
+ :Vector3Invert,
101
+ :Vector3Clamp,
102
+ :Vector3ClampValue,
103
+ :Vector3Equals,
104
+ :Vector3Refract,
91
105
  :MatrixDeterminant,
92
106
  :MatrixTrace,
93
107
  :MatrixTranspose,
94
108
  :MatrixInvert,
95
- :MatrixNormalize,
96
109
  :MatrixIdentity,
97
110
  :MatrixAdd,
98
111
  :MatrixSubtract,
@@ -132,12 +145,14 @@ module Raylib
132
145
  :QuaternionFromEuler,
133
146
  :QuaternionToEuler,
134
147
  :QuaternionTransform,
148
+ :QuaternionEquals,
135
149
  ]
136
150
  args = {
137
151
  :Clamp => [:float, :float, :float],
138
152
  :Lerp => [:float, :float, :float],
139
153
  :Normalize => [:float, :float, :float],
140
154
  :Remap => [:float, :float, :float, :float, :float],
155
+ :FloatEquals => [:float, :float],
141
156
  :Vector2Zero => [],
142
157
  :Vector2One => [],
143
158
  :Vector2Add => [Vector2.by_value, Vector2.by_value],
@@ -148,16 +163,22 @@ module Raylib
148
163
  :Vector2LengthSqr => [Vector2.by_value],
149
164
  :Vector2DotProduct => [Vector2.by_value, Vector2.by_value],
150
165
  :Vector2Distance => [Vector2.by_value, Vector2.by_value],
166
+ :Vector2DistanceSqr => [Vector2.by_value, Vector2.by_value],
151
167
  :Vector2Angle => [Vector2.by_value, Vector2.by_value],
152
168
  :Vector2Scale => [Vector2.by_value, :float],
153
169
  :Vector2Multiply => [Vector2.by_value, Vector2.by_value],
154
170
  :Vector2Negate => [Vector2.by_value],
155
171
  :Vector2Divide => [Vector2.by_value, Vector2.by_value],
156
172
  :Vector2Normalize => [Vector2.by_value],
173
+ :Vector2Transform => [Vector2.by_value, Matrix.by_value],
157
174
  :Vector2Lerp => [Vector2.by_value, Vector2.by_value, :float],
158
175
  :Vector2Reflect => [Vector2.by_value, Vector2.by_value],
159
176
  :Vector2Rotate => [Vector2.by_value, :float],
160
177
  :Vector2MoveTowards => [Vector2.by_value, Vector2.by_value, :float],
178
+ :Vector2Invert => [Vector2.by_value],
179
+ :Vector2Clamp => [Vector2.by_value, Vector2.by_value, Vector2.by_value],
180
+ :Vector2ClampValue => [Vector2.by_value, :float, :float],
181
+ :Vector2Equals => [Vector2.by_value, Vector2.by_value],
161
182
  :Vector3Zero => [],
162
183
  :Vector3One => [],
163
184
  :Vector3Add => [Vector3.by_value, Vector3.by_value],
@@ -172,6 +193,7 @@ module Raylib
172
193
  :Vector3LengthSqr => [Vector3.by_value],
173
194
  :Vector3DotProduct => [Vector3.by_value, Vector3.by_value],
174
195
  :Vector3Distance => [Vector3.by_value, Vector3.by_value],
196
+ :Vector3DistanceSqr => [Vector3.by_value, Vector3.by_value],
175
197
  :Vector3Angle => [Vector3.by_value, Vector3.by_value],
176
198
  :Vector3Negate => [Vector3.by_value],
177
199
  :Vector3Divide => [Vector3.by_value, Vector3.by_value],
@@ -186,11 +208,15 @@ module Raylib
186
208
  :Vector3Barycenter => [Vector3.by_value, Vector3.by_value, Vector3.by_value, Vector3.by_value],
187
209
  :Vector3Unproject => [Vector3.by_value, Matrix.by_value, Matrix.by_value],
188
210
  :Vector3ToFloatV => [Vector3.by_value],
211
+ :Vector3Invert => [Vector3.by_value],
212
+ :Vector3Clamp => [Vector3.by_value, Vector3.by_value, Vector3.by_value],
213
+ :Vector3ClampValue => [Vector3.by_value, :float, :float],
214
+ :Vector3Equals => [Vector3.by_value, Vector3.by_value],
215
+ :Vector3Refract => [Vector3.by_value, Vector3.by_value, :float],
189
216
  :MatrixDeterminant => [Matrix.by_value],
190
217
  :MatrixTrace => [Matrix.by_value],
191
218
  :MatrixTranspose => [Matrix.by_value],
192
219
  :MatrixInvert => [Matrix.by_value],
193
- :MatrixNormalize => [Matrix.by_value],
194
220
  :MatrixIdentity => [],
195
221
  :MatrixAdd => [Matrix.by_value, Matrix.by_value],
196
222
  :MatrixSubtract => [Matrix.by_value, Matrix.by_value],
@@ -230,12 +256,14 @@ module Raylib
230
256
  :QuaternionFromEuler => [:float, :float, :float],
231
257
  :QuaternionToEuler => [Quaternion.by_value],
232
258
  :QuaternionTransform => [Quaternion.by_value, Matrix.by_value],
259
+ :QuaternionEquals => [Quaternion.by_value, Quaternion.by_value],
233
260
  }
234
261
  retvals = {
235
262
  :Clamp => :float,
236
263
  :Lerp => :float,
237
264
  :Normalize => :float,
238
265
  :Remap => :float,
266
+ :FloatEquals => :int,
239
267
  :Vector2Zero => Vector2.by_value,
240
268
  :Vector2One => Vector2.by_value,
241
269
  :Vector2Add => Vector2.by_value,
@@ -246,16 +274,22 @@ module Raylib
246
274
  :Vector2LengthSqr => :float,
247
275
  :Vector2DotProduct => :float,
248
276
  :Vector2Distance => :float,
277
+ :Vector2DistanceSqr => :float,
249
278
  :Vector2Angle => :float,
250
279
  :Vector2Scale => Vector2.by_value,
251
280
  :Vector2Multiply => Vector2.by_value,
252
281
  :Vector2Negate => Vector2.by_value,
253
282
  :Vector2Divide => Vector2.by_value,
254
283
  :Vector2Normalize => Vector2.by_value,
284
+ :Vector2Transform => Vector2.by_value,
255
285
  :Vector2Lerp => Vector2.by_value,
256
286
  :Vector2Reflect => Vector2.by_value,
257
287
  :Vector2Rotate => Vector2.by_value,
258
288
  :Vector2MoveTowards => Vector2.by_value,
289
+ :Vector2Invert => Vector2.by_value,
290
+ :Vector2Clamp => Vector2.by_value,
291
+ :Vector2ClampValue => Vector2.by_value,
292
+ :Vector2Equals => :int,
259
293
  :Vector3Zero => Vector3.by_value,
260
294
  :Vector3One => Vector3.by_value,
261
295
  :Vector3Add => Vector3.by_value,
@@ -270,6 +304,7 @@ module Raylib
270
304
  :Vector3LengthSqr => :float,
271
305
  :Vector3DotProduct => :float,
272
306
  :Vector3Distance => :float,
307
+ :Vector3DistanceSqr => :float,
273
308
  :Vector3Angle => :float,
274
309
  :Vector3Negate => Vector3.by_value,
275
310
  :Vector3Divide => Vector3.by_value,
@@ -284,11 +319,15 @@ module Raylib
284
319
  :Vector3Barycenter => Vector3.by_value,
285
320
  :Vector3Unproject => Vector3.by_value,
286
321
  :Vector3ToFloatV => Float3.by_value,
322
+ :Vector3Invert => Vector3.by_value,
323
+ :Vector3Clamp => Vector3.by_value,
324
+ :Vector3ClampValue => Vector3.by_value,
325
+ :Vector3Equals => :int,
326
+ :Vector3Refract => Vector3.by_value,
287
327
  :MatrixDeterminant => :float,
288
328
  :MatrixTrace => :float,
289
329
  :MatrixTranspose => Matrix.by_value,
290
330
  :MatrixInvert => Matrix.by_value,
291
- :MatrixNormalize => Matrix.by_value,
292
331
  :MatrixIdentity => Matrix.by_value,
293
332
  :MatrixAdd => Matrix.by_value,
294
333
  :MatrixSubtract => Matrix.by_value,
@@ -328,6 +367,7 @@ module Raylib
328
367
  :QuaternionFromEuler => Quaternion.by_value,
329
368
  :QuaternionToEuler => Vector3.by_value,
330
369
  :QuaternionTransform => Quaternion.by_value,
370
+ :QuaternionEquals => :int,
331
371
  }
332
372
  symbols.each do |sym|
333
373
  begin
data/lib/rlgl.rb CHANGED
@@ -120,7 +120,8 @@ module Raylib
120
120
  RL_BLEND_MULTIPLIED = 2
121
121
  RL_BLEND_ADD_COLORS = 3
122
122
  RL_BLEND_SUBTRACT_COLORS = 4
123
- RL_BLEND_CUSTOM = 5
123
+ RL_BLEND_ALPHA_PREMULTIPLY = 5
124
+ RL_BLEND_CUSTOM = 6
124
125
  RL_SHADER_LOC_VERTEX_POSITION = 0
125
126
  RL_SHADER_LOC_VERTEX_TEXCOORD01 = 1
126
127
  RL_SHADER_LOC_VERTEX_TEXCOORD02 = 2
@@ -282,7 +283,9 @@ module Raylib
282
283
  :rlglClose,
283
284
  :rlLoadExtensions,
284
285
  :rlGetVersion,
286
+ :rlSetFramebufferWidth,
285
287
  :rlGetFramebufferWidth,
288
+ :rlSetFramebufferHeight,
286
289
  :rlGetFramebufferHeight,
287
290
  :rlGetTextureIdDefault,
288
291
  :rlGetShaderIdDefault,
@@ -298,6 +301,7 @@ module Raylib
298
301
  :rlLoadVertexBuffer,
299
302
  :rlLoadVertexBufferElement,
300
303
  :rlUpdateVertexBuffer,
304
+ :rlUpdateVertexBufferElements,
301
305
  :rlUnloadVertexArray,
302
306
  :rlUnloadVertexBuffer,
303
307
  :rlSetVertexAttribute,
@@ -423,7 +427,9 @@ module Raylib
423
427
  :rlglClose => [],
424
428
  :rlLoadExtensions => [:pointer],
425
429
  :rlGetVersion => [],
430
+ :rlSetFramebufferWidth => [:int],
426
431
  :rlGetFramebufferWidth => [],
432
+ :rlSetFramebufferHeight => [:int],
427
433
  :rlGetFramebufferHeight => [],
428
434
  :rlGetTextureIdDefault => [],
429
435
  :rlGetShaderIdDefault => [],
@@ -439,6 +445,7 @@ module Raylib
439
445
  :rlLoadVertexBuffer => [:pointer, :int, :bool],
440
446
  :rlLoadVertexBufferElement => [:pointer, :int, :bool],
441
447
  :rlUpdateVertexBuffer => [:uint, :pointer, :int, :int],
448
+ :rlUpdateVertexBufferElements => [:uint, :pointer, :int, :int],
442
449
  :rlUnloadVertexArray => [:uint],
443
450
  :rlUnloadVertexBuffer => [:uint],
444
451
  :rlSetVertexAttribute => [:uint, :int, :int, :bool, :int, :pointer],
@@ -564,7 +571,9 @@ module Raylib
564
571
  :rlglClose => :void,
565
572
  :rlLoadExtensions => :void,
566
573
  :rlGetVersion => :int,
574
+ :rlSetFramebufferWidth => :void,
567
575
  :rlGetFramebufferWidth => :int,
576
+ :rlSetFramebufferHeight => :void,
568
577
  :rlGetFramebufferHeight => :int,
569
578
  :rlGetTextureIdDefault => :uint,
570
579
  :rlGetShaderIdDefault => :uint,
@@ -580,6 +589,7 @@ module Raylib
580
589
  :rlLoadVertexBuffer => :uint,
581
590
  :rlLoadVertexBufferElement => :uint,
582
591
  :rlUpdateVertexBuffer => :void,
592
+ :rlUpdateVertexBufferElements => :void,
583
593
  :rlUnloadVertexArray => :void,
584
594
  :rlUnloadVertexBuffer => :void,
585
595
  :rlSetVertexAttribute => :void,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raylib-bindings
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - vaiorabbit
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-15 00:00:00.000000000 Z
11
+ date: 2022-06-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi