rays 0.1.6 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (113) hide show
  1. checksums.yaml +7 -0
  2. data/.doc/ext/rays/bitmap.cpp +70 -233
  3. data/.doc/ext/rays/bounds.cpp +339 -57
  4. data/.doc/ext/rays/color.cpp +58 -48
  5. data/.doc/ext/rays/color_space.cpp +174 -0
  6. data/.doc/ext/rays/font.cpp +31 -53
  7. data/.doc/ext/rays/image.cpp +64 -67
  8. data/.doc/ext/rays/matrix.cpp +22 -50
  9. data/.doc/ext/rays/native.cpp +9 -2
  10. data/.doc/ext/rays/painter.cpp +276 -259
  11. data/.doc/ext/rays/point.cpp +186 -52
  12. data/.doc/ext/rays/rays.cpp +25 -20
  13. data/.doc/ext/rays/shader.cpp +61 -0
  14. data/.doc/ext/rays/texture.cpp +47 -59
  15. data/{README → README.md} +0 -0
  16. data/Rakefile +6 -5
  17. data/VERSION +1 -1
  18. data/ext/rays/bitmap.cpp +88 -248
  19. data/ext/rays/bounds.cpp +437 -141
  20. data/ext/rays/color.cpp +79 -69
  21. data/ext/rays/color_space.cpp +185 -0
  22. data/ext/rays/extconf.rb +14 -63
  23. data/ext/rays/font.cpp +44 -65
  24. data/ext/rays/image.cpp +82 -81
  25. data/ext/rays/matrix.cpp +32 -60
  26. data/ext/rays/native.cpp +9 -2
  27. data/ext/rays/painter.cpp +345 -321
  28. data/ext/rays/point.cpp +212 -69
  29. data/ext/rays/rays.cpp +29 -23
  30. data/ext/rays/shader.cpp +63 -0
  31. data/ext/rays/texture.cpp +64 -74
  32. data/include/rays/bitmap.h +21 -12
  33. data/include/rays/bounds.h +67 -9
  34. data/include/rays/color.h +23 -7
  35. data/include/rays/{colorspace.h → color_space.h} +6 -3
  36. data/include/rays/exception.h +17 -11
  37. data/include/rays/font.h +4 -3
  38. data/include/rays/image.h +11 -6
  39. data/include/rays/matrix.h +15 -12
  40. data/include/rays/opengl.h +54 -1
  41. data/include/rays/painter.h +98 -108
  42. data/include/rays/point.h +45 -5
  43. data/include/rays/rays.h +2 -2
  44. data/include/rays/ruby/bitmap.h +2 -16
  45. data/include/rays/ruby/bounds.h +4 -16
  46. data/include/rays/ruby/color.h +3 -16
  47. data/include/rays/ruby/color_space.h +27 -0
  48. data/include/rays/ruby/font.h +2 -16
  49. data/include/rays/ruby/image.h +2 -16
  50. data/include/rays/ruby/matrix.h +2 -16
  51. data/include/rays/ruby/painter.h +2 -16
  52. data/include/rays/ruby/point.h +3 -16
  53. data/include/rays/ruby/shader.h +27 -0
  54. data/include/rays/ruby/texture.h +2 -16
  55. data/include/rays/ruby.h +1 -0
  56. data/include/rays/shader.h +48 -0
  57. data/include/rays/texture.h +13 -2
  58. data/include/rays.h +2 -1
  59. data/lib/rays/bitmap.rb +20 -11
  60. data/lib/rays/bounds.rb +29 -68
  61. data/lib/rays/color.rb +39 -0
  62. data/lib/rays/color_space.rb +33 -0
  63. data/lib/rays/font.rb +29 -0
  64. data/lib/rays/image.rb +22 -0
  65. data/lib/rays/module.rb +11 -7
  66. data/lib/rays/painter.rb +103 -40
  67. data/lib/rays/point.rb +19 -36
  68. data/lib/rays/shader.rb +13 -0
  69. data/lib/rays/texture.rb +9 -0
  70. data/lib/rays.rb +4 -0
  71. data/rays.gemspec +3 -4
  72. data/src/bounds.cpp +272 -63
  73. data/src/color.cpp +168 -21
  74. data/src/{colorspace.cpp → color_space.cpp} +38 -1
  75. data/src/exception.cpp +24 -15
  76. data/src/frame_buffer.cpp +275 -0
  77. data/src/frame_buffer.h +79 -0
  78. data/src/image.cpp +80 -36
  79. data/src/ios/bitmap.mm +340 -0
  80. data/src/ios/font.mm +206 -0
  81. data/src/{cocoa → ios}/helper.h +2 -2
  82. data/src/{cocoa → ios}/helper.mm +0 -0
  83. data/src/ios/opengl.mm +21 -0
  84. data/src/ios/program.cpp +122 -0
  85. data/src/{cocoa → ios}/rays.mm +8 -7
  86. data/src/matrix.cpp +10 -22
  87. data/src/opengl.cpp +64 -0
  88. data/src/{cocoa → osx}/bitmap.mm +121 -70
  89. data/src/{cocoa → osx}/font.mm +32 -24
  90. data/src/osx/helper.h +26 -0
  91. data/src/osx/helper.mm +25 -0
  92. data/src/osx/opengl.mm +103 -0
  93. data/src/osx/rays.mm +43 -0
  94. data/src/painter.cpp +596 -422
  95. data/src/point.cpp +154 -11
  96. data/src/program.cpp +513 -0
  97. data/src/program.h +73 -0
  98. data/src/render_buffer.cpp +120 -0
  99. data/src/render_buffer.h +47 -0
  100. data/src/shader.cpp +117 -0
  101. data/src/texture.cpp +104 -134
  102. data/test/helper.rb +10 -3
  103. data/test/test_bitmap.rb +18 -0
  104. data/test/test_bounds.rb +81 -35
  105. data/test/test_color.rb +29 -2
  106. data/test/test_image.rb +63 -0
  107. data/test/test_painter.rb +120 -0
  108. data/test/test_point.rb +30 -9
  109. data/test/test_shader.rb +37 -0
  110. data/test/test_texture.rb +18 -0
  111. metadata +75 -58
  112. data/.gitignore +0 -14
  113. data/ChangeLog +0 -8
