opengl-bindings2 2.0.0 → 2.0.1

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: a54ca548ff53561f118d03bb8e51107e8c258ab27241dec1de29edb8c1c1483c
4
+ data.tar.gz: fddd031627b0dc47630cb9c32ad4f23b24843cbb4fa6336a09fdf3aa1d1f571f
5
5
  SHA512:
6
- metadata.gz: 0aaaa2ba8f138f3225863a9738b8982c5cebbf68bdd76f192ca8bf6f73559766741ce3eed45d127e6d6512b02e57db94f773e09fea95077646a0900c28a29fb7
7
- data.tar.gz: 62e6e61fbbd2b87d7a19fe9d21f532f310acc34b134d758a5b72dcd656c1bd608a6bc5e83d3220388a4ff6563632db54a89b93fdbf9f8a08cbf928a5a93c03df
6
+ metadata.gz: 68bbbd6d454472235af7934adebc3d4bbf457c2ec01a2de9586c2dc51f3f39321c03c11833ff002a44246e9a5a17d7f7992a93158afe21ed8aadd9e921e219e0
7
+ data.tar.gz: ab045176c306eec5fc7ad83bbd13046f861d576b580b6f0ebf5af7b3c0e6f05f395f85940e6677284d94daa7a9c611cef9285959ef4ca5895704230a33a2413d
data/ChangeLog CHANGED
@@ -1,3 +1,39 @@
1
+ 2022-12-10 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * Updated gl.xml.
4
+
5
+ 2022-12-03 vaiorabbit <http://twitter.com/vaiorabbit>
6
+
7
+ * Updated gl.xml.
8
+
9
+ 2022-10-16 vaiorabbit <http://twitter.com/vaiorabbit>
10
+
11
+ * Updated gl.xml.
12
+
13
+ 2022-07-23 vaiorabbit <http://twitter.com/vaiorabbit>
14
+
15
+ * GLFW 3.3.7 -> 3.3.8
16
+
17
+ 2022-07-18 vaiorabbit <http://twitter.com/vaiorabbit>
18
+
19
+ * Updated using latest gl.xml
20
+
21
+ 2022-05-30 vaiorabbit <http://twitter.com/vaiorabbit>
22
+
23
+ * Updated using latest gl.xml
24
+
25
+ 2022-04-10 vaiorabbit <http://twitter.com/vaiorabbit>
26
+
27
+ * Updated GLFW-related scripts
28
+
29
+ 2022-03-27 vaiorabbit <http://twitter.com/vaiorabbit>
30
+
31
+ * Updated using latest gl.xml
32
+
33
+ 2022-01-22 vaiorabbit <http://twitter.com/vaiorabbit>
34
+
35
+ * README.md: Added section "Attention : Version 2 is now available"
36
+
1
37
  2022-01-09 vaiorabbit <http://twitter.com/vaiorabbit>
2
38
 
3
39
  * 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-2023 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 : 2022-07-18
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
 
@@ -107,6 +172,46 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
107
172
 
108
173
  ## Tested Environment ##
109
174
 
175
+ * Ruby
176
+ * ruby 3.2.0 (2022-12-25 revision a528908271) [arm64-darwin21]
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
+
110
215
  * Ruby
111
216
  * ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin20]
112
217
  * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x64-mingw32]
@@ -138,16 +243,6 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
138
243
  * ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin13.0.0]
139
244
  * ruby 2.0.0p247 (2013-06-27) [i386-mingw32]
140
245
 
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
246
  * Windows 10 Home, 64-bit (Version 1511, OS Build 10586.164)
152
247
  * NVIDIA GeForce GTX 960
153
248
  * OpenGL 4.5
@@ -193,35 +288,7 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
193
288
  Renderer : Intel Iris OpenGL Engine
194
289
  Shader : 4.10
195
290
 
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' )
291
+ </details>
225
292
 
226
293
  ## Note ##
227
294
 
@@ -255,13 +322,22 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
255
322
  * mittsu - A direct port of THREE.js from JavaScript/WebGL to Ruby/OpenGL
256
323
  * https://rubygems.org/gems/mittsu
257
324
  * https://github.com/jellymann/mittsu
325
+ * open.gl.rb - A port of the https://open.gl/ tutorials to Ruby
326
+ * https://github.com/mechazoidal/opendotgl_rb
258
327
  * opencl-bindings - A Ruby binding for OpenCL 1.2
259
328
  * https://rubygems.org/gems/opencl-bindings
260
329
  * https://github.com/vaiorabbit/ruby-opencl
261
330
  * perfume_dance - A BVH motion parser and playback implementation written in Ruby
262
331
  * 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
