opengl-bindings2 2.0.0 → 2.0.2

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: 97467ea562202decbf922a3e7770991d5d969aff0702bfbf8f6c3cfbb56a3ff3
4
- data.tar.gz: 302447e61f3fdc5fbaade69fbb0ef2384d10841aac65a67536daf4be11a32356
3
+ metadata.gz: 16be3a81c5fbf96a20cc33fcd549bbd48c68199abf9548cd9be79f4bf578a021
4
+ data.tar.gz: 3031242acfe6f9305f6bd136b759aec59b05e58eec5e3980645e4b288a64c43e
5
5
  SHA512:
6
- metadata.gz: 0aaaa2ba8f138f3225863a9738b8982c5cebbf68bdd76f192ca8bf6f73559766741ce3eed45d127e6d6512b02e57db94f773e09fea95077646a0900c28a29fb7
7
- data.tar.gz: 62e6e61fbbd2b87d7a19fe9d21f532f310acc34b134d758a5b72dcd656c1bd608a6bc5e83d3220388a4ff6563632db54a89b93fdbf9f8a08cbf928a5a93c03df
6
+ metadata.gz: 27541cbd15a3fcf5f2f4870e02a6428b8539194e8a8cc6016d13346c7d316b35f73bf5727a978d1368be3928301c89e219886039da44d0a56916a991f8892682
7
+ data.tar.gz: 66e60199e351756db7e10d00adbf71e35198df57776d8f4d9fc8ef2944c317a532f3102629f8ef32811511cd696d00871be5fd09143d9354b72c0bd5b36be3bf
data/ChangeLog CHANGED
@@ -1,3 +1,51 @@
1
+ 2024-01-05 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * Updated using latest gl.xml
4
+
5
+ 2023-12-16 vaiorabbit <http://twitter.com/vaiorabbit>
6
+
7
+ * GLFW 3.3.9
8
+
9
+ 2023-11-11 vaiorabbit <http://twitter.com/vaiorabbit>
10
+
11
+ * Updated using latest gl.xml
12
+
13
+ 2022-12-10 vaiorabbit <http://twitter.com/vaiorabbit>
14
+
15
+ * Updated gl.xml.
16
+
17
+ 2022-12-03 vaiorabbit <http://twitter.com/vaiorabbit>
18
+
19
+ * Updated gl.xml.
20
+
21
+ 2022-10-16 vaiorabbit <http://twitter.com/vaiorabbit>
22
+
23
+ * Updated gl.xml.
24
+
25
+ 2022-07-23 vaiorabbit <http://twitter.com/vaiorabbit>
26
+
27
+ * GLFW 3.3.7 -> 3.3.8
28
+
29
+ 2022-07-18 vaiorabbit <http://twitter.com/vaiorabbit>
30
+
31
+ * Updated using latest gl.xml
32
+
33
+ 2022-05-30 vaiorabbit <http://twitter.com/vaiorabbit>
34
+
35
+ * Updated using latest gl.xml
36
+
37
+ 2022-04-10 vaiorabbit <http://twitter.com/vaiorabbit>
38
+
39
+ * Updated GLFW-related scripts
40
+
41
+ 2022-03-27 vaiorabbit <http://twitter.com/vaiorabbit>
42
+
43
+ * Updated using latest gl.xml
44
+
45
+ 2022-01-22 vaiorabbit <http://twitter.com/vaiorabbit>
46
+
47
+ * README.md: Added section "Attention : Version 2 is now available"
48
+
1
49
  2022-01-09 vaiorabbit <http://twitter.com/vaiorabbit>
2
50
 
3
51
  * Updated using latest gl.xml
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-2022 vaiorabbit <http://twitter.com/vaiorabbit>
2
+ Copyright (c) 2013-2024 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,15 +5,80 @@
5
5
  ...and wrapper code generator.
6
6
 
7
7
  * Created : 2013-08-28