data/test/test_image.rb CHANGED
@@ -6,4 +6,67 @@ require_relative 'helper'
6
6
 
7
7
  class TestImage < Test::Unit::TestCase
8
8
 
9
+ W = 10
10
+ H = 10
11
+
12
+ def img (w = W, h = H, *args)
13
+ Rays::Image.new w, h, *args
14
+ end
15
+
16
+ def rgb (r = 0, g = 0, b = 0, a = 0)
17
+ Rays::Color.new r, g, b, a
18
+ end
19
+
20
+ def bounds (*args)
21
+ Rays::Bounds.new *args
22
+ end
23
+
24
+ def test_initialize ()
25
+ assert_equal W, img.width
26
+ assert_equal H, img.height
27
+ end
28
+
29
+ def test_bitmap ()
30
+ assert_equal W, img.bitmap.width
31
+ assert_equal H, img.bitmap.height
32
+ end
33
+
34
+ def test_texture ()
35
+ assert_equal W, img.texture.width
36
+ assert_equal H, img.texture.height
37
+ end
38
+
39
+ def test_painter ()
40
+ pa = img.painter
41
+ assert_equal rgb(0, 0, 0, 0), pa.background
42
+ assert_equal rgb(1, 1, 1, 1), pa.fill
43
+ assert_equal rgb(1, 1, 1, 0), pa.stroke
44
+ assert_equal bounds(0, 0, -1, -1), pa.clip
45
+ assert_equal Rays::Font.new, pa.font
46
+ end
47
+
48
+ def test_paint ()
49
+ def paint (&block)
50
+ Rays::Image.new(10, 10).paint &block
51
+ end
52
+ def fill (&block)
53
+ paint {|p| p.fill 1, 0, 0; p.stroke nil; block.call p}
54
+ end
55
+ def stroke (&block)
56
+ paint {|p| p.fill nil; p.stroke 1, 0, 0; block.call p}
57
+ end
58
+ def drawn (&block)
59
+ fill(&block).bitmap.to_a.reject {|o| o.transparent?}.uniq.size > 0
60
+ end
61
+
62
+ assert_equal rgb(0, 0, 0, 0), fill {|p| p.rect 1, 1, 8, 8}[0, 0]
63
+ assert_equal rgb(1, 0, 0, 1), fill {|p| p.rect 1, 1, 8, 8}[1, 1]
64
+ assert_equal rgb(1, 0, 0, 1), stroke {|p| p.line 0, 0, 1, 1}[0, 0]
65
+
66
+ assert drawn {|p| p.text "a"}
67
+ end
68
+
69
+ def test_dirty ()
70
+ end
71
+
9
72
  end# TestImage