332
+ * imgui-bindings - ImGui wrapper for Ruby
333
+ * https://rubygems.org/gems/imgui-bindings
334
+ * https://github.com/vaiorabbit/ruby-imgui
335
+ * nanovg-bindings - NanoVG wrapper for Ruby
336
+ * https://rubygems.org/gems/nanovg-bindings
337
+ * https://github.com/vaiorabbit/nanovg-bindings
338
+ * raylib-bindings - Yet another raylib wrapper for Ruby
339
+ * https://rubygems.org/gems/raylib-bindings
340
+ * https://github.com/vaiorabbit/raylib-bindings
265
341
 
266
342
  * Other informative projects
267
343
  * argon | neon
@@ -273,7 +349,7 @@ Use GLFW or GLUT for creating windows and OpenGL rendering contexts.
273
349
 
274
350
  The zlib/libpng License ( http://opensource.org/licenses/Zlib ).
275
351
 
276
- Copyright (c) 2013-2020 vaiorabbit <http://twitter.com/vaiorabbit>
352
+ Copyright (c) 2013-2023 vaiorabbit <http://twitter.com/vaiorabbit>
277
353
 
278
354
  This software is provided 'as-is', without any express or implied
279
355
  warranty. In no event will the authors be held liable for any damages
@@ -303,6 +379,70 @@ See sample/OrangeBook/3Dlabs-License.txt .
303
379
 
304
380
  # Ruby 用 OpenGL ラッパー (とその自動生成スクリプト) #
305
381
 
382
+ ---
383
+
384
+ <details>
385
+ <summary>Version 2 が利用可能です</summary>
386
+
387
+ ## Version 2 が利用可能です ##
388
+
389
+ [Version 1.6 系の opengl-bindings](https://rubygems.org/gems/opengl-bindings) も引き続き利用できるようにしますが、[opengl-bindings2](https://rubygems.org/gems/opengl-bindings2) への移行を検討してください。
390
+
391
+ ### API の修正
392
+
393
+ Version 2 では OpenGL API が `module GL` の public メソッドとして定義され、`include OpenGL` を実行する必要がなくなりました。
394
+
395
+ ```ruby
396
+ # opengl-bindings
397
+ require 'opengl'
398
+ include OpenGL
399
+ # ...
400
+ glEnable(GL_DEPTH_TEST)
401
+ ```
402
+
403
+ ```ruby
404
+ # opengl-bindings2
405
+ require 'opengl'
406
+ # ...
407
+ GL.Enable(GL::DEPTH_TEST)
408
+ ```
409
+
410
+ ### 効率の改善
411
+
412
+ API を呼ぶたびに走っていた無駄な `nil` のチェックが Version 2 では削除されています。
413
+
414
+ ```ruby
415
+ # opengl-bindings1
416
+ module OpenGL
417
+ #...
418
+ def self.get_command( sym )
419
+ if GL_FUNCTIONS_MAP[sym] == nil
420
+ bind_command( sym )
421
+ end
422
+ return GL_FUNCTIONS_MAP[sym]
423
+ end
424
+
425
+ #...
426
+
427
+ def glEnable(_cap_)
428
+ f = OpenGL::get_command(:glEnable) # Every API call caused redundant nil check here
429
+ f.call(_cap_)
430
+ end
431
+ ```
432
+
433
+ ```ruby
434
+ # opengl-bindings2
435
+ module GL
436
+ #...
437
+ def self.Enable(_cap_)
438
+ GL_FUNCTIONS_MAP[:glEnable].call(_cap_) # Hashmap is built on initialization so there's no need to do nil check at every API call
439
+ end
440
+ ```
441
+
442
+ </details>
443
+
444
+ ---
445
+
306
446
  ## 特徴 ##
307
447
 
308
448
  * 標準ライブラリ Fiddle を使っています ⇒ opengl ( https://rubygems.org/gems/opengl ) のように拡張ライブラリをビルドする必要がありません
@@ -311,9 +451,9 @@ See sample/OrangeBook/3Dlabs-License.txt .
311
451
 
312
452
  ## インストール ##
313
453
 
314
- RubyGems経由で ( https://rubygems.org/gems/opengl-bindings ):
454
+ RubyGems経由で ( https://rubygems.org/gems/opengl-bindings2 ):
315
455
 
316
- $ gem install opengl-bindings
456
+ $ gem install opengl-bindings2
317
457
 
318
458
  もしくは lib 以下の *.rb をコピー → その場所をロードパスに加えて次のように起動:
319
459
 
@@ -537,13 +677,22 @@ GLFW か GLUT を用意してください。ウィンドウやレンダリング
537
677
  * mittsu - A direct port of THREE.js from JavaScript/WebGL to Ruby/OpenGL
538
678
  * https://rubygems.org/gems/mittsu
539
679
  * https://github.com/jellymann/mittsu
680
+ * open.gl.rb - A port of the https://open.gl/ tutorials to Ruby
681
+ * https://github.com/mechazoidal/opendotgl_rb
540
682
  * opencl-bindings - A Ruby binding for OpenCL 1.2
541
683
  * https://rubygems.org/gems/opencl-bindings
542
684
  * https://github.com/vaiorabbit/ruby-opencl
543
685
  * perfume_dance - A BVH motion parser and playback implementation written in Ruby
544
686
  * 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
687
+ * imgui-bindings - ImGui wrapper for Ruby
688
+ * https://rubygems.org/gems/imgui-bindings
689
+ * https://github.com/vaiorabbit/ruby-imgui
690
+ * nanovg-bindings - NanoVG wrapper for Ruby
691
+ * https://rubygems.org/gems/nanovg-bindings
692
+ * https://github.com/vaiorabbit/nanovg-bindings
693
+ * raylib-bindings - Yet another raylib wrapper for Ruby
694
+ * https://rubygems.org/gems/raylib-bindings
695
+ * https://github.com/vaiorabbit/raylib-bindings
547
696
 
548
697
  * 参考になりそうなプロジェクト
549
698
  * argon | neon
data/lib/glfw.rb CHANGED
@@ -469,7 +469,7 @@ module GLFW
469
469
  when :OPENGL_PLATFORM_MACOSX
470
470
  'libglfw.dylib'
471
471
  else
472
- 'libglfw.so' # not tested
472
+ 'libglfw.so.3'
473
473
  end
474
474
  end
475
475
 
@@ -675,7 +675,7 @@ end
675
675
 
676
676
  =begin
677
677
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
678
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
678
+ Copyright (c) 2013-2023 vaiorabbit <http://twitter.com/vaiorabbit>
679
679
 
680
680
  This software is provided 'as-is', without any express or implied
681
681
  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)
@@ -1412,6 +1412,58 @@ module GLExt
1412
1412
  end # self.get_ext_command_GL_EXT_float_blend
1413
1413
 
1414
1414
 
1415
+ def self.define_ext_command_GL_EXT_fragment_shading_rate
1416
+ GL::GL_FUNCTION_SYMBOLS << :glGetFragmentShadingRatesEXT
1417
+ GL::GL_FUNCTIONS_ARGS_MAP[:glGetFragmentShadingRatesEXT] = [Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_VOIDP, Fiddle::TYPE_VOIDP]
1418
+ GL::GL_FUNCTIONS_RETVAL_MAP[:glGetFragmentShadingRatesEXT] = Fiddle::TYPE_VOID
1419
+ GL.bind_command(:glGetFragmentShadingRatesEXT)
1420
+ GL.module_eval(<<-SRC)
1421
+ def self.GetFragmentShadingRatesEXT(_samples_, _maxCount_, _count_, _shadingRates_)
1422
+ GL_FUNCTIONS_MAP[:glGetFragmentShadingRatesEXT].call(_samples_, _maxCount_, _count_, _shadingRates_)
1423
+ end
1424
+ SRC
1425
+
1426
+ GL::GL_FUNCTION_SYMBOLS << :glShadingRateEXT
1427
+ GL::GL_FUNCTIONS_ARGS_MAP[:glShadingRateEXT] = [-Fiddle::TYPE_INT]
1428
+ GL::GL_FUNCTIONS_RETVAL_MAP[:glShadingRateEXT] = Fiddle::TYPE_VOID
1429
+ GL.bind_command(:glShadingRateEXT)
1430
+ GL.module_eval(<<-SRC)
1431
+ def self.ShadingRateEXT(_rate_)
1432
+ GL_FUNCTIONS_MAP[:glShadingRateEXT].call(_rate_)
1433
+ end
1434
+ SRC
1435
+
1436
+ GL::GL_FUNCTION_SYMBOLS << :glShadingRateCombinerOpsEXT
1437
+ GL::GL_FUNCTIONS_ARGS_MAP[:glShadingRateCombinerOpsEXT] = [-Fiddle::TYPE_INT, -Fiddle::TYPE_INT]
1438
+ GL::GL_FUNCTIONS_RETVAL_MAP[:glShadingRateCombinerOpsEXT] = Fiddle::TYPE_VOID
1439
+ GL.bind_command(:glShadingRateCombinerOpsEXT)
1440
+ GL.module_eval(<<-SRC)
1441
+ def self.ShadingRateCombinerOpsEXT(_combinerOp0_, _combinerOp1_)
1442
+ GL_FUNCTIONS_MAP[:glShadingRateCombinerOpsEXT].call(_combinerOp0_, _combinerOp1_)
1443
+ end
1444
+ SRC
1445
+
1446
+ GL::GL_FUNCTION_SYMBOLS << :glFramebufferShadingRateEXT
1447
+ GL::GL_FUNCTIONS_ARGS_MAP[:glFramebufferShadingRateEXT] = [-Fiddle::TYPE_INT, -Fiddle::TYPE_INT, -Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT]
1448
+ GL::GL_FUNCTIONS_RETVAL_MAP[:glFramebufferShadingRateEXT] = Fiddle::TYPE_VOID
1449
+ GL.bind_command(:glFramebufferShadingRateEXT)
1450
+ GL.module_eval(<<-SRC)
1451
+ def self.FramebufferShadingRateEXT(_target_, _attachment_, _texture_, _baseLayer_, _numLayers_, _texelWidth_, _texelHeight_)
1452
+ GL_FUNCTIONS_MAP[:glFramebufferShadingRateEXT].call(_target_, _attachment_, _texture_, _baseLayer_, _numLayers_, _texelWidth_, _texelHeight_)
1453
+ end
1454
+ SRC
1455
+ end # self.define_ext_command_GL_EXT_fragment_shading_rate
1456
+
1457
+ def self.get_ext_command_GL_EXT_fragment_shading_rate
1458
+ [
1459
+ 'glGetFragmentShadingRatesEXT',
1460
+ 'glShadingRateEXT',
1461
+ 'glShadingRateCombinerOpsEXT',
1462
+ 'glFramebufferShadingRateEXT',
1463
+ ]
1464
+ end # self.get_ext_command_GL_EXT_fragment_shading_rate
1465
+
1466
+
1415
1467
  def self.define_ext_command_GL_EXT_geometry_point_size
1416
1468
  end # self.define_ext_command_GL_EXT_geometry_point_size
1417
1469
 
@@ -2375,6 +2427,15 @@ module GLExt
2375
2427
  end # self.get_ext_command_GL_EXT_sRGB_write_control
2376
2428
 
2377
2429
 
2430
+ def self.define_ext_command_GL_EXT_separate_depth_stencil
2431
+ end # self.define_ext_command_GL_EXT_separate_depth_stencil
2432
+
2433
+ def self.get_ext_command_GL_EXT_separate_depth_stencil
2434
+ [
2435
+ ]
2436
+ end # self.get_ext_command_GL_EXT_separate_depth_stencil
2437
+
2438
+
2378
2439
  def self.define_ext_command_GL_EXT_separate_shader_objects
2379
2440
  GL::GL_FUNCTION_SYMBOLS << :glUseShaderProgramEXT
2380
2441
  GL::GL_FUNCTIONS_ARGS_MAP[:glUseShaderProgramEXT] = [-Fiddle::TYPE_INT, -Fiddle::TYPE_INT]
@@ -3023,6 +3084,15 @@ module GLExt
3023
3084
  end # self.get_ext_command_GL_EXT_shader_pixel_local_storage2
3024
3085
 
3025
3086
 
3087
+ def self.define_ext_command_GL_EXT_shader_samples_identical
3088
+ end # self.define_ext_command_GL_EXT_shader_samples_identical
3089
+
3090
+ def self.get_ext_command_GL_EXT_shader_samples_identical
3091
+ [
3092
+ ]
3093
+ end # self.get_ext_command_GL_EXT_shader_samples_identical
3094
+
3095
+
3026
3096
  def self.define_ext_command_GL_EXT_shader_texture_lod
3027
3097
  end # self.define_ext_command_GL_EXT_shader_texture_lod
3028
3098
 
@@ -3460,31 +3530,31 @@ module GLExt
3460
3530
 
3461
3531
 
3462
3532
  def self.define_ext_command_GL_EXT_texture_storage_compression
3463
- GL::GL_FUNCTION_SYMBOLS << :TexStorageAttribs2DEXT
3464
- GL::GL_FUNCTIONS_ARGS_MAP[:TexStorageAttribs2DEXT] = [-Fiddle::TYPE_INT, Fiddle::TYPE_INT, -Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_VOIDP]
3465
- GL::GL_FUNCTIONS_RETVAL_MAP[:TexStorageAttribs2DEXT] = Fiddle::TYPE_VOID
3466
- GL.bind_command(:TexStorageAttribs2DEXT)
3533
+ GL::GL_FUNCTION_SYMBOLS << :glTexStorageAttribs2DEXT
3534
+ GL::GL_FUNCTIONS_ARGS_MAP[:glTexStorageAttribs2DEXT] = [-Fiddle::TYPE_INT, Fiddle::TYPE_INT, -Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_VOIDP]
3535
+ GL::GL_FUNCTIONS_RETVAL_MAP[:glTexStorageAttribs2DEXT] = Fiddle::TYPE_VOID
3536
+ GL.bind_command(:glTexStorageAttribs2DEXT)
3467
3537
  GL.module_eval(<<-SRC)
3468
- def self.xStorageAttribs2DEXT(_target_, _levels_, _internalformat_, _width_, _height_, _attrib_list_)
3469
- GL_FUNCTIONS_MAP[:TexStorageAttribs2DEXT].call(_target_, _levels_, _internalformat_, _width_, _height_, _attrib_list_)
3538
+ def self.TexStorageAttribs2DEXT(_target_, _levels_, _internalformat_, _width_, _height_, _attrib_list_)
3539
+ GL_FUNCTIONS_MAP[:glTexStorageAttribs2DEXT].call(_target_, _levels_, _internalformat_, _width_, _height_, _attrib_list_)
3470
3540
  end
3471
3541
  SRC
3472
3542
 
3473
- GL::GL_FUNCTION_SYMBOLS << :TexStorageAttribs3DEXT
3474
- GL::GL_FUNCTIONS_ARGS_MAP[:TexStorageAttribs3DEXT] = [-Fiddle::TYPE_INT, Fiddle::TYPE_INT, -Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_VOIDP]
3475
- GL::GL_FUNCTIONS_RETVAL_MAP[:TexStorageAttribs3DEXT] = Fiddle::TYPE_VOID
3476
- GL.bind_command(:TexStorageAttribs3DEXT)
3543
+ GL::GL_FUNCTION_SYMBOLS << :glTexStorageAttribs3DEXT
3544
+ GL::GL_FUNCTIONS_ARGS_MAP[:glTexStorageAttribs3DEXT] = [-Fiddle::TYPE_INT, Fiddle::TYPE_INT, -Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_INT, Fiddle::TYPE_VOIDP]
3545
+ GL::GL_FUNCTIONS_RETVAL_MAP[:glTexStorageAttribs3DEXT] = Fiddle::TYPE_VOID
3546
+ GL.bind_command(:glTexStorageAttribs3DEXT)
3477
3547
  GL.module_eval(<<-SRC)
3478
- def self.xStorageAttribs3DEXT(_target_, _levels_, _internalformat_, _width_, _height_, _depth_, _attrib_list_)
3479
- GL_FUNCTIONS_MAP[:TexStorageAttribs3DEXT].call(_target_, _levels_, _internalformat_, _width_, _height_, _depth_, _attrib_list_)
3548
+ def self.TexStorageAttribs3DEXT(_target_, _levels_, _internalformat_, _width_, _height_, _depth_, _attrib_list_)
3549
+ GL_FUNCTIONS_MAP[:glTexStorageAttribs3DEXT].call(_target_, _levels_, _internalformat_, _width_, _height_, _depth_, _attrib_list_)
3480
3550
  end
3481
3551
  SRC
3482
3552
  end # self.define_ext_command_GL_EXT_texture_storage_compression
3483
3553
 
3484
3554
  def self.get_ext_command_GL_EXT_texture_storage_compression
3485
3555
  [
3486
- 'TexStorageAttribs2DEXT',
3487
- 'TexStorageAttribs3DEXT',
3556
+ 'glTexStorageAttribs2DEXT',
3557
+ 'glTexStorageAttribs3DEXT',
3488
3558
  ]
3489
3559
  end # self.get_ext_command_GL_EXT_texture_storage_compression
3490
3560
 
@@ -996,6 +996,67 @@ module GLExt
996
996
  end # self.get_ext_enum_GL_EXT_float_blend
997
997
 
998
998
 
999
+ def self.define_ext_enum_GL_EXT_fragment_shading_rate
1000
+ GL.const_set('SHADING_RATE_1X1_PIXELS_EXT', 0x96A6) unless defined?(GL::SHADING_RATE_1X1_PIXELS_EXT)
1001
+ GL.const_set('SHADING_RATE_1X2_PIXELS_EXT', 0x96A7) unless defined?(GL::SHADING_RATE_1X2_PIXELS_EXT)
1002
+ GL.const_set('SHADING_RATE_2X1_PIXELS_EXT', 0x96A8) unless defined?(GL::SHADING_RATE_2X1_PIXELS_EXT)
1003
+ GL.const_set('SHADING_RATE_2X2_PIXELS_EXT', 0x96A9) unless defined?(GL::SHADING_RATE_2X2_PIXELS_EXT)
1004
+ GL.const_set('SHADING_RATE_1X4_PIXELS_EXT', 0x96AA) unless defined?(GL::SHADING_RATE_1X4_PIXELS_EXT)
1005
+ GL.const_set('SHADING_RATE_4X1_PIXELS_EXT', 0x96AB) unless defined?(GL::SHADING_RATE_4X1_PIXELS_EXT)
1006
+ GL.const_set('SHADING_RATE_4X2_PIXELS_EXT', 0x96AC) unless defined?(GL::SHADING_RATE_4X2_PIXELS_EXT)
1007
+ GL.const_set('SHADING_RATE_2X4_PIXELS_EXT', 0x96AD) unless defined?(GL::SHADING_RATE_2X4_PIXELS_EXT)
1008
+ GL.const_set('SHADING_RATE_4X4_PIXELS_EXT', 0x96AE) unless defined?(GL::SHADING_RATE_4X4_PIXELS_EXT)
1009
+ GL.const_set('SHADING_RATE_EXT', 0x96D0) unless defined?(GL::SHADING_RATE_EXT)
1010
+ GL.const_set('SHADING_RATE_ATTACHMENT_EXT', 0x96D1) unless defined?(GL::SHADING_RATE_ATTACHMENT_EXT)
1011
+ GL.const_set('FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_EXT', 0x96D2) unless defined?(GL::FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_EXT)
1012
+ GL.const_set('FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_EXT', 0x96D3) unless defined?(GL::FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_EXT)
1013
+ GL.const_set('FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_EXT', 0x96D4) unless defined?(GL::FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_EXT)
1014
+ GL.const_set('FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_EXT', 0x96D5) unless defined?(GL::FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_EXT)
1015
+ GL.const_set('FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_EXT', 0x96D6) unless defined?(GL::FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_EXT)
1016
+ GL.const_set('MIN_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_WIDTH_EXT', 0x96D7) unless defined?(GL::MIN_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_WIDTH_EXT)
1017
+ GL.const_set('MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_WIDTH_EXT', 0x96D8) unless defined?(GL::MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_WIDTH_EXT)
1018
+ GL.const_set('MIN_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_HEIGHT_EXT', 0x96D9) unless defined?(GL::MIN_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_HEIGHT_EXT)
1019
+ GL.const_set('MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_HEIGHT_EXT', 0x96DA) unless defined?(GL::MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_HEIGHT_EXT)
1020
+ GL.const_set('MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_ASPECT_RATIO_EXT', 0x96DB) unless defined?(GL::MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_ASPECT_RATIO_EXT)
1021
+ GL.const_set('MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_LAYERS_EXT', 0x96DC) unless defined?(GL::MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_LAYERS_EXT)
1022
+ GL.const_set('FRAGMENT_SHADING_RATE_WITH_SHADER_DEPTH_STENCIL_WRITES_SUPPORTED_EXT', 0x96DD) unless defined?(GL::FRAGMENT_SHADING_RATE_WITH_SHADER_DEPTH_STENCIL_WRITES_SUPPORTED_EXT)
1023
+ GL.const_set('FRAGMENT_SHADING_RATE_WITH_SAMPLE_MASK_SUPPORTED_EXT', 0x96DE) unless defined?(GL::FRAGMENT_SHADING_RATE_WITH_SAMPLE_MASK_SUPPORTED_EXT)
1024
+ GL.const_set('FRAGMENT_SHADING_RATE_ATTACHMENT_WITH_DEFAULT_FRAMEBUFFER_SUPPORTED_EXT', 0x96DF) unless defined?(GL::FRAGMENT_SHADING_RATE_ATTACHMENT_WITH_DEFAULT_FRAMEBUFFER_SUPPORTED_EXT)
1025
+ GL.const_set('FRAGMENT_SHADING_RATE_NON_TRIVIAL_COMBINERS_SUPPORTED_EXT', 0x8F6F) unless defined?(GL::FRAGMENT_SHADING_RATE_NON_TRIVIAL_COMBINERS_SUPPORTED_EXT)
1026
+ end # self.define_ext_enum_GL_EXT_fragment_shading_rate
1027
+
1028
+ def self.get_ext_enum_GL_EXT_fragment_shading_rate
1029
+ [
1030
+ 'SHADING_RATE_1X1_PIXELS_EXT',
1031
+ 'SHADING_RATE_1X2_PIXELS_EXT',
1032
+ 'SHADING_RATE_2X1_PIXELS_EXT',
1033
+ 'SHADING_RATE_2X2_PIXELS_EXT',
1034
+ 'SHADING_RATE_1X4_PIXELS_EXT',
1035
+ 'SHADING_RATE_4X1_PIXELS_EXT',
1036
+ 'SHADING_RATE_4X2_PIXELS_EXT',
1037
+ 'SHADING_RATE_2X4_PIXELS_EXT',
1038
+ 'SHADING_RATE_4X4_PIXELS_EXT',
1039
+ 'SHADING_RATE_EXT',
1040
+ 'SHADING_RATE_ATTACHMENT_EXT',
1041
+ 'FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_EXT',
1042
+ 'FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_EXT',
1043
+ 'FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_EXT',
1044
+ 'FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_EXT',
1045
+ 'FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_EXT',
1046
+ 'MIN_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_WIDTH_EXT',
1047
+ 'MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_WIDTH_EXT',
1048
+ 'MIN_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_HEIGHT_EXT',
1049
+ 'MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_HEIGHT_EXT',
1050
+ 'MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_TEXEL_ASPECT_RATIO_EXT',
1051
+ 'MAX_FRAGMENT_SHADING_RATE_ATTACHMENT_LAYERS_EXT',
1052
+ 'FRAGMENT_SHADING_RATE_WITH_SHADER_DEPTH_STENCIL_WRITES_SUPPORTED_EXT',
1053
+ 'FRAGMENT_SHADING_RATE_WITH_SAMPLE_MASK_SUPPORTED_EXT',
1054
+ 'FRAGMENT_SHADING_RATE_ATTACHMENT_WITH_DEFAULT_FRAMEBUFFER_SUPPORTED_EXT',
1055
+ 'FRAGMENT_SHADING_RATE_NON_TRIVIAL_COMBINERS_SUPPORTED_EXT',
1056
+ ]
1057
+ end # self.get_ext_enum_GL_EXT_fragment_shading_rate
1058
+
1059
+
999
1060
  def self.define_ext_enum_GL_EXT_geometry_point_size
1000
1061
  end # self.define_ext_enum_GL_EXT_geometry_point_size
1001
1062
 
@@ -1560,6 +1621,15 @@ module GLExt
1560
1621
  end # self.get_ext_enum_GL_EXT_sRGB_write_control
1561
1622
 
1562
1623
 
1624
+ def self.define_ext_enum_GL_EXT_separate_depth_stencil
1625
+ end # self.define_ext_enum_GL_EXT_separate_depth_stencil
1626
+
1627
+ def self.get_ext_enum_GL_EXT_separate_depth_stencil
1628
+ [
1629
+ ]
1630
+ end # self.get_ext_enum_GL_EXT_separate_depth_stencil
1631
+
1632
+
1563
1633
  def self.define_ext_enum_GL_EXT_separate_shader_objects
1564
1634
  GL.const_set('ACTIVE_PROGRAM_EXT', 0x8B8D) unless defined?(GL::ACTIVE_PROGRAM_EXT)
1565
1635
  GL.const_set('VERTEX_SHADER_BIT_EXT', 0x00000001) unless defined?(GL::VERTEX_SHADER_BIT_EXT)
@@ -1678,6 +1748,15 @@ module GLExt
1678
1748
  end # self.get_ext_enum_GL_EXT_shader_pixel_local_storage2
1679
1749
 
1680
1750
 
1751
+ def self.define_ext_enum_GL_EXT_shader_samples_identical
1752
+ end # self.define_ext_enum_GL_EXT_shader_samples_identical
1753
+
1754
+ def self.get_ext_enum_GL_EXT_shader_samples_identical
1755
+ [
1756
+ ]
1757
+ end # self.get_ext_enum_GL_EXT_shader_samples_identical
1758
+
1759
+
1681
1760
  def self.define_ext_enum_GL_EXT_shader_texture_lod
1682
1761
  end # self.define_ext_enum_GL_EXT_shader_texture_lod
1683
1762
 
@@ -19504,6 +19504,15 @@ module GLExt
19504
19504
  end # self.get_ext_command_GL_EXT_shader_integer_mix
19505
19505
 
19506
19506
 
19507
+ def self.define_ext_command_GL_EXT_shader_samples_identical
19508
+ end # self.define_ext_command_GL_EXT_shader_samples_identical
19509
+
19510
+ def self.get_ext_command_GL_EXT_shader_samples_identical
19511
+ [
19512
+ ]
19513
+ end # self.get_ext_command_GL_EXT_shader_samples_identical
19514
+
19515
+
19507
19516
  def self.define_ext_command_GL_EXT_shadow_funcs
19508
19517
  end # self.define_ext_command_GL_EXT_shadow_funcs
19509
19518
 
@@ -7365,6 +7365,15 @@ module GLExt
7365
7365
  end # self.get_ext_enum_GL_EXT_shader_integer_mix
7366
7366
 
7367
7367
 
7368
+ def self.define_ext_enum_GL_EXT_shader_samples_identical
7369
+ end # self.define_ext_enum_GL_EXT_shader_samples_identical
7370
+
7371
+ def self.get_ext_enum_GL_EXT_shader_samples_identical
7372
+ [
7373
+ ]
7374
+ end # self.get_ext_enum_GL_EXT_shader_samples_identical
7375
+
7376
+
7368
7377
  def self.define_ext_enum_GL_EXT_shadow_funcs
7369
7378
  end # self.define_ext_enum_GL_EXT_shadow_funcs
7370
7379
 
data/lib/opengl_linux.rb CHANGED
@@ -40,7 +40,7 @@ end
40
40
 
41
41
  =begin
42
42
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
43
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
43
+ Copyright (c) 2013-2023 vaiorabbit <http://twitter.com/vaiorabbit>
44
44
 
45
45
  This software is provided 'as-is', without any express or implied
46
46
  warranty. In no event will the authors be held liable for any damages
data/lib/opengl_macosx.rb CHANGED
@@ -45,7 +45,7 @@ end
45
45
 
46
46
  =begin
47
47
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
48
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
48
+ Copyright (c) 2013-2023 vaiorabbit <http://twitter.com/vaiorabbit>
49
49
 
50
50
  This software is provided 'as-is', without any express or implied
51
51
  warranty. In no event will the authors be held liable for any damages
@@ -20,7 +20,7 @@ end
20
20
 
21
21
  =begin
22
22
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
23
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
23
+ Copyright (c) 2013-2023 vaiorabbit <http://twitter.com/vaiorabbit>
24
24
 
25
25
  This software is provided 'as-is', without any express or implied
26
26
  warranty. In no event will the authors be held liable for any damages
@@ -48,7 +48,7 @@ end
48
48
 
49
49
  =begin
50
50
  Ruby-OpenGL : Yet another OpenGL wrapper for Ruby (and wrapper code generator)
51
- Copyright (c) 2013-2022 vaiorabbit <http://twitter.com/vaiorabbit>
51
+ Copyright (c) 2013-2023 vaiorabbit <http://twitter.com/vaiorabbit>
52
52
 
53
53
  This software is provided 'as-is', without any express or implied
54
54
  warranty. In no event will the authors be held liable for any damages
data/sample/glfw_get.bat CHANGED
@@ -1,6 +1,6 @@
1
1
  @echo off
2
2
  setlocal EnableDelayedExpansion
3
3
 
4
- curl -O -L https://github.com/glfw/glfw/releases/download/3.3.6/glfw-3.3.6.bin.WIN64.zip
5
- %WINDIR%\System32\tar.exe -xf glfw-3.3.6.bin.WIN64.zip
6
- xcopy /Y glfw-3.3.6.bin.WIN64\lib-mingw-w64\glfw3.dll .
4
+ curl -O -L https://github.com/glfw/glfw/releases/download/3.3.8/glfw-3.3.8.bin.WIN64.zip
5
+ %WINDIR%\System32\tar.exe -xf glfw-3.3.8.bin.WIN64.zip
6
+ xcopy /Y glfw-3.3.8.bin.WIN64\lib-mingw-w64\glfw3.dll .
data/sample/glfw_get.sh CHANGED
@@ -1,3 +1,3 @@
1
- curl -O -L https://github.com/glfw/glfw/releases/download/3.3.6/glfw-3.3.6.bin.MACOS.zip
2
- tar -xf glfw-3.3.6.bin.MACOS.zip
3
- cp glfw-3.3.6.bin.MACOS/lib-universal/libglfw.3.dylib ./libglfw.dylib
1
+ curl -O -L https://github.com/glfw/glfw/releases/download/3.3.8/glfw-3.3.8.bin.MACOS.zip
2
+ tar -xf glfw-3.3.8.bin.MACOS.zip
3
+ cp glfw-3.3.8.bin.MACOS/lib-universal/libglfw.3.dylib ./libglfw.dylib
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opengl-bindings2
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
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-09 00:00:00.000000000 Z
11
+ date: 2023-01-01 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: 'Ruby bindings for OpenGL - 4.6, OpenGL ES - 3.2 and all extensions using
14
14
  Fiddle (For MRI >= 2.4.0). GLFW/GLUT/GLU bindings are also available.
@@ -68,7 +68,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
68
68
  - !ruby/object:Gem::Version
69
69
  version: '0'
70
70
  requirements: []
71
- rubygems_version: 3.3.3
71
+ rubygems_version: 3.4.1
72
72
  signing_key:
73
73
  specification_version: 4
74
74
  summary: Bindings for OpenGL -4.6, ES - 3.2 and extensions (For MRI >= 2.4.0)