opengl3 0.0.1.pre6 → 0.0.2.pre1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +4 -3
- data/lib/opengl/error.rb +2 -0
- data/lib/opengl/gl.rb +1 -0
- data/lib/opengl/pointer_ext.rb +24 -0
- data/lib/opengl/type.rb +45 -50
- data/lib/opengl/version.rb +1 -1
- data/lib/opengl/wrapper/base.rb +38 -17
- data/lib/opengl/wrapper/core/2_x/GL_VERSION_1_1.rb +3 -0
- data/lib/opengl/wrapper/core/2_x/GL_VERSION_1_2.rb +4 -0
- data/lib/opengl/wrapper/core/2_x/GL_VERSION_2_0.rb +19 -24
- data/lib/opengl/wrapper/core/3_0/GL_VERSION_3_0.rb +3 -0
- data/lib/opengl/wrapper/core/3_1/GL_VERSION_3_1.rb +3 -1
- data/lib/opengl/wrapper/core/3_2/GL_ARB_draw_elements_base_vertex.rb +9 -0
- data/lib/opengl/wrapper/core/4_1/GL_ARB_vertex_attrib_64bit.rb +3 -0
- data/lib/opengl/wrapper/core/4_2/GL_ARB_base_instance.rb +7 -0
- metadata +139 -138
data/README.md
CHANGED
@@ -26,8 +26,6 @@ with C-style OpenGL entrypoints.
|
|
26
26
|
Please take a look at `lib/opengl/wrapper/**/*.rb`
|
27
27
|
to see if entrypoints are wrapped.
|
28
28
|
|
29
|
-
|
30
|
-
|
31
29
|
* `glGetString(pname)` -> `String`
|
32
30
|
* `glGen...`-like functions
|
33
31
|
- `glGenTextures(count)` -> `Array<Integer>`
|
@@ -47,6 +45,10 @@ to see if entrypoints are wrapped.
|
|
47
45
|
* `glShaderSource(shader, Array<String>)`
|
48
46
|
* `glGetShaderInfoLog(shader)` -> `String`
|
49
47
|
* `glGetProgramInfoLog(program)` -> `String`
|
48
|
+
* `glDrawElements`, `glDrawRangeElements` and its family
|
49
|
+
- its `indices` argument can be an Integer as offset in bytes
|
50
|
+
* `glVertexAttribPointer` and its family
|
51
|
+
- its `pointer` argument can be an Integer as offset in bytes
|
50
52
|
* More Ruby-style functions coming soon
|
51
53
|
|
52
54
|
block-style glMapBuffer / glMapBufferRange:
|
@@ -64,7 +66,6 @@ And helper functions
|
|
64
66
|
* `glGetAvailableExtensions()` -> `Array<String>`
|
65
67
|
* `glIsShaderCompiled?(shader)` -> `Boolean`
|
66
68
|
* `glIsProgramLinked?(program)` -> `Boolean`
|
67
|
-
* `glUniformMatrixf(location, Matrix, transpose = true)` (Experimental)
|
68
69
|
* More helper functions coming soon
|
69
70
|
|
70
71
|
Note for functions has a offset with GLvoid* type
|
data/lib/opengl/error.rb
ADDED
data/lib/opengl/gl.rb
CHANGED
@@ -0,0 +1,24 @@
|
|
1
|
+
require_relative "type"
|
2
|
+
|
3
|
+
module OpenGL
|
4
|
+
module PointerExt
|
5
|
+
Type.primitive_types.each do |gl_type, old_type|
|
6
|
+
code = <<-RUBY
|
7
|
+
def read_array_of_#{gl_type}(n)
|
8
|
+
read_array_of_#{old_type}(n)
|
9
|
+
end
|
10
|
+
def get_array_of_#{gl_type}(off, n)
|
11
|
+
get_array_of_#{old_type}(off, n)
|
12
|
+
end
|
13
|
+
def write_array_of_#{gl_type}(ary)
|
14
|
+
write_array_of_#{old_type}(ary)
|
15
|
+
end
|
16
|
+
def put_array_of_#{gl_type}(off, ary)
|
17
|
+
put_array_of_#{old_type}(off, ary)
|
18
|
+
end
|
19
|
+
RUBY
|
20
|
+
|
21
|
+
module_eval code, __FILE__, __LINE__
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
data/lib/opengl/type.rb
CHANGED
@@ -8,16 +8,26 @@ module OpenGL
|
|
8
8
|
# Root path of type definition files
|
9
9
|
ROOT = File.expand_path("../type", __FILE__)
|
10
10
|
|
11
|
+
# @private
|
11
12
|
default_path = File.join(ROOT, "default.yml")
|
12
13
|
platform_path = File.join(ROOT, "#{FFI::Platform::NAME}.yml")
|
14
|
+
|
15
|
+
# @private
|
13
16
|
@primitive_types = YAML.load(File.read(default_path)).merge!(
|
14
17
|
YAML.load(File.read(platform_path))
|
15
18
|
)
|
16
19
|
|
20
|
+
# @!attribute [r] primitive_types
|
21
|
+
# @return [Hash] the table of primitive types
|
22
|
+
def self.primitive_types
|
23
|
+
return @primitive_types
|
24
|
+
end
|
25
|
+
|
26
|
+
# @private
|
17
27
|
@type_map = Hash[
|
18
|
-
|
19
|
-
|
20
|
-
|
28
|
+
primitive_types.to_a +
|
29
|
+
primitive_types.keys.map {|t| [:"#{t}_in", :buffer_in] } +
|
30
|
+
primitive_types.keys.map {|t| [:"#{t}_out", :buffer_out] }
|
21
31
|
].merge!({
|
22
32
|
:pointer_out => :buffer_out, :pointer_in => :buffer_in,
|
23
33
|
:void => :void, :string => :string, :pointer => :pointer,
|
@@ -34,61 +44,46 @@ module OpenGL
|
|
34
44
|
return @type_map.fetch(type.to_sym)
|
35
45
|
end
|
36
46
|
|
37
|
-
#
|
38
|
-
|
39
|
-
@
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
MemoryPointerInstanceMethods.module_eval code, __FILE__, __LINE__
|
55
|
-
end
|
56
|
-
|
57
|
-
@primitive_types.each do |gl_type, old_type|
|
58
|
-
code = <<-RUBY
|
59
|
-
def self.#{gl_type}(n)
|
60
|
-
ptr = pointer(FFI::MemoryPointer.new(:#{old_type}, n))
|
61
|
-
if block_given?
|
62
|
-
yield ptr
|
63
|
-
else
|
64
|
-
return ptr
|
65
|
-
end
|
66
|
-
end
|
67
|
-
RUBY
|
68
|
-
self.module_eval code, __FILE__, __LINE__
|
47
|
+
# Create a buffer for input argument
|
48
|
+
#
|
49
|
+
# @param [Symbol] gl_type
|
50
|
+
# @param [Integer] count
|
51
|
+
#
|
52
|
+
# @overload buffer_in(gl_type, count)
|
53
|
+
# @return [FFI::Buffer]
|
54
|
+
#
|
55
|
+
# @overload buffer_in(gl_type, count)
|
56
|
+
# @yield [buf] Give a reference of the buffer
|
57
|
+
# @yieldparam [FFI::Buffer] buf
|
58
|
+
# @return [Object] result of the block
|
59
|
+
#
|
60
|
+
def self.buffer_in(gl_type, count)
|
61
|
+
orig_type = primitive_types.fetch(gl_type)
|
62
|
+
ptr = FFI::Buffer.new_in(orig_type, count).extend(PointerExt)
|
63
|
+
return (block_given? ? (yield ptr) : (ptr))
|
69
64
|
end
|
70
65
|
|
66
|
+
# Create a buffer for output argument
|
71
67
|
#
|
72
|
-
# @
|
73
|
-
#
|
74
|
-
# @param [Integer] count
|
75
|
-
# @return [FFI::MemoryPointer] with sizeof(pointer) * count
|
68
|
+
# @param [Symbol] gl_type
|
69
|
+
# @param [Integer] count
|
76
70
|
#
|
77
|
-
# @overload
|
78
|
-
#
|
79
|
-
# If ptr is NULL (#null? == true), it returns nil
|
80
|
-
# @param [FFI::Pointer] ptr
|
81
|
-
# @return [FFI::Pointer] ptr (extended with extensions)
|
71
|
+
# @overload buffer_out(gl_type, count)
|
72
|
+
# @return [FFI::Buffer]
|
82
73
|
#
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
74
|
+
# @overload buffer_out(gl_type, count)
|
75
|
+
# @yield [buf] Give a reference of the buffer
|
76
|
+
# @yieldparam [FFI::Buffer] buf
|
77
|
+
# @return [Object] result of the block
|
78
|
+
#
|
79
|
+
def self.buffer_out(gl_type, count)
|
80
|
+
orig_type = primitive_types.fetch(gl_type)
|
81
|
+
ptr = FFI::Buffer.new_out(orig_type, count).extend(PointerExt)
|
82
|
+
return (block_given? ? (yield ptr) : (ptr))
|
89
83
|
end
|
90
84
|
|
91
85
|
# Make sure offset is a pointer type
|
86
|
+
#
|
92
87
|
# @param [Integer, FFI::Pointer, nil] offset
|
93
88
|
# @return [FFI::Pointer]
|
94
89
|
#
|
data/lib/opengl/version.rb
CHANGED
data/lib/opengl/wrapper/base.rb
CHANGED
@@ -6,27 +6,30 @@ module OpenGL
|
|
6
6
|
# glGet*v
|
7
7
|
def def_glGet(name, type)
|
8
8
|
define_method(:"glGet#{name}v") do |*args, count|
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
return Type.buffer_out(type, count) {|ptr|
|
10
|
+
super(*args, ptr)
|
11
|
+
ptr.send(:"read_array_of_#{type}", count)
|
12
|
+
}
|
12
13
|
end
|
13
14
|
end
|
14
15
|
|
15
16
|
# gl*v
|
16
17
|
def def_glSet(name, type)
|
17
18
|
define_method(:"gl#{name}v") do |*args, params|
|
18
|
-
|
19
|
-
|
20
|
-
|
19
|
+
Type.buffer_in(type, params.count) {|ptr|
|
20
|
+
ptr.send(:"write_array_of_#{type}", params)
|
21
|
+
super(*args, ptr)
|
22
|
+
}
|
21
23
|
end
|
22
24
|
end
|
23
25
|
|
24
26
|
# glGen*
|
25
27
|
def def_glGen(type_name)
|
26
28
|
define_method(:"glGen#{type_name}") do |count|
|
27
|
-
|
28
|
-
|
29
|
-
|
29
|
+
return Type.buffer_out(:GLuint, count) {|ptr|
|
30
|
+
super(count, ptr)
|
31
|
+
ptr.read_array_of_GLuint(count)
|
32
|
+
}
|
30
33
|
end
|
31
34
|
end
|
32
35
|
|
@@ -34,10 +37,10 @@ module OpenGL
|
|
34
37
|
def def_glDelete(type_name)
|
35
38
|
define_method(:"glDelete#{type_name}") do |ids|
|
36
39
|
ids = Array(ids)
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
40
|
+
Type.buffer_in(:GLuint, ids.count) {|ptr|
|
41
|
+
ptr.write_array_of_GLuint(ids)
|
42
|
+
super(ids.count, ptr)
|
43
|
+
}
|
41
44
|
end
|
42
45
|
end
|
43
46
|
|
@@ -45,7 +48,8 @@ module OpenGL
|
|
45
48
|
def def_glMapBuffer(suffix = nil)
|
46
49
|
define_method(:"glMapBuffer#{suffix}") do |*args, &block|
|
47
50
|
target = args.first
|
48
|
-
if (ptr_or_result =
|
51
|
+
if (ptr_or_result = super(*args).extend(PointerExt))
|
52
|
+
# TODO: FFI::NullPointerError ?
|
49
53
|
if block
|
50
54
|
block.call ptr_or_result
|
51
55
|
ptr_or_result = glUnmapBuffer(target)
|
@@ -59,9 +63,26 @@ module OpenGL
|
|
59
63
|
def def_glGetInfoLog_of(name)
|
60
64
|
define_method(:"glGet#{name}InfoLog") do |id|
|
61
65
|
n = send(:"glGet#{name}iv", id, Constants::GL_INFO_LOG_LENGTH, 1)[0]
|
62
|
-
|
63
|
-
|
64
|
-
|
66
|
+
return Type.buffer_out(:GLchar, n) {|ptr|
|
67
|
+
super(id, n, nil, ptr)
|
68
|
+
ptr.get_string(0)
|
69
|
+
}
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
# glVertexAttrib*Pointer
|
74
|
+
def def_glVertexAttribPointer(midname = nil)
|
75
|
+
define_method(:"glVertexAttrib#{midname}Pointer") do |*args|
|
76
|
+
ptr_or_offset = Type.pointer_offset(args.pop)
|
77
|
+
super(*args, ptr_or_offset)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
# glDraw*Elements*
|
82
|
+
def def_glDrawElements(midname, suffix, where_is_indices = -1)
|
83
|
+
define_method(:"glDraw#{midname}Elements#{suffix}") do |*args|
|
84
|
+
args[where_is_indices] = Type.pointer_offset(args[where_is_indices])
|
85
|
+
super(*args)
|
65
86
|
end
|
66
87
|
end
|
67
88
|
|
@@ -20,7 +20,7 @@ module OpenGL
|
|
20
20
|
#
|
21
21
|
def glDrawBuffers(*bufs)
|
22
22
|
bufs.flatten!
|
23
|
-
Type.GLenum
|
23
|
+
Type.buffer_in(:GLenum, bufs.count) do |ptr|
|
24
24
|
ptr.write_array_of_GLenum(bufs)
|
25
25
|
super(bufs.count, ptr)
|
26
26
|
end
|
@@ -53,6 +53,17 @@ module OpenGL
|
|
53
53
|
|
54
54
|
# TODO: glGetShaderSource
|
55
55
|
|
56
|
+
# glGetUniformLocation
|
57
|
+
#
|
58
|
+
# @param [GLuint] program
|
59
|
+
# @param [string] name
|
60
|
+
# @return [GLint, nil]
|
61
|
+
#
|
62
|
+
def glGetUniformLocation(program, name)
|
63
|
+
loc = super(program, name)
|
64
|
+
return (loc != -1 ? loc : nil)
|
65
|
+
end
|
66
|
+
|
56
67
|
# glGetUniformfv
|
57
68
|
def_glGet 'Uniformf', :GLfloat
|
58
69
|
|
@@ -74,15 +85,16 @@ module OpenGL
|
|
74
85
|
# glShaderSource
|
75
86
|
#
|
76
87
|
# @param [GLuint] shader
|
77
|
-
# @param [String, Array<String>] codes
|
88
|
+
# @param [String, Array<String>, FFI::Pointer, Array<FFI::Pointer>] codes
|
78
89
|
#
|
79
90
|
def glShaderSource(shader, codes)
|
80
91
|
pointers = Array(codes).map{|s|
|
92
|
+
# TODO: FFI::Buffer ?
|
81
93
|
s.is_a?(FFI::Pointer) ? s : FFI::MemoryPointer.from_string(s)
|
82
94
|
}
|
83
|
-
|
84
|
-
|
85
|
-
super(shader, pointers.count,
|
95
|
+
buf = FFI::Buffer.new_in(:pointer, pointers.count)
|
96
|
+
buf.write_array_of_pointer(pointers)
|
97
|
+
super(shader, pointers.count, buf, nil)
|
86
98
|
end
|
87
99
|
|
88
100
|
# Check if the shader is successfully compiled
|
@@ -103,25 +115,8 @@ module OpenGL
|
|
103
115
|
glGetProgramiv(program, Constants::GL_LINK_STATUS, 1)[0] != 0
|
104
116
|
end
|
105
117
|
|
106
|
-
#
|
107
|
-
|
108
|
-
# @param [GLint] location
|
109
|
-
# @param [Matrix] matrix
|
110
|
-
# @param [Boolean] transpose
|
111
|
-
#
|
112
|
-
def glUniformMatrixf(location, mat, transpose = true)
|
113
|
-
transpose = (transpose ? Constants::GL_TRUE : Constants::GL_FALSE)
|
114
|
-
|
115
|
-
# TODO: refactor it
|
116
|
-
if defined?(::Matrix) && mat.is_a?(::Matrix)
|
117
|
-
m, n = mat.row_size, mat.column_size
|
118
|
-
dim = (m == n ? "#{m}" : "#{n}x#{m}")
|
119
|
-
|
120
|
-
ptr = Type.GLfloat(m*n).write_array_of_GLfloat(mat.to_a.flatten)
|
121
|
-
end
|
122
|
-
|
123
|
-
send(:"glUniformMatrix#{dim}fv", location, 1, transpose, ptr)
|
124
|
-
end
|
118
|
+
# glVertexAttribPointer
|
119
|
+
def_glVertexAttribPointer
|
125
120
|
|
126
121
|
end
|
127
122
|
end
|
@@ -3,6 +3,15 @@ module OpenGL
|
|
3
3
|
module Wrapper::GL_ARB_draw_elements_base_vertex
|
4
4
|
extend Wrapper::Base
|
5
5
|
|
6
|
+
# glDrawElementsBaseVertex
|
7
|
+
def_glDrawElements nil, 'BaseVertex', -2
|
8
|
+
|
9
|
+
# glDrawRangeElementsBaseVertex
|
10
|
+
def_glDrawElements 'Range', 'BaseVertex', -2
|
11
|
+
|
12
|
+
# glDrawElementsInstancedBaseVertex
|
13
|
+
def_glDrawElements nil, 'InstancedBaseVertex', -3
|
14
|
+
|
6
15
|
# TODO: glMultiDrawElementsBaseVertex
|
7
16
|
|
8
17
|
end
|
@@ -2,5 +2,12 @@ module OpenGL
|
|
2
2
|
# Wrapper for GL_ARB_base_instance extension
|
3
3
|
module Wrapper::GL_ARB_base_instance
|
4
4
|
extend Wrapper::Base
|
5
|
+
|
6
|
+
# glDrawElementsInstancedBaseInstance
|
7
|
+
def_glDrawElements nil, 'InstancedBaseInstance', -3
|
8
|
+
|
9
|
+
# glDrawElementsInstancedBaseVertexBaseInstance
|
10
|
+
def_glDrawElements nil, 'InstancedBaseVertexBaseInstance', -4
|
11
|
+
|
5
12
|
end
|
6
13
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opengl3
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2.pre1
|
5
5
|
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,56 +9,56 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-01-
|
12
|
+
date: 2013-01-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
15
|
+
version_requirements: !ruby/object:Gem::Requirement
|
18
16
|
requirements:
|
19
17
|
- - ! '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: 1.2.0
|
22
|
-
type: :runtime
|
23
|
-
prerelease: false
|
24
|
-
version_requirements: !ruby/object:Gem::Requirement
|
25
20
|
none: false
|
21
|
+
name: ffi
|
22
|
+
prerelease: false
|
23
|
+
requirement: !ruby/object:Gem::Requirement
|
26
24
|
requirements:
|
27
25
|
- - ! '>='
|
28
26
|
- !ruby/object:Gem::Version
|
29
27
|
version: 1.2.0
|
30
|
-
- !ruby/object:Gem::Dependency
|
31
|
-
name: rake
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
33
28
|
none: false
|
29
|
+
type: :runtime
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
version_requirements: !ruby/object:Gem::Requirement
|
34
32
|
requirements:
|
35
33
|
- - ~>
|
36
34
|
- !ruby/object:Gem::Version
|
37
35
|
version: 10.0.0
|
38
|
-
type: :development
|
39
|
-
prerelease: false
|
40
|
-
version_requirements: !ruby/object:Gem::Requirement
|
41
36
|
none: false
|
37
|
+
name: rake
|
38
|
+
prerelease: false
|
39
|
+
requirement: !ruby/object:Gem::Requirement
|
42
40
|
requirements:
|
43
41
|
- - ~>
|
44
42
|
- !ruby/object:Gem::Version
|
45
43
|
version: 10.0.0
|
46
|
-
- !ruby/object:Gem::Dependency
|
47
|
-
name: minitest
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
49
44
|
none: false
|
45
|
+
type: :development
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
48
|
requirements:
|
51
49
|
- - ! '>='
|
52
50
|
- !ruby/object:Gem::Version
|
53
51
|
version: 4.3.0
|
54
|
-
type: :development
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
57
52
|
none: false
|
53
|
+
name: minitest
|
54
|
+
prerelease: false
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
58
56
|
requirements:
|
59
57
|
- - ! '>='
|
60
58
|
- !ruby/object:Gem::Version
|
61
59
|
version: 4.3.0
|
60
|
+
none: false
|
61
|
+
type: :development
|
62
62
|
description: An OpenGL wrapper library for Ruby (OpenGL 2.1-4.2)
|
63
63
|
email:
|
64
64
|
- davll.xc@gmail.com
|
@@ -66,9 +66,122 @@ executables: []
|
|
66
66
|
extensions: []
|
67
67
|
extra_rdoc_files: []
|
68
68
|
files:
|
69
|
-
- lib/glut/i386/freeglut.dll.gitkeep
|
70
|
-
- lib/glut/x86_64/freeglut.dll.gitkeep
|
71
69
|
- lib/glut.rb
|
70
|
+
- lib/opengl.rb
|
71
|
+
- lib/opengl/constants.rb
|
72
|
+
- lib/opengl/debugging.rb
|
73
|
+
- lib/opengl/error.rb
|
74
|
+
- lib/opengl/gl.rb
|
75
|
+
- lib/opengl/platform.rb
|
76
|
+
- lib/opengl/pointer_ext.rb
|
77
|
+
- lib/opengl/raw.rb
|
78
|
+
- lib/opengl/type.rb
|
79
|
+
- lib/opengl/version.rb
|
80
|
+
- lib/opengl/wrapper.rb
|
81
|
+
- lib/opengl/platform/base.rb
|
82
|
+
- lib/opengl/platform/darwin.rb
|
83
|
+
- lib/opengl/platform/linux.rb
|
84
|
+
- lib/opengl/platform/windows.rb
|
85
|
+
- lib/opengl/type/default.yml
|
86
|
+
- lib/opengl/type/i386-linux.yml
|
87
|
+
- lib/opengl/type/i386-windows.yml
|
88
|
+
- lib/opengl/type/x86_64-darwin.yml
|
89
|
+
- lib/opengl/type/x86_64-linux.yml
|
90
|
+
- lib/opengl/type/x86_64-windows.yml
|
91
|
+
- lib/opengl/wrapper/base.rb
|
92
|
+
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_0.rb
|
93
|
+
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_1.rb
|
94
|
+
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_2.rb
|
95
|
+
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_3.rb
|
96
|
+
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_4.rb
|
97
|
+
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_5.rb
|
98
|
+
- lib/opengl/wrapper/core/2_x/GL_VERSION_2_0.rb
|
99
|
+
- lib/opengl/wrapper/core/2_x/GL_VERSION_2_1.rb
|
100
|
+
- lib/opengl/wrapper/core/3_0/GL_ARB_framebuffer_object.rb
|
101
|
+
- lib/opengl/wrapper/core/3_0/GL_ARB_map_buffer_range.rb
|
102
|
+
- lib/opengl/wrapper/core/3_0/GL_ARB_vertex_array_object.rb
|
103
|
+
- lib/opengl/wrapper/core/3_0/GL_VERSION_3_0.rb
|
104
|
+
- lib/opengl/wrapper/core/3_1/GL_ARB_copy_buffer.rb
|
105
|
+
- lib/opengl/wrapper/core/3_1/GL_ARB_uniform_buffer_object.rb
|
106
|
+
- lib/opengl/wrapper/core/3_1/GL_VERSION_3_1.rb
|
107
|
+
- lib/opengl/wrapper/core/3_2/GL_ARB_draw_elements_base_vertex.rb
|
108
|
+
- lib/opengl/wrapper/core/3_2/GL_ARB_provoking_vertex.rb
|
109
|
+
- lib/opengl/wrapper/core/3_2/GL_ARB_sync.rb
|
110
|
+
- lib/opengl/wrapper/core/3_2/GL_ARB_texture_multisample.rb
|
111
|
+
- lib/opengl/wrapper/core/3_2/GL_VERSION_3_2.rb
|
112
|
+
- lib/opengl/wrapper/core/3_3/GL_ARB_blend_func_extended.rb
|
113
|
+
- lib/opengl/wrapper/core/3_3/GL_ARB_sampler_objects.rb
|
114
|
+
- lib/opengl/wrapper/core/3_3/GL_ARB_timer_query.rb
|
115
|
+
- lib/opengl/wrapper/core/3_3/GL_ARB_vertex_type_2_10_10_10_rev.rb
|
116
|
+
- lib/opengl/wrapper/core/3_3/GL_VERSION_3_3.rb
|
117
|
+
- lib/opengl/wrapper/core/4_0/GL_ARB_draw_indirect.rb
|
118
|
+
- lib/opengl/wrapper/core/4_0/GL_ARB_gpu_shader_fp64.rb
|
119
|
+
- lib/opengl/wrapper/core/4_0/GL_ARB_shader_subroutine.rb
|
120
|
+
- lib/opengl/wrapper/core/4_0/GL_ARB_tessellation_shader.rb
|
121
|
+
- lib/opengl/wrapper/core/4_0/GL_ARB_transform_feedback2.rb
|
122
|
+
- lib/opengl/wrapper/core/4_0/GL_ARB_transform_feedback3.rb
|
123
|
+
- lib/opengl/wrapper/core/4_0/GL_VERSION_4_0.rb
|
124
|
+
- lib/opengl/wrapper/core/4_1/GL_ARB_ES2_compatibility.rb
|
125
|
+
- lib/opengl/wrapper/core/4_1/GL_ARB_get_program_binary.rb
|
126
|
+
- lib/opengl/wrapper/core/4_1/GL_ARB_separate_shader_objects.rb
|
127
|
+
- lib/opengl/wrapper/core/4_1/GL_ARB_vertex_attrib_64bit.rb
|
128
|
+
- lib/opengl/wrapper/core/4_1/GL_ARB_viewport_array.rb
|
129
|
+
- lib/opengl/wrapper/core/4_1/GL_VERSION_4_1.rb
|
130
|
+
- lib/opengl/wrapper/core/4_2/GL_ARB_base_instance.rb
|
131
|
+
- lib/opengl/wrapper/core/4_2/GL_ARB_internalformat_query.rb
|
132
|
+
- lib/opengl/wrapper/core/4_2/GL_ARB_shader_atomic_counters.rb
|
133
|
+
- lib/opengl/wrapper/core/4_2/GL_ARB_shader_image_load_store.rb
|
134
|
+
- lib/opengl/wrapper/core/4_2/GL_ARB_texture_storage.rb
|
135
|
+
- lib/opengl/wrapper/core/4_2/GL_ARB_transform_feedback_instanced.rb
|
136
|
+
- lib/opengl/wrapper/core/4_2/GL_VERSION_4_2.rb
|
137
|
+
- lib/opengl/raw/core/2_x/GL_VERSION_1_0.yml
|
138
|
+
- lib/opengl/raw/core/2_x/GL_VERSION_1_1.yml
|
139
|
+
- lib/opengl/raw/core/2_x/GL_VERSION_1_2.yml
|
140
|
+
- lib/opengl/raw/core/2_x/GL_VERSION_1_3.yml
|
141
|
+
- lib/opengl/raw/core/2_x/GL_VERSION_1_4.yml
|
142
|
+
- lib/opengl/raw/core/2_x/GL_VERSION_1_5.yml
|
143
|
+
- lib/opengl/raw/core/2_x/GL_VERSION_2_0.yml
|
144
|
+
- lib/opengl/raw/core/2_x/GL_VERSION_2_1.yml
|
145
|
+
- lib/opengl/raw/core/3_0/GL_ARB_framebuffer_object.yml
|
146
|
+
- lib/opengl/raw/core/3_0/GL_ARB_map_buffer_range.yml
|
147
|
+
- lib/opengl/raw/core/3_0/GL_ARB_vertex_array_object.yml
|
148
|
+
- lib/opengl/raw/core/3_0/GL_VERSION_3_0.yml
|
149
|
+
- lib/opengl/raw/core/3_1/GL_ARB_copy_buffer.yml
|
150
|
+
- lib/opengl/raw/core/3_1/GL_ARB_uniform_buffer_object.yml
|
151
|
+
- lib/opengl/raw/core/3_1/GL_VERSION_3_1.yml
|
152
|
+
- lib/opengl/raw/core/3_2/GL_ARB_draw_elements_base_vertex.yml
|
153
|
+
- lib/opengl/raw/core/3_2/GL_ARB_provoking_vertex.yml
|
154
|
+
- lib/opengl/raw/core/3_2/GL_ARB_sync.yml
|
155
|
+
- lib/opengl/raw/core/3_2/GL_ARB_texture_multisample.yml
|
156
|
+
- lib/opengl/raw/core/3_2/GL_VERSION_3_2.yml
|
157
|
+
- lib/opengl/raw/core/3_3/GL_ARB_blend_func_extended.yml
|
158
|
+
- lib/opengl/raw/core/3_3/GL_ARB_sampler_objects.yml
|
159
|
+
- lib/opengl/raw/core/3_3/GL_ARB_timer_query.yml
|
160
|
+
- lib/opengl/raw/core/3_3/GL_ARB_vertex_type_2_10_10_10_rev.yml
|
161
|
+
- lib/opengl/raw/core/3_3/GL_VERSION_3_3.yml
|
162
|
+
- lib/opengl/raw/core/4_0/GL_ARB_draw_indirect.yml
|
163
|
+
- lib/opengl/raw/core/4_0/GL_ARB_gpu_shader_fp64.yml
|
164
|
+
- lib/opengl/raw/core/4_0/GL_ARB_shader_subroutine.yml
|
165
|
+
- lib/opengl/raw/core/4_0/GL_ARB_tessellation_shader.yml
|
166
|
+
- lib/opengl/raw/core/4_0/GL_ARB_transform_feedback2.yml
|
167
|
+
- lib/opengl/raw/core/4_0/GL_ARB_transform_feedback3.yml
|
168
|
+
- lib/opengl/raw/core/4_0/GL_VERSION_4_0.yml
|
169
|
+
- lib/opengl/raw/core/4_1/GL_ARB_ES2_compatibility.yml
|
170
|
+
- lib/opengl/raw/core/4_1/GL_ARB_get_program_binary.yml
|
171
|
+
- lib/opengl/raw/core/4_1/GL_ARB_separate_shader_objects.yml
|
172
|
+
- lib/opengl/raw/core/4_1/GL_ARB_vertex_attrib_64bit.yml
|
173
|
+
- lib/opengl/raw/core/4_1/GL_ARB_viewport_array.yml
|
174
|
+
- lib/opengl/raw/core/4_1/GL_VERSION_4_1.yml
|
175
|
+
- lib/opengl/raw/core/4_2/GL_ARB_base_instance.yml
|
176
|
+
- lib/opengl/raw/core/4_2/GL_ARB_internalformat_query.yml
|
177
|
+
- lib/opengl/raw/core/4_2/GL_ARB_shader_atomic_counters.yml
|
178
|
+
- lib/opengl/raw/core/4_2/GL_ARB_shader_image_load_store.yml
|
179
|
+
- lib/opengl/raw/core/4_2/GL_ARB_texture_storage.yml
|
180
|
+
- lib/opengl/raw/core/4_2/GL_ARB_transform_feedback_instanced.yml
|
181
|
+
- lib/opengl/raw/core/4_2/GL_VERSION_4_2.yml
|
182
|
+
- lib/opengl/constants/ext/GL_EXT_texture_compression_s3tc.yml
|
183
|
+
- lib/opengl/constants/ext/GL_EXT_texture_filter_anisotropic.yml
|
184
|
+
- lib/opengl/constants/ext/GL_EXT_texture_sRGB.yml
|
72
185
|
- lib/opengl/constants/core/2_x/GL_VERSION_1_1.yml
|
73
186
|
- lib/opengl/constants/core/2_x/GL_VERSION_1_2.yml
|
74
187
|
- lib/opengl/constants/core/2_x/GL_VERSION_1_3.yml
|
@@ -135,119 +248,8 @@ files:
|
|
135
248
|
- lib/opengl/constants/core/4_3/GL_ARB_vertex_attrib_binding.yml
|
136
249
|
- lib/opengl/constants/core/4_3/GL_KHR_debug.yml
|
137
250
|
- lib/opengl/constants/core/4_3/GL_VERSION_4_3.yml
|
138
|
-
- lib/
|
139
|
-
- lib/
|
140
|
-
- lib/opengl/constants/ext/GL_EXT_texture_sRGB.yml
|
141
|
-
- lib/opengl/constants.rb
|
142
|
-
- lib/opengl/debugging.rb
|
143
|
-
- lib/opengl/gl.rb
|
144
|
-
- lib/opengl/platform/base.rb
|
145
|
-
- lib/opengl/platform/darwin.rb
|
146
|
-
- lib/opengl/platform/linux.rb
|
147
|
-
- lib/opengl/platform/windows.rb
|
148
|
-
- lib/opengl/platform.rb
|
149
|
-
- lib/opengl/raw/core/2_x/GL_VERSION_1_0.yml
|
150
|
-
- lib/opengl/raw/core/2_x/GL_VERSION_1_1.yml
|
151
|
-
- lib/opengl/raw/core/2_x/GL_VERSION_1_2.yml
|
152
|
-
- lib/opengl/raw/core/2_x/GL_VERSION_1_3.yml
|
153
|
-
- lib/opengl/raw/core/2_x/GL_VERSION_1_4.yml
|
154
|
-
- lib/opengl/raw/core/2_x/GL_VERSION_1_5.yml
|
155
|
-
- lib/opengl/raw/core/2_x/GL_VERSION_2_0.yml
|
156
|
-
- lib/opengl/raw/core/2_x/GL_VERSION_2_1.yml
|
157
|
-
- lib/opengl/raw/core/3_0/GL_ARB_framebuffer_object.yml
|
158
|
-
- lib/opengl/raw/core/3_0/GL_ARB_map_buffer_range.yml
|
159
|
-
- lib/opengl/raw/core/3_0/GL_ARB_vertex_array_object.yml
|
160
|
-
- lib/opengl/raw/core/3_0/GL_VERSION_3_0.yml
|
161
|
-
- lib/opengl/raw/core/3_1/GL_ARB_copy_buffer.yml
|
162
|
-
- lib/opengl/raw/core/3_1/GL_ARB_uniform_buffer_object.yml
|
163
|
-
- lib/opengl/raw/core/3_1/GL_VERSION_3_1.yml
|
164
|
-
- lib/opengl/raw/core/3_2/GL_ARB_draw_elements_base_vertex.yml
|
165
|
-
- lib/opengl/raw/core/3_2/GL_ARB_provoking_vertex.yml
|
166
|
-
- lib/opengl/raw/core/3_2/GL_ARB_sync.yml
|
167
|
-
- lib/opengl/raw/core/3_2/GL_ARB_texture_multisample.yml
|
168
|
-
- lib/opengl/raw/core/3_2/GL_VERSION_3_2.yml
|
169
|
-
- lib/opengl/raw/core/3_3/GL_ARB_blend_func_extended.yml
|
170
|
-
- lib/opengl/raw/core/3_3/GL_ARB_sampler_objects.yml
|
171
|
-
- lib/opengl/raw/core/3_3/GL_ARB_timer_query.yml
|
172
|
-
- lib/opengl/raw/core/3_3/GL_ARB_vertex_type_2_10_10_10_rev.yml
|
173
|
-
- lib/opengl/raw/core/3_3/GL_VERSION_3_3.yml
|
174
|
-
- lib/opengl/raw/core/4_0/GL_ARB_draw_indirect.yml
|
175
|
-
- lib/opengl/raw/core/4_0/GL_ARB_gpu_shader_fp64.yml
|
176
|
-
- lib/opengl/raw/core/4_0/GL_ARB_shader_subroutine.yml
|
177
|
-
- lib/opengl/raw/core/4_0/GL_ARB_tessellation_shader.yml
|
178
|
-
- lib/opengl/raw/core/4_0/GL_ARB_transform_feedback2.yml
|
179
|
-
- lib/opengl/raw/core/4_0/GL_ARB_transform_feedback3.yml
|
180
|
-
- lib/opengl/raw/core/4_0/GL_VERSION_4_0.yml
|
181
|
-
- lib/opengl/raw/core/4_1/GL_ARB_ES2_compatibility.yml
|
182
|
-
- lib/opengl/raw/core/4_1/GL_ARB_get_program_binary.yml
|
183
|
-
- lib/opengl/raw/core/4_1/GL_ARB_separate_shader_objects.yml
|
184
|
-
- lib/opengl/raw/core/4_1/GL_ARB_vertex_attrib_64bit.yml
|
185
|
-
- lib/opengl/raw/core/4_1/GL_ARB_viewport_array.yml
|
186
|
-
- lib/opengl/raw/core/4_1/GL_VERSION_4_1.yml
|
187
|
-
- lib/opengl/raw/core/4_2/GL_ARB_base_instance.yml
|
188
|
-
- lib/opengl/raw/core/4_2/GL_ARB_internalformat_query.yml
|
189
|
-
- lib/opengl/raw/core/4_2/GL_ARB_shader_atomic_counters.yml
|
190
|
-
- lib/opengl/raw/core/4_2/GL_ARB_shader_image_load_store.yml
|
191
|
-
- lib/opengl/raw/core/4_2/GL_ARB_texture_storage.yml
|
192
|
-
- lib/opengl/raw/core/4_2/GL_ARB_transform_feedback_instanced.yml
|
193
|
-
- lib/opengl/raw/core/4_2/GL_VERSION_4_2.yml
|
194
|
-
- lib/opengl/raw.rb
|
195
|
-
- lib/opengl/type/default.yml
|
196
|
-
- lib/opengl/type/i386-linux.yml
|
197
|
-
- lib/opengl/type/i386-windows.yml
|
198
|
-
- lib/opengl/type/x86_64-darwin.yml
|
199
|
-
- lib/opengl/type/x86_64-linux.yml
|
200
|
-
- lib/opengl/type/x86_64-windows.yml
|
201
|
-
- lib/opengl/type.rb
|
202
|
-
- lib/opengl/version.rb
|
203
|
-
- lib/opengl/wrapper/base.rb
|
204
|
-
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_0.rb
|
205
|
-
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_1.rb
|
206
|
-
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_2.rb
|
207
|
-
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_3.rb
|
208
|
-
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_4.rb
|
209
|
-
- lib/opengl/wrapper/core/2_x/GL_VERSION_1_5.rb
|
210
|
-
- lib/opengl/wrapper/core/2_x/GL_VERSION_2_0.rb
|
211
|
-
- lib/opengl/wrapper/core/2_x/GL_VERSION_2_1.rb
|
212
|
-
- lib/opengl/wrapper/core/3_0/GL_ARB_framebuffer_object.rb
|
213
|
-
- lib/opengl/wrapper/core/3_0/GL_ARB_map_buffer_range.rb
|
214
|
-
- lib/opengl/wrapper/core/3_0/GL_ARB_vertex_array_object.rb
|
215
|
-
- lib/opengl/wrapper/core/3_0/GL_VERSION_3_0.rb
|
216
|
-
- lib/opengl/wrapper/core/3_1/GL_ARB_copy_buffer.rb
|
217
|
-
- lib/opengl/wrapper/core/3_1/GL_ARB_uniform_buffer_object.rb
|
218
|
-
- lib/opengl/wrapper/core/3_1/GL_VERSION_3_1.rb
|
219
|
-
- lib/opengl/wrapper/core/3_2/GL_ARB_draw_elements_base_vertex.rb
|
220
|
-
- lib/opengl/wrapper/core/3_2/GL_ARB_provoking_vertex.rb
|
221
|
-
- lib/opengl/wrapper/core/3_2/GL_ARB_sync.rb
|
222
|
-
- lib/opengl/wrapper/core/3_2/GL_ARB_texture_multisample.rb
|
223
|
-
- lib/opengl/wrapper/core/3_2/GL_VERSION_3_2.rb
|
224
|
-
- lib/opengl/wrapper/core/3_3/GL_ARB_blend_func_extended.rb
|
225
|
-
- lib/opengl/wrapper/core/3_3/GL_ARB_sampler_objects.rb
|
226
|
-
- lib/opengl/wrapper/core/3_3/GL_ARB_timer_query.rb
|
227
|
-
- lib/opengl/wrapper/core/3_3/GL_ARB_vertex_type_2_10_10_10_rev.rb
|
228
|
-
- lib/opengl/wrapper/core/3_3/GL_VERSION_3_3.rb
|
229
|
-
- lib/opengl/wrapper/core/4_0/GL_ARB_draw_indirect.rb
|
230
|
-
- lib/opengl/wrapper/core/4_0/GL_ARB_gpu_shader_fp64.rb
|
231
|
-
- lib/opengl/wrapper/core/4_0/GL_ARB_shader_subroutine.rb
|
232
|
-
- lib/opengl/wrapper/core/4_0/GL_ARB_tessellation_shader.rb
|
233
|
-
- lib/opengl/wrapper/core/4_0/GL_ARB_transform_feedback2.rb
|
234
|
-
- lib/opengl/wrapper/core/4_0/GL_ARB_transform_feedback3.rb
|
235
|
-
- lib/opengl/wrapper/core/4_0/GL_VERSION_4_0.rb
|
236
|
-
- lib/opengl/wrapper/core/4_1/GL_ARB_ES2_compatibility.rb
|
237
|
-
- lib/opengl/wrapper/core/4_1/GL_ARB_get_program_binary.rb
|
238
|
-
- lib/opengl/wrapper/core/4_1/GL_ARB_separate_shader_objects.rb
|
239
|
-
- lib/opengl/wrapper/core/4_1/GL_ARB_vertex_attrib_64bit.rb
|
240
|
-
- lib/opengl/wrapper/core/4_1/GL_ARB_viewport_array.rb
|
241
|
-
- lib/opengl/wrapper/core/4_1/GL_VERSION_4_1.rb
|
242
|
-
- lib/opengl/wrapper/core/4_2/GL_ARB_base_instance.rb
|
243
|
-
- lib/opengl/wrapper/core/4_2/GL_ARB_internalformat_query.rb
|
244
|
-
- lib/opengl/wrapper/core/4_2/GL_ARB_shader_atomic_counters.rb
|
245
|
-
- lib/opengl/wrapper/core/4_2/GL_ARB_shader_image_load_store.rb
|
246
|
-
- lib/opengl/wrapper/core/4_2/GL_ARB_texture_storage.rb
|
247
|
-
- lib/opengl/wrapper/core/4_2/GL_ARB_transform_feedback_instanced.rb
|
248
|
-
- lib/opengl/wrapper/core/4_2/GL_VERSION_4_2.rb
|
249
|
-
- lib/opengl/wrapper.rb
|
250
|
-
- lib/opengl.rb
|
251
|
+
- lib/glut/i386/freeglut.dll.gitkeep
|
252
|
+
- lib/glut/x86_64/freeglut.dll.gitkeep
|
251
253
|
- README.md
|
252
254
|
homepage: https://github.com/davll/ruby-opengl
|
253
255
|
licenses: []
|
@@ -256,17 +258,17 @@ rdoc_options: []
|
|
256
258
|
require_paths:
|
257
259
|
- lib
|
258
260
|
required_ruby_version: !ruby/object:Gem::Requirement
|
259
|
-
none: false
|
260
261
|
requirements:
|
261
262
|
- - ! '>='
|
262
263
|
- !ruby/object:Gem::Version
|
263
264
|
version: '1.9'
|
264
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
265
265
|
none: false
|
266
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
266
267
|
requirements:
|
267
268
|
- - ! '>'
|
268
269
|
- !ruby/object:Gem::Version
|
269
270
|
version: 1.3.1
|
271
|
+
none: false
|
270
272
|
requirements: []
|
271
273
|
rubyforge_project:
|
272
274
|
rubygems_version: 1.8.24
|
@@ -274,4 +276,3 @@ signing_key:
|
|
274
276
|
specification_version: 3
|
275
277
|
summary: OpenGL
|
276
278
|
test_files: []
|
277
|
-
has_rdoc:
|