data/test/test_painter.rb CHANGED
@@ -6,4 +6,124 @@ require_relative 'helper'
6
6
 
7
7
  class TestPainter < Test::Unit::TestCase
8
8
 
9
+ def painter ()
10
+ Rays::Painter.new
11
+ end
12
+
13
+ def font (name = nil, size = nil)
14
+ Rays::Font.new name, size
15
+ end
16
+
17
+ def rgb (*args)
18
+ Rays::Color.new *args
19
+ end
20
+
21
+ def test_background_accessor ()
22
+ pa = painter
23
+ pa.background = 1
24
+ assert_equal rgb(1, 1, 1, 1), pa.background
25
+ pa.background = 0
26
+ assert_equal rgb(0, 0, 0, 1), pa.background
27
+ pa.background 1
28
+ assert_equal rgb(1, 1, 1, 1), pa.background
29
+ assert_equal rgb(1, 1, 1, 1), pa.background(0) {|_|
30
+ assert_equal rgb(0, 0, 0, 1), pa.background
31
+ }
32
+ assert_equal rgb(1, 1, 1, 1), pa.background
33
+ end
34
+
35
+ def test_fill_accessor ()
36
+ pa = painter
37
+ pa.fill = 1
38
+ assert_equal rgb(1, 1, 1, 1), pa.fill
39
+ pa.fill = 0
40
+ assert_equal rgb(0, 0, 0, 1), pa.fill
41
+ pa.fill 1
42
+ assert_equal rgb(1, 1, 1, 1), pa.fill
43
+ assert_equal rgb(1, 1, 1, 1), pa.fill(0) {|_|
44
+ assert_equal rgb(0, 0, 0, 1), pa.fill
45
+ }
46
+ assert_equal rgb(1, 1, 1, 1), pa.fill
47
+ end
48
+
49
+ def test_stroke_accessor ()
50
+ pa = painter
51
+ pa.stroke = 1
52
+ assert_equal rgb(1, 1, 1, 1), pa.stroke
53
+ pa.stroke = 0
54
+ assert_equal rgb(0, 0, 0, 1), pa.stroke
55
+ pa.stroke 1
56
+ assert_equal rgb(1, 1, 1, 1), pa.stroke
57
+ assert_equal rgb(1, 1, 1, 1), pa.stroke(0) {|_|
58
+ assert_equal rgb(0, 0, 0, 1), pa.stroke
59
+ }
60
+ assert_equal rgb(1, 1, 1, 1), pa.stroke
61
+ end
62
+
63
+ def test_clip_accessor ()
64
+ pa = painter
65
+ pa.clip = [1, 2, 3, 4]
66
+ assert_equal [1, 2, 3, 4], pa.clip.to_a
67
+ pa.clip = [5, 6, 7, 8]
68
+ assert_equal [5, 6, 7, 8], pa.clip.to_a
69
+ pa.clip 1, 2, 3, 4
70
+ assert_equal [1, 2, 3, 4], pa.clip.to_a
71
+ assert_equal [1, 2, 3, 4], pa.clip(5, 6, 7, 8) {|_|
72
+ assert_equal [5, 6, 7, 8], pa.clip.to_a
73
+ }.to_a
74
+ assert_equal [1, 2, 3, 4], pa.clip.to_a
75
+ end
76
+
77
+ def test_font_accessor ()
78
+ pa = painter
79
+ f10, f20 = font(nil, 10), font(nil, 20)
80
+ pa.font = f10
81
+ assert_equal f10, pa.font
82
+ pa.font = f20
83
+ assert_equal f20, pa.font
84
+ pa.font f10
85
+ assert_equal f10, pa.font
86
+ assert_equal f10, pa.font(f20) {|_|
87
+ assert_equal f20, pa.font
88
+ }
89
+ assert_equal f10, pa.font
90
+ end
91
+
92
+ def test_font_name_size ()
93
+ pa = painter
94
+ pa.font "Menlo", 10
95
+ assert_equal "Menlo Regular", pa.font.name
96
+ assert_equal 10, pa.font.size
97
+ pa.font nil
98
+ assert_not_equal "Menlo Regular", pa.font.name
99
+ pa.font nil, 20
100
+ assert_equal 20, pa.font.size
101
+ end
102
+
103
+ def test_color_accessor ()
104
+ pa = painter
105
+ f1, f2, s1, s2 = rgb(1, 0, 0), rgb(0, 1, 0), rgb(1, 0, 1), rgb(0, 1, 1)
106
+ pa.color f1, s1
107
+ assert_equal f1, pa.fill
108
+ assert_equal s1, pa.stroke
109
+ assert_equal [f1, s1], pa.color(f2, s2) {|_|
110
+ assert_equal f2, pa.fill
111
+ assert_equal s2, pa.stroke
112
+ }
113
+ assert_equal f1, pa.fill
114
+ assert_equal s1, pa.stroke
115
+ end
116
+
117
+ def test_color_by_name ()
118
+ pa = painter
119
+ pa.fill = [1, 0, 0]
120
+ assert_equal rgb(1, 0, 0), pa.fill
121
+ pa.fill = :red
122
+ assert_equal rgb(1, 0, 0), pa.fill
123
+ pa.fill = '#f00'
124
+ assert_equal rgb(1, 0, 0), pa.fill
125
+ pa.fill = '#ff0000'
126
+ assert_equal rgb(1, 0, 0), pa.fill
127
+ end
128
+
9
129
  end# TestPainter
