sgl 0.4.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. data/ChangeLog +254 -234
  2. data/History.txt +6 -0
  3. data/Manifest.txt +10 -0
  4. data/Rakefile +27 -7
  5. data/examples/cocoa1-basic.rb +14 -14
  6. data/examples/cocoa10-transparent.rb +26 -26
  7. data/examples/cocoa11-application.rb +13 -13
  8. data/examples/cocoa2-draw.rb +23 -23
  9. data/examples/cocoa3-affine.rb +29 -29
  10. data/examples/cocoa4-font.rb +24 -24
  11. data/examples/cocoa5-image.rb +22 -22
  12. data/examples/cocoa6-sound.rb +24 -24
  13. data/examples/cocoa7-movie.rb +40 -40
  14. data/examples/cocoa8-movieoverlay.rb +42 -42
  15. data/examples/cocoa9-streaming.rb +40 -40
  16. data/examples/opengl1-basic.rb +14 -14
  17. data/examples/opengl11-application.rb +13 -13
  18. data/examples/opengl2-draw.rb +23 -23
  19. data/examples/opengl3-affine.rb +29 -29
  20. data/examples/sample1.rb +11 -11
  21. data/examples/sample10.rb +16 -16
  22. data/examples/sample11.rb +22 -22
  23. data/examples/sample11a.rb +33 -33
  24. data/examples/sample12.rb +30 -30
  25. data/examples/sample12a.rb +35 -35
  26. data/examples/sample13.rb +116 -116
  27. data/examples/sample15.rb +24 -24
  28. data/examples/sample16.rb +31 -31
  29. data/examples/sample16a.rb +35 -35
  30. data/examples/sample6.rb +18 -18
  31. data/examples/sample7.rb +16 -16
  32. data/examples/sample9.rb +20 -20
  33. data/examples/testgl.rb +169 -169
  34. data/lib/sgl/bass.rb +46 -46
  35. data/lib/sgl/cocoa-app.rb +43 -43
  36. data/lib/sgl/cocoa-color.rb +65 -65
  37. data/lib/sgl/cocoa-draw.rb +72 -72
  38. data/lib/sgl/cocoa-event.rb +229 -229
  39. data/lib/sgl/cocoa-media.rb +144 -144
  40. data/lib/sgl/cocoa-notuse.rb +493 -493
  41. data/lib/sgl/cocoa-window.rb +203 -203
  42. data/lib/sgl/cocoa.rb +8 -8
  43. data/lib/sgl/opengl-app.rb +38 -38
  44. data/lib/sgl/opengl-color.rb +44 -44
  45. data/lib/sgl/opengl-draw.rb +260 -260
  46. data/lib/sgl/opengl-event.rb +325 -325
  47. data/lib/sgl/opengl-modules.rb +22 -22
  48. data/lib/sgl/opengl-window.rb +224 -224
  49. data/lib/sgl/opengl.rb +7 -7
  50. data/lib/sgl/sgl-button.rb +135 -135
  51. data/lib/sgl/sgl-client.rb +21 -21
  52. data/lib/sgl/sgl-color.rb +68 -82
  53. data/lib/sgl/sgl-connect.rb +9 -9
  54. data/lib/sgl/sgl-server.rb +58 -58
  55. data/lib/sgl/sgl-spring.rb +216 -216
  56. data/lib/sgl/version.rb +2 -2
  57. data/scripts/lib-txt2html.rb +130 -0
  58. data/scripts/txt2html +2 -63
  59. data/spec/sgl_spec.rb +13 -0
  60. data/spec/spec.opts +1 -0
  61. data/spec/spec_helper.rb +1 -0
  62. data/test/test_cocoa_app.rb +291 -291
  63. data/test/test_module_ruby16.rb +30 -30
  64. data/test/test_opengl_app.rb +147 -147
  65. data/test/test_opengl_basic.rb +22 -22
  66. data/test/test_opengl_fullscreen.rb +23 -23
  67. data/test/test_opengl_novice.rb +35 -35
  68. data/website/challenge1.html +91 -91
  69. data/website/challenge1.txt +3 -3
  70. data/website/challenge2.html +143 -144
  71. data/website/challenge2.txt +13 -14
  72. data/website/challenge3.html +66 -63
  73. data/website/challenge3.txt +7 -7
  74. data/website/cocoa.html +85 -88
  75. data/website/cocoa.txt +2 -4
  76. data/website/description.html +138 -138
  77. data/website/description.txt +1 -1
  78. data/website/exercise1.html +262 -264
  79. data/website/exercise1.txt +58 -53
  80. data/website/exercise2.html +241 -683
  81. data/website/exercise2.txt +11 -427
  82. data/website/exercise3.html +206 -0
  83. data/website/exercise3.txt +155 -0
  84. data/website/exercise4.html +198 -0
  85. data/website/exercise4.txt +151 -0
  86. data/website/exercise5.html +162 -0
  87. data/website/exercise5.txt +113 -0
  88. data/website/exhibition.html +84 -84
  89. data/website/howto.html +146 -134
  90. data/website/howto.txt +9 -0
  91. data/website/index.html +178 -178
  92. data/website/index.txt +20 -19
  93. data/website/sound.html +141 -141
  94. metadata +16 -3