8
- * Last modified : 2022-01-09
9
-
10
- [![Gem Version](https://badge.fury.io/rb/opengl-bindings.svg)](https://badge.fury.io/rb/opengl-bindings) [![Gem](https://img.shields.io/gem/dt/opengl-bindings.svg)](opengl-bindings)
8
+ * Last modified : 2024-01-05
11
9
 
12
10
  <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">
13
11
 
12
+ ---
13
+
14
+ <details>
15
+ <summary>Attention : Version 2 is now available</summary>
16
+
17
+ ## Attention : Version 2 is now available ##
18
+
19
+ Though I will continue making this [version 1.6 series of opengl-bindings](https://rubygems.org/gems/opengl-bindings) available, please consider migrating to [opengl-bindings2](https://rubygems.org/gems/opengl-bindings2).
20
+
21
+ ### Redesigned API
22
+
23
+ In version 2, all OpenGL APIs are defined as public methods under `module GL`, so we don't have to `include OpenGL` and scatter OpenGL APIs under other modules any more:
24
+
25
+ ```ruby
26
+ # opengl-bindings
27
+ require 'opengl'
28
+ include OpenGL
29
+ # ...
30
+ glEnable(GL_DEPTH_TEST)
31
+ ```
32
+
33
+ ```ruby
34
+ # opengl-bindings2
35
+ require 'opengl'
36
+ # ...
37
+ GL.Enable(GL::DEPTH_TEST)
38
+ ```
39
+
40
+ ### Improved efficiency
41
+
42
+ All redundant `nil` checks done on every API calls are removed in version 2:
43
+
44
+ ```ruby
45
+ # opengl-bindings1
46
+ module OpenGL
47
+ #...
48
+ def self.get_command( sym )
49
+ if GL_FUNCTIONS_MAP[sym] == nil
50
+ bind_command( sym )
51
+ end
52
+ return GL_FUNCTIONS_MAP[sym]
53
+ end
54
+
55
+ #...
56
+
57
+ def glEnable(_cap_)
58
+ f = OpenGL::get_command(:glEnable) # Every API call caused redundant nil check here
59
+ f.call(_cap_)
60
+ end
61
+ ```
62
+
63
+ ```ruby
64
+ # opengl-bindings2
65
+ module GL
66
+ #...
67
+ def self.Enable(_cap_)
68
+ GL_FUNCTIONS_MAP[:glEnable].call(_cap_) # Hashmap is built on initialization so there's no need to do nil check at every API call
69
+ end
70
+ ```
71
+
72
+ </details>
73
+
74
+ ---
75
+
14
76
 
15
77
  ## Features ##
16
78
 
79
+ * Version 2 [![Gem Version](https://badge.fury.io/rb/opengl-bindings2.svg)](https://badge.fury.io/rb/opengl-bindings2) [![Gem](https://img.shields.io/gem/dt/opengl-bindings2.svg)](opengl-bindings2)
80
+ * Version 1 [![Gem Version](https://badge.fury.io/rb/opengl-bindings.svg)](https://badge.fury.io/rb/opengl-bindings) [![Gem](https://img.shields.io/gem/dt/opengl-bindings.svg)](opengl-bindings)
81
+
17
82
  * Uses Fiddle (One of the Ruby standard libraries that wraps libffi)
18
83
  * Unlike opengl ( https://rubygems.org/gems/opengl ), you don't need to build C extension library
19
84
 
@@ -24,9 +89,9 @@
24
89
 
25
90
  ## How to install ##
26
91
 
27
- Via RubyGems ( https://rubygems.org/gems/opengl-bindings ):
92
+ Via RubyGems ( https://rubygems.org/gems/opengl-bindings2 ):
28
93
 
29
- $ gem install opengl-bindings
94
+ $ gem install opengl-bindings2
30
95
 
31
96
  Or grab all library codes (`lib/*.rb') and use them by adding as one of the load paths like:
32
97
 
@@ -108,6 +173,47 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
108
173
  ## Tested Environment ##
109
174
 
110
175
  * Ruby
176
+ * ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
177
+
178
+ * Windows 10 Home, 64-bit (Version 1909, OS Build 18363.778)
179
+ * NVIDIA GeForce RTX 2060 SUPER
180
+ * OpenGL 4.5
181
+
182
+ > ruby report_env.rb
183
+ Version : 4.5.0 NVIDIA 436.30
184
+ Vendor : NVIDIA Corporation
185
+ Renderer : GeForce RTX 2060 SUPER/PCIe/SSE2
186
+ Shader : 4.50 NVIDIA
187
+
188
+ * macOS 12.5.1, 64-bit
189
+ * Mac mini (M1 2020)
190
+ * OpenGL 4.1
191
+
192
+ $ ruby report_env.rb
193
+ Version : 4.1 Metal - 76.3
194
+ Vendor : Apple
195
+ Renderer : Apple M1
196
+ Shader : 4.10
197
+
198
+ * Arch Linux kernel 4.1.2-2-ARCH, Nvidia Driver, x86_64
199
+ * NVIDIA GeForce GTS 450
200
+ * OpenGL 4.5.0
201
+
202
+ $ ruby report_env.rb
203
+ Version: 4.5.0 NVIDIA 352.21
204
+
205
+ * Arch Linux kernel 4.1.4-1-ARCH, Nouveau Driver, x86_64
206
+ * NVIDIA GeForce GTS 450
207
+ * OpenGL 3.0
208
+
209
+ $ ruby report_env.rb
210
+ Version: 3.0 Mesa 10.6.3
211
+
212
+ <details>
213
+ <summary>Older versions</summary>
214
+
215
+ * Ruby
216
+ * ruby 3.2.0 (2022-12-25 revision a528908271) [arm64-darwin21]
111
217
  * ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin20]
112
218
  * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x64-mingw32]
113
219
  * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [arm64-darwin20]
@@ -138,16 +244,6 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
138
244
  * ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin13.0.0]
139
245
  * ruby 2.0.0p247 (2013-06-27) [i386-mingw32]
140
246
 
141
- * Windows 10 Home, 64-bit (Version 1909, OS Build 18363.778)
142
- * NVIDIA GeForce RTX 2060 SUPER
143
- * OpenGL 4.5
144
-
145
- > ruby report_env.rb
146
- Version : 4.5.0 NVIDIA 436.30
147
- Vendor : NVIDIA Corporation
148
- Renderer : GeForce RTX 2060 SUPER/PCIe/SSE2
149
- Shader : 4.50 NVIDIA
150
-
151
247
  * Windows 10 Home, 64-bit (Version 1511, OS Build 10586.164)
152
248
  * NVIDIA GeForce GTX 960
153
249
  * OpenGL 4.5
@@ -193,35 +289,7 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
193
289
  Renderer : Intel Iris OpenGL Engine
194
290
  Shader : 4.10
195
291
 
196
- * macOS 12.1, 64-bit
197
- * Mac mini (M1 2020)
198
- * OpenGL 4.1
199
-
200
- $ ruby report_env.rb
201
- Version : 4.1 Metal - 76.3
202
- Vendor : Apple
203
- Renderer : Apple M1
204
- Shader : 4.10
205
-
206
- * Arch Linux kernel 4.1.2-2-ARCH, Nvidia Driver, x86_64
207
- * NVIDIA GeForce GTS 450
208
- * OpenGL 4.5.0
209
-
210
- $ ruby report_env.rb
211
- Version: 4.5.0 NVIDIA 352.21
212
-
213
- * Arch Linux kernel 4.1.4-1-ARCH, Nouveau Driver, x86_64
214
- * NVIDIA GeForce GTS 450
215
- * OpenGL 3.0
216
-
217
- $ ruby report_env.rb
218
- Version: 3.0 Mesa 10.6.3
219
-
220
- * You can use any lib/path names by passing as arguments like:
221
- * OpenGL.load_lib( 'libGL.so', '/usr/lib' )
222
- * GLFW.load_lib( 'libglfw.so', '/usr/lib' )
223
- * GLU.load_lib( 'libGLU.so', '/usr/lib' )
224
- * GLUT.load_lib( 'libglut.so', '/usr/lib' )
292
+ </details>
225
293
 
226
294
  ## Note ##
227
295
 
@@ -255,13 +323,22 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
255
323
  * mittsu - A direct port of THREE.js from JavaScript/WebGL to Ruby/OpenGL
256
324
  * https://rubygems.org/gems/mittsu
257
325
  * https://github.com/jellymann/mittsu
326
+ * open.gl.rb - A port of the https://open.gl/ tutorials to Ruby
327
+ * https://github.com/mechazoidal/opendotgl_rb
258
328
  * opencl-bindings - A Ruby binding for OpenCL 1.2
259
329
  * https://rubygems.org/gems/opencl-bindings
260
330
  * https://github.com/vaiorabbit/ruby-opencl
261
331
  * perfume_dance - A BVH motion parser and playback implementation written in Ruby
262
332
  * https://github.com/vaiorabbit/perfume_dance
263
- * open.gl.rb - A port of the https://open.gl/ tutorials to Ruby
264
- * https://github.com/mechazoidal/opendotgl_rb
333
+ * imgui-bindings - ImGui wrapper for Ruby
334
+ * https://rubygems.org/gems/imgui-bindings
335
+ * https://github.com/vaiorabbit/ruby-imgui
336
+ * nanovg-bindings - NanoVG wrapper for Ruby
337
+ * https://rubygems.org/gems/nanovg-bindings
338
+ * https://github.com/vaiorabbit/nanovg-bindings
339
+ * raylib-bindings - Yet another raylib wrapper for Ruby
340
+ * https://rubygems.org/gems/raylib-bindings
341
+ * https://github.com/vaiorabbit/raylib-bindings
265
342
 
266
343
  * Other informative projects
267
344
  * argon | neon
@@ -273,7 +350,7 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
273
350
 
274
351
  The zlib/libpng License ( http://opensource.org/licenses/Zlib ).
275
352
 
276
- Copyright (c) 2013-2020 vaiorabbit <http://twitter.com/vaiorabbit>
353
+ Copyright (c) 2013-2024 vaiorabbit <http://twitter.com/vaiorabbit>
277
354
 
278
355
  This software is provided 'as-is', without any express or implied
279
356
  warranty. In no event will the authors be held liable for any damages
@@ -303,6 +380,70 @@ See sample/OrangeBook/3Dlabs-License.txt .
303
380
 
304
381
  # Ruby 用 OpenGL ラッパー (とその自動生成スクリプト) #
305
382
 
383
+ ---
384
+
385
+ <details>
386
+ <summary>Version 2 が利用可能です</summary>
387
+
388
+ ## Version 2 が利用可能です ##
389
+
390
+ [Version 1.6 系の opengl-bindings](https://rubygems.org/gems/opengl-bindings) も引き続き利用できるようにしますが、[opengl-bindings2](https://rubygems.org/gems/opengl-bindings2) への移行を検討してください。
391
+
392
+ ### API の修正
393
+
394
+ Version 2 では OpenGL API が `module GL` の public メソッドとして定義され、`include OpenGL` を実行する必要がなくなりました。
395
+
396
+ ```ruby
397
+ # opengl-bindings
398
+ require 'opengl'
399
+ include OpenGL
400
+ # ...
401
+ glEnable(GL_DEPTH_TEST)
402
+ ```
403
+
404
+ ```ruby
405
+ # opengl-bindings2
406
+ require 'opengl'
407
+ # ...
408
+ GL.Enable(GL::DEPTH_TEST)
409
+ ```
410
+
411
+ ### 効率の改善
412
+
413
+ API を呼ぶたびに走っていた無駄な `nil` のチェックが Version 2 では削除されています。
414
+
415
+ ```ruby
416
+ # opengl-bindings1
417
+ module OpenGL
418
+ #...
419
+ def self.get_command( sym )
420
+ if GL_FUNCTIONS_MAP[sym] == nil
421
+ bind_command( sym )
422
+ end
423
+ return GL_FUNCTIONS_MAP[sym]
424
+ end
425
+
426
+ #...
427
+
428
+ def glEnable(_cap_)
429
+ f = OpenGL::get_command(:glEnable) # Every API call caused redundant nil check here
430
+ f.call(_cap_)
431
+ end
432
+ ```
433
+
434
+ ```ruby
435
+ # opengl-bindings2
436
+ module GL
437
+ #...
438
+ def self.Enable(_cap_)
439
+ GL_FUNCTIONS_MAP[:glEnable].call(_cap_) # Hashmap is built on initialization so there's no need to do nil check at every API call
440
+ end
441
+ ```
442
+
443
+ </details>
444
+
445
+ ---
446
+
306
447
  ## 特徴 ##
307
448
 
308
449
  * 標準ライブラリ Fiddle を使っています ⇒ opengl ( https://rubygems.org/gems/opengl ) のように拡張ライブラリをビルドする必要がありません
@@ -311,9 +452,9 @@ See sample/OrangeBook/3Dlabs-License.txt .
311
452
 
312
453
  ## インストール ##
313
454
 
314
- RubyGems経由で ( https://rubygems.org/gems/opengl-bindings ):
455
+ RubyGems経由で ( https://rubygems.org/gems/opengl-bindings2 ):
315
456
 
316
- $ gem install opengl-bindings
457
+ $ gem install opengl-bindings2
317
458
 
318
459
  もしくは lib 以下の *.rb をコピー → その場所をロードパスに加えて次のように起動:
319
460
 
@@ -396,6 +537,47 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
396
537
  ## テストした環境 ##
397
538
 
398
539
  * Ruby
540
+ * ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
541
+
542
+ * Windows 10 Home, 64-bit (Version 1909, OS Build 18363.778)
543
+ * NVIDIA GeForce RTX 2060 SUPER
544
+ * OpenGL 4.5
545
+
546
+ > ruby report_env.rb
547
+ Version : 4.5.0 NVIDIA 436.30
548
+ Vendor : NVIDIA Corporation
549
+ Renderer : GeForce RTX 2060 SUPER/PCIe/SSE2
550
+ Shader : 4.50 NVIDIA
551
+
552
+ * macOS 12.5.1, 64-bit
553
+ * Mac mini (M1 2020)
554
+ * OpenGL 4.1
555
+
556
+ $ ruby report_env.rb
557
+ Version : 4.1 Metal - 76.3
558
+ Vendor : Apple
559
+ Renderer : Apple M1
560
+ Shader : 4.10
561
+
562
+ * Arch Linux kernel 4.1.2-2-ARCH, Nvidia Driver, x86_64
563
+ * NVIDIA GeForce GTS 450
564
+ * OpenGL 4.5.0
565
+
566
+ $ ruby report_env.rb
567
+ Version: 4.5.0 NVIDIA 352.21
568
+
569
+ * Arch Linux kernel 4.1.4-1-ARCH, Nouveau Driver, x86_64
570
+ * NVIDIA GeForce GTS 450
571
+ * OpenGL 3.0
572
+
573
+ $ ruby report_env.rb
574
+ Version: 3.0 Mesa 10.6.3
575
+
576
+ <details>
577
+ <summary>以前のバージョン</summary>
578
+
579
+ * Ruby
580
+ * ruby 3.2.0 (2022-12-25 revision a528908271) [arm64-darwin21]
399
581
  * ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin20]
400
582
  * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x64-mingw32]
401
583
  * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [arm64-darwin20]
@@ -426,16 +608,6 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
426
608
  * ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin13.0.0]
427
609
  * ruby 2.0.0p247 (2013-06-27) [i386-mingw32]
428
610
 
429
- * Windows 10 Home, 64-bit (Version 1909, OS Build 18363.778)
430
- * NVIDIA GeForce RTX 2060 SUPER
431
- * OpenGL 4.5
432
-
433
- > ruby report_env.rb
434
- Version : 4.5.0 NVIDIA 436.30
435
- Vendor : NVIDIA Corporation
436
- Renderer : GeForce RTX 2060 SUPER/PCIe/SSE2
437
- Shader : 4.50 NVIDIA
438
-
439
611
  * Windows 10 Home, 64-bit (Version 1511, OS Build 10586.164)
440
612
  * NVIDIA GeForce GTX 960
441
613
  * OpenGL 4.5
@@ -450,6 +622,13 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
450
622
  > ruby report_env.rb
451
623
  4.3.0
452
624
 
625
+ * Windows 7 Home Premium, 64-bit (Service Pack 1)
626
+ * NVIDIA GeForce GTX 560
627
+ * OpenGL 4.3
628
+
629
+ > ruby report_env.rb
630
+ 4.3.0
631
+
453
632
  * Mac OS X 10.8.4, 64-bit
454
633
  * NVIDIA GeForce 320M on Mac mini (Mid 2010)
455
634
  * OpenGL 2.1
@@ -474,36 +653,7 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
474
653
  Renderer : Intel Iris OpenGL Engine
475
654
  Shader : 4.10
476
655
 
477
- * macOS 12.1, 64-bit
478
- * Mac mini (M1 2020)
479
- * OpenGL 4.1
480
-
481
- $ ruby report_env.rb
482
- Version : 4.1 Metal - 76.3
483
- Vendor : Apple
484
- Renderer : Apple M1
485
- Shader : 4.10
486
-
487
- * Arch Linux kernel 4.1.2-2-ARCH, Nvidia Driver, x86_64
488
- * NVIDIA GeForce GTS 450
489
- * OpenGL 4.5.0
490
-
491
- $ ruby report_env.rb
492
- Version: 4.5.0 NVIDIA 352.21
493
-
494
- * Arch Linux kernel 4.1.4-1-ARCH, Nouveau Driver, x86_64
495
- * NVIDIA GeForce GTS 450
496
- * OpenGL 3.0
497
-
498
- $ ruby report_env.rb
499
- Version: 3.0 Mesa 10.6.3
500
-
501
- * 引数として渡すことで任意のライブラリ名/パス名を利用できます:
502
- * OpenGL.load_lib( 'libGL.so', '/usr/lib' )
503
- * GLFW.load_lib( 'libglfw.so', '/usr/lib' )
504
- * GLU.load_lib( 'libGLU.so', '/usr/lib' )
505
- * GLUT.load_lib( 'libglut.so', '/usr/lib' )
506
-
656
+ </details>
507
657
 
508
658
  ## メモ ##
509
659
 
@@ -537,13 +687,22 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
537
687
  * mittsu - A direct port of THREE.js from JavaScript/WebGL to Ruby/OpenGL
538
688
  * https://rubygems.org/gems/mittsu
539
689
  * https://github.com/jellymann/mittsu
690
+ * open.gl.rb - A port of the https://open.gl/ tutorials to Ruby
691
+ * https://github.com/mechazoidal/opendotgl_rb
540
692
  * opencl-bindings - A Ruby binding for OpenCL 1.2
541
693
  * https://rubygems.org/gems/opencl-bindings
542
694
  * https://github.com/vaiorabbit/ruby-opencl
543
695
  * perfume_dance - A BVH motion parser and playback implementation written in Ruby
544
696
  * https://github.com/vaiorabbit/perfume_dance
545
- * open.gl.rb - A port of the https://open.gl/ tutorials to Ruby
546
- * https://github.com/mechazoidal/opendotgl_rb
697
+ * imgui-bindings - ImGui wrapper for Ruby
698
+ * https://rubygems.org/gems/imgui-bindings
699
+ * https://github.com/vaiorabbit/ruby-imgui
700
+ * nanovg-bindings - NanoVG wrapper for Ruby
701
+ * https://rubygems.org/gems/nanovg-bindings
702
+ * https://github.com/vaiorabbit/nanovg-bindings
703
+ * raylib-bindings - Yet another raylib wrapper for Ruby
704
+ * https://rubygems.org/gems/raylib-bindings
705
+ * https://github.com/vaiorabbit/raylib-bindings
547
706
 
548
707
  * 参考になりそうなプロジェクト
549
708
  * argon | neon
data/lib/glfw.rb CHANGED
@@ -309,6 +309,9 @@ module GLFW
309
309
  GLFW_EGL_CONTEXT_API = 0x00036002 # Available since GLFW 3.2
310
310
  GLFW_OSMESA_CONTEXT_API = 0x00036003 # Available since GLFW 3.3
311
311
 
312
+ GLFW_WAYLAND_PREFER_LIBDECOR = 0x00038001 # Available since GLFW 3.3.9
313
+ GLFW_WAYLAND_DISABLE_LIBDECOR = 0x00038002 # Available since GLFW 3.3.9
314
+
312
315
  GLFW_ARROW_CURSOR = 0x00036001
313
316
  GLFW_IBEAM_CURSOR = 0x00036002
314
317
  GLFW_CROSSHAIR_CURSOR = 0x00036003
@@ -324,6 +327,8 @@ module GLFW
324
327
  GLFW_COCOA_CHDIR_RESOURCES = 0x00051001 # Available since GLFW 3.3
325
328
  GLFW_COCOA_MENUBAR = 0x00051002 # Available since GLFW 3.3
326
329
 
330
+ GLFW_WAYLAND_LIBDECOR = 0x00053001 # Available since GLFW 3.3.9
331
+
327
332
  GLFW_DONT_CARE = -1
328
333
 
329
334
  # typedefs
@@ -469,7 +474,7 @@ module GLFW
469
474
  when :OPENGL_PLATFORM_MACOSX
470
475
  'libglfw.dylib'
471
476
  else
472
- 'libglfw.so' # not tested
477
+ 'libglfw.so.3'
473
478
  end
474
479
  end
475
480
 
@@ -675,7 +680,7 @@ end
675
680
 
676
681
  =begin
677
682
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
678
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
683
+ Copyright (c) 2013-2024 vaiorabbit <http://twitter.com/vaiorabbit>
679
684
 
680
685
  This software is provided 'as-is', without any express or implied
681
686
  warranty. In no event will the authors be held liable for any damages
data/lib/glu.rb CHANGED
@@ -343,7 +343,7 @@ end
343
343
 
344
344
  =begin
345
345
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
346
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
346
+ Copyright (c) 2013-2024 vaiorabbit <http://twitter.com/vaiorabbit>
347
347
 
348
348
  This software is provided 'as-is', without any express or implied
349
349
  warranty. In no event will the authors be held liable for any damages
data/lib/glut.rb CHANGED
@@ -552,7 +552,7 @@ end
552
552
 
553
553
  =begin
554
554
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
555
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
555
+ Copyright (c) 2013-2024 vaiorabbit <http://twitter.com/vaiorabbit>
556
556
 
557
557
  This software is provided 'as-is', without any express or implied
558
558
  warranty. In no event will the authors be held liable for any damages
data/lib/opengl.rb CHANGED
@@ -13,7 +13,7 @@ end
13
13
 
14
14
  =begin
15
15
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
16
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
16
+ Copyright (c) 2013-2024 vaiorabbit <http://twitter.com/vaiorabbit>
17
17
 
18
18
  This software is provided 'as-is', without any express or implied
19
19
  warranty. In no event will the authors be held liable for any damages
data/lib/opengl_common.rb CHANGED
@@ -13,7 +13,7 @@ module GL
13
13
  when :OPENGL_PLATFORM_MACOSX
14
14
  lib_path = '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib'
15
15
  else
16
- lib_path = 'libGL.so' # not tested
16
+ lib_path = 'libGL.so'
17
17
  end
18
18
  end
19
19
  @@gl_dll = Fiddle.dlopen(lib_path)
data/lib/opengl_es.rb CHANGED
@@ -8,7 +8,7 @@ end
8
8
 
9
9
  =begin
10
10
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
11
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
11
+ Copyright (c) 2013-2024 vaiorabbit <http://twitter.com/vaiorabbit>
12
12
 
13
13
  This software is provided 'as-is', without any express or implied
14
14
  warranty. In no event will the authors be held liable for any damages
data/lib/opengl_es_ext.rb CHANGED
@@ -5,7 +5,7 @@ require_relative 'opengl_es_ext_command'
5
5
 
6
6
  =begin
7
7
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
8
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
8
+ Copyright (c) 2013-2024 vaiorabbit <http://twitter.com/vaiorabbit>
9
9
 
10
10
  This software is provided 'as-is', without any express or implied
11
11
  warranty. In no event will the authors be held liable for any damages