data/test/test_point.rb CHANGED
@@ -37,9 +37,12 @@ class TestPoint < Test::Unit::TestCase
37
37
 
38
38
  def test_move_to ()
39
39
  o = point 1, 2, 3
40
- assert_equal point(4, 4, 3), o.move_to(4)
41
- assert_equal point(4, 5, 3), o.move_to(4, 5)
42
- assert_equal point(4, 5, 6), o.move_to(4, 5, 6)
40
+ assert_equal point(4, 2, 3), o.move_to( 4)
41
+ assert_equal point(4, 5, 3), o.move_to( 4, 5)
42
+ assert_equal point(1, 5, 3), o.move_to(nil, 5)
43
+ assert_equal point(4, 5, 6), o.move_to( 4, 5, 6)
44
+ assert_equal point(1, 5, 6), o.move_to(nil, 5, 6)
45
+ assert_equal point(1, 2, 6), o.move_to(nil, nil, 6)
43
46
  assert_raise(ArgumentError) {o.move_to()}
44
47
  assert_raise(ArgumentError) {o.move_to(4, 5, 6, 7)}
45
48
 
@@ -54,10 +57,13 @@ class TestPoint < Test::Unit::TestCase
54
57
 
55
58
  def test_move_by ()
56
59
  o = point 1, 2, 3
57
- assert_equal point( 5, 6, 3), o.move_by(4)
58
- assert_equal point( 5, 7, 3), o.move_by(4, 5)
59
- assert_equal point( 5, 7, 9), o.move_by(4, 5, 6)
60
- assert_equal point(-3, -2, 3), o.move_by(-4)
60
+ assert_equal point( 5, 2, 3), o.move_by( 4)
61
+ assert_equal point( 5, 7, 3), o.move_by( 4, 5)
62
+ assert_equal point( 1, 7, 3), o.move_by(nil, 5)
63
+ assert_equal point( 5, 7, 9), o.move_by( 4, 5, 6)
64
+ assert_equal point( 1, 7, 9), o.move_by(nil, 5, 6)
65
+ assert_equal point( 1, 2, 9), o.move_by(nil, nil, 6)
66
+ assert_equal point(-3, 2, 3), o.move_by(-4)
61
67
  assert_equal point(-3, -3, 3), o.move_by(-4, -5)
62
68
  assert_equal point(-3, -3, -3), o.move_by(-4, -5, -6)
63
69
  assert_raise(ArgumentError) {o.move_by()}
@@ -106,8 +112,8 @@ class TestPoint < Test::Unit::TestCase
106
112
 
107
113
  def test_compare ()
108
114
  o = point 1, 2, 3
109
- assert o == point(1, 2, 3)
110
- assert !(o != point(1, 2, 3))
115
+ assert o == point(1, 2, 3)
116
+ assert_not o != point(1, 2, 3)
111
117
 
112
118
  assert o < point(2, 2, 3)
113
119
  assert o < point(1, 3, 3)