data/examples/sample15.rb CHANGED
@@ -1,24 +1,24 @@
1
- require "sgl"
2
-
3
- def setup
4
- window 100, 100
5
- end
6
-
7
- def my_rect(x1, y1, x2, y2, outline, fill)
8
- color fill
9
- rect x1, y1, x2, y2
10
- color outline
11
- line x1, y1, x2, y1
12
- line x2, y1, x2, y2
13
- line x2, y2, x1, y2
14
- line x1, y2, x1, y1
15
- end
16
-
17
- def display
18
- mx = mouseX
19
- my = mouseY
20
- my_rect(20, 20, 40, 30, 80, 50)
21
- my_rect(60, 60, 80, 90, 90, 30)
22
- end
23
-
24
- mainloop
1
+ require "sgl"
2
+
3
+ def setup
4
+ window 100, 100
5
+ end
6
+
7
+ def my_rect(x1, y1, x2, y2, outline, fill)
8
+ color fill
9
+ rect x1, y1, x2, y2
10
+ color outline
11
+ line x1, y1, x2, y1
12
+ line x2, y1, x2, y2
13
+ line x2, y2, x1, y2
14
+ line x1, y2, x1, y1
15
+ end
16
+
17
+ def display
18
+ mx = mouseX
19
+ my = mouseY
20
+ my_rect(20, 20, 40, 30, 80, 50)
21
+ my_rect(60, 60, 80, 90, 90, 30)
22
+ end
23
+
24
+ mainloop
data/examples/sample16.rb CHANGED
@@ -1,31 +1,31 @@
1
- require "sgl"
2
-
3
- def setup
4
- window -200, -200, 200, 200
5
- background 100
6
- end
7
-
8
- def display
9
- x = mouseX
10
- y = mouseY
11
-
12
- push
13
- color 100, 0, 0
14
- translate x, y, 0
15
- rotateX x
16
- rotateY y
17
- scale 2
18
- rect -5, -5, 5, 5
19
- pop
20
-
21
- push
22
- color 100, 0, 0
23
- translate x, y, 0
24
- rotateX x
25
- rotateY y
26
- scale 2
27
- rect 5, 5, 10, 10
28
- pop
29
- end
30
-
31
- mainloop
1
+ require "sgl"
2
+
3
+ def setup
4
+ window -200, -200, 200, 200
5
+ background 100
6
+ end
7
+
8
+ def display
9
+ x = mouseX
10
+ y = mouseY
11
+
12
+ push
13
+ color 100, 0, 0
14
+ translate x, y, 0
15
+ rotateX x
16
+ rotateY y
17
+ scale 2
18
+ rect -5, -5, 5, 5
19
+ pop
20
+
21
+ push
22
+ color 100, 0, 0
23
+ translate x, y, 0
24
+ rotateX x
25
+ rotateY y
26
+ scale 2
27
+ rect 5, 5, 10, 10
28
+ pop
29
+ end
30
+
31
+ mainloop
@@ -1,35 +1,35 @@
1
- require "sgl"
2
-
3
- def setup
4
- window -200, -200, 200, 200
5
- background 100
6
- $pos = [] # ���g����̔z���p�ӂ���D
7
- end
8
-
9
- def display
10
- x = mouseX
11
- y = mouseY
12
-
13
- $pos << [x, y] # �z��Ɍ��݂̃}�E�X�̈ʒu��lj�����D
14
-
15
- $pos.each {|pos| # �z��̊e�X�̗v�f�ɂ‚���{}�̒��g�����s����D
16
- # ���̊e�X�̗v�f��pos�Ƃ����ϐ��ɓ���D
17
- x = pos[0]
18
- y = pos[1]
19
-
20
- push
21
- colorHSV 0, 100, 100, 10
22
- translate x, y, 0
23
- rotateX x
24
- rotateY y
25
- scale 20
26
- rect -5, -5, 5, 5
27
- pop
28
- }
29
-
30
- if 10 < $pos.length # �����z�񂪂��܂肷�����ꍇ�͐擪���珇�Ɏ̂Ă�D
31
- $pos.shift
32
- end
33
- end
34
-
35
- mainloop
1
+ require "sgl"
2
+
3
+ def setup
4
+ window -200, -200, 200, 200
5
+ background 100
6
+ $pos = [] # ���g����̔z���p�ӂ���D
7
+ end
8
+
9
+ def display
10
+ x = mouseX
11
+ y = mouseY
12
+
13
+ $pos << [x, y] # �z��Ɍ��݂̃}�E�X�̈ʒu��lj�����D
14
+
15
+ $pos.each {|pos| # �z��̊e�X�̗v�f�ɂ‚���{}�̒��g�����s����D
16
+ # ���̊e�X�̗v�f��pos�Ƃ����ϐ��ɓ���D
17
+ x = pos[0]
18
+ y = pos[1]
19
+
20
+ push
21
+ colorHSV 0, 100, 100, 10
22
+ translate x, y, 0
23
+ rotateX x
24
+ rotateY y
25
+ scale 20
26
+ rect -5, -5, 5, 5
27
+ pop
28
+ }
29
+
30
+ if 10 < $pos.length # �����z�񂪂��܂肷�����ꍇ�͐擪���珇�Ɏ̂Ă�D
31
+ $pos.shift
32
+ end
33
+ end
34
+
35
+ mainloop
data/examples/sample6.rb CHANGED
@@ -1,18 +1,18 @@
1
- require "sgl"
2
-
3
- def setup
4
- window 200, 200
5
- end
6
-
7
- def display
8
- for a in 0..200
9
- color a/2, 50, 50
10
- if a < 100
11
- line a, 50, a, 100
12
- else
13
- line a, 100, a, 150
14
- end
15
- end
16
- end
17
-
18
- mainloop
1
+ require "sgl"
2
+
3
+ def setup
4
+ window 200, 200
5
+ end
6
+
7
+ def display
8
+ for a in 0..200
9
+ color a/2, 50, 50
10
+ if a < 100
11
+ line a, 50, a, 100
12
+ else
13
+ line a, 100, a, 150
14
+ end
15
+ end
16
+ end
17
+
18
+ mainloop
data/examples/sample7.rb CHANGED
@@ -1,16 +1,16 @@
1
- require "sgl"
2
-
3
- def setup
4
- window 200, 200
5
- end
6
-
7
- def display
8
- for a in 0..10
9
- for b in 0..10
10
- color a*10, b*10, b*10
11
- rect a*20+5, b*20+5, a*20+15, b*20+15
12
- end
13
- end
14
- end
15
-
16
- mainloop
1
+ require "sgl"
2
+
3
+ def setup
4
+ window 200, 200
5
+ end
6
+
7
+ def display
8
+ for a in 0..10
9
+ for b in 0..10
10
+ color a*10, b*10, b*10
11
+ rect a*20+5, b*20+5, a*20+15, b*20+15
12
+ end
13
+ end
14
+ end
15
+
16
+ mainloop
data/examples/sample9.rb CHANGED
@@ -1,20 +1,20 @@
1
- require "sgl"
2
-
3
- def setup
4
- window -200, -200, 200, 200
5
- end
6
-
7
- def display
8
- beginObj(POLYGON)
9
- color 100, 0, 0, 0
10
- vertex 60, 90
11
- color 0, 100, 0, 100
12
- vertex -120, 60
13
- color 0, 0, 100, 100
14
- vertex -90, -90
15
- color 100, 100, 0, 0
16
- vertex 120, -90
17
- endObj
18
- end
19
-
20
- mainloop
1
+ require "sgl"
2
+
3
+ def setup
4
+ window -200, -200, 200, 200
5
+ end
6
+
7
+ def display
8
+ beginObj(POLYGON)
9
+ color 100, 0, 0, 0
10
+ vertex 60, 90
11
+ color 0, 100, 0, 100
12
+ vertex -120, 60
13
+ color 0, 0, 100, 100
14
+ vertex -90, -90
15
+ color 100, 100, 0, 0
16
+ vertex 120, -90
17
+ endObj
18
+ end
19
+
20
+ mainloop
data/examples/testgl.rb CHANGED
@@ -1,169 +1,169 @@
1
- # You can use this test program to run Ruby/SDL, Ruby/OpenGL themselves.
2
- # I created sgl by extending this small program.
3
-
4
- require 'sdl'
5
- require 'opengl'
6
-
7
- SDL.init SDL::INIT_VIDEO
8
- SDL.setGLAttr SDL::GL_RED_SIZE,5
9
- SDL.setGLAttr SDL::GL_GREEN_SIZE,5
10
- SDL.setGLAttr SDL::GL_BLUE_SIZE,5
11
- SDL.setGLAttr SDL::GL_DEPTH_SIZE,16
12
- SDL.setGLAttr SDL::GL_DOUBLEBUFFER,1
13
- SDL.setVideoMode 640,400,16,SDL::OPENGL
14
- GL::Viewport( 0, 0, 640, 400 );
15
- GL::MatrixMode( GL::PROJECTION );
16
- GL::LoadIdentity( );
17
-
18
- GL::MatrixMode( GL::MODELVIEW );
19
- GL::LoadIdentity( );
20
-
21
- GL::Enable(GL::DEPTH_TEST);
22
-
23
- GL::DepthFunc(GL::LESS);
24
-
25
- GL::ShadeModel(GL::SMOOTH);
26
-
27
- event=SDL::Event.new
28
- shadedCube=true
29
-
30
- color =
31
- [[ 1.0, 1.0, 0.0],
32
- [ 1.0, 0.0, 0.0],
33
- [ 0.0, 0.0, 0.0],
34
- [ 0.0, 1.0, 0.0],
35
- [ 0.0, 1.0, 1.0],
36
- [ 1.0, 1.0, 1.0],
37
- [ 1.0, 0.0, 1.0],
38
- [ 0.0, 0.0, 1.0]]
39
-
40
- cube =
41
- [[ 0.5, 0.5, -0.5],
42
- [ 0.5, -0.5, -0.5],
43
- [-0.5, -0.5, -0.5],
44
- [-0.5, 0.5, -0.5],
45
- [-0.5, 0.5, 0.5],
46
- [ 0.5, 0.5, 0.5],
47
- [ 0.5, -0.5, 0.5],
48
- [-0.5, -0.5, 0.5]]
49
-
50
-
51
- loop do
52
-
53
- if event.poll != 0 then
54
- if event.type==SDL::Event::QUIT then
55
- break
56
- end
57
- if event.type==SDL::Event::KEYDOWN then
58
- exit
59
- end
60
- end
61
-
62
- GL.ClearColor(0.0, 0.0, 0.0, 1.0);
63
- GL.Clear(GL::COLOR_BUFFER_BIT|GL::DEPTH_BUFFER_BIT);
64
-
65
-
66
- GL::Begin(GL::QUADS)
67
-
68
- if shadedCube then
69
- GL::Color(color[0]);
70
- GL::Vertex(cube[0]);
71
- GL::Color(color[1]);
72
- GL::Vertex(cube[1]);
73
- GL::Color(color[2]);
74
- GL::Vertex(cube[2]);
75
- GL::Color(color[3]);
76
- GL::Vertex(cube[3]);
77
-
78
- GL::Color(color[3]);
79
- GL::Vertex(cube[3]);
80
- GL::Color(color[4]);
81
- GL::Vertex(cube[4]);
82
- GL::Color(color[7]);
83
- GL::Vertex(cube[7]);
84
- GL::Color(color[2]);
85
- GL::Vertex(cube[2]);
86
-
87
- GL::Color(color[0]);
88
- GL::Vertex(cube[0]);
89
- GL::Color(color[5]);
90
- GL::Vertex(cube[5]);
91
- GL::Color(color[6]);
92
- GL::Vertex(cube[6]);
93
- GL::Color(color[1]);
94
- GL::Vertex(cube[1]);
95
-
96
- GL::Color(color[5]);
97
- GL::Vertex(cube[5]);
98
- GL::Color(color[4]);
99
- GL::Vertex(cube[4]);
100
- GL::Color(color[7]);
101
- GL::Vertex(cube[7]);
102
- GL::Color(color[6]);
103
- GL::Vertex(cube[6]);
104
-
105
- GL::Color(color[5]);
106
- GL::Vertex(cube[5]);
107
- GL::Color(color[0]);
108
- GL::Vertex(cube[0]);
109
- GL::Color(color[3]);
110
- GL::Vertex(cube[3]);
111
- GL::Color(color[4]);
112
- GL::Vertex(cube[4]);
113
-
114
- GL::Color(color[6]);
115
- GL::Vertex(cube[6]);
116
- GL::Color(color[1]);
117
- GL::Vertex(cube[1]);
118
- GL::Color(color[2]);
119
- GL::Vertex(cube[2]);
120
- GL::Color(color[7]);
121
- GL::Vertex(cube[7]);
122
-
123
- else
124
- GL::Color(1.0, 0.0, 0.0);
125
- GL::Vertex(cube[0]);
126
- GL::Vertex(cube[1]);
127
- GL::Vertex(cube[2]);
128
- GL::Vertex(cube[3]);
129
-
130
- GL::Color(0.0, 1.0, 0.0);
131
- GL::Vertex(cube[3]);
132
- GL::Vertex(cube[4]);
133
- GL::Vertex(cube[7]);
134
- GL::Vertex(cube[2]);
135
-
136
- GL::Color(0.0, 0.0, 1.0);
137
- GL::Vertex(cube[0]);
138
- GL::Vertex(cube[5]);
139
- GL::Vertex(cube[6]);
140
- GL::Vertex(cube[1]);
141
-
142
- GL::Color(0.0, 1.0, 1.0);
143
- GL::Vertex(cube[5]);
144
- GL::Vertex(cube[4]);
145
- GL::Vertex(cube[7]);
146
- GL::Vertex(cube[6]);
147
-
148
- GL::Color(1.0, 1.0, 0.0);
149
- GL::Vertex(cube[5]);
150
- GL::Vertex(cube[0]);
151
- GL::Vertex(cube[3]);
152
- GL::Vertex(cube[4]);
153
-
154
- GL::Color(1.0, 0.0, 1.0);
155
- GL::Vertex(cube[6]);
156
- GL::Vertex(cube[1]);
157
- GL::Vertex(cube[2]);
158
- GL::Vertex(cube[7]);
159
-
160
- end
161
-
162
- GL::End()
163
-
164
- GL::MatrixMode(GL::MODELVIEW);
165
- GL::Rotate(5.0, 1.0, 1.0, 1.0);
166
-
167
- SDL.GLSwapBuffers
168
-
169
- end
1
+ # You can use this test program to run Ruby/SDL, Ruby/OpenGL themselves.
2
+ # I created sgl by extending this small program.
3
+
4
+ require 'sdl'
5
+ require 'opengl'
6
+
7
+ SDL.init SDL::INIT_VIDEO
8
+ SDL.setGLAttr SDL::GL_RED_SIZE,5
9
+ SDL.setGLAttr SDL::GL_GREEN_SIZE,5
10
+ SDL.setGLAttr SDL::GL_BLUE_SIZE,5
11
+ SDL.setGLAttr SDL::GL_DEPTH_SIZE,16
12
+ SDL.setGLAttr SDL::GL_DOUBLEBUFFER,1
13
+ SDL.setVideoMode 640,400,16,SDL::OPENGL
14
+ GL::Viewport( 0, 0, 640, 400 );
15
+ GL::MatrixMode( GL::PROJECTION );
16
+ GL::LoadIdentity( );
17
+
18
+ GL::MatrixMode( GL::MODELVIEW );
19
+ GL::LoadIdentity( );
20
+
21
+ GL::Enable(GL::DEPTH_TEST);
22
+
23
+ GL::DepthFunc(GL::LESS);
24
+
25
+ GL::ShadeModel(GL::SMOOTH);
26
+
27
+ event=SDL::Event.new
28
+ shadedCube=true
29
+
30
+ color =
31
+ [[ 1.0, 1.0, 0.0],
32
+ [ 1.0, 0.0, 0.0],
33
+ [ 0.0, 0.0, 0.0],
34
+ [ 0.0, 1.0, 0.0],
35
+ [ 0.0, 1.0, 1.0],
36
+ [ 1.0, 1.0, 1.0],
37
+ [ 1.0, 0.0, 1.0],
38
+ [ 0.0, 0.0, 1.0]]
39
+
40
+ cube =
41
+ [[ 0.5, 0.5, -0.5],
42
+ [ 0.5, -0.5, -0.5],
43
+ [-0.5, -0.5, -0.5],
44
+ [-0.5, 0.5, -0.5],
45
+ [-0.5, 0.5, 0.5],
46
+ [ 0.5, 0.5, 0.5],
47
+ [ 0.5, -0.5, 0.5],
48
+ [-0.5, -0.5, 0.5]]
49
+
50
+
51
+ loop do
52
+
53
+ if event.poll != 0 then
54
+ if event.type==SDL::Event::QUIT then
55
+ break
56
+ end
57
+ if event.type==SDL::Event::KEYDOWN then
58
+ exit
59
+ end
60
+ end
61
+
62
+ GL.ClearColor(0.0, 0.0, 0.0, 1.0);
63
+ GL.Clear(GL::COLOR_BUFFER_BIT|GL::DEPTH_BUFFER_BIT);
64
+
65
+
66
+ GL::Begin(GL::QUADS)
67
+
68
+ if shadedCube then
69
+ GL::Color(color[0]);
70
+ GL::Vertex(cube[0]);
71
+ GL::Color(color[1]);
72
+ GL::Vertex(cube[1]);
73
+ GL::Color(color[2]);
74
+ GL::Vertex(cube[2]);
75
+ GL::Color(color[3]);
76
+ GL::Vertex(cube[3]);
77
+
78
+ GL::Color(color[3]);
79
+ GL::Vertex(cube[3]);
80
+ GL::Color(color[4]);
81
+ GL::Vertex(cube[4]);
82
+ GL::Color(color[7]);
83
+ GL::Vertex(cube[7]);
84
+ GL::Color(color[2]);
85
+ GL::Vertex(cube[2]);
86
+
87
+ GL::Color(color[0]);
88
+ GL::Vertex(cube[0]);
89
+ GL::Color(color[5]);
90
+ GL::Vertex(cube[5]);
91
+ GL::Color(color[6]);
92
+ GL::Vertex(cube[6]);
93
+ GL::Color(color[1]);
94
+ GL::Vertex(cube[1]);
95
+
96
+ GL::Color(color[5]);
97
+ GL::Vertex(cube[5]);
98
+ GL::Color(color[4]);
99
+ GL::Vertex(cube[4]);
100
+ GL::Color(color[7]);
101
+ GL::Vertex(cube[7]);
102
+ GL::Color(color[6]);
103
+ GL::Vertex(cube[6]);
104
+
105
+ GL::Color(color[5]);
106
+ GL::Vertex(cube[5]);
107
+ GL::Color(color[0]);
108
+ GL::Vertex(cube[0]);
109
+ GL::Color(color[3]);
110
+ GL::Vertex(cube[3]);
111
+ GL::Color(color[4]);
112
+ GL::Vertex(cube[4]);
113
+
114
+ GL::Color(color[6]);
115
+ GL::Vertex(cube[6]);
116
+ GL::Color(color[1]);
117
+ GL::Vertex(cube[1]);
118
+ GL::Color(color[2]);
119
+ GL::Vertex(cube[2]);
120
+ GL::Color(color[7]);
121
+ GL::Vertex(cube[7]);
122
+
123
+ else
124
+ GL::Color(1.0, 0.0, 0.0);
125
+ GL::Vertex(cube[0]);
126
+ GL::Vertex(cube[1]);
127
+ GL::Vertex(cube[2]);
128
+ GL::Vertex(cube[3]);
129
+
130
+ GL::Color(0.0, 1.0, 0.0);
131
+ GL::Vertex(cube[3]);
132
+ GL::Vertex(cube[4]);
133
+ GL::Vertex(cube[7]);
134
+ GL::Vertex(cube[2]);
135
+
136
+ GL::Color(0.0, 0.0, 1.0);
137
+ GL::Vertex(cube[0]);
138
+ GL::Vertex(cube[5]);
139
+ GL::Vertex(cube[6]);
140
+ GL::Vertex(cube[1]);
141
+
142
+ GL::Color(0.0, 1.0, 1.0);
143
+ GL::Vertex(cube[5]);
144
+ GL::Vertex(cube[4]);
145
+ GL::Vertex(cube[7]);
146
+ GL::Vertex(cube[6]);
147
+
148
+ GL::Color(1.0, 1.0, 0.0);
149
+ GL::Vertex(cube[5]);
150
+ GL::Vertex(cube[0]);
151
+ GL::Vertex(cube[3]);
152
+ GL::Vertex(cube[4]);
153
+
154
+ GL::Color(1.0, 0.0, 1.0);
155
+ GL::Vertex(cube[6]);
156
+ GL::Vertex(cube[1]);
157
+ GL::Vertex(cube[2]);
158
+ GL::Vertex(cube[7]);
159
+
160
+ end
161
+
162
+ GL::End()
163
+
164
+ GL::MatrixMode(GL::MODELVIEW);
165
+ GL::Rotate(5.0, 1.0, 1.0, 1.0);
166
+
167
+ SDL.GLSwapBuffers
168
+
169
+ end