opengl-bindings 1.6.14 → 1.6.15
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ChangeLog +8 -0
- data/LICENSE.txt +1 -1
- data/README.md +73 -40
- data/lib/glfw.rb +68 -18
- data/lib/glfw33.rb +716 -0
- data/lib/glu.rb +1 -1
- data/lib/glut.rb +1 -1
- data/lib/opengl.rb +1 -1
- data/lib/opengl_common.rb +1 -1
- data/lib/opengl_es.rb +1 -1
- data/lib/opengl_es_ext.rb +1 -1
- data/lib/opengl_es_ext_command.rb +19 -0
- data/lib/opengl_es_ext_enum.rb +13 -0
- data/lib/opengl_ext.rb +1 -1
- data/lib/opengl_ext_command.rb +10 -0
- data/sample/glfw_build.bat +12 -9
- metadata +19 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe04e11bb81eb11d48c6d16731b8d759668fb1260f0d7a6d4fd9fcf58afc5cd4
|
4
|
+
data.tar.gz: c466a60d4176b2be705f2f15bdd4d203316fc160586e4613edcc384b34e72516
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ed806ca800e516018b89afb66a77d7589b426f93f68026e350f4e589cbe9f3783cf72f0b0476ebb3b2f3dfaa092fc9283fde14700839a2717dcb5cdf1240d810
|
7
|
+
data.tar.gz: 8be4cf96175bd0cba6e1e916c1446d89fb07439ee059114614f38663851e8e90fc436bb4fe234f6b268531714ba181927aa23c13591cf5e4fd2224d2ee61e9c4
|
data/ChangeLog
CHANGED
data/LICENSE.txt
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
|
2
|
-
Copyright (c) 2013-
|
2
|
+
Copyright (c) 2013-2025 vaiorabbit <http://twitter.com/vaiorabbit>
|
3
3
|
|
4
4
|
This software is provided 'as-is', without any express or implied
|
5
5
|
warranty. In no event will the authors be held liable for any damages
|
data/README.md
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
...and wrapper code generator.
|
6
6
|
|
7
7
|
* Created : 2013-08-28
|
8
|
-
* Last modified :
|
8
|
+
* Last modified : 2025-01-01
|
9
9
|
|
10
10
|
---
|
11
11
|
|
@@ -73,7 +73,7 @@ module GL
|
|
73
73
|
|
74
74
|
<img src="https://raw.githubusercontent.com/vaiorabbit/ruby-opengl/master/doc/simple_rb.jpg" width="200"> <img src="https://raw.githubusercontent.com/vaiorabbit/ruby-opengl/master/doc/nehe_lesson36_rb.jpg" width="200"> <img src="https://raw.githubusercontent.com/vaiorabbit/ruby-opengl/master/doc/brick_rb.jpg" width="200"> <img src="https://raw.githubusercontent.com/vaiorabbit/ruby-opengl/master/doc/glxs_rb.jpg" width="200">
|
75
75
|
|
76
|
-
* Uses Fiddle (One of the Ruby
|
76
|
+
* Uses Fiddle (One of the Ruby libraries that wraps libffi)
|
77
77
|
* Unlike opengl ( https://rubygems.org/gems/opengl ), you don't need to build C extension library
|
78
78
|
|
79
79
|
* Uses Khronos XML API registry ( https://github.com/KhronosGroup/OpenGL-Registry )
|
@@ -148,7 +148,6 @@ https://github.com/vaiorabbit/ruby-opengl
|
|
148
148
|
|
149
149
|
* Fiddle
|
150
150
|
* A libffi wrapper
|
151
|
-
* Standard library since Ruby 2.0.0
|
152
151
|
* I recommend you to use Ruby 2.1.2 and later, which fixed Fiddle's memory leak issue (https://bugs.ruby-lang.org/issues/9599).
|
153
152
|
|
154
153
|
### For sample ###
|
@@ -167,27 +166,24 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
|
|
167
166
|
## Tested Environment ##
|
168
167
|
|
169
168
|
* Ruby
|
170
|
-
* ruby 3.
|
169
|
+
* ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [x64-mingw-ucrt]
|
170
|
+
* ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [arm64-darwin24]
|
171
171
|
|
172
|
-
* Windows
|
173
|
-
* NVIDIA GeForce RTX 2060 SUPER
|
174
|
-
* OpenGL 4.5
|
172
|
+
* Windows 11 Pro (Version 24H2, OS Build 26100.2605)
|
175
173
|
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
174
|
+
> ruby report_env.rb
|
175
|
+
Version : 4.5.0 NVIDIA 560.94
|
176
|
+
Vendor : NVIDIA Corporation
|
177
|
+
Renderer : NVIDIA GeForce RTX 4080 Laptop GPU/PCIe/SSE2
|
178
|
+
Shader : 4.50 NVIDIA
|
181
179
|
|
182
|
-
* macOS
|
183
|
-
* Mac mini (M1 2020)
|
184
|
-
* OpenGL 4.1
|
180
|
+
* macOS 15.2 / Mac mini (M1 2020)
|
185
181
|
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
182
|
+
$ ruby report_env.rb
|
183
|
+
Version : 4.1 Metal - 89.3
|
184
|
+
Vendor : Apple
|
185
|
+
Renderer : Apple M1
|
186
|
+
Shader : 4.10
|
191
187
|
|
192
188
|
* Arch Linux kernel 4.1.2-2-ARCH, Nvidia Driver, x86_64
|
193
189
|
* NVIDIA GeForce GTS 450
|
@@ -207,6 +203,7 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
|
|
207
203
|
<summary>Older versions</summary>
|
208
204
|
|
209
205
|
* Ruby
|
206
|
+
* ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
|
210
207
|
* ruby 3.2.0 (2022-12-25 revision a528908271) [arm64-darwin21]
|
211
208
|
* ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin20]
|
212
209
|
* ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x64-mingw32]
|
@@ -238,6 +235,16 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
|
|
238
235
|
* ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin13.0.0]
|
239
236
|
* ruby 2.0.0p247 (2013-06-27) [i386-mingw32]
|
240
237
|
|
238
|
+
* Windows 10 Home, 64-bit (Version 1909, OS Build 18363.778)
|
239
|
+
* NVIDIA GeForce RTX 2060 SUPER
|
240
|
+
* OpenGL 4.5
|
241
|
+
|
242
|
+
> ruby report_env.rb
|
243
|
+
Version : 4.5.0 NVIDIA 436.30
|
244
|
+
Vendor : NVIDIA Corporation
|
245
|
+
Renderer : GeForce RTX 2060 SUPER/PCIe/SSE2
|
246
|
+
Shader : 4.50 NVIDIA
|
247
|
+
|
241
248
|
* Windows 10 Home, 64-bit (Version 1511, OS Build 10586.164)
|
242
249
|
* NVIDIA GeForce GTX 960
|
243
250
|
* OpenGL 4.5
|
@@ -283,6 +290,16 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
|
|
283
290
|
Renderer : Intel Iris OpenGL Engine
|
284
291
|
Shader : 4.10
|
285
292
|
|
293
|
+
* macOS 12.5.1, 64-bit
|
294
|
+
* Mac mini (M1 2020)
|
295
|
+
* OpenGL 4.1
|
296
|
+
|
297
|
+
$ ruby report_env.rb
|
298
|
+
Version : 4.1 Metal - 76.3
|
299
|
+
Vendor : Apple
|
300
|
+
Renderer : Apple M1
|
301
|
+
Shader : 4.10
|
302
|
+
|
286
303
|
</details>
|
287
304
|
|
288
305
|
* You can use any lib/path names by passing as arguments like:
|
@@ -322,7 +339,7 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
|
|
322
339
|
* https://github.com/mirichi/dxsdl2r
|
323
340
|
* mittsu - A direct port of THREE.js from JavaScript/WebGL to Ruby/OpenGL
|
324
341
|
* https://rubygems.org/gems/mittsu
|
325
|
-
* https://github.com/
|
342
|
+
* https://github.com/danini-the-panini/mittsu
|
326
343
|
* opencl-bindings - A Ruby binding for OpenCL 1.2
|
327
344
|
* https://rubygems.org/gems/opencl-bindings
|
328
345
|
* https://github.com/vaiorabbit/ruby-opencl
|
@@ -341,7 +358,7 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
|
|
341
358
|
|
342
359
|
The zlib/libpng License ( http://opensource.org/licenses/Zlib ).
|
343
360
|
|
344
|
-
Copyright (c) 2013-
|
361
|
+
Copyright (c) 2013-2025 vaiorabbit <http://twitter.com/vaiorabbit>
|
345
362
|
|
346
363
|
This software is provided 'as-is', without any express or implied
|
347
364
|
warranty. In no event will the authors be held liable for any damages
|
@@ -502,7 +519,6 @@ https://github.com/vaiorabbit/ruby-opengl
|
|
502
519
|
|
503
520
|
* Fiddle
|
504
521
|
* libffi のラッパーです
|
505
|
-
* Ruby 2.0.0 以降で標準ライブラリになりました
|
506
522
|
* Fiddle のメモリリーク問題 (https://bugs.ruby-lang.org/issues/9599) が修正された Ruby 2.1.2 以降での利用を推奨します
|
507
523
|
|
508
524
|
### サンプル用 ###
|
@@ -521,27 +537,24 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
|
|
521
537
|
## テストした環境 ##
|
522
538
|
|
523
539
|
* Ruby
|
524
|
-
* ruby 3.
|
540
|
+
* ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [x64-mingw-ucrt]
|
541
|
+
* ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [arm64-darwin24]
|
525
542
|
|
526
|
-
* Windows
|
527
|
-
* NVIDIA GeForce RTX 2060 SUPER
|
528
|
-
* OpenGL 4.5
|
543
|
+
* Windows 11 Pro (Version 24H2, OS Build 26100.2605)
|
529
544
|
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
545
|
+
> ruby report_env.rb
|
546
|
+
Version : 4.5.0 NVIDIA 560.94
|
547
|
+
Vendor : NVIDIA Corporation
|
548
|
+
Renderer : NVIDIA GeForce RTX 4080 Laptop GPU/PCIe/SSE2
|
549
|
+
Shader : 4.50 NVIDIA
|
535
550
|
|
536
|
-
* macOS
|
537
|
-
* Mac mini (M1 2020)
|
538
|
-
* OpenGL 4.1
|
551
|
+
* macOS 15.2 / Mac mini (M1 2020)
|
539
552
|
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
553
|
+
$ ruby report_env.rb
|
554
|
+
Version : 4.1 Metal - 89.3
|
555
|
+
Vendor : Apple
|
556
|
+
Renderer : Apple M1
|
557
|
+
Shader : 4.10
|
545
558
|
|
546
559
|
* Arch Linux kernel 4.1.2-2-ARCH, Nvidia Driver, x86_64
|
547
560
|
* NVIDIA GeForce GTS 450
|
@@ -592,6 +605,16 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
|
|
592
605
|
* ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin13.0.0]
|
593
606
|
* ruby 2.0.0p247 (2013-06-27) [i386-mingw32]
|
594
607
|
|
608
|
+
* Windows 10 Home, 64-bit (Version 1909, OS Build 18363.778)
|
609
|
+
* NVIDIA GeForce RTX 2060 SUPER
|
610
|
+
* OpenGL 4.5
|
611
|
+
|
612
|
+
> ruby report_env.rb
|
613
|
+
Version : 4.5.0 NVIDIA 436.30
|
614
|
+
Vendor : NVIDIA Corporation
|
615
|
+
Renderer : GeForce RTX 2060 SUPER/PCIe/SSE2
|
616
|
+
Shader : 4.50 NVIDIA
|
617
|
+
|
595
618
|
* Windows 10 Home, 64-bit (Version 1511, OS Build 10586.164)
|
596
619
|
* NVIDIA GeForce GTX 960
|
597
620
|
* OpenGL 4.5
|
@@ -637,6 +660,16 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
|
|
637
660
|
Renderer : Intel Iris OpenGL Engine
|
638
661
|
Shader : 4.10
|
639
662
|
|
663
|
+
* macOS 12.5.1, 64-bit
|
664
|
+
* Mac mini (M1 2020)
|
665
|
+
* OpenGL 4.1
|
666
|
+
|
667
|
+
$ ruby report_env.rb
|
668
|
+
Version : 4.1 Metal - 76.3
|
669
|
+
Vendor : Apple
|
670
|
+
Renderer : Apple M1
|
671
|
+
Shader : 4.10
|
672
|
+
|
640
673
|
</details>
|
641
674
|
|
642
675
|
## メモ ##
|
data/lib/glfw.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
|
-
# A GLFW wrapper (for version 3.
|
2
|
+
# A GLFW wrapper (for version 3.4)
|
3
3
|
require 'fiddle/import'
|
4
4
|
|
5
5
|
module GLFW
|
@@ -24,7 +24,6 @@ module GLFW
|
|
24
24
|
rescue
|
25
25
|
file, line = __FILE__, __LINE__+3
|
26
26
|
end
|
27
|
-
args_str="*args"
|
28
27
|
module_eval(<<-EOS, file, line)
|
29
28
|
def #{name}(*args, &block)
|
30
29
|
GLFW_FUNCTIONS_MAP['#{name}'].call(*args,&block)
|
@@ -245,17 +244,21 @@ module GLFW
|
|
245
244
|
GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER = 5 # Available since GLFW 3.3
|
246
245
|
GLFW_GAMEPAD_AXIS_LAST = GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER # Available since GLFW 3.3
|
247
246
|
|
248
|
-
GLFW_NO_ERROR
|
249
|
-
GLFW_NOT_INITIALIZED
|
250
|
-
GLFW_NO_CURRENT_CONTEXT
|
251
|
-
GLFW_INVALID_ENUM
|
252
|
-
GLFW_INVALID_VALUE
|
253
|
-
GLFW_OUT_OF_MEMORY
|
254
|
-
GLFW_API_UNAVAILABLE
|
255
|
-
GLFW_VERSION_UNAVAILABLE
|
256
|
-
GLFW_PLATFORM_ERROR
|
257
|
-
GLFW_FORMAT_UNAVAILABLE
|
258
|
-
GLFW_NO_WINDOW_CONTEXT
|
247
|
+
GLFW_NO_ERROR = 0 # Available since GLFW 3.3
|
248
|
+
GLFW_NOT_INITIALIZED = 0x00010001
|
249
|
+
GLFW_NO_CURRENT_CONTEXT = 0x00010002
|
250
|
+
GLFW_INVALID_ENUM = 0x00010003
|
251
|
+
GLFW_INVALID_VALUE = 0x00010004
|
252
|
+
GLFW_OUT_OF_MEMORY = 0x00010005
|
253
|
+
GLFW_API_UNAVAILABLE = 0x00010006
|
254
|
+
GLFW_VERSION_UNAVAILABLE = 0x00010007
|
255
|
+
GLFW_PLATFORM_ERROR = 0x00010008
|
256
|
+
GLFW_FORMAT_UNAVAILABLE = 0x00010009
|
257
|
+
GLFW_NO_WINDOW_CONTEXT = 0x0001000A # Available since GLFW 3.2
|
258
|
+
GLFW_CURSOR_UNAVAILABLE = 0x0001000B # Available since GLFW 3.4
|
259
|
+
GLFW_FEATURE_UNAVAILABLE = 0x0001000C # Available since GLFW 3.4
|
260
|
+
GLFW_FEATURE_UNIMPLEMENTED = 0x0001000D # Available since GLFW 3.4
|
261
|
+
GLFW_PLATFORM_UNAVAILABLE = 0x0001000E # Available since GLFW 3.4
|
259
262
|
|
260
263
|
GLFW_FOCUSED = 0x00020001
|
261
264
|
GLFW_ICONIFIED = 0x00020002
|
@@ -269,6 +272,9 @@ module GLFW
|
|
269
272
|
GLFW_TRANSPARENT_FRAMEBUFFER = 0x0002000A # Available since GLFW 3.3
|
270
273
|
GLFW_HOVERED = 0x0002000B # Available since GLFW 3.3
|
271
274
|
GLFW_FOCUS_ON_SHOW = 0x0002000C # Available since GLFW 3.3
|
275
|
+
GLFW_MOUSE_PASSTHROUGH = 0x0002000D # Available since GLFW 3.4
|
276
|
+
GLFW_POSITION_X = 0x0002000E # Available since GLFW 3.4
|
277
|
+
GLFW_POSITION_Y = 0x0002000F # Available since GLFW 3.4
|
272
278
|
|
273
279
|
GLFW_RED_BITS = 0x00021001
|
274
280
|
GLFW_GREEN_BITS = 0x00021002
|
@@ -293,12 +299,14 @@ module GLFW
|
|
293
299
|
GLFW_CONTEXT_REVISION = 0x00022004
|
294
300
|
GLFW_CONTEXT_ROBUSTNESS = 0x00022005
|
295
301
|
GLFW_OPENGL_FORWARD_COMPAT = 0x00022006
|
296
|
-
|
302
|
+
GLFW_CONTEXT_DEBUG = 0x00022007 # Renamed from GLFW_OPENGL_DEBUG_CONTEXT since GLFW 3.4
|
303
|
+
GLFW_OPENGL_DEBUG_CONTEXT = GLFW_CONTEXT_DEBUG # Legacy name for compatibility added since GLFW 3.4
|
297
304
|
GLFW_OPENGL_PROFILE = 0x00022008
|
298
305
|
GLFW_CONTEXT_RELEASE_BEHAVIOR = 0x00022009
|
299
306
|
GLFW_CONTEXT_NO_ERROR = 0x0002200A
|
300
307
|
GLFW_CONTEXT_CREATION_API = 0x0002200B # Available since GLFW 3.2
|
301
308
|
GLFW_SCALE_TO_MONITOR = 0x0002200C # Available since GLFW 3.3
|
309
|
+
GLFW_SCALE_FRAMEBUFFER = 0x0002200D # Available since GLFW 3.4
|
302
310
|
|
303
311
|
GLFW_COCOA_RETINA_FRAMEBUFFER = 0x00023001 # Available since GLFW 3.3
|
304
312
|
GLFW_COCOA_FRAME_NAME = 0x00023002 # Available since GLFW 3.3
|
@@ -306,6 +314,9 @@ module GLFW
|
|
306
314
|
|
307
315
|
GLFW_X11_CLASS_NAME = 0x00024001 # Available since GLFW 3.3
|
308
316
|
GLFW_X11_INSTANCE_NAME = 0x00024002 # Available since GLFW 3.3
|
317
|
+
GLFW_WIN32_KEYBOARD_MENU = 0x00025001 # Available since GLFW 3.4
|
318
|
+
GLFW_WIN32_SHOWDEFAULT = 0x00025002 # Available since GLFW 3.4
|
319
|
+
GLFW_WAYLAND_APP_ID = 0x00026001 # Available since GLFW 3.4
|
309
320
|
|
310
321
|
GLFW_NO_API = 0 # Available since GLFW 3.2
|
311
322
|
GLFW_OPENGL_API = 0x00030001
|
@@ -328,6 +339,7 @@ module GLFW
|
|
328
339
|
GLFW_CURSOR_NORMAL = 0x00034001
|
329
340
|
GLFW_CURSOR_HIDDEN = 0x00034002
|
330
341
|
GLFW_CURSOR_DISABLED = 0x00034003
|
342
|
+
GLFW_CURSOR_CAPTURED = 0x00034004 # Available since GLFW 3.4
|
331
343
|
|
332
344
|
GLFW_ANY_RELEASE_BEHAVIOR = 0
|
333
345
|
GLFW_RELEASE_BEHAVIOR_FLUSH = 0x00035001
|
@@ -337,26 +349,56 @@ module GLFW
|
|
337
349
|
GLFW_EGL_CONTEXT_API = 0x00036002 # Available since GLFW 3.2
|
338
350
|
GLFW_OSMESA_CONTEXT_API = 0x00036003 # Available since GLFW 3.3
|
339
351
|
|
352
|
+
GLFW_ANGLE_PLATFORM_TYPE_NONE = 0x00037001 # Available since GLFW 3.4
|
353
|
+
GLFW_ANGLE_PLATFORM_TYPE_OPENGL = 0x00037002 # Available since GLFW 3.4
|
354
|
+
GLFW_ANGLE_PLATFORM_TYPE_OPENGLES = 0x00037003 # Available since GLFW 3.4
|
355
|
+
GLFW_ANGLE_PLATFORM_TYPE_D3D9 = 0x00037004 # Available since GLFW 3.4
|
356
|
+
GLFW_ANGLE_PLATFORM_TYPE_D3D11 = 0x00037005 # Available since GLFW 3.4
|
357
|
+
GLFW_ANGLE_PLATFORM_TYPE_VULKAN = 0x00037007 # Available since GLFW 3.4
|
358
|
+
GLFW_ANGLE_PLATFORM_TYPE_METAL = 0x00037008 # Available since GLFW 3.4
|
359
|
+
|
340
360
|
GLFW_WAYLAND_PREFER_LIBDECOR = 0x00038001 # Available since GLFW 3.3.9
|
341
361
|
GLFW_WAYLAND_DISABLE_LIBDECOR = 0x00038002 # Available since GLFW 3.3.9
|
342
362
|
|
363
|
+
GLFW_ANY_POSITION = 0x80000000 # Available since GLFW 3.4
|
364
|
+
|
343
365
|
GLFW_ARROW_CURSOR = 0x00036001
|
344
366
|
GLFW_IBEAM_CURSOR = 0x00036002
|
345
367
|
GLFW_CROSSHAIR_CURSOR = 0x00036003
|
346
|
-
|
347
|
-
|
348
|
-
|
368
|
+
GLFW_POINTING_HAND_CURSOR = 0x00036004 # Renamed from GLFW_HAND_CURSOR since GLFW 3.4
|
369
|
+
GLFW_RESIZE_EW_CURSOR = 0x00036005 # Renamed from GLFW_HRESIZE_CURSOR since GLFW 3.4
|
370
|
+
GLFW_RESIZE_NS_CURSOR = 0x00036006 # Renamed from GLFW_VRESIZE_CURSOR since GLFW 3.4
|
371
|
+
GLFW_RESIZE_NWSE_CURSOR = 0x00036007 # Available since GLFW 3.4
|
372
|
+
GLFW_RESIZE_NESW_CURSOR = 0x00036008 # Available since GLFW 3.4
|
373
|
+
GLFW_RESIZE_ALL_CURSOR = 0x00036009 # Available since GLFW 3.4
|
374
|
+
GLFW_NOT_ALLOWED_CURSOR = 0x0003600A # Available since GLFW 3.4
|
375
|
+
|
376
|
+
GLFW_HRESIZE_CURSOR = GLFW_RESIZE_EW_CURSOR # Legacy name for compatibility added since GLFW 3.4
|
377
|
+
GLFW_VRESIZE_CURSOR = GLFW_RESIZE_NS_CURSOR # Legacy name for compatibility added since GLFW 3.4
|
378
|
+
GLFW_HAND_CURSOR = GLFW_POINTING_HAND_CURSOR # Legacy name for compatibility added since GLFW 3.4
|
349
379
|
|
350
380
|
GLFW_CONNECTED = 0x00040001
|
351
381
|
GLFW_DISCONNECTED = 0x00040002
|
352
382
|
|
353
383
|
GLFW_JOYSTICK_HAT_BUTTONS = 0x00050001 # Available since GLFW 3.3
|
384
|
+
GLFW_ANGLE_PLATFORM_TYPE = 0x00050002 # Available since GLFW 3.4
|
385
|
+
GLFW_PLATFORM = 0x00050003 # Available since GLFW 3.4
|
386
|
+
|
354
387
|
|
355
388
|
GLFW_COCOA_CHDIR_RESOURCES = 0x00051001 # Available since GLFW 3.3
|
356
389
|
GLFW_COCOA_MENUBAR = 0x00051002 # Available since GLFW 3.3
|
357
390
|
|
391
|
+
GLFW_X11_XCB_VULKAN_SURFACE = 0x00052001 # Available since GLFW 3.4
|
392
|
+
|
358
393
|
GLFW_WAYLAND_LIBDECOR = 0x00053001 # Available since GLFW 3.3.9
|
359
394
|
|
395
|
+
GLFW_ANY_PLATFORM = 0x00060000 # Available since GLFW 3.4
|
396
|
+
GLFW_PLATFORM_WIN32 = 0x00060001 # Available since GLFW 3.4
|
397
|
+
GLFW_PLATFORM_COCOA = 0x00060002 # Available since GLFW 3.4
|
398
|
+
GLFW_PLATFORM_WAYLAND = 0x00060003 # Available since GLFW 3.4
|
399
|
+
GLFW_PLATFORM_X11 = 0x00060004 # Available since GLFW 3.4
|
400
|
+
GLFW_PLATFORM_NULL = 0x00060005 # Available since GLFW 3.4
|
401
|
+
|
360
402
|
GLFW_DONT_CARE = -1
|
361
403
|
|
362
404
|
# typedefs
|
@@ -469,6 +511,10 @@ module GLFW
|
|
469
511
|
return self.create_callback_closure( sym, proc, &blk )
|
470
512
|
end
|
471
513
|
|
514
|
+
# NOTE : Memory allocation callbacks addin in GLFW 3.4
|
515
|
+
# (GLFWallocatefun, GLFWreallocatefun, GLFWdeallocatefun and struct GLFWallocator)
|
516
|
+
# will not be supported in this bindings.
|
517
|
+
|
472
518
|
# struct
|
473
519
|
GLFWvidmode = struct(["int width",
|
474
520
|
"int height",
|
@@ -527,6 +573,8 @@ module GLFW
|
|
527
573
|
'const char* glfwGetVersionString()',
|
528
574
|
'int glfwGetError(const char**)', # Available since GLFW 3.3
|
529
575
|
'void* glfwSetErrorCallback(void*)',
|
576
|
+
'int glfwGetPlatform()', # Available since GLFW 3.4
|
577
|
+
'int glfwPlatformSupported(int)', # Available since GLFW 3.4
|
530
578
|
'void** glfwGetMonitors(int*)',
|
531
579
|
'void* glfwGetPrimaryMonitor()',
|
532
580
|
'void glfwGetMonitorPos(void*, int*, int*)',
|
@@ -549,6 +597,7 @@ module GLFW
|
|
549
597
|
'void glfwDestroyWindow(void*)', # Available since GLFW 3.0
|
550
598
|
'int glfwWindowShouldClose(void*)', # Available since GLFW 3.0
|
551
599
|
'void glfwSetWindowShouldClose(void* window, int)', # Available since GLFW 3.0
|
600
|
+
'const char* glfwGetWindowTitle(void*)', # Available since GLFW 3.4
|
552
601
|
'void glfwSetWindowTitle(void*, const char*)',
|
553
602
|
'void glfwSetWindowIcon(void*, int, void*)', # Available since GLFW 3.2
|
554
603
|
'void glfwGetWindowPos(void*, int*, int*)', # Available since GLFW 3.0
|
@@ -653,6 +702,7 @@ module GLFW
|
|
653
702
|
when :OPENGL_PLATFORM_MACOSX
|
654
703
|
@@lib_signature << 'unsigned int glfwGetCocoaMonitor(void*)'
|
655
704
|
@@lib_signature << 'void* glfwGetCocoaWindow(void*)'
|
705
|
+
@@lib_signature << 'void* glfwGetCocoaView(void*)'
|
656
706
|
@@lib_signature << 'void* glfwGetNSGLContext(void*)'
|
657
707
|
when :OPENGL_PLATFORM_LINUX
|
658
708
|
@@lib_signature << 'void* glfwGetX11Display()'
|
@@ -692,7 +742,7 @@ end
|
|
692
742
|
|
693
743
|
=begin
|
694
744
|
Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
|
695
|
-
Copyright (c) 2013-
|
745
|
+
Copyright (c) 2013-2025 vaiorabbit <http://twitter.com/vaiorabbit>
|
696
746
|
|
697
747
|
This software is provided 'as-is', without any express or implied
|
698
748
|
warranty. In no event will the authors be held liable for any damages
|