@@ -118,4 +124,19 @@ class TestPoint < Test::Unit::TestCase
118
124
  assert o > point(1, 2, 2)
119
125
  end
120
126
 
127
+ def test_arithmetic_operations ()
128
+ assert_equal point(11, 22, 33), point(10, 20, 30) + point(1, 2, 3)
129
+ assert_equal point( 9, 18, 27), point(10, 20, 30) - point(1, 2, 3)
130
+ assert_equal point(10, 40, 90), point(10, 20, 30) * point(1, 2, 3)
131
+ assert_equal point(10, 10, 10), point(10, 20, 30) / point(1, 2, 3)
132
+ assert_equal point(11, 22, 33), point(10, 20, 30) + [1, 2, 3]
133
+ assert_equal point( 9, 18, 27), point(10, 20, 30) - [1, 2, 3]
134
+ assert_equal point(10, 40, 90), point(10, 20, 30) * [1, 2, 3]
135
+ assert_equal point(10, 10, 10), point(10, 20, 30) / [1, 2, 3]
136
+ assert_equal point(12, 22, 32), point(10, 20, 30) + 2
137
+ assert_equal point( 8, 18, 28), point(10, 20, 30) - 2
138
+ assert_equal point(20, 40, 60), point(10, 20, 30) * 2
139
+ assert_equal point( 5, 10, 15), point(10, 20, 30) / 2
140
+ end
141
+
121
142
  end# TestPoint
@@ -0,0 +1,37 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+
4
+ require_relative 'helper'
5
+
6
+
7
+ class TestShader < Test::Unit::TestCase
8
+
9
+ def sh (src)
10
+ Rays::Shader.new src
11
+ end
12
+
13
+ def img (w = 10, h = 10, &block)
14
+ Rays::Image.new w, h
15
+ end
16
+
17
+ def rgb (*args)
18
+ Rays::Color.new *args
19
+ end
20
+
21
+ def test_initialize ()
22
+ assert_raise(Rucy::NativeError) {sh "foo"}
23
+ assert_raise(ArgumentError) {sh}
24
+ assert_raise(ArgumentError) {sh nil}
25
+ assert sh("void main() {gl_FragColor = vec4(1, 0, 0, 1);}")
26
+ end
27
+
28
+ def test_fragment_shader ()
29
+ i = img.paint do
30
+ attach "void main () {gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);}"
31
+ fill 0, 1, 0, 1
32
+ rect *bounds.move_to(0, 0).to_a
33
+ end
34
+ assert_equal rgb(1, 0, 0, 1), i[0, 0]
35
+ end
36
+
37
+ end# TestShader
data/test/test_texture.rb CHANGED
@@ -6,4 +6,22 @@ require_relative 'helper'
6
6
 
7
7
  class TestTexture < Test::Unit::TestCase
8
8
 
9
+ W = 32
10
+ H = 16
11
+
12
+ def tex (w = W, h = H)
13
+ Rays::Texture.new w, h
14
+ end
15
+
16
+ def test_initialize ()
17
+ assert_equal W, tex.width
18
+ assert_equal H, tex.height
19
+ end
20
+
21
+ def test_to_bitmap ()
22
+ assert_equal Rays::Bitmap, tex.to_bitmap.class
23
+ assert_equal W, tex.to_bitmap.width
24
+ assert_equal H, tex.to_bitmap.height
25
+ end
26
+
9
27
  end# TestTexture
metadata CHANGED
@@ -1,78 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rays
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
5
- prerelease:
4
+ version: 0.1.7
6
5
  platform: ruby
7
6
  authors:
8
7
  - snori
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-05-06 00:00:00.000000000 Z
11
+ date: 2014-08-07 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rake
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: xot
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rucy
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: gemcutter
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - ">="
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0'
78
69
  description: This library helps you to develop graphics application with OpenGL.
@@ -81,27 +72,27 @@ executables: []
81
72
  extensions:
82
73
  - Rakefile
83
74
  extra_rdoc_files:
84
- - README
85
- - .doc/ext/rays/bitmap.cpp
86
- - .doc/ext/rays/bounds.cpp
87
- - .doc/ext/rays/color.cpp
88
- - .doc/ext/rays/font.cpp
89
- - .doc/ext/rays/image.cpp
90
- - .doc/ext/rays/matrix.cpp
91
- - .doc/ext/rays/native.cpp
92
- - .doc/ext/rays/painter.cpp
93
- - .doc/ext/rays/point.cpp
94
- - .doc/ext/rays/rays.cpp
95
- - .doc/ext/rays/texture.cpp
75
+ - ".doc/ext/rays/bitmap.cpp"
76
+ - ".doc/ext/rays/bounds.cpp"
77
+ - ".doc/ext/rays/color.cpp"
78
+ - ".doc/ext/rays/color_space.cpp"
79
+ - ".doc/ext/rays/font.cpp"
80
+ - ".doc/ext/rays/image.cpp"
81
+ - ".doc/ext/rays/matrix.cpp"
82
+ - ".doc/ext/rays/native.cpp"
83
+ - ".doc/ext/rays/painter.cpp"
84
+ - ".doc/ext/rays/point.cpp"
85
+ - ".doc/ext/rays/rays.cpp"
86
+ - ".doc/ext/rays/shader.cpp"
87
+ - ".doc/ext/rays/texture.cpp"
96
88
  files:
97
- - .gitignore
98
- - ChangeLog
99
- - README
89
+ - README.md
100
90
  - Rakefile
101
91
  - VERSION
102
92
  - ext/rays/bitmap.cpp
103
93
  - ext/rays/bounds.cpp
104
94
  - ext/rays/color.cpp
95
+ - ext/rays/color_space.cpp
105
96
  - ext/rays/defs.h
106
97
  - ext/rays/extconf.rb
107
98
  - ext/rays/font.cpp
@@ -111,12 +102,13 @@ files:
111
102
  - ext/rays/painter.cpp
112
103
  - ext/rays/point.cpp
113
104
  - ext/rays/rays.cpp
105
+ - ext/rays/shader.cpp
114
106
  - ext/rays/texture.cpp
115
107
  - include/rays.h
116
108
  - include/rays/bitmap.h
117
109
  - include/rays/bounds.h
118
110
  - include/rays/color.h
119
- - include/rays/colorspace.h
111
+ - include/rays/color_space.h
120
112
  - include/rays/defs.h
121
113
  - include/rays/exception.h
122
114
  - include/rays/font.h
@@ -130,39 +122,61 @@ files:
130
122
  - include/rays/ruby/bitmap.h
131
123
  - include/rays/ruby/bounds.h
132
124
  - include/rays/ruby/color.h
125
+ - include/rays/ruby/color_space.h
133
126
  - include/rays/ruby/font.h
134
127
  - include/rays/ruby/image.h
135
128
  - include/rays/ruby/matrix.h
136
129
  - include/rays/ruby/painter.h
137
130
  - include/rays/ruby/point.h
138
131
  - include/rays/ruby/rays.h
132
+ - include/rays/ruby/shader.h
139
133
  - include/rays/ruby/texture.h
134
+ - include/rays/shader.h
140
135
  - include/rays/texture.h
141
136
  - lib/rays.rb
142
137
  - lib/rays/autoinit.rb
143
138
  - lib/rays/bitmap.rb
144
139
  - lib/rays/bounds.rb
145
140
  - lib/rays/color.rb
141
+ - lib/rays/color_space.rb
146
142
  - lib/rays/ext.rb
143
+ - lib/rays/font.rb
147
144
  - lib/rays/image.rb
148
145
  - lib/rays/module.rb
149
146
  - lib/rays/painter.rb
150
147
  - lib/rays/point.rb
148
+ - lib/rays/shader.rb
151
149
  - lib/rays/texture.rb
152
150
  - rays.gemspec
153
151
  - src/bounds.cpp
154
- - src/cocoa/bitmap.mm
155
- - src/cocoa/font.mm
156
- - src/cocoa/helper.h
157
- - src/cocoa/helper.mm
158
- - src/cocoa/rays.mm
159
152
  - src/color.cpp
160
- - src/colorspace.cpp
153
+ - src/color_space.cpp
161
154
  - src/exception.cpp
155
+ - src/frame_buffer.cpp
156
+ - src/frame_buffer.h
162
157
  - src/image.cpp
158
+ - src/ios/bitmap.mm
159
+ - src/ios/font.mm
160
+ - src/ios/helper.h
161
+ - src/ios/helper.mm
162
+ - src/ios/opengl.mm
163
+ - src/ios/program.cpp
164
+ - src/ios/rays.mm
163
165
  - src/matrix.cpp
166
+ - src/opengl.cpp
167
+ - src/osx/bitmap.mm
168
+ - src/osx/font.mm
169
+ - src/osx/helper.h
170
+ - src/osx/helper.mm
171
+ - src/osx/opengl.mm
172
+ - src/osx/rays.mm
164
173
  - src/painter.cpp
165
174
  - src/point.cpp
175
+ - src/program.cpp
176
+ - src/program.h
177
+ - src/render_buffer.cpp
178
+ - src/render_buffer.h
179
+ - src/shader.cpp
166
180
  - src/texture.cpp
167
181
  - src/win32/bitmap.cpp
168
182
  - src/win32/font.cpp
@@ -178,41 +192,43 @@ files:
178
192
  - test/test_painter.rb
179
193
  - test/test_point.rb
180
194
  - test/test_rays.rb
195
+ - test/test_shader.rb
181
196
  - test/test_texture.rb
182
- - .doc/ext/rays/bitmap.cpp
183
- - .doc/ext/rays/bounds.cpp
184
- - .doc/ext/rays/color.cpp
185
- - .doc/ext/rays/font.cpp
186
- - .doc/ext/rays/image.cpp
187
- - .doc/ext/rays/matrix.cpp
188
- - .doc/ext/rays/native.cpp
189
- - .doc/ext/rays/painter.cpp
190
- - .doc/ext/rays/point.cpp
191
- - .doc/ext/rays/rays.cpp
192
- - .doc/ext/rays/texture.cpp
197
+ - ".doc/ext/rays/bitmap.cpp"
198
+ - ".doc/ext/rays/bounds.cpp"
199
+ - ".doc/ext/rays/color.cpp"
200
+ - ".doc/ext/rays/color_space.cpp"
201
+ - ".doc/ext/rays/font.cpp"
202
+ - ".doc/ext/rays/image.cpp"
203
+ - ".doc/ext/rays/matrix.cpp"
204
+ - ".doc/ext/rays/native.cpp"
205
+ - ".doc/ext/rays/painter.cpp"
206
+ - ".doc/ext/rays/point.cpp"
207
+ - ".doc/ext/rays/rays.cpp"
208
+ - ".doc/ext/rays/shader.cpp"
209
+ - ".doc/ext/rays/texture.cpp"
193
210
  homepage: http://github.com/xord/rays/wiki
194
211
  licenses: []
212
+ metadata: {}
195
213
  post_install_message:
196
214
  rdoc_options: []
197
215
  require_paths:
198
216
  - lib
199
217
  required_ruby_version: !ruby/object:Gem::Requirement
200
- none: false
201
218
  requirements:
202
- - - ! '>='
219
+ - - ">="
203
220
  - !ruby/object:Gem::Version
204
221
  version: 1.9.0
205
222
  required_rubygems_version: !ruby/object:Gem::Requirement
206
- none: false
207
223
  requirements:
208
- - - ! '>='
224
+ - - ">="
209
225
  - !ruby/object:Gem::Version
210
226
  version: '0'
211
227
  requirements: []
212
228
  rubyforge_project:
213
- rubygems_version: 1.8.24
229
+ rubygems_version: 2.0.3
214
230
  signing_key:
215
- specification_version: 3
231
+ specification_version: 4
216
232
  summary: A Drawing Engine using OpenGL.
217
233
  test_files:
218
234
  - test/helper.rb
@@ -224,4 +240,5 @@ test_files:
224
240
  - test/test_painter.rb
225
241
  - test/test_point.rb
226
242
  - test/test_rays.rb
243
+ - test/test_shader.rb
227
244
  - test/test_texture.rb
data/.gitignore DELETED
@@ -1,14 +0,0 @@
1
- *.o
2
- *.so
3
- *.bundle
4
- *.dll.a
5
- *.gem
6
- *.log
7
- *.rdoc.cpp
8
- *~
9
- lib/*.a
10
- .doc
11
- .yardoc
12
- .DS_Store
13
- Makefile
14
- depend.mf
data/ChangeLog DELETED
@@ -1,8 +0,0 @@
1
- 2011-08-28 snori <snori@xord.org>
2
-
3
- * v0.1.1
4
-
5
-
6
- 2011-06-03 snori <snori@xord.org>
7
-
8
- * delete Gemfile.