ィ 07ィコ060909ィコィィィヲ , 0600ィェィ ィー02ィェィコ ィ ツィ 05ィケィェ04ィヲ ィコィョ0809 OpenGL. 00.: ィ ィ

Size: px
Start display at page:

Download "ィ 07ィコ060909ィコィィィヲ , 0600ィェィ ィー02ィェィコ ィ ツィ 05ィケィェ04ィヲ ィコィョ0809 OpenGL. 00.: ィ ィ"

Transcription

1 チ ィ 07ィコ060909ィコィィィヲ, ィェィ ィー02ィェィコ チ OPENGL ィコ09ィ 2007

2 ィ 07ィコ060909ィコィィィヲ , 0600ィェィ ィー02ィェィコ ィ ツィ 05ィケィェ04ィヲ ィコィョ0809 OpenGL. 00.: ィ ィェ02ィーィ 05ィェィ ィェィィィヲ, c. ISBN ィ 09ィー0607ィエィ 07 ィコィェィィ00ィ ィーィ ィー 0906ィ 06ィヲ 0708ィ ィコィーィィ ツ0209ィコ ィョィコ ィー ィ ィ 06ィー ィ 00ィィ ツ0209ィコ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ06ィヲ OpenGL. 04ィョィコ ィー ィ 0408ィ ィ 06ィーィ ィェ06 09 ィョ ツ02ィー06ィャ ィーィ ツィー02ィェィィ07 ィコィョ0809ィ ィャ07ィケ06ィー0208ィェィ ィ 00ィィィコィ 07 ィェィ 00ィ ィコィョ05ィケィー02ィー ィィ ィィィャ ィャ06ィェ ィ. 08ィェィィ00ィ 09ィコ0506 ツィ 02ィー ィ ィィ09ィ ィェィィ02 ィ ィ ィャ0603ィェ0609ィー02ィヲ OpenGL ィィ 0708ィィ02ィャ04 08ィ ィ 06ィー04 09 ィ ィィィ 05ィィ06ィー02ィコ06ィヲ, ィーィィィャィィ04ィ 02ィィィィ 0708ィィ ィェィィィヲ ィィ ィィ ィケ040609ィ ィェィィ07 OpenGL 09 08ィ 0405ィィ ツィェ ィ ィ ィャィャィィ080609ィ ィェィィ07. 08ィェィィ00ィ 09ィェィ ィ 0302ィェィ ィ ィャィィ ィィ 0708ィ ィコィーィィ ツ0209ィコィィィャィィ 04ィ 01ィ ィェィィ07ィャィィ. 04ィョィコ ィー ィ 0909 ツィィィーィ ィェ06 ィェィ ツィィィーィ ィー020502ィヲ, 04ィェィ ィコ06ィャ ィコィ ィャィィ ィ ィャィャィィ080609ィ ィェィィ07 05/C++ ィィ ィィィャ0206ィエィィ ィーィ ィェィィ02 06 ィ ィ ィ ィィィーィャィ 01 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ. 0402ィコ06ィャ02ィェ01ィョ02ィー ィーィョ0102ィェィーィ ィャ ィャィ ィー02ィャィ ィーィィ ツ0209ィコィィ01 ィィ 0708ィィィコ05ィ 01ィェ ィィィ 05ィケィェ0609ィー02ィヲ, ィ 0907ィィ08ィ ィェィーィ ィャ, ィェィ ィョ ツィェ04ィャ 0906ィー08ィョ01ィェィィィコィ ィャ ィィ ィャ ィ 06ィエィィィャ ィィ04ィョ- ツィィィーィケ OpenGL ィ ィー ィコィィ ィ ィェィィ ィー ィェ ィ ィャィコィ 01 06ィ 08ィ ィ ィー0205ィケィェ06ィヲ ィ ィャィャ ィャィィ080609ィ ィェィィ02 09ィィ09ィー02ィャ04 ィィィェィェ0609ィ 02ィィ06ィェィェ ィ 08ィ ィ ィェィィ ィェ0402ィェィー04: 01ィィィコィィィェ , , 0106ィコィー ィィ04.-ィャィ ィー. ィェィ ィョィコ, 00-ィー 0000ィィ , ィコィ ィェ01ィィ01ィ ィー 00ィィ04.-ィャィ ィー. ィェィ ィョィコ, 00-ィー 0000ィィ ISBN ィ 07ィコ060909ィコィィィヲ , 0600ィェィ ィー02ィェィコ ィ ィェ02ィーィ 05ィェィ ィェィィィヲ, 2007

3 ィ ィェィィ ィィ ィィ ィェィィ I 0209ィェ OpenGL ィ 00ィィ ツ0209ィコィィィヲ ィィ OpenGL ィ 00ィィ ツ0209ィコィィィヲ ィャ02ィー08ィィ ツ0209ィコィィ02 ィャ ィィ ィェィィィャィ 02ィィ ィ ィー0208ィィィ ィエ02ィェィィ ィィ08ィーィョィ 05ィケィェィ 07 ィコィ ィャ0208ィ ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ ィェィィ02 09 OpenGL ィェ0609ィェ ィャ0603ィェ0609ィーィィ ィェィー ィヲ09 OpenGL ィィィー02ィコィーィョ08ィ OpenGL ィィィェィーィ ィコ09ィィ09 ィコ06ィャィ ィェ ィィィャ ィィ ィェィィ ィェィー080605ィケィェ

4 ィ ィェィィ ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー ィ ィェ ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ ィィィェ04 ィィ 0708ィィィャィィィーィィ ィ ィー0608ィェ ィコ06ィ ィコィィ glbegin / glend ィィ ィヲィェ ィィ09ィコィィ ィ 0909ィィ ィィィェ ィェィー080605ィケィェ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー ィ ィ 06ィーィ 09 ィャィ ィー08ィィ02ィ ィャィィ ィケィェ06-09ィィ ィ 08ィ ィ ィェィィ ィコ02ィィィィ ィ 05ィ 09ィーィケ ィ ィェィー080605ィケィェ ィ ィー0208ィィィ 0504 ィィ ィエ02ィェィィ ィケ ィエ02ィェィィ ィィ00ィィィコィ 02ィィ07 ィャィ ィー0208ィィィ ィィ09ィ ィェィィ02 ィィ09ィー06 ツィェィィィコ ィーィ ィ ィェィィ ィコィーィ ィーィョィャィ ィェィ ィェィー080605ィケィェ ィコ09ィーィョ08ィィ080609ィ ィェィィ ィー0609ィコィ ィー02ィコ09ィーィョ ィ ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー ィコ09ィーィョ08ィェ0402 ィコ ィィィェィ ィー ィェィー080605ィケィェ ィ 02ィィィィ 09 07ィィィコ ィャィィ ィャ0203ィィ09ィ ィェィィ02 ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ ィ ツィェ0609ィーィケ ィョ ィェィ ィコ0607ィィィー0205ィケ ィョ ィャィ 09ィコィィ ィ ィェィィ02 08ィ 09ィー0208ィィ04ィ 02ィィ02ィヲ ィェィー080605ィケィェ

5 ィ ィェィィ02 5 II 0308ィィ02ィャ04 08ィ ィ 06ィー04 09 OpenGL ィ 00ィィ ツ0209ィコィィ02 ィ ィィィーィャ04 ィェィ 0609ィェ OpenGL ィー08ィ ィェ02ィェィィ02 09ィーィョ0702ィェ ツィ ィー0609ィーィィ ィー080602ィェィィ02 ィー02ィェ02ィヲ ィコィ 05ィケィェ ィー08ィ 0302ィェィィ ィェィー080605ィケィェ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ ィ ィェィィ04ィ 02ィィ ィィ ィェィィ ィーィィィャィィ04ィ 02ィィ OpenGL ィェィー080605ィケィェ III ィ ィェィィ ィィ ィェィィィヲ 09 OpenGL OpenGL-0708ィィ ィェィィ ィャ06ィエィケ06 GLUT ィー08ィョィコィーィョ08ィ GLUT-0708ィィ ィェィィ GLUT Microsoft Visual C GLUT Microsoft Visual C GLUT Borland C++ Builder GLUT Borland C++ Builder ィケ040609ィ ィェィィ02 OpenGL 09 MFC ィィ VCL ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ ィーィ ィェ0609ィコィ ィャィ ィーィ 07ィィィコ ィヲ ィェィー02ィコ09ィー 08ィィ090609ィ ィェィィ07 (render context) ィ 0909 GLRC ィケ040609ィ ィェィィ02 OpenGL c MFC ィケ040609ィ ィェィィ02 OpenGL c VCL OpenGL 09.NET GLUT Microsoft Visual C# ィケ040609ィ ィェィィ02 OpenGL 09 WindowsForms

6 ィ ィェィィ02 IV 0308ィィ ィェィィ ィィィャィィィーィィ0904 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ ィ ィャィャ ィィィャ0208 1: ィー0602 GLUT-0708ィィ ィェィィ ィィィャ0208 2: ィケ ィエ02ィェィィ07 OpenGL ィ 0008ィョ04ィコィ BMP 00ィ ィヲ05ィ ィィィャ0208 3: 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 ィィ ィ ィェィィィャィ 02ィィ ィ ィ ィ 06ィー04 09 OpenGL 09 Win ィィィャ ィ ィコィーィィ ツ0209ィコィィ01 04ィ 01ィ ィェィィィヲ Cornell Box ィィ08ィーィョィ 05ィケィェ0402 ツィ ィェィー0208ィ ィコィーィィ09ィェ04ィヲ 05ィ ィェ0103ィ 00ィー ィィィー0208ィ ィーィョ08ィ ィャ02ィーィェ04ィヲ ィョィコィ 04ィ ィー0205ィケ 217

7 ィィ ィィ ィャ07ィケ06ィー0208ィェィ 07 (ィャィ 03ィィィェィェィ 07) 0008ィ 00ィィィコィ 06 ツ02ィェィケ ィャ ィ 07 01ィィ0902ィィ0705ィィィェィ ィェィィ02 ィャィ 03ィィィェィェ06ィヲ 0008ィ 00ィィィコィィ ィコィ ィコ ィェィ ィョ ツィェ06-ィィ ィ ィー0205ィケ09ィコ ィェィ 0708ィ ィェィィ07 06ィ 04 ツィェ ィ 06ィー 09 ィィィャ02ィェ02ィャ 08ィヲ0902ィェィ 05ィ ィェ01ィ (Ivan Sutherland), ィコ06ィー060804ィヲ ィョィ 05ィィィコ0609ィ 05 09ィーィ ィーィケ ィョ05ィケィーィ ィーィ ィャィィ ィヲ 01ィィ ィーィ 02ィィ06ィェィェ06ィヲ 08ィ ィ 06ィー ィ 0405ィ 06ィ 08ィ ィ ィェィ ィィ06ィェィ 05ィケィェィ ィョ0707ィ ACM SIGGRAPH ィ ィェィェィィィヲ ィィ ィ 0409ィィィーィィ07 ィャィ 03ィィィェィェ06ィヲ 0008ィ 00ィィィコィィ ィ ィィィ 02ィィ07 SIGGRAPH 08ィ 0409ィィ09ィ 05ィ 09ィケ ィコィ ィコ ィェィ ィョ ツィェ06-ィー0201ィェィィ ツ0209ィコィ ィ ィェィィ04ィ 02ィィ ィ ィャィィ080609ィ ィェ 0806ィャィィィー02ィー SIGGRAPH ィ 08ィ ィ ィェィィ ィェ09ィー090609ィ ィェィィ07 06ィ ィョ ツ02ィェィィ07 ィャィ 03ィィィェィェ06ィヲ 0008ィ 00ィィィコ02 ィィ ィィ ィケ040609ィ ィェィィ ィョ ツ02ィ ィェ06ィャ ィーィ 05ィィ 0909ィィ0102ィー020507ィャィィ 0108ィ ィャィ ィーィィ ツ0209ィコィィ01 ィィ04ィャ02ィェ02ィェィィィヲ, ィコ06ィー ィィ ィィ 09 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコ ィィ 09 ィコ06ィェ ィ 00ィィ ツ0209ィコィィ02 08ィ ィ 06 ツィィ02 09ィーィ ィェ02ィィィィ 09ィー06ィィ05ィィ ィ 0204ィョィャィェ ィィ 08ィ ィ 06ィーィ ィーィケ 09 ィェィィィャィィ ィャ060005ィィ ィー0605ィケィコ ツ02ィェィケ ィ 0600ィ ィー ィ ィェィィ04ィ 02ィィ0701 (ィコィ ィコ 0708ィ 09ィィ0506 ィィ ), ィー06 09 ィコ06ィェ ィ 00ィィ ツ0209ィコィィ02 09ィーィ ィェ02ィィィィ ィェ02 ィョ ィー090608ィィィー0205ィケィェ04ィャィィ ィャ0603ィェ0609ィー07ィャィィ 04ィ 1000 USD 09ィーィ 05ィィ ィーィョ07ィェ04 ィョィェィィ ィィィー02ィーィ ィャ ィィ 01ィ ィー010205ィケィェ04ィャ 09ィーィョ0102ィェィーィ ィャ ィィ ィィ ィケ040609ィ 05ィ 09ィケ ィィィャィョィエ0209ィー0902ィェィェ ィコィー0608ィェィ ィ 00ィィィコィ, ィー06 09 ィコ06ィェ ィ 09ィー080609ィ ィェ ィーィェィ ィ 00ィィィコィ 0706 ツィーィィ ィェ0609ィーィケ ィー0209ィェィィ05ィ 0902ィコィー0608ィェィョ ィャ0208ィェィ ィ 00ィィィコィ 09ィーィ 05ィ 09ィー0605ィケ ィ ィー08ィ ィェ02ィェィェ06ィヲ, ィコィ ィコ 0109ィョ01ィャ0208ィェィ 07, ィコ0605ィケィコィョ ィィ05ィィ09ィケ ィィ ィ 0409ィー ィェ09ィー09ィョ06ィー ィィ ィ ィー ィ 00ィィ ツ0209ィコィィィャィィ ィョ09ィコ0608ィィ- 7

8 ィ ィェィィ02 ィー020507ィャィィ ィィ z-ィ ィョ ィャ. 03ィ 08ィ ィケィェ06 09 ィィ04ィャ02ィェ02ィェィィ07ィャィィ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ 0707ィ 08ィ ィーィョ ィィ ィィ05ィィ 0005ィョィ 06ィコィィ02 ィャ02ィーィ ィャ ィ ィャィャィェ06ィャ 06ィ ツ02ィェィィィィ ィ 03ィィ0806ィコィィィャ 08ィ ィー08ィ ィェ02ィェィィ02ィャ ィ 00ィィ ツ0209ィコィィ01 ィ ィィィ 05ィィ06ィー02ィコ ( ィェ0609ィェ06ィャ 0902ィコィー0608ィェ0401, 09 ィ 0605ィケ03ィィィェ09ィー ィャ ィー08ィ ィェィェ0401) ィー0802ィ 0609ィ ィケ ィェ0209ィコ0605ィケィコ06 05ィーィ ィーィ ィェ01ィ 08ィーィィ04ィ 02ィィィィ 0008ィ 00ィィ ツ0209ィコ ィ ツ02ィェィィ07 (Core System, PHIGS, GKS), ツィー06ィ 04 ィコ ィィィェ ィィィヲィーィィ ィコ 02ィーィコ0804ィー06ィヲ 0108ィ 00ィィ ツ0209ィコ06ィヲ 09ィィィ 05ィィ06ィー02ィコ02 (OpenGL). 00 ィェィ 09ィー0607ィエ ィャ07 ィャィェ0600ィィ02 00ィョィェィコ02ィィィィ 05ィー06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ 0802ィ 05ィィ040609ィ ィェ04 ィ 0707ィ 08ィ ィーィェ ィーィィ ィェ02 ィャ060005ィィ ィェ02 09ィコィ 04ィ ィーィケ0907 ィェィ ィ 09ィ ィェィィィィ ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ 09 ィョィェィィ ィィィー02ィーィ ィェィ ィコ06, 01ィ ィコ06ィェ02ィ ィャィ 03ィィィェィェィ ィ 00ィィィコィ 0609ィーィ 09ィ 05ィ 09ィケ ィェ0206ィ 04 ツィェ04ィャ ィャ02ィー06ィャ ィィ ィョィェィィ ィィィー02ィー09ィコィィ01 ィコィョ ィョ ツ02ィ ィェ ィ ィェィ 01 ACM ィャィ 03ィィィェィェィ ィ 00ィィィコィ 06ィー09ィョィー09ィー090609ィ 05ィ ィィ ィヲ ィィィェ ィケ06 ィコィョ0809ィ ィ ィィ04ィョ ツ02ィェィィ02 ィィ ィ ィャィャィィ080609ィ ィェィィ02 ィ ィ ィ ィィィーィャ ィ 00ィィィコィィ (08ィィ090609ィ ィェィィ ィャ06ィヲ ィィ ィコ08ィィ0906ィヲ, ィコ05ィィ0707ィィ080609ィ ィェィィ02, 03ィー08ィィ010609ィコィ ィィ05ィィ 08ィ 09ィー0208ィィ04ィ 02ィィ07 ィャィェ060006ィョ000605ィケィェィィィコィ, 0601ィェ ィェ0402 ィコ ィィィェィ ィー04 ィィ ィ 0000ィィィェィェ ィ 08ィ ィ ィェィィ07, 09ィィ ィ 08ィ ィ ィェィィ07) [1, 2] ィケ, 0708ィィ ィェィ 05ィィ ツィィィィ ィィィェィー ィヲ09ィ 0708ィィィコ05ィ 01ィェ ィ ィャィャィィ080609ィ ィェィィ07 (API) ィコ ィョ080609ィェ07, ィコ060001ィ ィャ02ィェィーィ 08ィェ ィョィェィコ02ィィィィ ィィィャ0206ィー ィ ィィィ 05ィィ06ィー02ィコ02 OpenGL ィィ 04ィ ツィ 09ィーィョ ィ 05ィィ04ィョ06ィー0907 ィ 0707ィ 08ィ ィーィェ06, 0708ィィ ィケ ィャ06ィー0802ィーィケ ィコ06ィェ ィィ06 ィコィョ0809ィ ィ ィャ06ィャ , 04ィ ツ02ィャ ィョ ツィィィーィケ0907 ィョィャィェ0603ィ ィーィケ 09ィー0605ィ ィィィコ06ィャ, ィィ ィョ ィコィ ィョィコィ 01 ィコィ 05ィケィコィョ0507ィー ィィ05ィ 09ィケ ィャ0603ィェ0609ィーィケ 09ィコ0506 ツィィィーィケ 09 ィコィョ0809 ィ ィェ0402 ィィ ィ ィャ02ィェィェ ィ ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ, ィーィ ィコィィ02 ィコィ ィコ ィー02ィコ09ィーィョ08ィィ080609ィ ィェィィ02, ィ ィェィィィャィ 02ィィ07. 06ィャ02ィェィェ ィー0902ィー09ィー09ィィィィ 09 05ィー06ィヲ 06ィ ィエ02ィャィィ ィヲ ィー02ィェ0102ィェ02ィィ02ィヲ ィィ06ィェィィ080609ィ 05 ィコィョ0809 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ ィェィ 00ィ ィコィョ05ィケィー02ィー ィィ ( ィィィェィー0208ィェ02ィー ィィ06 ィコィョ0809ィ ィャ0603ィェ06 ィェィ ィヲィーィィ ィェィ 09ィ ィヲィー ィョ ィィィェ02ィィ07ィョ "ィョ ツィィ09ィケ, ィ 07"(learning-by-doing), ィャ04, ィコ0806ィャ02 ィー08ィ 01ィィ02ィィ06ィェィェ ィコ02ィィィヲ, 09ィコ0506 ツィ 02ィャ 09 ィコィョ ィェ02ィェィィ ィェ02ィ 0605ィケ-

9 ィ ィェィィ ィィ ィコィー0609, ィコィ ィヲ ィィィー0205ィケィェ0609ィーィケ ィェ ィィ. (0308ィィィャ ィーィ ィコィィ01 04ィ 01ィ ィェィィィヲ 0904 ィェィ ィヲ0102ィー ィー06ィヲ ィコィェィィ0002.) 01ィ 09ィー0607ィエィ 07 ィコィェィィ00ィ 0708ィィ0409ィ ィェィ 0706ィャ06 ツィケ 09ィーィョ0102ィェィーィ ィャ ィェ02ィェィィィィ 05ィーィィ ィコィー ィー05ィィ ツィィ02 06ィー 0108ィョ00ィィ ィ 0906 ツィェ ィョィ 05ィィィコィ 02ィィィヲ 0706 OpenGL, 09 ィコィェィィ ィィィーィケ0907 ィェ02 ィー0605ィケィコ06 06 ィー06ィャ, ツィー06 ィィィャ0202ィー ィ ィィィ 05ィィ06ィー02ィコ02, ィェ06 ィィ 06 ィー06ィャ, ィコィ ィコ 05ィーィィィャィィ ィー09ィ ィャィィ ィコィーィィ09ィェ ィケ040609ィ ィーィケ ィ 0708ィィィャ0208, ィコィ ィコ 09ィィ04ィョィ 05ィィ04ィィ080609ィ ィーィケ ィコィ 05ィケィェ ィ ィイ02ィコィー04, ィコィ ィコ ィー0806ィィィーィケ ィー02ィェィィ ィィ08ィョ ィ 05ィケィェィョ06 08ィ ィ 06 ツィョ ィョ, ィャ04 ィョ ツィィィャ 09ィーィョ0102ィェィー ィ ィャ0609ィー0607ィー0205ィケィェ06ィヲ 08ィ ィ 06ィー ィーィィ01 ィョ ィィ ィ ィィ ィィ ィケ040609ィ ィェィィ06 06ィーィコ0804ィー06ィヲ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ ィィ0008ィ 02ィー 09ィ 03ィェィョ ィケ. 0809ィー ィ 05ィ ィ 08ィェ ィーィィィコ060906ィヲ ィィ ィ 03ィーィ ィェ060906ィヲ 04ィ 0706ィャ06ィエィケ ィー0609ィコ02 ィー02ィコ09ィーィ ィィ ィィ ィー08ィ 02ィィィヲ ィ 07ィコ060909ィコィィィヲ ィケ ィ

10 13

11 ィェィィ , ツィー06 ィャ04 09ィィ01ィィィャ ィェィ 05ィコ08ィ ィェ02 ィコ06ィャ07ィケ06ィー0208ィェ ィャ06ィェィィィー0608ィ, ィー ィョ05ィケィーィ ィー06ィャ 08ィ ィ 06ィー04 ィ ィィィーィャ ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィィヲ. 06ィーィィ ィ ィィィーィャ ィ 06ィー ィーィ ィコィィ02 04ィ 01ィ ツィィ, ィコィ ィコ 09ィィ04ィョィ 05ィィ04ィ 02ィィ07 ィー02ィコ09ィーィ 09 ィィ ィケ040609ィ ィェィィ02ィャ 04ィ 01ィ ィェィェ ィェィ ィ ィィ00ィー0609, 06ィー06ィ 08ィ 0302ィェィィ02 ィョィコィ 04ィ ィー ィコィョ ィ, 08ィィ090609ィ ィェィィ ィャ0600ィ ィー0205ィケィェ ィャ02ィェィー ィ 00ィィ ツ0209ィコ ィィィェィー ィヲ09ィ, 09ィィ04ィョィ 05ィィ04ィ 02ィィ06 ィィ0406ィ 08ィ 0302ィェィィィヲ ィャ02 05ィー060006, ィ ィィィーィャ04 09ィィィェィー0204ィ ィ 06ィー 04ィ 01ィ ツィィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィー080201ィャ0208ィェ ィ ィェィェ0401, ィェィ 0708ィィィャ0208, ィケ ィ ィェィィ07 ィィィェィー0208ィ ィコィーィィ09ィェ06ィヲ 0006ィー060802ィ 05ィィ09ィーィィ ツィェ06ィヲ ィ ィェィィィャィ 02ィィィィ, 05ィィィ ィェィ ィェ ィーィ ィェィィ ィョ05ィケィーィ ィー0609 ィコィ ィコィィ01-05ィィィ ツィィ090502ィェィィィヲ ィ ツ02ィェィィ ィェ02ィェィィ ィ ィャィャィィ09ィーィ ィャィィ ィーィ ィコィィ01 04ィ 01ィ ツ 02ィエ ィ ィコィ 09ィーィ 05ィィ ィーィケ ィ ィャィャィェ0402 ィィィェ09ィー08ィョィャ02ィェィーィ 08ィィィィ (ィ ィィィ 05ィィ06ィー02ィコィィ), ィ ィエィィ ィ 02 ィェィ ィ ィ ィ ィ ィィィーィャ0609 (ィーィ ィコィィ01, ィコィ ィコ 09ィィ04ィョィ 05ィィ04ィ 02ィィ ィー ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609), ツィー ィィ ィヲィーィィ ィェィ ィ ィコィィィヲ ィョ ィェィケ ィ ィ 09ィー08ィ ィコ02ィィィィ 0708ィィ ィェィィィィ 0708ィィィコ05ィ 01ィェ ィ 01ィ ツ. 00 ィェィ 09ィー0607ィエ ィャ ィ ィャィャィィ080609ィ ィェィィ ィ 00ィィ ツ0209ィコィィ01 ィ ィィィーィャ0609 ィェ02ィャ040905ィィィャ06 ィ 0204 ィィ ィケ040609ィ ィェィィ ィィィ 05ィケィェ ィ ィャィャィェ0401 ィィィェ09ィー08ィョィャ02ィェィーィ 08ィィ0209, ィーィ ィコ0302 ィェィ ィ 02ィャ ィィィコ05ィ 01ィェ04ィャィィ ィ ィャィャィェ04ィャィィ ィィィェィー ィヲ09ィ ィャィィ (API Application Programming Interface). OpenGL ィー ィェィィィャ ィィ04 09ィ ィャ ィョ050708ィェ ィィィコ05ィ 01ィェ ィ ィャィャィェ0401 ィィィェィー ィヲ ィ 0408ィ ィ 06ィーィコィィ 0708ィィ ィェィィィヲ 09 06ィ 05ィ 09ィーィィ 0109ィョ01ィャ0208ィェ06ィヲ ィィ ィー080201ィャ0208ィェ06ィヲ 0008ィ 00ィィィコィィ. 11

12 ィ ィェィィ02 05ィーィ ィェ01ィ 08ィー OpenGL (Open Graphics Library 06ィーィコ0804ィーィ ィ 00ィィ ツ0209ィコィ 07 ィ ィィィ 05ィィ06ィー02ィコィ ) ィ ィ 0408ィ ィ 06ィーィ ィェ ィィ ィョィー ィェ ィョ ィョィエィィィャィィ 00ィィ08ィャィ ィャィィ 09 06ィ 05ィ 09ィーィィ 08ィ 0408ィ ィ 06ィーィコィィ ィ ィャィャィェ ィ ツ02ィェィィ07 ィコィ ィコ ィコィーィィ09ィェ04ィヲ ィ 0707ィ 08ィ ィーィェ06-ィェ0204ィ 09ィィ09ィィィャ04ィヲ ィィィェィー ィヲ09, 0708ィィ000601ィェ04ィヲ ィ 05ィィ04ィ 02ィィィィ ィェィ 08ィ 0405ィィ ツィェ ィ ィー000608ィャィ ィェ060906ィヲ 09ィーィ ィェ01ィ 08ィーィ 09ィーィ 05ィ ィ ィィィ 05ィィ06ィー02ィコィ IRIS GL, 08ィ 0408ィ ィ 06ィーィ ィェィェィ 07 00ィィ08ィャ06ィヲ Silicon Graphics Inc. 09ィィィ 05ィィ06ィー02ィコィ ィェィ 09 ツィィィー0409ィ 02ィー 06ィコ ィ 0405ィィ ツィェ0401 ィコ06ィャィ ィェ01, ィコ06ィー ィ ィャィャィィ09ィー ィィ ィケ04ィョ02ィー ィ 01ィ ィェィィ07 06ィ ィイ02ィコィー0609 ィィ ィ 02ィィィヲ, ィェ0206ィ ィィィャ ィェィ 07ィィ09ィ ィェィィ07 ィィィェィー0208ィ ィコィーィィ09ィェ ィ 00ィィ ツ0209ィコィィ ィィ ィェィィィヲ. 01ィ ィェ0703ィェィィィヲ 0102ィェィケ 0008ィ 00ィィ ツ0209ィコィ 07 09ィィ09ィー02ィャィ OpenGL ィィ09ィ 02ィー0907 ィ 0605ィケ03ィィィェ09ィー0906ィャ ィィ ィィィー020502ィヲ ィ 0707ィ 08ィ ィーィェ0401 ィィ ィ ィャィャィェ ィ ィー000608ィャ. 06ィーィ 09ィィ09ィー02ィャィ ィーィョ07ィェィ ィー02ィャ, ィコィー06 08ィ ィ 06ィーィ 02ィー Windows, ィケ040609ィ ィー020507ィャ ィコ06ィャ07ィケ06ィー Apple ィ 0601ィェ06 08ィ ィー08ィ ィェ0702ィャ0402 ィコ ィィ09ィー02ィャ04 Mesa (07ィ ィコ02ィー API ィェィ ィ ィ 0402 OpenGL) ィャ0603ィェ06 ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ 09 ィ 0605ィケ03ィィィェ09ィー ィ 02ィィ06ィェィェ ィィ09ィー02ィャ, 09 ィー06ィャ ツィィ Linux. 09ィ 08ィ ィコィー0208ィェ04ィャィィ ィ 02ィェィェ0609ィー07ィャィィ OpenGL, ィコ06ィー ィ ツィィ05ィィ 08ィ ィー08ィ ィェ02ィェィィ02 ィィ 08ィ 0409ィィィーィィ02 05ィー ィ 00ィィ ツ0209ィコ ィーィ ィェ01ィ 08ィーィ, ィー0907: 0キ3 05ィーィ ィ ィィ05ィケィェ0609ィーィケ ィェ02ィェィィ07 ィィ ィィ04ィャ02ィェ02ィェィィ ィーィ ィェ01ィ 08ィー ィ 05ィィ04ィョ06ィー0907 ィーィ ィコィィィャ 06ィ 08ィ 0406ィャ, ツィー06ィ ィ ィェィィィーィケ ィャ0209ィーィィィャ0609ィーィケ 09 08ィ 0408ィ ィ 06ィーィ ィェィェ04ィャ 08ィ ィェ ィ ィャィャィェ04ィャ 06ィ ツ02ィェィィ02ィャ. 0キ3 01ィ ィェ0609ィーィケ ィィ ィェ0609ィィィャ0609ィーィケ. 0308ィィ ィェィィ07, ィィ ィケ04ィョ06ィエィィ02 OpenGL, 00ィ 08ィ ィェィーィィ08ィョ06ィー 0601ィィィェィ ィコ060904ィヲ 09ィィ04ィョィ 05ィケィェ04ィヲ ィョ05ィケィーィ ィー 09ィェ02 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー ィーィィ07ィ ィィ ィケ04ィョ02ィャ06ィヲ ィ 02ィィ06ィェィェ06ィヲ 09ィィ09ィー02ィャ04 ィィ ィ ィェィィ04ィ 02ィィィィ 06ィー06ィ 08ィ 0302ィェィィ07 ィィィェ000608ィャィ 02ィィィィ ィャ02 ィー060006, 05ィーィィ 0708ィィ ィェィィ07 ィャ0600ィョィー ィェ07ィーィケ0907 ィコィ ィコ ィェィ ィェィ 05ィケィェ0401 ィコ06ィャ07ィケ06ィー0208ィ 01, ィーィ ィコ ィィ ィェィ 08ィ ィ 06 ツィィ01 09ィーィ ィェ02ィィ0701 ィィ 09ィョ070208ィコ06ィャ07ィケ06ィー0208ィ 01.

13 ィ ィェィィ キ ィコ0609ィーィケ 0708ィィィャ02ィェ02ィェィィ07. 05ィーィ ィェ01ィ 08ィー OpenGL ィィィャ0202ィー ィョィャィ ィェィェィョ06 09ィー08ィョィコィーィョ08ィョ ィィ ィィィェィーィョィィィーィィ09ィェ ィェ07ィーィェ04ィヲ ィィィェィー ィヲ09, ツィー ィー 09 ィャ02ィェィケ03ィィィャィィ 04ィ ィー08ィ ィーィ ィャィィ ィ 09ィ ィーィケ ィコィーィィ09ィェ ィィ ィェィィ07, ィ ィエィィ02 ィャ02ィェィケ ィー0806ィコ ィコ0601ィ, ツ02ィャ 09 ィィ ィケ040609ィ ィェィィ02ィャ 0108ィョ00ィィ ィ 00ィィ ツ0209ィコィィ01 ィ ィィィ 05ィィ06ィー02ィコ ィ ィィィャ ィョィェィコ02ィィィィ ィ ツ02ィェィィ ィャ0209ィーィィィャ0609ィーィィ 09 08ィ 0405ィィ ツィェ04ィャ 06ィ 0608ィョ010609ィ ィェィィ02ィャ 0802ィ 05ィィ040609ィ ィェ04 ィェィ ィョ080609ィェ02 ィ ィィィ 05ィィ06ィー02ィコィィ ィィ 04ィェィ ツィィィー0205ィケィェ06 ィョ070806ィエィ 06ィー 08ィ 0408ィ ィ 06ィーィコィョ 0708ィィ ィェィィィヲ. 01ィ 05ィィ ツィィ ィ ィ ィ ィコ02ィーィ ィ ィ 06ィー04 09 ィー080201ィャ0208ィェ04ィャィィ 0708ィィ ィェィィ07ィャィィ ィョ070806ィエィ 02ィー 0706ィェィィィャィ ィェィィ02 09ィーィョ0102ィェィーィ ィャィィ ィコ0506 ツ ィー02ィャ ィコィョ0809ィ ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ ィャ ィィ080609ィ ィェィィ02 ィー080201ィャ0208ィェ ィ ィイ02ィコィー0609, 04ィ ィコ08ィ 03ィィ09ィ ィェィィ02, ィー02ィコ09ィーィョ08ィィ080609ィ ィェィィ02, ィ ィェィィィャィ 02ィィ06 ィィ ィー ィィ0806ィコィィ02 00ィョィェィコ02ィィ06ィェィ 05ィケィェ ィャ0603ィェ0609ィーィィ OpenGL 0905ィョ03ィ ィー ィィィャ 00ィョィェ01ィ ィャ02ィェィー06ィャ ィィ ィェィィ07 ィー ィーィィ ツ0209ィコィィ01 ィィ 0708ィ ィコィーィィ ツ0209ィコィィ01 ィ ィコィー ィャ02ィーィ. 08ィェィィ00ィ ィー06ィィィー ィィ04 ィー ツィ 09ィー02ィヲ ィィ 0109ィョ ィィ ィェィィィヲ ィ 07 ツィ 09ィーィケ ィエ02ィェィ ィェ ィー0902ィェィェ ィィ09ィ ィェィィ06 08ィ ィ 06ィー04 09 ィ ィィィ 05ィィ06ィー02ィコ06ィヲ, 0609ィェ0609ィェ04ィャ ィコ06ィャィ ィェ01ィ ィャ ィィ ィャ02ィェィェ04ィャ ィー060806ィヲ ツィ 09ィーィィ 08ィ 0909ィャィ ィー08ィィ09ィ 06ィー ィィィェ02ィィ ィ 05ィィ04ィ 02ィィィィ ィ ィェ0401 ィ ィィィーィャ0609 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ ィャ06ィエィケ ィー09 OpenGL. 00 ィー0802ィーィケ02ィヲ ツィ 09ィーィィ 0708ィィ090601ィィィー ィィ09ィ ィェィィ02 ィェィ 09ィー0806ィヲィコィィ 08ィ ィ 06ィー04 09 OpenGL 09 08ィ 0405ィィ ツィェ0401 ィィィェィー020008ィィ080609ィ ィェィェ ィ ィ ィャィャィィ080609ィ ィェィィ07 ィィ ィ ィェィィ ィィ ィェィィィヲ, 0708ィィィャ02ィェ0706ィエィィ01 OpenGL ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ ィェィィ0701 ィャ0603ィェ06 ィェィ ィヲィーィィ 0102ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ ィ ィャィャ04 ィェィ OpenGL ィィ 0708ィィィャ ィ ィコィーィィ ツ0209ィコィィ01 04ィ 01ィ ィェィィィヲ ィ ィャ06ィコ06ィェィー ィ ィィィィ 08ィ 0909ィャィ ィー08ィィ09ィ 02ィー ィーィ ィェ01ィ 08ィー OpenGL 1.2.

14 13

15 13 チィ 09ィーィケ I 0209ィェ OpenGL 15

16 13

17 130105ィ 09ィ ィ 00ィィ ツ0209ィコィィィヲ ィィ OpenGL ツ02ィャ ィヲィーィィ ィコ 0607ィィ09ィ ィェィィ06 00ィョィェィコ02ィィィヲ OpenGL, ィェ0206ィ ィィィャ ィェ07ィーィケ 0202 ィャ0209ィー ィャィィ080609ィ ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 ィェィ 05ィコ08ィ ィェ02, ィィィーィケ 06ィ 05ィ 09ィーィケ, 04ィ 01ィ ツィィ ィコ06ィー060806ィヲ ィャ0603ィェ ィ ィーィケ ィャ06ィエィケ06 ィ ィィィ 05ィィ06ィー02ィコィィ ィ 00ィィ ツ0209ィコィィィヲ ィ 01ィィ02ィィ06ィェィェ06ィヲ 04ィ 01ィ ツ02ィヲ ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ ィー ィィィェィー0204 ィィ0406ィ 08ィ 0302ィェィィィヲ 06ィ ィイ02ィコィー ィ 05ィケィェ ィャィィ08ィ (ィコィ ィコ 09ィョィエ0209ィー09ィョ06ィエィィ01, ィーィ ィコ ィィ ィ 08ィ 03ィ 02ィャ0401) ィー060006, ツィー06ィ ィ ィーィケ ィーィ ィコ06ィヲ 09ィィィェィー ィャ0603ィェ04ィャ, ィェィ ィ ィィィーィャィ ィェ0206ィ ィィィャ ィョ06ィエィィ02 01ィ ィェィェ0402: ィャ02ィー08ィィ ツ0209ィコィィ02 ィャ ィィ 04ィ 01ィ 06ィー ィャィョ ィィ 09ィェィョィー0802ィェィェ ィー08ィョィコィーィョ08ィョ 06ィ ィイ02ィコィーィ, 06ィ 04 ツィェ06 09 ィー080201ィャ0208ィェ06ィャ 0209ィコ05ィィ ィャ ィー08ィ ィェ09ィー ィィィャ ィー0401 ィャ ィヲ: 0キ ィ, 04ィ 01ィ ィェィェィ ィャ06ィエィケ ィェィィ ィェィー08ィ ィィ 08ィ 01ィィィョ09ィ ; 17

18 ィ 09ィ ィ 00ィィ ツ0209ィコィィィヲ ィィ OPENGL 0キ3 ィコィョィ, 04ィ 01ィ ィェィェ04ィヲ ツ ィェィィ ィェィー08ィ ィィ 0105ィィィェ ィ 08ィ. 08ィェィィィャィ 02ィィ ィョ03ィィィー ィ 01ィ ィェィィ07 ィャ ィィ 0109ィィ0302ィェィィ07, ィィ04ィャ02ィェ02ィェィィ ィャ04 ィィ05ィィ ィャィ ィー0208ィィィ 05ィ 06ィ ィイ02ィコィーィ 09 ィー02 ツ02ィェィィ02ィャ ィャ02ィェィィ. 01ィ 0708ィィィャ0208, ィケィェ ィャ02ィエ02ィェィィ02 06ィ ィイ02ィコィーィ ィケ 0609ィィ x ィコ ィーィケ06 s ィャ/c ィャ060302ィー ィ 04ィーィケ 04ィ 01ィ ィェ ィャ06ィエィケ ィャィョ0504: x(t) = st. 00ィ ィー0208ィィィ 0504 ィィ ィー02ィコ09ィーィョ ィー, ィコィ ィコ ィェ0609ィーィケ 06ィ ィイ02ィコィーィ 0904ィ ィィィャ060102ィヲ09ィー09ィョ02ィー ィー06ィャ. 00ィ ィー0208ィィィ 0504 ィェ0206ィ ィィィャ ィョ ツ02ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 06ィ ィイ02ィコィーィ, 09 ィィ ィャ06ィエィケ ツィィ ィー0907 ィコ0605ィィ ツ0209ィー ィー08ィ 0302ィェィェ ィーィ, ィ 01ィ 06ィエ ィ ィィ08ィーィョィ 05ィケィェ ィェィ ィ ィ ィー ィー02ィヲ03ィ 07 ィャ ィケ ィャィ ィー0208ィィィ 05ィ ィー 06ィ ィイ02ィコィーィ ィエ02ィェィィ02 04ィ 01ィ 02ィー 08ィ ィェィィ02 ィィ 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィィ ィィ09ィー06 ツィェィィィコ ィーィ, ツィー ィコィョ07ィェ0609ィーィィ 09 ィャィ ィー0208ィィィ 0506ィャ ィー ツィィィーィ ィーィケ ィー ィコィ ィヲ ィー06 ツィコィィ 06ィ ィイ02ィコィーィ, ィィ0406ィ 08ィ 0302ィェィィ02 ィコ06ィー ィー0802ィ ィョ02ィー ィー0806ィィィーィケ. 0308ィィィャ0208 ィャ ィィ ィエ02ィェィィ07: ィェ0202, 04ィ 01ィ 09ィ 02ィャ0602 ィェィ 0708ィ ィェィィ02ィャ ィィ ィャ06ィエィェ0609ィーィケ06 ィィ0405ィョ ツ02ィェィィ07. 00ィィ08ィーィョィ 05ィケィェィ 07 ィコィ ィャ0208ィ ィー, ィコィ ィコ ィー080201ィャ0208ィェ ィ ィェィェ0402 ィ ィョ01ィョィー 06ィー06ィ 08ィ 03ィ ィーィケ0907 ( ィィ080609ィ ィーィケ0907) ィェィ 0109ィョ01ィャ0208ィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02. 05ィ ィャ02ィーィィィャ, ツィー ィ 01ィ ツ, ィェ02 ィー0802ィ ィョ06ィエィィ ィ 05ィィ09ィーィィ ツィェ0609ィーィィ ィョ ツィ 02ィャ ィィ0406ィ 08ィ 0302ィェィィ07 (ィェィ 0708ィィィャ0208, ィェィ ィョ ツィェィ 07 09ィィ04ィョィ 05ィィ04ィ 02ィィ07), ィャィ ィー0208ィィィ 0504 ィャ0600ィョィー ィィィーィケ0907 ィコ ィー02ィヲ03ィィィャ ィャィ ィャ, ィェィ 0708ィィィャ0208, ィコ 08ィ 04ィェ04ィャ ィーィ ィャ 06ィ ィイ02ィコィー0609, ィ ィエ02ィェィィ02 06ィー09ィョィー09ィー090609ィ ィーィケ. 02ィ ィーィョ07ィ 02ィー ィ ィィィーィャ 09ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィィヲ, ィィ090409ィ 02ィャ06ィャ ツィ 09ィーィェ06ィャ 0905ィョ ツィ 02 ィェィ ィ 02ィャ04ィヲ ィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ (rendering). 06ィャ0207 ィェィ ィェィ ィ 0608 ィャ ィヲ, ィ ィィィーィャ ィェ ィー0806ィィィーィケ ィー0902ィー09ィー09ィョ06ィエ0202 ィィ0406ィ 08ィ 0302ィェィィ02 ィェィ 05ィコ08ィ ィェ02 ィャ06ィェィィィー0608ィ. 0207ィィ09ィ ィェィェィ ィャィ 0008ィ 00ィィ ツ0209ィコ06ィヲ 06ィ 08ィ ィ 06ィーィコィィ 06ィー ィョ ツ02ィェィィ ィャ02ィー08ィィ ツ0209ィコ06ィヲ ィャ ィィ 06ィ ィイ02ィコィーィ ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィ07 ィェィ 05ィコ08ィ ィェ02 ィェィ ィ 02ィー ィ 00ィィ ツ0209ィコィィィャ ィャ.

19 ィャ02ィー08ィィ ツ0209ィコィィ02 ィャ ィィ ィーィ ィェ0609ィィィャ0907 ィ ィ ィェ06 ィェィ ィー06ィャ, ィコィ ィコィョ ィャ06ィエィケ OpenGL 06ィコィ ィ 02ィー ィ 05ィィ04ィ 02ィィィィ 0008ィ 00ィィ ツ0209ィコ ィ. 04ィィ ィ 00ィィ ツ0209ィコィィィヲ ィィ ィャ0209ィー06 OpenGL 09 ィェ02ィャ ィャ02ィー08ィィ ツ0209ィコィィ02 ィャ ィィ 00 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコ02 ィィ ィケ04ィョ02ィー0907 ィ 0605ィケ ィコ0605ィィ ツ0209ィー ィ 04ィェ0606ィ 08ィ 04ィェ0401 ィャ ィヲ ィィ09ィ ィェィィ ィャ ィィ ツィィィェ06ィヲ 05ィー ィー ツ0209ィィ01ィェィ 07 ィェ ィャ0603ィェ0609ィーィケ ィェ0609ィーィケ ィィ ィ ィーィケ 0802ィ 05ィケィェ04ィヲ 06ィ ィイ02ィコィー ィ ィー0205ィケィェ06, ィェ0206ィ ィィィャ ィ ィィ08ィ ィーィケ ィー ィ 02ィェィェ0609ィーィィ 06ィ ィイ02ィコィーィ, ィコ06ィー ィ 03ィェ ィコ06ィェィコ0802ィーィェ06ィヲ 04ィ 01ィ ツィィ ィィ 04ィ 01ィ ィェィェ ィコ05ィ 0909ィ 06ィ ィイ02ィコィー ツィ 09ィーィェ0609ィーィィ, ィャ ィィ ィャ0603ィェ ィィィーィケ ィェィ 06ィ ィイ02ィャィェ0402 ィィ 0008ィ ィェィィ ツィェ ィ ィイ02ィャィェ0402 ィャ ィィ ィー 0607ィィ09ィ ィーィケ 09ィェィョィー0802ィェィェ0609ィーィケ 06ィ ィイ02ィコィーィ, ィ 0008ィ ィェィィ ツィェ ィャ02ィー08ィィ ツ0209ィコィィ ィヲ09ィー09ィ ィェ0609ィーィィ. 0308ィィィャ ィ ィイ02ィャィェ06ィヲ ィャ ィィ 0706ィコィ 04ィ ィェ ィェィ 08ィィ09ィョィェィコ ィェィ 09ィー0607ィエ ィャ07 ィェィ ィィィ 0605ィケ03ィョ ィョ050708ィェ0609ィーィケ 04ィ ィ 05ィィ 0008ィ ィェィィ ツィェ0402 ィャ ィィ, ィョ ツィ 02ィャ ィャ06ィエィケ ィコィ 05ィケィェ06ィヲ ィコィョ0906 ツィェ0605ィィィェ02ィヲィェ06ィヲ ィ ィコ09ィィィャィ 02ィィィィ ィェ0609ィーィィ. 06ィ ィコィ 07 ィャ ィケ ィーィ ィー 0906ィ 06ィヲ ィェィ ィ ィ ィェィェ0401 ツ ィ ィエィィ ィィィェ04 ィャィェ060006ィョ000605ィケィェィィィコ0609 (070605ィィ0006ィェ0609), ィー06ィャィョ 05ィーィィ ィャ ィィ 02ィエ02 ィェィ ィ 02ィー ィィ0006ィェィ 05ィケ-

20 ィ 09ィ ィ 00ィィ ツ0209ィコィィィヲ ィィ OPENGL 04ィィ ィ ィイ02ィャィェィ 07 (0906ィコ090205ィケィェィ 07) ィャ ィケ ィー0608ィ ィェ04ィャィィ. 0308ィィ ツィィィェィ ィョ050708ィェ0609ィーィィ ィィ0006ィェィ 05ィケィェ0401 ィャ ィヲ ィコ080602ィー ィィ01 ツ ツィ ィヲィェ06ィヲ 00ィィィ ィコ0609ィーィィ ィィ ィー06ィー02, ツィー ィィ ィ ィーィケ ィ 02ィィィィ 09 ィーィ ィコィィィャィィ ィャ ィャィィ ィ 00ィィ ツ0209ィコ06ィヲ ィ 0707ィ 08ィ ィーィョ ィィィャ ィ ィェィィ ツィェ06ィヲ ィャ ィィ 0708ィィ ィェ ィェィ 08ィィ09ィョィェィコ ィェ0609ィェ04ィャ ィーィィ0706ィャ ィャ02ィー08ィィ ツ0209ィコィィ01 ィャ ィヲ, ィィ09ィ 02ィャ04ィャ OpenGL, ィー0907 ィコィ ィコ 08ィ ィ ィェィィ ツィェ ィィ0006ィェィ 05ィケィェ0402 ィャ ィィ. 02ィーィャ02ィーィィィャ, ツィー ィィ 05ィー06ィャ ィ ィィィ 05ィィ06ィー02ィコィ ィェ ィィィー ィコィ ィコィィ01-05ィィィ ィー ィコィィ 0108ィ ィェ02ィェィィ07 01ィ ィェィェ0401 ィェィ 09ィェ0203ィェィィ01 ィェ0609ィィィー ィ ィコ ィ ィィィ 05ィィ06ィー02ィコ02 ィェ02ィー ィー ィ 08ィ ィ 06ィーィコィィ ィィ ィ ィコィーィィ080609ィ ィェィィ07 ィャ ィヲ 0201ィィィェ09ィー0902ィェィェ06ィヲ 04ィ 01ィ ツ02ィヲ OpenGL ィー ィ 05ィィ04ィ 02ィィ07 ィ ィィィーィャ ィコ08ィ ィェィィ04ィ 02ィィィィ ィー080201ィャ0208ィェ0401 ィャ ィヲ ィ ィェ06 08ィ ィ 06ィーィ 09 ィャ ィャィィ 0607ィィ09ィ ィェィ ィ ィェィィィャィ 02ィィ07 08ィェィィィャィ 02ィィ07 09 ィェィ 09ィー0607ィエ ィャ ィェ0609ィェ06ィャ 04ィ 01ィ 02ィー ィョ ツィェィョ06 (09 07ィ ィコ02ィーィ 01 ィコ06ィャ07ィケ06ィー0208ィェ ィャ ィィ080609ィ ィェィィ07), 05ィィィ ィャ06ィエィケ06 ィョ09ィー0806ィヲ09ィー09 09ィコィ ィェィィ080609ィ ィェィィ ィィ0302ィェィィ07 (motion capture), ィエィィ ィィ ィ ィーィケ ィャ02ィエ02ィェィィ02 06ィ ィイ02ィコィー0609 (ィェィ 0708ィィィャ0208 ツ ィコィ ) ィィ05ィィ ィィ01 ツィ 09ィー02ィヲ (0109ィィ0302ィェィィ07 08ィョィコ, ィェ0600, ィーィョ050609ィィィエィ ). OpenGL ィィィー ィ 0707ィ 08ィ ィー 05ィィィェ02ィヲィェ ィ 08ィ ィ ィェィィィヲ, ィコ06ィー060804ィヲ ィィ ィケ04ィョ02ィー ィー06ィャ ツィィ ィ 01ィ ィェィィ ィー06ィヲ ィ ィェィィィャィ 02ィィィィ

21 ィ ィー0208ィィィ ィィ ィ ィェィィ ツィェィ ィィ0006ィェィ 05ィケィェィ 07 ィャ ィケ ( ィー, ィェ0609, ィャィ 0903ィーィ ィ ィィ080609ィ ィェィィ02) ィェ0402 ィー0201ィェ ィィィィ ィャ ィィ080609ィ ィェィィ07 ィィ04ィャ02ィェ02ィェィィ ィャ04 ィィ ィェィィ07 06ィ ィイ02ィコィー0609 (ィェィ 0708ィィィャ0208, ィェィ 0609ィェ ィコ08ィィ090401) ィャ0600ィョィー ィ 04ィーィケ 0802ィ 05ィィ040609ィ ィェ ィ ィィィ 05ィィ06ィー02ィコィィ ィ ィー0208ィィィ ィェ0609ィェ04ィャィィ ィコ08ィィィー0208ィィ07ィャィィ 0904ィ 0608ィ ィー06ィヲ ィィ05ィィ ィィィェ06ィヲ ィャ ィィ ィャィ ィー0208ィィィ 05ィ ィェ0609ィーィィ 06ィ ィイ02ィコィーィ ィー0907 ィー0802ィ 0609ィ ィェィィ ィ 05ィィ09ィーィィ ツィェ0609ィーィィ ィョ ツィ 02ィャ ィィ0406ィ 08ィ 0302ィェィィ07 ィィ 09ィコ ィーィィ 08ィ ィ 06ィー04 ィ ィィィーィャィ 05ィコ08ィ ィェィィ04ィ 02ィィィィ ィケ ィエ02ィェィィ ィィィャ02ィェ0702ィー ィコィ ィィィコ ィョ ツィ 02ィャ ィィ0406ィ 08ィ 0302ィェィィ07, ィー06ィャィョ ィ 01ィ ツ, ィー0802ィ ィョ06ィエィィ01 ィィィェィー0208ィ ィコィーィィ09ィェ ィ ィィィャ060102ィヲ09ィー09ィィ ィ ィャィャ ィケ040609ィ ィー020502ィャ, 06ィ 04 ツィェ ィ ィィ08ィ 06ィー ィー0402 ィャ ィィ. OpenGL ィィ04ィェィ ツィ 05ィケィェ06 08ィ 0408ィ ィ ィ ィー0409ィ 05ィ 09ィケ ィコィ ィコ ィ ィィィ 05ィィ06ィー02ィコィ ィ ィャィャィィ080609ィ ィェィィ07 ィィィェィー0208ィ ィコィーィィ09ィェ ィ 00ィィ ツ0209ィコィィ ィィ ィェィィィヲ, 09

22 ィ 09ィ ィ 00ィィ ツ0209ィコィィィヲ ィィ OPENGL ィェ02ィヲ 0909ィー080602ィェィ 0601ィェィ ィィ04 09ィ ィャ ィー0401 ィャ ィヲ ィャィ ィー0208ィィィ 05ィ ィャ ィケ 0806ィェ00ィ. 06ィ ィコ0302 OpenGL ィィ09ィ 02ィー ィェィ ィェィィ02 ィー02ィコ09ィーィョ ィコィョ07ィェ0609ィーィィ 05ィー ィー 0106ィ ィィ09ィ ィーィケ ィーィ ィー06 ツィェ ィ 05ィィ09ィーィィ ツィェ06ィヲ ィ ツィィ ィヲ09ィー ィー ィャィ ィー0208ィィィ ィーィィ07ィ 0705ィ 09ィーィィィコィ, ィ ィィ ィー ィ ィェ ィ ィャィャィィ080609ィ ィェィィ07 ィャィ ィー0208ィィィ OpenGL 08ィ 0909ィャィ ィー08ィィ09ィ 02ィー ィ ィエ02ィェィィ ィケ ィエ02ィェィィ07 ィェ0206ィー010205ィィィャィ 06ィー ィャ ィィ ィャィ ィー0208ィィィ 05ィ, ィー06ィャィョ 0708ィィィェ02ィィ ィ 0608ィ ィー0907 ィー02ィャィィ 0302 ィー0802ィ 0609ィ ィェィィ07ィャィィ ィ 05ィケィェ06ィャ ィャィィ0802 ィャ04 09ィーィ 05ィコィィ09ィ 02ィャ ィコ08ィ ィヲィェ ィェ04ィャィィ ィャ ィィ080609ィ ィェィィ07 ィョ ィィ07ィャィィ ィエ02ィェィィ ィー070302ィェィェ04ィャィィ ィィ09ィー06 ツィェィィィコィ ィャィィ ィーィ (ィェ02ィ 06, 0506ィャィィィェ ィェィーィェ ィ ィャ0704), 09ィー0608ィィ ツィェ04ィャ ィエ02ィェィィ02ィャ ( ィエ02ィェィィ02ィャ 06ィー 06ィー08ィ 03ィ 06ィエィィ ィェ0609ィー02ィヲ) ィィ ィー ィーィ ィェ01ィ 08ィー OpenGL ィィ09ィ 02ィー ィー06 ツ02 ツィェ0402 ィィ 07ィ 08ィ ィケィェ0402 ィィ09ィー06 ツィェィィィコィィ ィーィ, ィー (ィャ06ィエィェ0609ィーィケ) ィコ06ィー ィ 01ィ 02ィー ィー060906ィヲ 09ィィ09ィー02ィャ02 RGB (Red-Green-Blue) ィィ09ィ 06ィー ィー070302ィェィェ0402 ィィ09ィー06 ツィェィィィコィィ, ィコィー08ィ 05ィケィェ ィ 01ィ ィェィィ02 ィャ06ィエィェ0609ィーィィ ィィ09ィー06 ツィェィィィコ0609, 09ィー0608ィィ ツィェ ィエ02ィェィィ ィェィ ィコ06 09ィョィエ0209ィー09ィョ06ィー ィ ィィィーィャィィ ツ0209ィコィィ ィィ02ィャ04, ィエィィ02 ィャ ィィ080609ィ ィーィケ ィィ 05ィーィィ ィコィー ィャ06ィエィケ ィャ0603ィェ0609ィー02ィヲ OpenGL ィャ02 05ィー060006, ィ ィャ0603ィェ06 ィィ ィケ040609ィ ィーィケ ィコィ ツ0209ィー0902ィェィェ0402 ィ ィィィーィャ ツ02ィーィ ィエ02ィェィィ07 ィィ ィ 09ィ ィーィケ OpenGL ィョ ツィィ090502ィェィェ ィーィ ィー06 ツ02ィコ, ツィー ィー 04ィ 0102ィヲ09ィー090609ィ ィーィケ ィ 0707ィ 08ィ ィーィェ ィャ0603ィェ0609ィーィィ ィ 08ィ ィ 06ィーィコィィ ィャ02ィー08ィィィィ ィィ08ィーィョィ 05ィケィェィ 07 ィコィ ィャ0208ィ 03ィ 08ィ ィャ02ィー ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィャ ィー ィ 06ィー06ィ 08ィ 0302ィェィィ07 ィー080201ィャ0208ィェ ィ ィイ02ィコィー ィィ ィョ01ィャ0208ィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02. 05ィョィエ0209ィー09ィョ02ィー ィーィ ィー06 ツィェ06 ィ 0605ィケ ィコ0605ィィ ツ0209ィー ィ 04ィェ0606ィ 08ィ 04ィェ0401 ィャ ィヲ ィコィ ィャ0208, 08ィ 0405ィィ ツィ 06ィエィィ ィヲ09ィー09ィ ィャィィ ィコ02ィィィィ ィィ ィョ ツ02ィー06ィャ 01ィ -

23 ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ 23 08ィ ィコィー0208ィィ09ィーィィィコ 0802ィ 05ィケィェ ィーィィ ツ0209ィコィィ01 09ィィ09ィー02ィャ (0006ィー06ィコィ ィャ0208, ツ ツ0209ィコ ィ 04ィ ). 00 OpenGL ィィ09ィ 02ィー ィーィ ィー06 ツィェ06 03ィィ0806ィコィィィヲ ィコ05ィ 0909 ィャ ィヲ ィコィ ィャ0208, 0607ィィ090409ィ 02ィャ04ィヲ 05ィィィェ02ィヲィェ04ィャ ィ 08ィ ィ ィェィィ02ィャ ィェ ィェ0401 ィコ ィィィェィ ィーィ 01 [15]. 06ィー06ィー ィコ05ィ ィ ィェィィ ツ02ィェ ィャ ィィ080609ィ ィェィィ02ィャ ィコィ ィャ ィ 0209ィコ06ィェ02 ツィェ06 ィャィ 0504ィャ 08ィ 04ィャ020806ィャ 01ィィィ 0008ィ 00ィャ04 (ィェ02ィー ィャ0603ィェ0609ィーィィ ィ ツィィ 0005ィョィ ィィィェ ィコ0609ィーィィ) ィィ 05ィィィェ02ィヲィェ04ィャィィ 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィ ィャィィ ィコ02ィィィィ (ィェ02ィー ィャ0603ィェ0609ィーィィ ィャ ィィ080609ィ ィェィィ07 ィェ0205ィィィェ02ィヲィェ0401 ィィ09ィコィ 0302ィェィィィヲ) ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ 05ィ ィャ07 08ィ 0409ィィィーィィ07 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ ィ ィ ィェ06 ィャィェ ィー0906 ィ ィィィーィャ ィコ08ィ ィェィィ04ィ 02ィィィィ, 06ィ 05ィ 01ィ 06ィエィィ01 08ィ 0405ィィ ツィェ04ィャィィ 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィ ィャィィ ィー020702ィェィィ 0802ィ 05ィィ09ィーィィ ツィェ0609ィーィィ ィィ0406ィ 08ィ 0302ィェィィ07 ィィ 09ィコ ィーィィ 08ィ ィ 06ィー ィェィ 09ィー0607ィエ ィャ ィェ0609ィェ04ィャィィ ィー ィ 0906 ィャィェ060006ィャ ィーィィ ィェ0401 ィェィ 0708ィ ィェィィ07 ィー08ィ 0909ィィ080609ィコィ 05ィョ ツ02ィヲ ィィ 08ィ 09ィー0208ィィ04ィ 02ィィ ィィィーィャ04 ィー08ィ 0909ィィ080609ィコィィ 05ィョ ツ02ィヲ 0609ィェ0609ィ ィェ04 ィェィ ィィ09ィ ィェィィィィ (ィー08ィ 0909ィィ080609ィコ02) 08ィ ィー08ィ ィェ02ィェィィ ィー060906ィヲ 05ィェ020800ィィィィ 06ィー ィィ09ィー06 ツィェィィィコ ィーィ ィ 01ィ ィェィィ07 ィェィ 0902ィー ツィ ィーィコィョ 0005ィ 04ィ 09ィィ08ィーィョィ 05ィケィェ ィェィ ィ ィ ィー (080204ィョ05ィケィーィィ08ィョ06ィエ0202 ィィ0406ィ 08ィ 0302ィェィィ02). 0608ィ 0909ィィ080609ィコィ 05ィョ ツ02ィヲ ィィ 09ィャ0203ィェ0402 ィ ィィィーィャ ィェ0609ィェ06ィャ ィィ ィケ04ィョ06ィー ィョ ツ02ィェィィ ィー060802ィ 05ィィ09ィーィィ ツィェ0401 ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ05ィョ ィ ィィィーィャィィ ツ0209ィコ06ィヲ ィェ0609ィーィィ ィェィ 01ィ ィェィェ04ィヲ ィャ06ィャ02ィェィー 05ィーィィ ィ ィィィーィャ04 ィェ ィョ ツィィ05ィィ 08ィ ィー08ィ ィェ02ィェィィ ィ 01ィ ツィ 01 ィィィェィー0208ィ ィコィーィィ09ィェ ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィィヲ, ィェ0609ィェ06ィャ ィィ ィケ04ィョ06ィー ィェィ 0609ィェ ィ 09ィー0208ィィ04ィ 02ィィィィ ィィィーィャ04 08ィ 09ィー0208ィィ04ィ 02ィィィィ 09ィー080607ィー ィィ0406ィ 08ィ 0302ィェィィ ィャ06ィエィケ ィ 08ィ ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコ06ィヲ ィャ ィィ ィーィ ィコィィィャ ィ 06ィャ, ツィー06ィ 04 ィィィャィィィーィィ080609ィ ィーィケ 07ィ 08ィ ィャ02ィー0804 ィィ ィケ04ィョ02ィャ06ィヲ ィャ ィィ ィコィ ィャ ィコィ ィヲ ィー06 ツィコィィ (x, y, z) ィャ ィィ ィェ0702ィー ィ 08ィ ィ ィェィィ02 T (06ィ 04 ツィェ06 05ィィィェ02ィヲィェ0602), ィーィ ィコ0602, ツィー06 (x s, y s ) = T (x, y, z), (x s, y s ) ィコ ィィィェィ ィー ィィ080609ィ ィェィェ06ィヲ ィー06 ツィコィィ ィェィ 05ィコ08ィ ィェ ィョ ツィ ィィ-

24 ィ 09ィ ィ 00ィィ ツ0209ィコィィィヲ ィィ OPENGL 0006ィェィ 05ィケィェ06ィヲ ィャ ィィ ィ 08ィ ィ ィェィィ ィェ0702ィー ィコィ ィヲ ィィィェ ィィ0006ィェィ, ツ ィョ ツィ 02ィャィ ィコ02ィィ ィィィー ィ 09ィー08 ィェィ ィョ05ィケィーィィ08ィョ06ィエ02ィヲ ィコィ 08ィーィィィェィコ ィエ02ィェィィ ツィィ ィー ィー010205ィケィェ06 06ィー ィ 08ィ ィ ィェィィィヲ, 06ィ 04 ツィェ ィャ06ィエィケ ィーィ ィー06 ツィェ ィー06ィヲ ィャ ィィ. OpenGL 0609ィェ0609ィ ィェィ ィェィ 05ィコ08ィ ィェィィ04ィ 02ィィィィ ィャ06ィエィケ06 08ィ 09ィー0208ィィ04ィ 02ィィィィ. 0208ィィ02ィェィーィィ080609ィ ィェィェ0609ィーィケ ィェィ ィィ0006ィェィ 05ィケィェ0402 ィャ ィィ 09ィコィョ ィィ ィケ040609ィ ィェィィ02ィャ 05ィィィェ02ィヲィェ06ィヲ ィャ ィィ ィコィ ィャ ィー 0607ィィ09ィ ィーィケ ィケ ィ ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ 09 ィー0208ィャィィィェィ 01 ィ ィ 0804 ィャィ ィー08ィィ02 ィィ 0902ィコィー ィコィ ィコ05ィィ ィャ ィー08ィ ィェ09ィー ツ ィケ, 05ィー ィィ ィェ0209ィーィィ ィ 0605ィケ03ィョ06 ツィ 09ィーィケ ィ 02ィィィヲ ィ ィィィーィャィ ィェィ ィィィ 05ィィ04ィィ080609ィ ィェィェ ィ 00ィィ ツ0209ィコィィ (09 ィェィ 09ィー0607ィエ ィャ07 09ィーィ 0903ィィ02 09ィーィ ィェ01ィ 08ィー06ィャ). 06ィ ィコィィィャ 06ィ 08ィ 0406ィャ, ィ ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ OpenGL 0608ィィ02ィェィーィィ080609ィ ィェ ィェィ ィィィェィー0208ィ ィコィーィィ09ィェ ィィ ィェィィ ィーィ ィー06 ツィェ ィ ィェィィ ツ02ィェィェ06ィヲ ィコ06ィヲ ィャ ィヲ ィャィ ィー0208ィィィ ィィ ィエ02ィェィィ ィェィ ィコ06, 09 09ィィ05ィョ ィー06ィー04 ィィ 00ィィィ ィコ0609ィーィィ 09ィーィ ィェ01ィ 08ィーィ ィ ィィィ 05ィィ06ィー02ィコィィ, ィャ06ィエィケ ィ ィ ィョィェィコ02ィィィヲ ィャ0603ィェ ィ 05ィィ040609ィ ィーィケ 03ィィ0806ィコィィィヲ ィコィー08 08ィ 0405ィィ ツィェ0401 ィャ ィヲ ィーィケ ィィ04ィィ ツ0209ィコィィ-ィー06 ツィェ0401, 0609ィーィ 09ィ 0709ィケ 09 08ィ ィャィコィ 01 ィー0802ィ 0609ィ ィェィィィヲ ィコ ィィィェィー0208ィ ィコィーィィ09ィェ04ィャ 0708ィィ ィェィィ07ィャ (0906 ィャィェ060006ィャ 04ィ 09 ツ02ィー 03ィィ0806ィコ06ィヲ ィ 0707ィ 08ィ ィーィェ06ィヲ ィコィィ OpenGL).

25 130105ィ 09ィ ィェィィ02 09 OpenGL ィェ0609ィェ ィャ0603ィェ0609ィーィィ 0207ィィ090409ィ ィーィケ ィャ0603ィェ0609ィーィィ OpenGL ィャ04 ィ ィョ0102ィャ ツ ィョィェィコ02ィィィィ ィ ィィィ 05ィィ06ィー02ィコィィ ィョィェィコ02ィィィィ ィャ0603ィェ06 08ィ ィィィーィケ ィェィ 0707ィーィケ ィコィ ィー ィィィヲ: 0キ3 08ィョィェィコ02ィィィィ 0607ィィ09ィ ィェィィ ィィィャィィィーィィ ィー 06ィ ィイ02ィコィー04 ィェィィ03ィェ ィョ080609ィェ07 ィィ0208ィ 0801ィィィィ (0708ィィィャィィィーィィ0904), ィコ06ィー ィ ィェィ 06ィー06ィ 08ィ 03ィ ィーィケ 0008ィ 00ィィ ツ0209ィコィ ィィ09ィー02ィャィ. 00 OpenGL 09 ィコィ ツ0209ィー ィィィャィィィーィィ ィーィョ07ィ 06ィー ィー06 ツィコィィ, 05ィィィェィィィィ, ィャィェ060006ィョ000605ィケィェィィィコィィ ィィ ィー.01. 0キ3 08ィョィェィコ02ィィィィ 0607ィィ09ィ ィェィィ07 ィィ09ィー06 ツィェィィィコ ィーィ 0905ィョ03ィ ィー ィィ09ィ ィェィィ ィェィィ07 ィィ 07ィ 08ィ ィャ02ィー ィィ09ィー06 ツィェィィィコ ィーィ, 08ィ ィェィェ ィー080201ィャ0208ィェ06ィヲ ィェ02. 0キ3 08ィョィェィコ02ィィィィ 04ィ 01ィ ィェィィ07 ィ ィー08ィィィ ィョィー ィャ06ィエィケ06 04ィ 01ィ ィェィィ07 ィ ィー08ィィィ ィョィー ィ ィャィャィィ09ィー ィー, ィコィ ィコ ィ ィョ01ィョィー ィーィケ ィェィ 05ィコ08ィ ィェ02 06ィー06ィ 08ィ 03ィ 02ィャ ィ ィイ02ィコィー ィョ00ィィィャィィ ィ ィャィィ, ィィ ィャ06ィエィケ ィィィャィィィーィィ ィー0907, ツィー ィィィー0907 ィェィ 05ィコ08ィ ィェ02, ィー06 ィ ィー08ィィィ ィョィー ィー ィ ィ ィェィ 05ィコ08ィ ィェ. 25

26 ィ 09ィ ィェィィ02 09 OPENGL 00 ィコィ ツ0209ィー0902 ィ ィー08ィィィ ィョィー0609 OpenGL ィー 04ィ 01ィ 09ィ ィーィケ ィー, 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィィ ィャィ ィー0208ィィィ 05ィ, ィー02ィコ09ィーィョ0804, 07ィ 08ィ ィャ02ィー ィエ02ィェィィ07. 0キ3 08ィョィェィコ02ィィィィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィー 04ィ 01ィ ィーィケ ィェィィ02 ィェィ ィ ィ ィー ィィ08ィーィョィ 05ィケィェ06ィャ ィー08ィ ィェ09ィー0902, 07ィ 08ィ ィャ02ィー ィ ィイ02ィコィーィィ09ィ ィコィ ィャ ィェィ 07 05ィーィィ 07ィ 08ィ ィャ02ィー0804, 09ィィ09ィー02ィャィ 09ィャ060302ィー ィェ02 ィー0605ィケィコ ィ 09ィィ05ィケィェ ィー0806ィィィーィケ ィィ0406ィ 08ィ 0302ィェィィ02, ィェ06 ィィ 06ィー0902 ツィケ 06ィ ィイ02ィコィー04, 06ィコィ 04ィ 0903ィィ ィェ ィェィィ07. 0キ3 01ィ ィ ィョィェィコ02ィィィヲ ィャ02ィー08ィィ ツ0209ィコィィ ィ 08ィ ィ ィェィィィヲ ィー ィ ィャィャィィ09ィーィョ ィェ07ィーィケ 08ィ 0405ィィ ツィェ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー ィー, ィェ0609, ィャィ 0903ィーィ ィ ィィ080609ィ ィェィィ ィィ 05ィー06ィャ OpenGL ィャ060302ィー ィェ07ィーィケ ィェィィィー0205ィケィェ ィ 02ィィィィ, ィーィ ィコィィ02 ィコィ ィコ ィィ ィケ040609ィ ィェィィ ィ ィヲィェ ィー080602ィェィィ07 05ィィィェィィィヲ ィィ ィェ0609ィー02ィヲ, ィョ01ィ 0502ィェィィ02 ィェ0209ィィ01ィィィャ ィ 00ィャ02ィェィー0609 ィィ0406ィ 08ィ 0302ィェィィィヲ, 08ィ ィ 06ィーィ 09 ィィ0406ィ 08ィ 0302ィェィィ07ィャィィ ィェィ ィョ080609ィェ02 07ィィィコ ィヲ ィィ ィー ィェィー ィヲ09 OpenGL OpenGL ィー06ィィィー ィィ04 ィェィ ィ 0608ィ ィ ィィィ 05ィィ06ィー02ィコ ィ ィ ィョィェィコ02ィィィィ 0108ィ ィェ07ィー ィェ0609ィェ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ02, ィ 0604ィェィ ツ02ィェィィ07 ィコ06ィー060806ィヲ 09 01ィ 05ィケィェ02ィヲ0302ィャ ィャ04 ィ ィョ0102ィャ ィィ ィケ040609ィ ィーィケ ィ ィ ィ ィィィ ィーィョ08ィョ GL. 0306ィャィィィャ ィェ0609ィェ06ィヲ, OpenGL 09ィコ0506 ツィ 02ィー ィ 07 ィェ0209ィコ0605ィケィコ ィェィィィー0205ィケィェ0401 ィ ィィィ 05ィィ06ィー02ィコ ィ 07 ィィ04 ィェィィ01 ィ ィィィ 05ィィ06ィー02ィコィ ィョィーィィ05ィィィー GL(GLU GL Utility) ィョィェィコ02ィィィィ 05ィー06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ ィェ04 ツ ィ ィ ィョィェィコ02ィィィィ GL ィーィ 09 GLU ィ 0802ィ 05ィィ04ィ 02ィィ07 ィ ィェ ィョィェィコ02ィィィヲ, ィーィ ィコィィ01 ィコィ ィコ ィェィ ィ ィョ050708ィェ ィャ02ィー08ィィ ツ0209ィコィィ ィィィャィィィーィィ (ィコィョィ, 03ィ 08, 02ィィ05ィィィェ0108, 01ィィ09ィコ), 00ィョィェィコ02ィィィィ ィー080602ィェィィ ィ ィヲィェ0609, 0802ィ 05ィィ04ィ 02ィィ ィェィィィー0205ィケィェ ィ 02ィィィヲ ィェィ 01 ィャィ ィー08ィィ02ィ ィャィィ ィィ ィー.07. OpenGL ィェ02 09ィコ0506 ツィ 02ィー ィ 07 ィェィィィコィ ィコィィ ィィィ 05ィケィェ0401 ィコ06ィャィ ィェ ィ ィ 06ィー ィコィェィ ィャィィ ィィ05ィィ ィ ィィィェ000608ィャィ 02ィィィィ 06ィー ィケ040609ィ ィー ィー06ィャィョ ィ 0405ィィ ィ ィェ ィィィ 05ィケィェ ィェ0609ィィィャ0402 ィ ィィィ 05ィィ06ィー02ィコィィ

27 ィェィー ィヲ09 OPENGL 27 04ィィ ィ ィェィィ04ィ 02ィィ07 ィ ィィィ 05ィィ06ィー02ィコィィ OpenGL ィ ツ02ィェィィ07 ツィ 09ィー06 ィィ ィケ04ィョ02ィャ ィョィェィコ02ィィィヲ 0904ィ ィィィャ060102ィヲ09ィー09ィィ ィケ040609ィ ィー020502ィャ ィィ ィー06ィ 08ィ 0302ィェィィ07 ィィィェ000608ィャィ 02ィィィィ ィャ06ィエィケ06 06ィコ06ィェィェ06ィヲ ィィ09ィー02ィャ04. 01ィ ィィィ ィョ050708ィェ06ィヲ ィー0907 ィ ィィィ 05ィィ06ィー02ィコィ GLUT (GL Utility Toolkit) ィャィ 05ィケィェ06 GLUT ィェ ィィィー 09 OpenGL, ィェ06 de facto 09ィコ0506 ツィ 02ィー ツィーィィ ィィ09ィー08ィィィ ィョィーィィ0904 ィィ ィィィャ0202ィー 0802ィ 05ィィ04ィ 02ィィィィ ィ 0405ィィ ツィェ ィ ィー000608ィャ. GLUT ィーィ ィー ィー0605ィケィコ06 ィャィィィェィィィャィ 05ィケィェ06 ィェ0206ィ ィィィャ04ィヲ ィェィ ィ ィョィェィコ02ィィィヲ ィ ィェィィ07 OpenGL0708ィィ ィェィィ07. 08ィョィェィコ02ィィ06ィェィ 05ィケィェ06 ィ ィェィ ィィ ツィェィ 07 ィ ィィィ 05ィィ06ィー02ィコィ GLX ィャ02ィェ ィョ050708ィェィ ィ 05ィケィェ02ィヲ0302ィャ 09 05ィー06ィヲ ィコィェィィ ィコィ ツ0209ィー ィェ0609ィェ06ィヲ ィ ィョ0102ィー 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ0907 GLUT ィャ02 ィー060006, 00ィョィェィコ02ィィィィ, ィィ00ィィ ツィェ ィコ06ィェィコ0802ィーィェ06ィヲ 06ィコ06ィェィェ06ィヲ ィィ09ィー02ィャ04, 06ィ 04 ツィェ ィー ィィィコ05ィ 01ィェ06ィヲ ィ ィャィャィェ04ィヲ ィィィェィー ィヲ09. 06ィ ィコ, 00ィョィェィコ02ィィィィ, ィィ09ィ 06ィエィィ ィェ02ィェィィ02 OpenGL, 0209ィーィケ ィーィ 0902 Win32 API ィィ X Window. 01ィ 08ィィ09ィョィェィコ ィャィ ィーィィ ツ0209ィコィィ ィーィ ィェィ ィ ィェィィ04ィ 02ィィ07 09ィィ09ィー02ィャ04 ィ ィィィ 05ィィ06ィー02ィコ ィィィィ, 08ィ ィ 06ィーィ 06ィエ02ィヲ ィョ0708ィ ィェィィ02ィャ 09ィィ09ィー02ィャ04 Windows. 08ィェィ ィィ ツィェィ ィ ィェィィ04ィ 02ィィ07 ィィ ィケ04ィョ02ィー0907 ィィ ィョ00ィィ ィィ0701 OpenGL.

28 ィ 09ィ ィェィィ02 09 OPENGL ィィィー02ィコィーィョ08ィ OpenGL 08ィョィェィコ02ィィィィ OpenGL 0802ィ 05ィィ040609ィ ィェ04 09 ィャ ィィ ィコ05ィィ02ィェィー ィィ ィェィィ ィーィョ07ィ 02ィー ィィ ィコ05ィィ02ィェィーィ 06ィェ ィ ィ ィ ィー0409ィ 02ィー ィコ06ィャィ ィェ0104, ィ OpenGL ィィィェィー ィーィィ08ィョ02ィー ィィ ィェ0702ィー ィィ01. 05ィ ィャ ィャ060302ィー ィェィ ィィィーィケ0907 ィコィ ィコ ィェィ ィー06ィャ 0302 ィコ06ィャ07ィケ06ィー020802, ィェィ ィコ06ィー060806ィャ ィェィ ィィィー0907 ィコ05ィィ02ィェィー (ィェィ 0708ィィィャ0208, 09 09ィィ ィィィェィ ィャィィ ツ0209ィコィィ 04ィ 0008ィョ03ィ 02ィャ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ DLL), ィーィ ィコ ィィ ィェィ 0108ィョ0006ィャ (0708ィィ 05ィー06ィャ ィャ060302ィー ィ 04ィーィケ ィィ ィケ040609ィ ィェ ィィィ 05ィケィェ04ィヲ ィー06ィコ ィ ツィィ 01ィ ィェィェ0401 ィャ020301ィョ ィャィ 03ィィィェィ ィャィィ). GL 06ィ 08ィ ィ ィ ィー0409ィ 02ィー ィィ 08ィィ09ィョ02ィー 09 ィ ィョ ィコィ 0108ィ 0008ィ 00ィィ ツ0209ィコィィ ィィィャィィィーィィ ィョ ツ02ィー06ィャ ィェ02ィコ06ィー ツィィ0905ィ 0904ィ 08ィ ィェィェ ィィィャ ィ ィヲ 0708ィィィャィィィーィィ09 05ィー06 ィー06 ツィコィ, 06ィー ィコ, ィャィェ060006ィョ000605ィケィェィィィコ ィィ ィー ィ ィヲ ィィィャ ィャ060302ィー ィ 04ィーィケ ィィ04ィャ02ィェ02ィェ ィェ0204ィ 09ィィ09ィィィャ06 06ィー 0108ィョ00ィィ ィェィィ ィィィャィィィーィィ090609, 0904ィ ィィィャ0609 ィィ 0108ィョ00ィィ ィ 02ィィィィ 0607ィィ090409ィ 06ィー ィャ06ィエィケ06 ィコ06ィャィ ィェ ィャ ィョィェィコ02ィィィヲ 0708ィィィコ05ィ 01ィェ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ. 0308ィィィャィィィーィィ ィー0907 ィェィ ィ ィャ ィィ ィェ06ィヲ ィィ05ィィ ィ ィィィェ (vertex) ィィィェィ ィー ィー06 ツィコィョ, ィコ06ィェ ィー080204ィコィ ィィ05ィィ ィョ ィャィェ060006ィョ000605ィケィェィィィコィ. 05 ィコィ ィヲ ィィィェ06ィヲ ィ ィィィィ08ィョ06ィー0907 ィェ02ィコ06ィー ィ ィェィェ0402 (ィコ ィィィェィ ィー04, ィー, ィェ0608ィャィ 05ィケ, ィー02ィコ09ィーィョ08ィェ0402 ィコ ィィィェィ ィー04 ィィ ィー.01.), ィェィ ィ 02ィャ0402 ィ ィー08ィィィ ィョィーィ ィャィィ ィ ィエ02ィャ ィ 0605ィケ03ィィィェ09ィー ィョ- ツィ 0209 ィコィ 0301ィ ィィィェィ 06ィ 08ィ ィ ィ ィー0409ィ 02ィー0907 ィェ0204ィ 09ィィ09ィィィャ06 06ィー 0108ィョ00ィィ ィー06 ツィコィィ ィェィィ07 ィ 0801ィィィー02ィコィーィョ0804, 0008ィ 00ィィ ツ0209ィコィ 07 09ィィ09ィー02ィャィ OpenGL ィー0907 ィコ06ィェ0902ィヲ020806ィャ, ィー0607ィエィィィャ ィィ04 ィェ0209ィコ0605ィケィコィィ ィ ィー0205ィケィェ ィーィ ィ 08ィ ィ 06ィーィコィィ 0008ィ 00ィィ ツ0209ィコィィ01 01ィ ィェィェ ィャィ ィェ0104 OpenGL ィ 06ィ 08ィ ィ ィ ィー0409ィ 06ィー ィー06ィャ ィコ02, 09 ィコ06ィー060806ィャ 06ィェィィ ィーィョ07ィ 06ィー, 0106ィー07 ィャ0600ィョィー ィィ ィィィーィケ 04ィ ィコィィ ィー02ィャ, ィコィ ィコ ィィィー ィコィー 06ィー ィィ ィェ02ィェィィ ィ 0605ィケ03ィィィェ09ィー ィョ ツィ 0209 OpenGL ィーィ ィー ィェ ィー0902ィェィェ04ィヲ ィィィェィー ィヲ09, ィー ィェィィ02 06ィ ィイ02ィコィーィ ィ 02ィー ィィ04ィョィ 05ィィ04ィ 02ィィ06 09 ィ ィョ ィコィ 0108ィ. 05 ィー06 ツィコィィ ィェィィ07 08ィ 0408ィ ィ 06ィー ツィィィコ0609, OpenGL 05ィー06 ィェィ ィ 0608 ィコ06ィャィ ィェ01,

29 ィィィー02ィコィーィョ08ィ OPENGL 29 ィコ06ィー ィョ0708ィ ィー ィィ ィケ040609ィ ィェィィ02ィャ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ 0707ィ 08ィ ィーィョ ィィ ィ 0707ィ 08ィ ィーィョ08ィ ィー06ィィィー ィー0605ィケィコ06 ィィ04 ィ ィョ02ィャ ィ ィョ000208ィ ィコィ 0108ィ, ィー060001ィ OpenGL ィェ ィ 04ィーィケ 0802ィ 05ィィ040609ィ ィェ ィェ0609ィーィケ06 09 ィィ ィケ040609ィ ィェィィ02ィャ ィョ ィェィー08ィ 05ィケィェ ィ. 02ィ 04 ツィェ ィ 00ィィ ツ0209ィコィ 07 ィ 0707ィ 08ィ ィーィョ08ィ ィーィ ィー 08ィ 0405ィィ ツィェ0402 ィョ080609ィェィィ ィョ09ィコ060802ィェィィ07: 06ィー ィ 0707ィ 08ィ ィーィェ06ィヲ 0802ィ 05ィィ04ィ 02ィィィィ ィ 05ィィィェィィィヲ ィィ ィャィェ060006ィョ000605ィケィェィィィコ ィィ0406ィエ0802ィェィェ ィ 00ィィ ツ0209ィコィィ ィコ06ィヲ 08ィ 0405ィィ ツィェ ィ 02ィィィヲ ィェィ ィャ02ィー08ィィ ツ0209ィコィィィャィィ 01ィ ィェィェ04ィャィィ. 04ィィ ィョィェィコ02ィィ06ィェィィ080609ィ ィェィィ02 ィコ06ィェ0902ィヲ0208ィ OpenGL OpenGL ィー ィヲィコ06ィヲ ィャ020301ィョ ィ 0707ィ 08ィ ィーィョ0806ィヲ ィィ ィケ040609ィ ィー0205ィケ09ィコィィィャ ィョ080609ィェ02ィャ, ツィー ィー ィーィ ィーィケ 0201ィィィェ04ィヲ ィィィェィー ィヲ09 ィェィ 08ィ 04ィェ ィ ィー000608ィャィ 01, ィィ ィケ04ィョ ィャ0603ィェ0609ィーィィ ィ 0707ィ 08ィ ィーィェ06ィヲ ィコィィ ィャ02 ィー060006, OpenGL ィャ0603ィェ06 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ ィコィ ィコ ィコ06ィェ02 ツィェ04ィヲ ィ 09-

30 ィ 09ィ ィェィィ02 09 OPENGL ィー06ィャィ ィー, ィー0607ィェィィ02 ィコ06ィー ィー0907 ィャィェ ィー0906ィャ 04ィェィ ツ02ィェィィィヲ ィィィ 05ィケィェ ィャ02ィェィェ0401, 04ィェィ ツ02ィェィィ07ィャィィ ィー02ィコィョィエ02ィヲ ィェ0608ィャィ 05ィィ, ィーィ, ィコ ィィィェィ ィー ィー02ィコ09ィーィョ0804 ィィ 0108ィョ00ィィ01 ィ ィー08ィィィ ィョィー0609 ィィ 0708ィィ04ィェィ ィコ ィーィ ィィィェ000608ィャィ 02ィィ07 ィ ィョ0102ィー ィィ ィケ040609ィ ィェィ 0708ィィ ィーィョ070502ィェィィィィ ィ 00ィィ ツ0209ィコィョ06 09ィィ09ィー02ィャィョ ィコ ィィィェィ ィー ィィィェ ィー080602ィェィィ07 00ィィ00ィョ0804, 09 ィコ06ィー0608ィョ06 06ィェィ ィィィー. 05ィャ02ィェィ ィー0607ィェィィィヲ ィィ ィィィー ィャ06ィエィケ06 ィコ06ィャィ ィェ01, ィコ06ィー ィャ050706ィー0907 ィコィ ィコ ィョィェィコ02ィィィヲ ィィィェィーィ ィコ09ィィ09 ィコ06ィャィ ィェ ィェィィ07 ィコ06ィャィ ィェ01 GL ィェィ ィー ィ ィヲ0502 gl.h, ィコ0506- ツ02ィェィィ07 ィコ06ィー ィェィョ03ィェ06 ィェィ 07ィィ09ィ ィーィケ #include <g l / g l. h> ィ ィ 06ィー04 09 ィ ィィィ 05ィィ06ィー02ィコ06ィヲ GLU ィェィョ03ィェ06 ィ ィェィ ィィ ツィェ ィコ0506- ツィィィーィケ 00ィ ィヲ05 glu.h ィィィィ 05ィーィィ01 ィ ィィィ 05ィィ06ィー02ィコ, ィコィ ィコ 0708ィ 09ィィ0506, 09ィコ0506- ツィ 06ィー ィィ09ィー08ィィィ ィョィーィィ ィィ09ィー02ィャ ィ ィャィャィィ080609ィ ィェィィ07, ィェィ 0708ィィィャ0208, Microsoft Visual C++ ィィ05ィィ Borland C++ Builder ィー05ィィ ツィィ02 06ィー 09ィーィ ィェ01ィ 08ィーィェ0401 ィ ィィィ 05ィィ06ィー02ィコ, 07ィ ィコ02ィー GLUT ィェィョ03ィェ06 ィィィェ09ィーィ 0505ィィ080609ィ ィーィケ ィィ ィコ0506 ツィ ィーィケ 06ィー010205ィケィェ ィ ィェィ 07 ィィィェ000608ィャィ 02ィィ07 06 ィェィ 09ィー0806ィヲィコ ィ ィャィャィィ080609ィ ィェィィ ィ ィ 06ィー04 09 OpenGL 0708ィィ ィェィ 09 チィ 09ィーィィ III ィコ06ィャィ ィェ0104 ( ィョ0804 ィィ 00ィョィェィコ02ィィィィ) ィ ィィィ 05ィィ06ィー02ィコィィ GL ィェィ ツィィィェィ 06ィー ィィィコ09ィ gl, ィコ06ィェ09ィーィ ィェィー ィィィコ09ィ GL_ ィー0902ィー09ィー09ィョ06ィエィィ02 ィコ06ィャィ ィェ0104 ィィ ィコ06ィェ09ィーィ ィェィー04 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT ィ ィェィ ィィ ツィェ06 ィィィャ0206ィー ィィィコ0904 glu (GLU_) ィィ glut (GLUT_) ィャ02 ィー060006, 09 ィィィャ02ィェィ ィコ06ィャィ ィェ ィー 09ィョ0000ィィィコ0904, ィェ0209ィョィエィィ02 ィィィェ000608ィャィ 02ィィ06 06 ツィィ ィィ ィーィィ ィ 09ィ 02ィャ ィ 08ィ ィャ02ィー OpenGL ィェ0602 ィィィャ07 ィコ06ィャィ ィェ0104 ィィィャ0202ィー 09ィィ01: type glcommand_name [ ] [ b s i f d ub us ui ] [ v ] ( type1 arg1,..., typen argn ) 06ィャ ィー06ィィィー ィィ04 ィェ0209ィコ0605ィケィコィィ01 ツィ 09ィー02ィヲ:

31 ィィィャ ィィ ィェィィ07 31 gl ィィィャ07 ィ ィィィ 05ィィ06ィー02ィコィィ, 09 ィコ06ィー060806ィヲ 0607ィィ09ィ ィェィ 05ィーィ 00ィョィェィコ02ィィ07: ィ ィ ィョィェィコ02ィィィヲ OpenGL, 00ィョィェィコ02ィィィヲ ィィ04 ィ ィィィ 05ィィ06ィー02ィコ GL, GLU, GLUT, GLAUX 05ィー06 gl, glu, glut, aux ィー0902ィー09ィー0902ィェィェ06; Command_name ィィィャ07 ィコ06ィャィ ィェ0104 ( ィョ0804 ィィ05ィィ 00ィョィェィコ02ィィィィ); [ ] ツィィ ィ 0800ィョィャ02ィェィー0609 ィコ06ィャィ ィェ0104; [b s i f d ub us ui ] ィーィィ07 ィ 0800ィョィャ02ィェィーィ : 09ィィィャ b GLbyte (ィ ィェィ char 09 05/05++), 09ィィィャ i GLint (ィ ィェィ int), 09ィィィャ f GLoat (ィ ィェィ oat) ィィ ィーィ ィコ 01ィ ィェ04ィヲ 0907ィィ0906ィコ ィーィィ ィィ ィィ ィィ09ィ ィェィィ02 ィャ0603ィェ ィャ06ィー0802ィーィケ 09 00ィ ィヲ0502 gl.h; [v ] ィェィ 05ィィ ツィィ02 05ィー ィィィャ090605ィ 0706ィコィ ィ 02ィー, ツィー06 09 ィコィ ツ0209ィー ィ 08ィ ィャ02ィー ィョィェィコ02ィィィィ ィィ ィケ04ィョ02ィー0907 ィョィコィ 04ィ ィー0205ィケ ィェィ ィャィ 0909ィィ09 04ィェィ ツ02ィェィィィヲ. 05ィィィャ ィコ09ィ 0108ィ ィーィェ ィコ06ィ ィコィ ィェ02ィコ06ィー ィェィ 0409ィ ィェィィ0701 ィェ02 ィィ ィケ04ィョ06ィー ィ 0708ィィィャ0208, ィコ06ィャィ ィェ01ィ glvertex2i() 0607ィィ09ィ ィェィ 09 ィ ィィィ 05ィィ06ィー02ィコ02 GL ィィ ィィ ィケ04ィョ02ィー 09 ィコィ ツ0209ィー ィ 08ィ ィャ02ィー ィ ツィィ0905ィ, ィ ィコ06ィャィ ィェ01ィ glcolor3fv() ィィ ィケ04ィョ02ィー 09 ィコィ ツ0209ィー ィ 08ィ ィャ02ィー08ィ ィョィコィ 04ィ ィー0205ィケ ィェィ ィャィ 0909ィィ09 ィィ04 ィー ィエ0209ィー0902ィェィェ0401 ツィィ ィケ040609ィ ィェィィ07 ィェ0209ィコ0605ィケィコィィ01 09ィ 08ィィィ ィェィー0609 ィコィ ィヲ ィコ06ィャィ ィェ0104 ィャ0603ィェ06 ツィ 09ィーィィ ツィェ06 ィィ04ィ 0203ィ ィーィケ, 0708ィィィャ02ィェ ィョ04ィコィョ 00ィョィェィコ02ィィィヲ ィコィ C ィィィェィー ィヲ09 OpenGL ィェ02 08ィ 0909 ツィィィーィ ィェ ィェィ ィコ06ィェィコ0802ィーィェ04ィヲ ィコ ィ ィャィャィィ080609ィ ィェィィ07, ィィ, ィ ィー0205ィケィェ06, ィェ ィ 04ィーィケ ィャィ ィコ09ィィィャィ 05ィケィェ06 ィョィェィィ ィ 0502ィェ ィィィャ ィィ ィェィィ07 06ィィ07ィィ ツィェィ ィ ィャィャィ, ィィ ィケ04ィョ06ィエィ 07 OpenGL, ィェィ ツィィィェィ 02ィー ィェィィ07 06ィコィェィ, 09 ィコ06ィー060806ィャ ィ ィョ0102ィー ィィ ィィィーィケ 06ィー06ィ 08ィ 0302ィェィィ02. 05ィ ィー02ィャ ィ 02ィー0907 ィコ06ィェィー02ィコ09ィー (ィコ05ィィ02ィェィー) OpenGL ィィ ィ ィィィィ08ィョ02ィー ィーィィィャ 06ィコィェ06ィャ. 02ィ ィ ィャィャィィ09ィー ィャ060302ィー ィ 0601ィェ06 ィィ ィケ040609ィ ィーィケ ィコ06ィャィ ィェ0104 OpenGL API.

32 ィ 09ィ ィェィィ02 09 OPENGL 01ィィ ィィ ィェ ィー02ィコ09ィー ィェ02ィ 0605ィケ0306ィヲ ィ ィャィャ04, ィェィ 07ィィ09ィ ィェィェ06ィヲ 09 ィィ ィケ040609ィ ィェィィ02ィャ ィ ィィィ 05ィィ06ィー02ィコィィ GLUT ィ 08ィ 04ィェ04ィヲ ィ ィェィ ィコ05ィ 0909ィィ ツ0209ィコ ィィィャ0208ィ 06Hello, World! , ツィー ィ 02ィー 05ィーィ ィ ィャィャィ 08ィィ09ィョ02ィー ィェィー ィコィェィ ィコ08ィ 09ィェ04ィヲ ィコ09ィ 0108ィ ィー. 0602ィャ ィェ02 ィャ02ィェ0202, 01ィ 0302 ィェィ 05ィー06ィャ ィー06ィャ 0708ィィィャ ィャ0603ィェ ィェ07ィーィケ 0708ィィィェ02ィィ ィ ィャィャィィ080609ィ ィェィィ ィャ06ィエィケ06 OpenGL ィ ィャィャィ ィー02ィヲ03ィィィヲ 0708ィィィャ0208 OpenGL. #include <s t d l i b. h> // ィコ0506 ツィ 02ィャ ィ ィィィ 05ィィ06ィー02ィコィョ GLUT #include <g l / g l u t. h> // ィェィ ツィ 05ィケィェィ 07 03ィィ08ィィィェィ ィィ ィーィ 06ィコィェィ GLint Width = 512, Height = 512; // 08ィ 04ィャ0208 ィコィョィ ィ const int CubeSize = 2 0 0; // 05ィーィ 00ィョィェィコ02ィィ07 ィョ0708ィ ィー ィャ ィャ ィェィ 05ィコ08ィ ィェ void Display ( void ) { int l e f t, right, top, bottom ; l e f t = ( Width 6モ1 CubeSize ) / 2 ; r i g h t = l e f t + CubeSize ; bottom = ( Height 6モ1 CubeSize ) / 2 ; top = bottom + CubeSize ; g l C l e a r C o l o r ( 0. 7, 0. 7, 0. 7, 1 ) ; g l C l e a r (GL_COLOR_BUFFER_BIT) ; glcolor3ub ( 2 5 5, 0, 0 ) ; glbegin (GL_QUADS) ; g l V e r t e x 2 f ( l e f t, bottom ) ; g l V e r t e x 2 f ( l e f t, top ) ; g l V e r t e x 2 f ( right, top ) ; g l V e r t e x 2 f ( right, bottom ) ;

33 ィィィャ ィィ ィェィィ07 33 glend ( ) ; } g l F i n i s h ( ) ; // 08ィョィェィコ02ィィ ィ 02ィー ィィ ィィ04ィャ02ィェ02ィェィィィィ 08ィ 04ィャ ィコィェィ void Reshape ( GLint w, GLint h) { Width = w; Height = h ; /* ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィャ 08ィ 04ィャ ィ 05ィ 09ィーィィ 06ィー06ィ 08ィ 0302ィェィィ07 */ glviewport (0, 0, w, h ) ; /* 0608ィー060008ィ 00ィィ ツ0209ィコィ ィコ02ィィ07 */ glmatrixmode (GL_PROJECTION) ; g l L o a d I d e n t i t y ( ) ; glortho (0, w, 0, h, 6モ11.0, 1. 0 ) ; } glmatrixmode (GL_MODELVIEW) ; g l L o a d I d e n t i t y ( ) ; // 08ィョィェィコ02ィィ07 06ィ 08ィ ィ ィ ィー0409ィ 02ィー ィ ィエ02ィェィィ07 06ィー ィコ05ィ 09ィィィ ィーィョ0804 void Keyboard ( unsigned char key, int x, int y ) { const char ESCAPE = ' 033 ' ; } i f ( key == ESCAPE ) e x i t ( 0 ) ; // 0105ィ 09ィェ04ィヲ 02ィィィコ ィィ ィェィィ07 void main ( int argc, char * argv [ ] ) { g l u t I n i t (&argc, argv ) ;

34 ィ 09ィ ィェィィ02 09 OPENGL glutinitdisplaymode (GLUT_RGB) ; glutinitwindowsize ( Width, Height ) ; glutcreatewindow ( "Red square example" ) ; glutdisplayfunc ( Display ) ; glutreshapefunc ( Reshape ) ; glutkeyboardfunc ( Keyboard ) ; } glutmainloop ( ) ; 04ィィ ィョ05ィケィーィ ィー 08ィ ィ 06ィー ィ ィャィャ ィャ06ィー0807 ィェィ ィャィ 0504ィヲ 08ィ 04ィャ0208, 05ィー ィェ0609ィーィケ06 04ィ ィェィェィ ィ ィャィャィ, ィコ06ィー0608ィ ィェィ ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ0907 ィィ 08ィ ィ 06ィーィ ィーィケ ィェィ 0506ィ 06ィヲ 09ィィ09ィー02ィャ02, ィィ09ィ 06ィエ02ィヲ OpenGL ィィ GLUT. 09ィィィ 05ィィ06ィー02ィコィ GLUT ィィ09ィ 02ィー 0904ィ ィィィャ060102ィヲ09ィー09ィィ ィケ040609ィ ィー020502ィャ ィャ06ィエィケ06 ィーィ ィコ ィェィ ィ 02ィャ ィョィェィコ02ィィィヲ c 06ィ 08ィ ィーィェ04ィャ ィャ (callback function) ィィ ィケ040609ィ ィー0205ィケ ィィィェィョ05 ィャ0403ィケ, ィェィ 03ィ 05 ィェィ ィコィェ0607ィコィョ ィコ05ィ 09ィィィ ィーィョ0804 ィィ05ィィ ィィ04ィャ02ィェィィ05 08ィ 04ィャ ィコィェィ, ィィ ィィィー 0906ィ 04ィーィィ02 ィィ ィ 02ィー ィー0902ィー09ィー09ィョ06ィエィ 07 00ィョィェィコ02ィィ ィケ040609ィ ィー ィ 08ィ ィ 06ィー ツィィィコ 0906ィ 04ィーィィィヲ (00ィョィェィコ02ィィ ィ 08ィ ィーィェ04ィャ ィャ). 04ィ 0909ィャ06ィー08ィィィャ ィ ィ ィェ06 00ィョィェィコ02ィィ06 main 01ィ ィェィェ ィィィャ0208ィ.

35 ィィィャ ィィ ィェィィ ィェィ ィー06ィィィー ィィ04 ィー ツィ 09ィー02ィヲ: ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ 06ィコィェィ, 09 ィコ06ィー060806ィャ ィ ィョ0102ィー 08ィィ090609ィ ィーィケ OpenGL, ィェィ 09ィー0806ィヲィコィィ 00ィョィェィコ02ィィィヲ c 06ィ 08ィ ィーィェ04ィャ ィャ ィィ 0005ィ 09ィェ ィィィコ05ィ 06ィ 08ィ ィ 06ィーィコィィ 0906ィ 04ィーィィィヲ. 06ィェィィ02ィィィ 05ィィ04ィ 02ィィ07 06ィコィェィ ィー06ィィィー ィィ04 ィェィ 09ィー0806ィヲィコィィ ィー0902ィー09ィー09ィョ06ィエィィ01 ィ ィョ ィコィ 0108ィ, ィェィ ツィ 05ィケィェ ィェィィ07 ィィ 08ィ 04ィャ ィコィェィ, ィ ィーィ ィコ ィ ィコィ 06ィコィェィ. 08ィョィェィコ02ィィ07 glutinit (&argc, argv) ィィ ィィィー ィェィ ツィ 05ィケィェィョ06 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ06 09ィ ィャ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ GLUT. 0806ィャィ ィェ01ィ glutinitdisplaymode(glut_rgb) ィィィェィィ02ィィィ 05ィィ04ィィ08ィョ02ィー ィ ィョ ィコィ 0108ィ ィィ ィェィ 09ィー08ィ ィィ09ィ 02ィー ィェ ィーィェ04ィヲ (ィェ0207ィ 05ィィィー ィヲ) ィィィャ RGB. glutinitwindowsize(width, Height) ィィ ィケ04ィョ02ィー ィ 01ィ ィェィィ07 ィェィ - ツィ 05ィケィェ ィ 04ィャ ィコィェィ. 01ィ ィコ06ィェ0202, glutcreatewindow("red square example") 04ィ 01ィ 02ィー 04ィ ィコ 06ィコィェィ ィィ 09ィィ04ィョィ 05ィィ04ィィ08ィョ02ィー 09ィ ィャ06 06ィコィェ06 ィェィ 05ィコ08ィ ィェ02. 05ィ ィー02ィャ ィコ06ィャィ ィェ0104 glutdisplayfunc ( Display ) ; glutreshapefunc ( Reshape ) ; glutkeyboardfunc ( Keyboard ) ; ィィ09ィー08ィィ08ィョ06ィー 00ィョィェィコ02ィィィィ Display(), Reshape() ィィ Keyboard() ィコィ ィコ 00ィョィェィコ02ィィィィ, ィコ06ィー ィ ィョ01ィョィー ィ ィェ04, ィー0902ィー09ィー0902ィェィェ06, 0708ィィ ィィ090609ィコ02 06ィコィェィ, ィィ04ィャ02ィェ02ィェィィィィ 08ィ 04ィャ ィコィェィ, ィェィ 03ィ ィーィィィィ ィコ05ィ 09ィィ03ィィ ィェィ ィコ05ィ 09ィィィ ィーィョ ィェィー080605ィケ ィ 04ィーィィィヲ ィィ ィェィョ03ィェ ィョィェィコ02ィィィヲ ィィ ィィィー 09ィェィョィー08ィィ ィ 0209ィコ06ィェ02 ツィェ ィィィコ05ィ 09 00ィョィェィコ02ィィィィ glutmainloop(). 05ィ ィャ02ィーィィィャ, ツィー06 ィ ィィィ 05ィィ06ィー02ィコィ GLUT ィェ ィィィー ィーィ 09 OpenGL, ィ ィー ィィ03ィケ ィェ0609ィィィャ06ィヲ ィヲィコ06ィヲ ィャ020301ィョ OpenGL ィィ 06ィコ06ィェィェ06ィヲ ィィ09ィー02ィャ06ィヲ, ィーィ ィャィィィェィィィャィ 05ィケィェ04ィヲ ィィィェィー ィヲ09. OpenGL-0708ィィ ィェィィ ィコ06ィェィコ0802ィーィェ06ィヲ 0705ィ ィー000608ィャ04 ィャ060302ィー ィ 04ィーィケ ィェィ 07ィィ09ィ ィェ06 09 ィィ ィケ040609ィ ィェィィ02ィャ ィィ00ィィ ツ0209ィコィィ ィ ィー000608ィャ04 API (Win32, X Window ィィ ィー.01.), ィコ06ィー ィコィ ィコ 0708ィ 09ィィ ィーィ ィー ィ ィィ0806ィコィィ ィャ0603ィェ0609ィーィィ ィ ィェ06 08ィ ィ 06ィーィ 09 ィ ィィィ 05ィィ06ィー02ィコ06ィヲ GLUT 0607ィィ09ィ ィェィ ィ

36 ィ 09ィ ィェィィ02 09 OPENGL ィコ06ィャィ ィェ01 OpenGL ィィ ィー 09 06ィ 08ィ ィ 06ィー ツィィィコィ ィ 04ィーィィィヲ ィ ィェ06 06ィェィィ ィ ィョ01ィョィー 08ィ 0909ィャ06ィー0802ィェ ィョ06ィエィィ ィ 09ィ ィヲ ツィ 09 06ィ 08ィ ィーィィィャ 09ィェィィィャィ ィェィィ02 ィェィ 00ィョィェィコ02ィィ06 Display, 09 ィコ06ィー060806ィヲ ィー06 ツ02ィェ ィコ0601, ィェ ィー0902ィェィェ06 06ィー0902 ツィ 06ィエィィィヲ 04ィ 08ィィ090609ィ ィェィィ02 ィェィ 05ィコ08ィ ィェ ィョ06ィエィ ィ ィー0205ィケィェ0609ィーィケ ィコ06ィャィ ィェ01 ィィ04 00ィョィェィコ02ィィィィ Display(): g l C l e a r C o l o r (0, 0, 0, 1 ) ; g l C l e a r (GL_COLOR_BUFFER_BIT) ; glcolor3ub ( 2 5 5, 0, 0 ) ; glbegin (GL_QUADS) ; g l V e r t e x 2 f ( l e f t, bottom ) ; g l V e r t e x 2 f ( l e f t, top ) ; g l V e r t e x 2 f ( right, top ) ; g l V e r t e x 2 f ( right, bottom ) ; glend ( ) ; 06 ツィィィエィ 02ィー 06ィコィェ06 ィィ ィィィー ィェィ 05ィコ08ィ ィェ ィコ09ィ 0108ィ ィー, 04ィ 01ィ 09ィ 07 ィコ ィィィェィ ィー04 ツ02ィー ィョ ィィィェ ィィ ィー ィィ ィェィィィィ ィィ ィェ 02ィエ ィィィェ 0708ィィィャ0208 ィェ ィェ06ィヲ ィ ィャィャ04, 0708ィィ ィェィ 03ィ ィーィィィィ ィコィェ0607ィコィョ ィャ0403ィィ 08ィィ09ィョ06ィエ02ィヲ ィェィ 05ィコ08ィ ィェ02 08ィ 04ィェ ィーィェ ィョ ツィ ィヲィェ ィャ06ィョ000605ィケィェィィィコィィ ィェィー080605ィケィェ ) 00 ツ02ィャ, ィ 0302ィャィョ ィャィェ02ィェィィ06, 04ィ ィコ0506 ツィ 02ィー0907 ィェ0206ィ ィィィャ0609ィーィケ ィ ィェィィ07 09ィーィ ィェ01ィ 08ィーィェ06ィヲ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ? 2) 0808ィ ィーィコ ィィ03ィィィー02 ィ 0801ィィィー02ィコィーィョ08ィョ ィ ィィィ 05ィィ06ィー02ィコ OpenGL ィィ ィ ィェィィ04ィ 02ィィ06 ィコ06ィェ0902ィヲ0208ィ. 3) 00 ツ02ィャ 04ィ ィコ0506 ツィ 06ィー ィョィェィコ02ィィィィ ィ ィィィ 05ィィ06ィー02ィコ, ィ ィェ0401 GLUT ィィ05ィィ GLX? 0306 ツ02ィャィョ 06ィェィィ ィャィ 05ィケィェ06 ィェ ィー 09 OpenGL? 4) 01ィ ィィィー02 ィコィ ィー ィィィィ ィコ06ィャィ ィェ01 (00ィョィェィコ02ィィィヲ) ィ ィィィ 05ィィ06ィー02ィコィィ.

37 ィェィー080605ィケィェ ) 0306 ツ02ィャィョ ィ ィェィィ04ィ 02ィィ06 OpenGL ツィ 09ィー ィ 09ィェィィ09ィ 06ィー 09 ィコ06ィェ02 ツィェ04ィャ ィ 09ィー06ィャィ ィー06ィャ? 6) 05ィ ツ02ィャ ィェィョ03ィェ04 08ィ 0405ィィ ツィェ ィ 08ィィィ ィェィー04 ィコ06ィャィ ィェ01 OpenGL, 06ィー05ィィ- ツィ 06ィエィィ ィー0605ィケィコ06 ィーィィ07ィ ィャィィ 07ィ 08ィ ィャ02ィー080609? 7) チィー06 ィャ0603ィェ06 09ィコィ 04ィ ィーィケ 06 ィコ0605ィィ ツ0209ィー0902 ィィ ィーィィ ィ 08ィ ィャ02ィー ィコ06ィャィ ィェ0104 glcolor4ub()? glvertex3fv()?

38 13

39 130105ィ 09ィ 3. 04ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー ィ ィェ ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 08ィ ィコ 0708ィ 09ィィ0506, 04ィ 01ィ ツ02ィヲ ィ ィャィャ04, ィィ ィケ04ィョ06ィエ02ィヲ OpenGL, ィー ィ 08ィ ィ 06ィーィコィ ィー080201ィャ0208ィェ06ィヲ ィェ04 ィィ ィィィェィー0208ィ ィコィーィィ09ィェ ィー06ィ 08ィ 0302ィェィィ02 09 ィ ィョ ィコィ 0108ィ ィェィ ィー06ィィィー ィィ04 ィェィ ィ 0608ィ ィー080201ィャ0208ィェ ィ ィイ02ィコィー0609, ィィ09ィー06 ツィェィィィコ ィーィ ィィ 09ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィャ020804, ィエ02ィヲ ィー02ィコィョィエ ィェィィ02 ィェィ ィ ィ ィー ィ 04 ツィェ ィィ ィェィィ02 OpenGL 09 ィ 0209ィコ06ィェ02 ツィェ06ィャ 02ィィィコ ィ 02ィー 00ィョィェィコ02ィィ06 06ィ ィェ ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ ィコィェ ィー06ィヲ 00ィョィェィコ02ィィィィ ィィ ィー06 ツ02ィェ ィェ0609ィェ0401 ィコ06ィャィ ィェ01 OpenGL ィィ ィィ ィケ04ィョ02ィー0907 ィ ィィィ 05ィィ06ィー02ィコィ GLUT, ィー06 05ィー06 ィ ィョ0102ィー 00ィョィェィコ02ィィ ィ 08ィ ィーィェ04ィャ ィャ, 04ィ ィィ09ィー08ィィ080609ィ ィェィェィ ィャ06ィエィケ ィ glutdisplayfunc(). GLUT ィ 02ィー 05ィーィョ 00ィョィェィコ02ィィ06, ィコ060001ィ ィ 02ィィ06ィェィェィ 07 09ィィ09ィー02ィャィ ィィィェ000608ィャィィ08ィョ02ィー 0708ィィ ィェィィ02 06 ィー06ィャ, ツィー ィィィャ ィコィェィ ィェ0206ィ ィィィャ ィィ090609ィ ィーィケ (ィェィ 0708ィィィャ0208, ィィ 06ィコィェ06 ィ ィコ0804ィー ィョ00ィィィャ) ィ 09ィ 02ィャ0602 ィィ0406ィ 08ィ 0302ィェィィ02 ィャ060302ィー ィ 04ィーィケ ィコィ ィコ 09ィーィ ィーィィ ツィェ04ィャ, ィーィ ィコ ィィ ィ ィェィィィャィィ080609ィ ィェィェ04ィャ, ィー ィ 09ィィ0902ィーィケ 06ィー ィコィ ィコィィ01-05ィィィ 06 07ィ 08ィ ィャ02ィー080609, ィィ04ィャ02ィェ0706ィエィィ ィャ02ィェ02ィャ ィー06ィャ 0905ィョ ツィ 02 05ィョ ツ ィ ィーィケ 00ィョィェィコ- 39

40 ィ 09ィ 3. 04ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー ィィ06 06ィ ィェ ィェィィ07 09ィ ィャ0609ィー0607ィー0205ィケィェ06. 01ィ 0708ィィィャ0208, ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 glutpostredisplay(). 05ィ ィ ィ ィェ06ィヲ ィィィェ000608ィャィ 02ィィ02ィヲ ィャ0603ィェ06 06ィ 08ィ ィーィィィーィケ0907 ィコ 0005ィ ィィ09ィーィョ07ィィィャ, ィェィ ィコ06ィェ0202, ィコ ィー06ィャィョ, ツ02ィャ 04ィ ィェィィィャィ 02ィー0907 ィーィィ07ィィ ツィェィ 07 00ィョィェィコ02ィィ07 06ィ ィェ ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07. 08ィ ィコ 0708ィ 09ィィ0506, 06ィェィ ィー06ィィィー ィィ04 ィー ィ : 0キ3 06 ツィィ09ィーィコィ ィ ィョ OpenGL; 0キ3 ィョ09ィーィ ィェ0609ィコィ ィェィィ07 ィェィ ィ ィ ィー020507; 0キ ィ 08ィ ィ ィェィィ02 ィィ 08ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー ツィィ09ィーィコィ ィ ィョ ィィ ィィィー ィャ06ィエィケ06 ィコ06ィャィ ィェ0104: void g l C l e a r C o l o r ( clampf r, clampf g, clampf b, clampf a ) void g l C l e a r ( b i t f i e l d buf ) 0806ィャィ ィェ01ィ glclearcolor ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー ィー, ィコ06ィー060804ィャ ィ ィョ0102ィー 04ィ ィェ02ィェ ィ ィョ ィコィ 0108ィ ィー08ィィ 07ィ 08ィ ィャ02ィー08ィ ィコ06ィャィ ィェ ィ 01ィ 06ィー R,G ィィ B ィコ06ィャ0706ィェ02ィェィー ィーィ ィィ ィェ ィィィェィ ィ ィーィケ 06ィー080204ィコィョ [0, 1]. チ02ィー090208ィー04ィヲ 07ィ 08ィ ィャ02ィー08 04ィ 01ィ 02ィー ィーィ ィコ ィェィ ィ 02ィャィョ06 ィ 05ィケ00ィ ィコ06ィャ0706ィェ02ィェィーィョ (09ィャ ). 08ィ ィコ 0708ィ 09ィィ0506, 06ィェ 08ィ 0902ィェ ィョィャ0605 ツィ ィェィィ ィー ツ0208ィェ04ィヲ (0,0,0,1). 0806ィャィ ィェ01ィ glclear 06 ツィィィエィ 02ィー ィ ィョ , ィ 07ィ 08ィ ィャ02ィー08 buf ィー ィコ06ィャィ ィィィェィ 02ィィ06 ィコ06ィェ09ィーィ ィェィー, ィー0902ィー09ィー09ィョ06ィエィョ06 ィ ィョ000208ィ ィャ, ィコ06ィー ィェィョ03ィェ06 06 ツィィ09ィーィィィーィケ (09ィャ. 0005ィ 09ィョ 7). 06ィィ07ィィ ツィェィ ィ ィャィャィ ィ 02ィー ィコ06ィャィ ィェ01ィョ g l C l e a r (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT) ツィィ09ィーィコィィ ィ ィョ ィーィ ィィ 0005ィョィ ィィィェ ィーィ ィェ0609ィコィ ィェィィ07 ィェィ ィ ィ ィー ィィ ィ 08ィ ィ ィェィィ07 ィー080201ィャ0208ィェ ィ ィイ02ィコィー0609 ( ィー, ィィ00 ィィ ィー.01.) ィコ06ィェィー080605ィィ08ィョ06ィー ィャ06ィエィケ06 04ィ 01ィ ィェィィ07 ィャィ ィー08ィィ ィ 08ィ ィ ィェィィ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー0609 ィィ ィェィ 09ィー0806ィヲィコィ ィェィィ07 09ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィャ ィィ09ィ ィェ ィ

41 ィィィェ04 ィィ 0708ィィィャィィィーィィ ィヲ ツィ ィー06 ツィィィャ0907 ィェィ ィー06ィャ, ィコィ ィコ ィ ィーィケ 09 OpenGL 0607ィィ09ィ ィェィィ07 06ィ ィイ02ィコィー0609, ィェィ ィエィィ ィェ02. 08ィ ィヲ 06ィ ィイ02ィコィー ィー0907 ィェィ ィ ィャ 0708ィィィャィィィーィィ OpenGL ィィィェ04 ィィ 0708ィィィャィィィーィィ OpenGL ィィィェィ (vertex) ィー0907 ィ ィー06ィャィ 08ィェ04ィャ 0008ィ 00ィィ ツ0209ィコィィィャ 0708ィィィャィィィーィィ0906ィャ ィィ ィー ィー06 ツィコィョ, ィコ06ィェ ィー080204ィコィ, ィョ ィャィェ060006ィョ000605ィケィェィィィコィ ィィ ィー ィーィ 05ィケィェ ィィィャィィィーィィ ィャィィ08ィョ06ィー ィャ06ィエィケ06 04ィ 01ィ ィェィィ ィィィェ, ィエィィ ィ ィェィェ04ィヲ 0708ィィィャィィィーィィ09. 01ィ 0708ィィィャ0208, 06ィー ィコ ィー ィョィャ ィィィェィ ィャィィ, ィエィィィャィィ0907 ィコ06ィェ02ィ ィャィィ 06ィー080204ィコィ. 05 ィコィ ィヲ ィィィェ06ィヲ ィ ィィィィ08ィョ06ィー ィ ィー08ィィィ ィョィー ツィィ ィェ0609ィェ0401 ィ ィー08ィィィ ィョィー ィー ィェィィ ィィィェ ィー08ィ ィェ09ィー0902, ィー ィィィェ04 ィィ 0902ィコィー0608 ィェ0608ィャィ 05ィィ ィェィィ ィィィェ ィー08ィ ィェ09ィー ィェィィ ィィィェ ィー ィ 01ィ ィェィィ02ィャ 0202 ィコ ィィィェィ ィー ィョ01-, ィー , ィィ05ィィ ツ02ィー ィャ0208ィェ06ィャ ィー08ィ ィェ09ィー0902 (0601ィェ ィェ0402 ィコ ィィィェィ ィー04). 06ィー ィ 05ィィ04ィョ02ィー ィャ06ィエィケ06 ィェ0209ィコ0605ィケィコィィ01 09ィ 08ィィィ ィェィー0609 ィコ06ィャィ ィェ0104 glvertex: void glvertex [ ] [ s i f d ] ( type coords ) void glvertex [ ] [ s i f d ] v ( type * coords ) 08ィ 0301ィ 07 ィコ06ィャィ ィェ01ィ 04ィ 01ィ 02ィー ツ02ィー ィコ ィィィェィ ィー ィィィェ04: x, y, z, w. 0806ィャィ ィェ01ィ glvertex2* ィョ ツィ 02ィー 04ィェィ ツ02ィェィィ07 x ィィ y ィィィェィ ィーィ z 09 ィーィ ィコ06ィャ 0905ィョ ツィ 02 ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー ィョィャ0605 ツィ ィェィィ06 08ィ 09ィェ06ィヲ 0, ィコ ィィィェィ ィーィ w 08ィ 09ィェ06ィヲ 1. glvertex3* ィョ ツィ 02ィー ィコ ィィィェィ ィー04 x, y, z ィィ 04ィ ィェ0609ィィィー 09 ィコ ィィィェィ ィーィョ w 04ィェィ ツ02ィェィィ02 1. glvertex4* ィー 04ィ 01ィ ィーィケ ツ02ィー ィコ ィィィェィ ィー ィ ィィィ 02ィィィィ ィィィェィ ィャィィ ィー0609, ィェ0608ィャィ 0502ィヲ ィィ ィー02ィコ09ィーィョ08ィェ0401 ィコ ィィィェィ ィー ィィ ィケ04ィョ06ィー0907 ィー02ィコィョィエィィ02 04ィェィ ツ02ィェィィ ィー0902ィー09ィー09ィョ06ィエィィ01 01ィ ィェィェ0401, ツィー06 06ィー0902 ツィ 02ィー ィ ィェィィ04ィ 02ィィィィ OpenGL ィコィ ィコ ィコ06ィェ02 ツィェ060006

42 ィ 09ィ 3. 04ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 ィ 09ィー06ィャィ ィーィ. 06ィーィィ 04ィェィ ツ02ィェィィ07 ィャ0600ィョィー ィ 04ィーィケ ィィ04ィャ02ィェ02ィェ ィ 06ィヲ ィャ06ィャ02ィェィー ィャ06ィエィケ ィ ィー0902ィー09ィー09ィョ06ィエィィ01 ィコ06ィャィ ィェ ィー ィィィェ ィ 01ィ ィェィィ07 ィー02ィコィョィエ ィーィ ィィィェ04 ィィ ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 void g l Color [ 3 4 ] [ b s i f ] ( GLtype components ) void g l Color [ 3 4 ] [ b s i f ] v ( GLtype components ) ィー08ィィ 07ィ 08ィ ィャ02ィー08ィ 04ィ 01ィ 06ィー R, G, B ィコ06ィャ0706ィェ02ィェィー ィーィ, ィ ィェィィィヲ 07ィ 08ィ ィャ02ィー ィー ィコ ィィ02ィィ02ィェィー ィェ ィ ツィェ0609ィーィィ (ィーィ ィコ ィェィ ィ 02ィャィ 07 ィ 05ィケ00ィ -ィコ06ィャ0706ィェ02ィェィーィ ) ィィ 09 ィェィ 0409ィ ィェィィィィ ィコ06ィャィ ィェ0104 ィョィコィ 04ィ ィェ ィーィィ07 06f07 (oat), ィー06 04ィェィ ツ02ィェィィ ィ 08ィ ィャ02ィー ィェ ィィィェィ ィ ィーィケ 06ィー080204ィコィョ [0,1], 0708ィィ 05ィー06ィャ 0706 ィョィャ0605 ツィ ィェィィ06 04ィェィ ツ02ィェィィ02 ィ 05ィケ00ィ -ィコ06ィャ0706ィェ02ィェィー04 ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー ィ 09ィェ04ィャ 1.0, ツィー ィー0902ィー09ィー09ィョ02ィー ィェ06ィヲ ィェ ィ ツィェ0609ィーィィ. 06ィィ07 06ub07 (unsigned byte) ィ 04ィョィャ0209ィ 02ィー, ツィー06 04ィェィ ツ02ィェィィ ィェ ィ ィーィケ 09 06ィー080204ィコ02 [0,255] ィィィェィ ィャ ィャ0603ィェ06 ィェィ 04ィェィ ツィ ィーィケ 08ィ 0405ィィ ツィェ ィーィ, ィィ, ィィ 09ィコ0506- ツ02ィェ ィー0902ィー09ィー09ィョ06ィエィィィヲ ィィィャ, ィー06 ィ ィョ0102ィー ィィィーィケ ィィィェ02ィヲィェィ 07 ィィィェィー ィィ ィー ィェ0609ィーィィ 0708ィィィャィィィーィィ09ィ ィョ0708ィ ィェィィ ィィィャ06ィャ ィィィェィー ィィィィ ィィ ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void glshademodel (GLenum mode) ィコ06ィー060806ィヲ 09 07ィ 08ィ ィャ02ィー0806ィャ GL_SMOOTH 09ィコ0506 ツィ 02ィー ィィィェィー ィィ06 (ィョ09ィーィ ィェ0609ィコィ 0706 ィョィャ0605 ツィ ィェィィ06), ィ 09 GL_FLAT 06ィーィコ0506 ツィ 02ィー ィャィ 05ィケ ィィィーィケ ィェ0608ィャィ 05ィケ ィィィェ02 ィャ0603ィェ06, ィィ ィケ04ィョ07 ィコ06ィャィ ィェ0104 void glnormal3 [ b s i f d ] ( type coords ) void glnormal3 [ b s i f d ] v ( type coords )

43 ィ ィー0608ィェ ィコ06ィ ィコィィ GLBEGIN / GLEND ィ 09ィィ05ィケィェ ィ 09 ツ02ィーィ ィエ02ィェィィ07 ィェ0206ィ ィィィャ06, ツィー06ィ ィコィー0608 ィェ0608ィャィ 05ィィ ィィィャ ィィィェィィ ツィェィョ ィィィェィョ. 00 OpenGL 09ィョィエ0209ィー09ィョ02ィー ィィィ 05ィケィェ04ィヲ ィィィャ, 0708ィィ ィコ06ィー060806ィャ 04ィ 01ィ 09ィ 02ィャ0402 ィェ0608ィャィ 05ィィ ィ ィョ01ィョィー ィェ0608ィャィィ080609ィ ィーィケ0907 ィ 09ィー06ィャィ ィーィィ ツ0209ィコィィ ィャ0603ィェ06 09ィコ0506 ツィィィーィケ ィコ06ィャィ ィェ0106ィヲ glenable(gl_normalize) ィィィャ ィ 09ィー06ィャィ ィーィィ ツ0209ィコ06ィヲ ィェ0608ィャィ 05ィィ04ィ 02ィィィィ ィェ ィ 04ィーィケ 09ィコ0506 ツ02ィェ, ィィ 0708ィィ ィェィィ02 ィィ ィケ04ィョ02ィー ィャ ィケィェ ィ 08ィ ィ ィェィィ07 08ィ 09ィー070302ィェィィ07/0903ィ ィーィィ07, ィーィ ィコ ィコィ ィコ 09 05ィー06ィャ 0905ィョ ツィ ィィィェィ ィェ0608ィャィ 0502ィヲ ィィ04ィャ02ィェ0702ィー ィィ ィョィャィェ060302ィェィィィィ ィェィ ィャ ィケィェ06-09ィィ010609ィョ06 ィャィ ィー08ィィ02ィョ. 0201ィェィ ィコ ィィィャ02ィェ02ィェィィ02 05ィー ィィィャィ ィョィャ02ィェィケ03ィ 02ィー 09ィコ ィーィケ 08ィ ィ 06ィー04 ィャ0201ィ ィェィィ04ィャィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ OpenGL, ィーィ ィコ ィコィ ィコ ィェ0608ィャィ 05ィィ04ィ 02ィィ ィコィー ィィィャ0202ィー 04ィ ィャ02ィーィェィョ ツィィ0905ィィィー0205ィケィェィョ ィェ0609ィーィケ (090407ィーィィ02 ィコ09ィ 0108ィ ィーィェ ィコ0608ィェ07) ィー06ィャィョ 05ィョ ツ ィ 04ィョ 04ィ 01ィ 09ィ ィーィケ 0201ィィィェィィ ツィェ0402 ィェ0608ィャィ 05ィィ. 02ィーィャ02ィーィィィャ, ツィー06 ィコ06ィャィ ィェ0104 void glenable (GLenum mode) void g l D i s a b l e (GLenum mode) ィィ ィー 09ィコ0506 ツ02ィェィィ02 ィィ 06ィーィコ0506 ツ02ィェィィ02 ィー ィィ05ィィ ィィィェ ィィィャィ 08ィ ィ 06ィー04 ィコ06ィェ0902ィヲ0208ィ OpenGL. 06ィーィィ ィコ06ィャィ ィェ ィィィャ02ィェ0706ィー ィーィ ィー06 ツィェ06 ツィ 09ィー06, ィィ ィィ ィャ0603ィェ ィ 08ィ ィャ02ィー0804 ィ ィョ01ィョィー 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ ィコィ ィャ ィコ06ィェィコ0802ィーィェ06ィャ 0905ィョ ツィ ィ ィー0608ィェ ィコ06ィ ィコィィ glbegin / glend ィ 0909ィャ06ィー080205ィィ 04ィ 01ィ ィェィィ02 ィ ィー08ィィィ ィョィー ィェ06ィヲ ィィィェ ィェィ ィコ06 ツィー06ィ 04 04ィ 01ィ ィーィケ ィ ィー08ィィィ ィョィー ィ 00ィィ ツ0209ィコ ィィィャィィィーィィ09ィ, 0601ィェィィ01 ィコ ィィィェィ ィー ィィィェ ィェ ィーィ ィー06 ツィェ06. 06ィーィィ ィィィェ04 ィェィ ィ ィイ0201ィィィェィィィーィケ ィェ , ィィ09 ィェ0206ィ ィィィャ ィヲ09ィー09ィ ィー OpenGL ィィ ィケ04ィョ06ィー0907 ィーィ ィコ ィェィ ィ 02ィャ ィ ィー0608ィェ ィコ06ィ ィコィィ, ィエィィ ィ ィャィィ ィィィ 05ィケィェ0401 ィコ06ィャィ ィェ01 OpenGL ィェィィ ィィィャィィィーィィ09ィ ィィ05ィィ ィ ィー0205ィケィェ0609ィーィィ 0708ィィィャィィィーィィ ィィ ィィィー ィャ020301ィョ ィ ィャィィ ィコ06ィャィ ィェ01

44 ィ 09ィ 3. 04ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 void glbegin (GLenum mode) void glend ( void ) 03ィ 08ィ ィャ02ィー08 mode ィー ィーィィ ィィィャィィィーィィ09ィ, ィコ06ィー060804ィヲ 04ィ 01ィ 02ィー ィェィョィー08ィィ ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_POINTS ィコィ 0301ィ ィィィェィ 04ィ 01ィ 02ィー ィコ ィィィェィ ィー04 ィェ02ィコ06ィー060806ィヲ ィー06 ツィコィィ. GL_LINES ィコィ 0301ィ 07 06ィー010205ィケィェィ 07 07ィ 08ィ ィィィェ ィー 06ィー ィコ; ィィ 04ィ 01ィ ィェ06 ィェ02 ツ02ィーィェ0602 ツィィ ィィィェ, ィー ィェ ィィィェィ ィィ00ィェ0608ィィ08ィョ02ィー0907. GL_LINE_STRIP ィコィ 0301ィ ィョ06ィエィ ィィィェィ 04ィ 01ィ 02ィー 06ィー ィコ 09ィャ0209ィー ィョィエ02ィヲ. GL_LINE_LOOP 06ィー05ィィ ツィィ02 06ィー ィョィエ ィィィャィィィーィィ09ィ ィー0605ィケィコ06 09 ィー06ィャ, ツィー ィェィィィヲ 06ィー ィコ ィー ィェ02ィヲ ィィ ィヲ ィィィェ06ィヲ, 06ィ 08ィ 04ィョ07 04ィ ィャィコィェィョィーィョ ィャィ ィェィョ06. GL_TRIANGLES ィコィ ィー010205ィケィェ0402 ィー08ィィ ィィィェ ィー ィー0802ィョ000605ィケィェィィィコ; ィィ 04ィ 01ィ ィェ06 ィェ02 ィコ08ィ ィーィェ0602 ィー0802ィャ ツィィ ィィィェ, ィー ィェィィ ィィィェ04 ィィ00ィェ0608ィィ08ィョ06ィー0907. GL_TRIANGLE_STRIP ィコィ 0301ィ ィョ06ィエィ ィィィェィ 04ィ 01ィ 02ィー ィー0802ィョ000605ィケィェィィィコ 09ィャ0209ィー ィョィャ ィョィエィィィャィィ. GL_TRIANGLE_FAN ィー0802ィョ000605ィケィェィィィコィィ 04ィ 01ィ 06ィー ィヲ ィィィェ06ィヲ ィィ ィコィ ィヲ ィョ06ィエ02ィヲ 07ィ 0806ィヲ ィィィェ (07ィ 0804 ィェ ィコィ 06ィー0907). GL_QUADS ィコィ 0301ィ 07 06ィー010205ィケィェィ 07 ツ02ィー090208ィコィ ィィィェ ィー ツ02ィー ィョ000605ィケィェィィィコ; ィィ 04ィ 01ィ ィェ06 ィェ02 ィコ08ィ ィーィェ0602 ツ02ィー040802ィャ ツィィ ィィィェ, ィー ィェィィ ィィィェ04 ィィ00ィェ0608ィィ08ィョ06ィー0907. GL_QUAD_STRIP ツ02ィー ィョ000605ィケィェィィィコ 09 ィェ06ィャ020806ィャ n ィー ィィィェィ ィャィィ 09 ィェ06ィャ0208ィ ィャィィ 2n 6モ1 1, 2n, 2n + 2, 2n + 1. GL_POLYGON ィ ィー0205ィケィェ06 04ィ 01ィ 06ィー ィィィェ ィョィコ ィャィェ060006ィョ000605ィケィェィィィコィ.

45 ィ ィー0608ィェ ィコ06ィ ィコィィ GLBEGIN / GLEND 45 01ィ 0708ィィィャ0208, ツィー06ィ 04 ィェィ 08ィィ090609ィ ィーィケ ィー0802ィョ000605ィケィェィィィコ 09 08ィ 04ィェ04ィャィィ ィーィ ィャィィ ィィィェィ 01, ィーィ ィー06 ツィェ06 ィェィ 07ィィ09ィ ィーィケ: GLfloat BlueCol [ 3 ] = { 0, 0, 1 } ; glbegin (GL_TRIANGLES) ; g l C o l o r 3 f ( 1. 0, 0. 0, 0. 0 ) ; /* ィコ08ィ 09ィェ04ィヲ */ g l V e r t e x 3 f ( 0. 0, 0. 0, 0. 0 ) ; glcolor3ub ( 0, 2 5 5, 0 ) ; /* ィェ04ィヲ */ g l V e r t e x 3 f ( 1. 0, 0. 0, 0. 0 ) ; g l C o l o r 3 f v ( BlueCol ) ; /* 09ィィィェィィィヲ */ g l V e r t e x 3 f ( 1. 0, 1. 0, 0. 0 ) ; glend ( ) ; 08ィ ィコ 0708ィ 09ィィ0506, 08ィ 04ィェ0402 ィーィィ ィィィャィィィーィィ ィィィャ0206ィー 08ィ 0405ィィ ツィェィョ06 09ィコ ィーィケ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィェィ 08ィ 04ィェ ィ ィー000608ィャィ ィョ090205ィィ ツ02ィェィィ ィィ ィィィー0205ィケィェ0609ィーィィ ツィーィィィー0205ィケィェ0202 ィィ ィケ040609ィ ィーィケ 0708ィィィャィィィーィィ0904, ィー0802ィ ィョ06ィエィィ02 ィャ02ィェィケ ィコ0605ィィ ツ0209ィー0906 ィィィェ000608ィャィ 02ィィィィ ィ ツィィ ィェィ , ィーィ ィコィィ02 ィコィ ィコ GL_TRIANGLE_STRIP, GL_QUAD_STRIP, GL_TRIAGLE_FAN ィャ02 04ィ 01ィ ィェィィ07 09ィ ィャィィ01 ィャィェ060006ィョ000605ィケィェィィィコ0609, ィャ0603ィェ ィィィーィケ ィャ02ィー0601 ィィ01 06ィー06ィ 08ィ 0302ィェィィ07 ィェィ 05ィコ08ィ ィェ ィェィ ィコ06 09ィェィ ツィ 05ィ ィェィ ィィィーィケ 0706ィェ07ィーィィ02 05ィィ ィィ 06ィ 08ィ ィーィェ ィ ィェ02ィヲ ィ ィェィケ ィェィィィャィ 02ィー ィェィ ィィ04 09ィー060806ィェ ィャィェ060006ィョ000605ィケィェィィィコィ, ィィ 0706 ィョィャ0605 ツィ ィェィィ06 05ィィ ィヲ 09 ツィィィーィ 02ィー0907 ィーィ 09ィー060806ィェィ, ィィィェ04 ィコ06ィー060806ィヲ 06ィ ィー ィーィィ09 ツィ ィヲ 09ィー080205ィコィィ. 01ィ 0708ィ ィェィィ02 06ィ ィ ィィィェ 05ィィ ィ ィェ02ィヲ ィャ0603ィェ06 ィィ04ィャ02ィェィィィーィケ ィャ ィコ06ィャィ ィェ0104 void glfrontface (GLenum mode) ィェィ ツ02ィェィィ02ィャ 07ィ 08ィ ィャ02ィー08ィ mode 08ィ 09ィェ04ィャ GL_CW (clockwise), ィ ィェィョィーィケ 04ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06 ィャ0603ィェ06, ィョィコィ 04ィ 09 GL_CCW (counterclockwise). チィー06ィ 04 ィィ04ィャ02ィェィィィーィケ ィャ02ィー ィー06ィ 08ィ 0302ィェィィ07 ィャィェ060006ィョ000605ィケィェィィィコィ ィィ ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void glpolygonmode (GLenum f a c e, Glenum mode)

46 ィ 09ィ 3. 04ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー ィ 08ィ ィャ02ィー08 mode ィー ィコィ ィコ ィ ィョ01ィョィー 06ィー06ィ 08ィ 03ィ ィーィケ0907 ィャィェ060006ィョ000605ィケィェィィィコィィ, ィ 07ィ 08ィ ィャ02ィー08 face ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー ィーィィ07 ィャィェ060006ィョ000605ィケィェィィィコ0609, ィコ ィコ06ィー060804ィャ ィ ィョ0102ィー 0708ィィィャ02ィェ07ィーィケ ィーィ ィコ06ィャィ ィェ01ィ ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_FRONT ィィ ィ ィェ02ィヲ; GL_BACK ィ 08ィ ィーィェ ィ ィェ02ィヲ; GL_FRONT_AND_BACK ィ ィェ02ィヲ. 03ィ 08ィ ィャ02ィー08 mode ィャ060302ィー ィ 04ィーィケ 08ィ 0902ィェ: GL_POINT 06ィー06ィ 08ィ 0302ィェィィ02 ィー0605ィケィコ ィィィェ ィャィェ060006ィョ000605ィケィェィィィコ0609; GL_LINE ィャィェ060006ィョ000605ィケィェィィィコィィ ィ ィョ01ィョィー ィーィ ィーィケ0907 ィェィ ィ ィャ 06ィー080204ィコ0609; GL_FILL ィャィェ060006ィョ000605ィケィェィィィコィィ ィ ィョ01ィョィー 04ィ ィコ08ィ 03ィィ09ィ ィーィケ0907 ィー02ィコィョィエィィィャ ィー06ィャ 09 ィョ ツ02ィー06ィャ ィエ02ィェィィ07, ィィ 05ィー06ィー ィィィャ ィョ09ィーィ ィェ ィェ 0706 ィョィャ0605 ツィ ィェィィ06. 06ィ ィコ0302 ィャ0603ィェ06 ィョィコィ ィ ィーィケ ィコィ ィコ06ィヲ ィーィィ ィ ィェ02ィヲ 06ィー06ィ 08ィ 03ィ ィーィケ ィェィ 05ィコ08ィ ィェ ィー ィェィ ツィ 05ィ ィェィ 0106 ィョ09ィーィ ィェ0609ィィィーィケ ィー0902ィー09ィー09ィョ06ィエィィィヲ ィィィャ ィャ ィコ06ィャィ ィェ0104 glenable (GL_CULL_FACE), ィ 04ィ ィー02ィャ 0904ィ 08ィ ィーィケ ィーィィ07 06ィー06ィ 08ィ 03ィ 02ィャ ィ ィェ02ィヲ ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 void glcullface (GLenum mode) ィ 08ィ ィャ02ィー0806ィャ GL_FRONT 0708ィィ090601ィィィー ィコ ィョ01ィ 0502ィェィィ06 ィィ04 ィィ0406ィ 08ィ 0302ィェィィ ィィ ィ ィェ02ィヲ, ィ 09 07ィ 08ィ ィャ02ィー0806ィャ GL_BACK 06ィ 08ィ ィーィェ0401 (ィョ09ィーィ ィェ0609ィコィ 0706 ィョィャ0605 ツィ ィェィィ06) ィャ02 08ィ 0909ィャ06ィー0802ィェィェ ィーィ ィェ01ィ 08ィーィェ ィィィャィィィーィィ ィ ィィィ 05ィィ06ィー02ィコィ 01 GLU ィィ GLUT 0607ィィ09ィ ィェ04 ィ ィェ ィィ00ィョ0804, ィーィ ィコィィ02 ィコィ ィコ ィ, 02ィィ05ィィィェ0108, 01ィィ09ィコ (09 GLU) ィィ ィ, ィコィョィ, ィコ06ィェィョ09, ィー0608, ィー02ィー08ィ , ィコィ , ィィィコ0609ィ , 06ィコィーィ ィィ ツィ ィヲィェィィィコ (09 GLUT). 0809ィー06ィャィ ィーィィ ツ0209ィコ0602 ィェィ ィェィィ02 ィー02ィコ09ィーィョ ィョ09ィャ06ィー0802ィェ06 ィー0605ィケィコ ィィ00ィョ08 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ GLU ( ィ ィェィィ02 ィー02ィコ09ィーィョ08 09 OpenGL ィ ィョ0102ィー 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ ィ ).

47 ィィ ィヲィェ ィィ09ィコィィ 47 01ィ 0708ィィィャ0208, ツィー06ィ 04 ィェィ 08ィィ090609ィ ィーィケ ィョ ィィ05ィィ 02ィィ05ィィィェ0108, ィェィ ィェィ ツィ 05ィ ィ ィーィケ 06ィ ィイ02ィコィー ィィィ 05ィケィェ ィーィィ07ィ GLUquadricObj ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 GLUquadricObj * glunewquadric ( void ) ; ィ 04ィ ィー02ィャ ィ ィーィケ ィー0902ィー09ィー09ィョ06ィエィョ06 ィコ06ィャィ ィェ01ィョ: void glusphere ( GLUquadricObj * qobj, GLdouble radius, GLint s l i c e s, GLint s t a c k s ) void glucylinder ( GLUquadricObj * qobj, GLdouble baseradius, GLdouble topradius, GLdouble height, GLint s l i c e s, GLint s t a c k s ) ィ 08ィ ィャ02ィー08 slices 04ィ 01ィ 02ィー ィコ0605ィィ ツ0209ィー ィ 04ィ ィィ02ィェィィィヲ 0906ィコ08ィョ ィィ z, ィ stacks ィケ 0609ィィ z ィ ィェィョ06 ィィィェ000608ィャィ 02ィィ06 06ィ 05ィーィィ01 ィィ 0108ィョ00ィィ01 ィコ06ィャィ ィェ01ィ ィー080602ィェィィ ィィィャィィィーィィ ィャ0603ィェ06 ィェィ ィヲィーィィ ィィ ィェィィィィ ィィ ィヲィェ ィィ09ィコィィ ィィ ィャ04 ィェ0209ィコ0605ィケィコ06 08ィ 04 06ィ 08ィ ィエィ 02ィャ0907 ィコ 0601ィェ06ィヲ ィィ ィー06ィヲ ィョ ィコ06ィャィ ィェ01, ィー06 ィィ01 ィャ0603ィェ06 06ィ ィイ0201ィィィェィィィーィケ 09 ィーィ ィコ ィェィ ィ 02ィャ04ィヲ 01ィィ ィヲィェ04ィヲ 0907ィィ0906ィコ (display list) ィィ ィ ィーィケ ィィ ィェ0206ィ ィィィャ0609ィーィィ ィー060006, ツィー06ィ ィ ィーィケ ィェ060904ィヲ 01ィィ ィヲィェ04ィヲ 0907ィィ0906ィコ, ィェィ ィャ0209ィーィィィーィケ ィコ06ィャィ ィェ0104, ィコ06ィー ィェ04 09 ィェ ィヲィーィィ, ィャ020301ィョ ィョ06ィエィィィャィィ ィ ィー0608ィェ04ィャィィ 09ィコ06ィ ィコィ ィャィィ: void glnewlist ( GLuint l i s t, GLenum mode) void glendlist ( )

48 ィ 09ィ 3. 04ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー ィ 0405ィィ ツ02ィェィィ ィィ09ィコ0609 ィィ ィケ04ィョ06ィー ィィィー0205ィケィェ0402 ツィィ0905ィ, 04ィ 01ィ 09ィ 02ィャ ィィ ィ ィェィィィィ 0907ィィ09ィコィ 04ィェィ ツ02ィェィィ02ィャ 07ィ 08ィ ィャ02ィー08ィ list. 03ィ 08ィ ィャ02ィー08 mode ィー ィィィャ 06ィ 08ィ ィ 06ィーィコィィ ィコ06ィャィ ィェ01, ィエィィ ィィ0906ィコ: GL_COMPILE ィコ06ィャィ ィェ ィ 07ィィ090409ィ 06ィー ィィ0906ィコ ィ ィェ02ィェィィ07; GL_COMPILE_AND_EXECUTE ィコ06ィャィ ィェ ィェ0706ィー0907, ィ 04ィ ィー02ィャ 04ィ 07ィィ090409ィ 06ィー ィィ0906ィコ ィー060006, ィコィ ィコ 0907ィィ0906ィコ ィ ィェ, ィャ0603ィェ ィ ィーィケ ィコ06ィャィ ィェ0106ィヲ void g l C a l l L i s t ( GLuint l i s t ) ィョィコィ 04ィ ィ 08ィ ィャ02ィー0802 list ィィ0102ィェィーィィ00ィィィコィ ィー0608 ィェィョ03ィェ ィィ09ィコィ. チィー06ィ ィ ィーィケ 0908ィ 04ィョ ィェ0209ィコ0605ィケィコ ィィ09ィコ0609, ィャ0603ィェ ィケ040609ィ ィーィケ0907 ィコ06ィャィ ィェ0106ィヲ void g l C a l l L i s t s ( GLsizei n, GLenum type, const GLvoid * l i s t s ) ィ 06ィエ02ィヲ n 0907ィィ09ィコ ィィ0102ィェィーィィ00ィィィコィ ィー0608ィ ィャィィ ィィ04 ィャィ 0909ィィ09ィ lists, ィーィィ ィャ02ィェィー0609 ィコ06ィー ィョィコィ ィ 02ィー ィ 08ィ ィャ02ィー0802 type. 06ィー06 ィャ0600ィョィー ィ 04ィーィケ ィーィィ0704 GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_INT, GL_UNSIGNED_INT ィィ ィェ02ィコ06ィー ィョ00ィィ ィョ01ィ 0502ィェィィ ィィ09ィコ0609 ィィ ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void g l D e l e t e L i s t s ( GLint l i s t, GLsizei range ) ィコ06ィー0608ィ 07 ィョ01ィ ィー 0907ィィ09ィコィィ 09 ィィ0102ィェィーィィ00ィィィコィ ィー0608ィ ィャィィ ID ィィ04 01ィィィ 07ィ 0406ィェィ list ワ ID ワ list + range 6モ ィィィャ0208: glnewlist ( 1, GL_COMPILE) ; glbegin (GL_TRIANGLES) ; g l V e r t e x 3 f ( 1. 0 f, 1. 0 f, 1. 0 f ) ; g l V e r t e x 3 f ( f, 1. 0 f, 1. 0 f ) ; g l V e r t e x 3 f ( f, 10.0 f, 1. 0 f ) ;

49 ィ 0909ィィ ィィィェ 49 glend ( ) ; glendlist ( )... g l C a l l L i s t ( 1 ) ; 02ィィ ィヲィェ ィィ09ィコィィ ィーィィィャィ 05ィケィェ06ィャ (09ィコ06ィャ07ィィ05ィィ080609ィ ィェィェ06ィャ) 09ィィ ィ ィェ07ィー ィ ィャ07ィーィィ ィ, ツィー ィー 08ィィ090609ィ ィーィケ 0708ィィィャィィィーィィ ィーィ ィコ06ィヲ ィャ02 ィャィ ィコ09ィィィャィ 05ィケィェ06 ィ 0409ィー ィー ィャ07 ィ 0605ィケ03ィィ02 06ィ ィイ02ィャ04 01ィ ィェィェ ィ ィェィィィャィ 06ィー ィャィェ ィ ィャ07ィーィィ, ツィー ツ02ィー, ツ ィケ, 07ィ 0102ィェィィ ィィ ィィィー0205ィケィェ0609ィーィィ. 06ィ ィコィィ02 ィ 0605ィケ03ィィ02 06ィ ィイ02ィャ04 (ィ 0605ィケ0302 ィェ0209ィコ0605ィケィコィィ ィーィコ0609 ィー ツ 0708ィィィャィィィーィィ090609) 05ィョ ツ ィィ090609ィ ィーィケ ィャ06ィエィケ06 ィャィ 0909ィィ ィィィェ ィ 0909ィィ ィィィェ ィィ ィィィェ ィャィェ060006, ィー06, ツィー06ィ 04 ィェ ィ ィーィケ ィコィ ィヲ ィコ06ィャィ ィェ01ィョ glvertex, ィョ0106ィ ィェ06 06ィ ィイ0201ィィィェ07ィーィケ ィィィェ04 09 ィャィ 0909ィィ0904, ィィ ィケ04ィョ07 ィコ06ィャィ ィェ01ィョ void glvertexpointer ( GLint s i z e, GLenum type, GLsizei s t r i d e, void * ptr ) ィコ06ィー0608ィ ィー ィ 0108ィ ィェ02ィェィィ07 ィィ ィコ ィィィェィ ィー ィィィェ. 0308ィィ 05ィー06ィャ size ィー ツィィ ィコ ィィィェィ ィー ィィィェ04 (ィャ060302ィー ィ 04ィーィケ 08ィ 0902ィェ 2, 3, 4), type ィー ィーィィ07 01ィ ィェィェ0401 (ィャ060302ィー ィ 04ィーィケ 08ィ 0902ィェ GL_SHORT, GL_INT, GL_FLOAT, GL_DOUBLE). 06ィェ060001ィ ィョ0106ィ ィェ ィ ィェィィィーィケ ィェ06ィャ ィャィ 0909ィィ ィョ00ィィ02 ィ ィー08ィィィ ィョィー ィィィェ04, ィー060001ィ 07ィ 08ィ ィャ02ィー08 stride 04ィ 01ィ 02ィー 09ィャ02ィエ02ィェィィ02 06ィー ィコ ィィィェィ ィー 0601ィェ06ィヲ ィィィェ ィコ ィィィェィ ィー ィョ06ィエ02ィヲ; ィィ stride 08ィ 0902ィェ ィェィョ0506, 05ィー06 04ィェィ ツィィィー, ツィー06 ィコ ィィィェィ ィー04 08ィ ィェ ィ ィー0205ィケィェ ィ 08ィ ィャ02ィー0802 ptr ィョィコィ ィ 02ィー0907 ィ , ィェィ ィー ィ ィェィェ ィェィ ィィ ツィェ06 ィャ0603ィェ ィィィーィケ ィャィ 0909ィィ09 ィェ0608ィャィ 0502ィヲ, ィー0609 ィィ ィェ02ィコ06ィー ィョ00ィィ01 ィ ィー08ィィィ ィョィー ィィィェ04, ィィ ィケ04ィョ07 ィコ06ィャィ ィェ0104 void glnormalpointer ( GLenum type, GLsizei s t r i d e,

50 ィ 09ィ 3. 04ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 void * p o i n t e r ) void g l C o l o r P o i n t e r ( GLint s i z e, GLenum type, GLsizei s t r i d e, void * p o i n t e r ) ィー060006, ツィー06ィ 04 05ィーィィ ィャィ 0909ィィ0904 ィャ0603ィェ06 ィ ィィ ィケ040609ィ ィーィケ 09 01ィ 05ィケィェ02ィヲ0302ィャ, ィェィ ィ ィーィケ ィコ06ィャィ ィェ01ィョ void g l E n a b l e C l i e n t S t a t e (GLenum array ) 09 07ィ 08ィ ィャ02ィー08ィ ィャィィ GL_VERTEX_ARRAY, GL_NORMAL_ARRAY, GL_COLOR_ARRAY ィー0902ィー09ィー0902ィェィェ ィコ06ィェ ツィ ィェィィ07 08ィ ィ 06ィー04 09 ィャィ 0909ィィ0906ィャ ィ ィー0205ィケィェ ィ ィーィケ ィコ06ィャィ ィェ01ィョ void g l D i s a b l e C l i e n t S t a t e (GLenum array ) ィー0902ィー09ィー09ィョ06ィエィィィャ 04ィェィ ツ02ィェィィ02ィャ 07ィ 08ィ ィャ02ィー08ィ array ィー06ィ 08ィ 0302ィェィィ ィィィャ ィャィ 0909ィィ ィィ ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void glarrayelement ( GLint index ) ィコ06ィー0608ィ ィ 02ィー OpenGL ィ ィー08ィィィ ィョィー ィィィェ04, ィィ ィケ04ィョ ィャ02ィェィー04 ィャィ 0909ィィ09ィ 09 ィェ06ィャ020806ィャ index. 06ィー06 ィ ィェィ ィィ ツィェ ィ ィー0205ィケィェ06ィャィョ 0708ィィィャ02ィェ02ィェィィ06 ィコ06ィャィ ィェ01 09ィィ01ィ glcolor, glnormal, glvertex c ィー0902ィー09ィー09ィョ06ィエィィィャィィ 07ィ 08ィ ィャ02ィー08ィ ィャィィ. 0201ィェィ ィコ06 09ィャ0209ィー06 ィェ ィ 04 ツィェ ィ 02ィー0907 ィコ06ィャィ ィェ01ィ void gldrawarrays (GLenum mode, GLint f i r s t, GLsizei count ) 08ィィ09ィョ06ィエィ 07 count 0708ィィィャィィィーィィ090609, ィャ ィ 08ィ ィャ02ィー0806ィャ mode, ィィ ィケ04ィョ ィャ02ィェィー04 ィィ04 ィャィ 0909ィィ ィィィェ0102ィコ09ィ ィャィィ 06ィー first 0106 first + count 6モ ィー06 05ィコ09ィィ09ィ 0502ィェィーィェ ィョ ィ ィー0205ィケィェ0609ィーィィ ィコ06ィャィ ィェ01 glarrayelement() ィー0902ィー09ィー09ィョ06ィエィィィャィィ ィィィェ0102ィコ09ィ ィャィィ ィョ ツィ 02, ィィ 0601ィェィ ィィィェィ ィィィー 09 ィェ0209ィコ0605ィケィコ ィィィャィィィーィィ090609, 09ィャ0209ィー06 01ィョィ 05ィィ080609ィ ィェィィ ィコ ィィィェィ ィー 09 ィャィ 0909ィィ0902 ィョ0106ィ ィェ06 ィィ ィケ040609ィ ィーィケ 0202 ィィィェ0102ィコ ィー ィェィ ィ ィーィケ ィコ06ィャィ ィェ01ィョ

51 ィェィー080605ィケィェ void gldrawelements (GLenum mode, G L s i z e i count, GLenum type, void * i n d i c e s ) indices 05ィー06 ィャィ 0909ィィ09 ィェ06ィャ ィィィェ, ィコ06ィー ィェィ 0106 ィィ ィケ040609ィ ィーィケ ィー080602ィェィィ ィィィャィィィーィィ090609, type ィー ィーィィ ィャ02ィェィー ィー ィャィ 0909ィィ09ィ : GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, GL_UNSIGNED_INT, ィ count 04ィ 01ィ 02ィー ィィ01 ィコ0605ィィ ツ0209ィー ィ 03ィェ06 06ィーィャ02ィーィィィーィケ, ツィー06 ィィ ィケ040609ィ ィェィィ02 ィャィ 0909ィィ ィィィェ ィー 0607ィーィィィャィィ04ィィ080609ィ ィーィケ ィ ツィョ 01ィ ィェィェ0401 ィェィ OpenGL, ィィ, ィコィ ィコ ィー09ィィ02, ィィィーィケ 09ィコ ィーィケ 08ィィ090609ィ ィェィィ07 ィー080201ィャ0208ィェ06ィヲ ィェ04. 06ィ ィコ06ィヲ ィャ02ィー ィェィィ ィィィャィィィーィィ ィー ィェィィィャ ィィ04 09ィ ィャ0401 ィ 0409ィー ィィ ィィィー ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィ 0605ィケ03ィィ01 06ィ ィイ02ィャ ィ ィェィェ ィェィー080605ィケィェ ) チィー06 ィーィ ィコ ィョィェィコ02ィィ07 06ィ 08ィ ィーィェ ィ ィィ ィコィ ィコ 00ィョィェィコ02ィィィィ 06ィ 08ィ ィーィェ ィ ィャ0600ィョィー ィ 04ィーィケ ィィ ィケ040609ィ ィェ ィ ィ 06ィー04 09 OpenGL? 2) ツ ィェィョ03ィェィ 00ィョィェィコ02ィィ07 06ィ ィェ ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 ィィ ツィー06 06ィェィ ィ 02ィー? 3) チィー06 ィーィ ィコ ィィィャィィィーィィ09 09 OpenGL? 4) チィー06 ィーィ ィコ0602 ィ ィー08ィィィ ィョィー? ツィィ0905ィィィー02 ィィ ィーィェ ィ ィャ ィ ィー08ィィィ ィョィー ィィィェ 09 OpenGL. 5) チィー06 09 OpenGL ィー0907 ィ ィー06ィャィ 08ィェ04ィャ 0708ィィィャィィィーィィ0906ィャ? 08ィ ィコィィ02 ィーィィ ィィィャィィィーィィ ィェィ 02ィー02? 6) ツ OpenGL ィィ ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 glenable ィィ gldisable?

52 ィ 09ィ 3. 04ィィ090609ィ ィェィィ ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 7) チィー06 ィーィ ィコ ィ ィー0608ィェ ィコ06ィ ィコィィ ィィ ツ ィェィィ ィィ ィケ04ィョ06ィー OpenGL? 8) チィー06 ィーィ ィコ ィィ ィヲィェ ィィ09ィコィィ? 08ィ ィコ ィィィーィケ 0907ィィ0906ィコ ィィ ィコィ ィコ ィ ィーィケ ィー06ィ 08ィ 0302ィェィィ02? 9) ィェィィィー ィ ィェィィ04ィ 02ィィ06 08ィ ィ 06ィー04 09 ィャィ 0909ィィ09ィ ィャィィ ィィィェ ィィ ィィ01 06ィー05ィィ ツィィ02 06ィー 01ィィ ィヲィェ ィィ09ィコ ) ィェィィィー02 08ィ ィ 06ィーィョ ィコ06ィャィ ィェ0104 gldrawelements().

53 ィェィー080605ィケィェ ィィ ィィィャィィィーィィ0904 OpenGL.

54 13

55 130105ィ 09ィ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー OpenGL ィィ ィケ04ィョ06ィー0907 ィコィ ィコ 0609ィェ0609ィェ0402 ィー08ィィ 09ィィ09ィー02ィャ04 ィコ ィィィェィ ィー: ィー060806ィェィェ0707, 0708ィ ィー060806ィェィェ0707 ィィ 06ィコ06ィェィェィ ィィ09ィー02ィャ ィー0907 ィー080201ィャ0208ィェ04ィャィィ ィィ 06ィー05ィィ ツィ 06ィー ィョ00 06ィー 0108ィョ00ィ ィェィ 0708ィ ィェィィ02ィャ 0609ィィ z: ィ ィー060806ィェィェ02ィヲ 06ィェィ ィェィ 0708ィ ィェィ ィェィ ィェィ ィ ィ ィー020507, ィー060806ィェィェ02ィヲ ィョィ ィィィェィョ 05ィコ08ィ ィェィ. 0209ィケ x ィェィ 0708ィ ィェィ ィ ィーィェ0609ィィィー0205ィケィェ06 ィェィ ィ ィ ィー020507, 0609ィケ y ィー060806ィェィェ ィィ09ィー02ィャィ ィィ ィケ04ィョ02ィー ィ 01ィ ィェィィ07 04ィェィ ツ02ィェィィィヲ 07ィ 08ィ ィャ02ィー08ィ ィャ ィコ06ィャィ ィェ0104 gluperspective(), glortho(), ィコ06ィー ィ ィョ01ィョィー 08ィ 0909ィャ06ィー0802ィェ ィョィェィコィー ィ ィー060806ィェィェ ィィ09ィー02ィャィ ィコ ィィィェィ ィー ィィ ィケ04ィョ02ィー ィーィ 05ィケィェ ィョ ツィ ィー06ィ 08ィ 0302ィェィィ02 ィー080201ィャ0208ィェ06ィヲ ィィィェ000608ィャィ 02ィィィィ ィィ ィィィー ィョ01ィャ0208ィェィョ06 06ィコ06ィェィェィョ06 09ィィ09ィー02ィャィョ ィコ ィィィェィ ィー. 05ィー , OpenGL ィー 07ィョィー02ィャ ィャィ ィェィィ07ィョ050702ィィィヲ 09 ィャィ ィー08ィィ02ィ ィャィィ ィャ ィィ080609ィ ィーィケ ィコィ ィコ 0708ィ 09ィョ06, ィーィ ィコ ィィ ィョ06 09ィィ09ィー02ィャィョ ィコ ィィィェィ ィー ィェィ 01ィ ィェィェ06ィャ 05ィーィ ィョ ツ ィヲィーィィ ィー04ィャ 07ィョィー02ィャ ィィ 04ィ 0706ィャィェィィィーィケ: 0609ィェ0609ィェ06ィヲ 09ィィ09ィー02ィャ06ィヲ ィコ ィィィェィ ィー OpenGL ィー ィ ィー060806ィェィェ ィィ09ィー02ィャィ. 55

56 ィ 09ィ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー0609 (ィ ) (ィ ) (09) 04ィィ ィィ09ィー02ィャ04 ィコ ィィィェィ ィー 09 OpenGL. (ィ ) 0708ィ ィー060806ィェィェ0707, (ィ ) ィー060806ィェィェ0707, (09) 06ィコ06ィェィェィ ィ ィ 06ィーィ 09 ィャィ ィー08ィィ02ィ ィャィィ ィ 01ィ ィェィィ07 08ィ 0405ィィ ツィェ ィ 08ィ ィ ィェィィィヲ 06ィ ィイ02ィコィー ィェ04 09 OpenGL ィィ ィケ04ィョ06ィー ィ 02ィィィィ ィェィ 01 ィャィ ィー08ィィ02ィ ィャィィ, 0708ィィ 05ィー06ィャ 08ィ 0405ィィ ツィ 06ィー ィー08ィィ ィーィィ07ィ ィャィ ィー08ィィ02: ィャ ィケィェ06-09ィィ010609ィ 07, ィャィ ィー08ィィ02ィ ィコ02ィィィヲ ィィ ィャィ ィー08ィィ02ィ ィー02ィコ09ィーィョ ィェィィ ィィィャ0206ィー 08ィ 04ィャ ィィ010609ィ 07 ィャィ ィー08ィィ02ィ ィー ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィーィ 09 ィャィィ ィコ ィィィェィ ィーィ 01, ィーィ ィコィィ02 ィコィ ィコ 07ィ 08ィ ィケィェ04ィヲ ィェ0609, ィィ04ィャ02ィェ02ィェィィ02 ィャィ 0903ィーィ ィ ィ ィィ ィー. 00ィ ィー08ィィ02ィ ィコ02ィィィヲ ィー, ィコィ ィコ ィ ィョ01ィョィー ィィ080609ィ ィーィケ0907 ィー080201ィャ0208ィェ ィ ィイ02ィコィー04 ィェィ ィコ0609ィーィケ 05ィコ08ィ ィェィ (09 06ィコ06ィェィェ0402 ィコ ィィィェィ ィー04), ィ ィャィ ィー08ィィ02ィ ィー02ィコ09ィーィョ ィー ィェィ ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー. 07ィャィェ060302ィェィィ02 ィコ ィィィェィ ィー ィェィ ィャィ ィー08ィィ ィィ ィィィー 09 ィャ06ィャ02ィェィー ィ ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィコ06ィャィ ィェ0104 OpenGL, ィエ02ィヲ ィコ ィィィェィ ィーィョ (ィコィ ィコ 0708ィ 09ィィ0506, 05ィー06 ィコ06ィャィ ィェ01ィ glvertex.) ィー ツィー06ィ ィ 08ィ ィーィケ, ィコィ ィコィョ06 ィャィ ィー08ィィ02ィョ ィェィ 0106 ィィ04ィャ02ィェィィィーィケ, ィィ ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ : void glmatrixmode (GLenum mode) ィコ06ィー060806ィヲ ィェィ ツ02ィェィィ02ィャ 07ィ 08ィ ィャ02ィー08ィ mode, 08ィ 09ィェ04ィャ GL_MODELVIEW, GL_PROJECTION ィィ05ィィ GL_TEXTURE, 09ィコ0506- ツィ 02ィー ィィィャ 08ィ ィ 06ィー04 09 ィャ ィケィェ06-09ィィ ィヲ ィャィ ィー08ィィ0202ィヲ, ィャィ ィー08ィィ0202ィヲ ィコ02ィィィヲ, ィィ05ィィ ィャィ ィー08ィィ0202ィヲ ィー02ィコ09ィーィョ ィー0902ィー09ィー0902ィェィェ ィ ィコ06ィャィ ィェ01, 04ィ 01ィ 06ィエィィ01 ィャィ ィー08ィィ0204 ィー ィィ05ィィ ィィィェ ィーィィ07ィ, ィェ0206ィ ィィィャ06

57 ィ ィ 06ィーィ 09 ィャィ ィー08ィィ02ィ ィャィィ 57 09ィェィ ツィ 05ィ ィョ09ィーィ ィェ0609ィィィーィケ ィー0902ィー09ィー09ィョ06ィエィィィヲ ィィィャ ィェィィ ィャ02ィェィー0609 ィャィ ィー08ィィ0204 ィー02ィコィョィエ ィーィィ07ィ ィ 02ィー0907 ィコ06ィャィ ィェ01ィ void glloadmatrix [ f d ] ( GLtype *m) m ィョィコィ ィ 02ィー ィェィ ィャィ 0909ィィ09 ィィ ィャ02ィェィー0609 ィーィィ07ィ oat ィィ05ィィ double ィー0902ィー09ィー09ィィィィ 09 ィェィ 0409ィ ィェィィ02ィャ ィコ06ィャィ ィェ0104, 0708ィィ 05ィー06ィャ 09ィェィ ツィ 05ィ 09 ィェ02ィャ ィェ ィ 04ィーィケ 04ィ 07ィィ09ィ ィェ ィヲ 09ィー0605ィ 0202 ィャィ ィー08ィィ0204, 04ィ ィー02ィャ 09ィー060806ィヲ, ィー0802ィーィィィヲ ィィ ツ02ィー090208ィー04ィヲ. 03ィエ02 08ィ 04 06ィ 08ィ ィーィィィャ 09ィェィィィャィ ィェィィ02: 09 ィャィ 0909ィィ0902 m ィャィ ィー08ィィ02ィ 04ィ 07ィィ09ィ ィェィ ィー0605ィ 02ィ ィャ. 0806ィャィ ィェ01ィ void g l L o a d I d e n t i t y ( void ) 04ィ ィャ02ィェ0702ィー ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ ィェィ 0201ィィィェィィ ツィェィョ06. チィ 09ィー06 ィ 0409ィ 02ィー ィェ0206ィ ィィィャ ィ ィェィィィーィケ ィィィャ0602 ィー02ィコィョィエ02ィヲ ィャィ ィー08ィィ ィ 05ィケィェ02ィヲ ィィ ィケ040609ィ ィェィィ07, ツ ィィィャ02ィェ0706ィー0907 ィコ06ィャィ ィェ0104 void glpushmatrix ( void ) void glpopmatrix ( void ) 02ィェィィ 04ィ 07ィィ090409ィ 06ィー ィィ ィーィ ィェィ 0905ィィ09ィ 06ィー ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ ィィ04 09ィー02ィコィ, 0708ィィ ツ02ィャ ィコィ ィーィィ07ィ ィャィ ィー08ィィ02 09ィー02ィコ ィヲ ィャ ィケィェ0609ィィ ィャィ ィー08ィィ ィョィ ィィィェィ 08ィ 09ィェィ ィコィ ィコ ィャィィィェィィィャィョィャ 32, ィーィ 05ィケィェ0401 ィコィ ィコ ィャィィィェィィィャィョィャ ィョィャィェ060302ィェィィ07 ィー02ィコィョィエ02ィヲ ィャィ ィー08ィィ0204 ィェィ 0108ィョ00ィョ06 ィャィ ィー08ィィ02ィョ ィィ ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void glmultmatrix [ f d ] ( GLtype *m) ィ 08ィ ィャ02ィー08 m ィェ 04ィ 01ィ 09ィ ィーィケ ィャィ ィー08ィィ02ィョ 08ィ 04ィャ020806ィャ ィィ 06ィ 0604ィェィ ツィィィーィケ ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ 04ィ M, ィ 09ィ 02ィャィョ06 ィャィ ィー08ィィ02ィョ 04ィ T, ィー ィョ05ィケィーィ ィー ィェ02ィェィィ07 ィコ06ィャィ ィェ0104 glmultmatrix ィー02ィコィョィエ02ィヲ 09ィーィ ィェ0609ィィィー0907 ィャィ ィー08ィィ02ィ M 6モ5 T. 0201ィェィ ィコ06 06ィ 04 ツィェ ィィ04ィャ02ィェ02ィェィィ07 ィャィ ィー08ィィ0204 ィー ィィ05ィィ ィィィェ ィーィィ07ィ ィョ0106ィ ィェ06 ィィ ィケ040609ィ ィーィケ ィィィ 05ィケィェ0402 ィコ06ィャィ ィェ0104, ィコ06ィー ィェィ ツ02ィェィィ07ィャ ィィ01 07ィ 08ィ ィャ02ィー ィ 06ィー ィェィョ03ィェィョ06 ィャィ ィー08ィィ02ィョ ィィ ィョィャィェ0603ィ 06ィー 0202 ィェィ ィー02ィコィョィエィョ06.

58 ィ 09ィ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー ィャ, ィー06ィ 08ィ 0302ィェィィ07 ィー080201ィャ0208ィェ ィ ィイ02ィコィー ィェ ィコィェ ィィ ィェィィ07 ィィ ィケ04ィョ02ィー ィ ィー0205ィケィェ0609ィーィケ, 0706ィコィ 04ィ ィェィェィ 07 ィェィ 08ィィ09ィョィェィコ ィィ ィ 08ィ ィ ィェィィ07 ィコ ィィィェィ ィー 09 OpenGL 05ィ 0706ィャィェィィィー02: ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー0609 ィィ ィコィ ィャ OpenGL ィィ ィー ィャ06ィエィケ06 ィョィャィェ060302ィェィィ ィコィー ィコ ィィィェィ ィー ィェィ ィャィ ィー08ィィ ィィ ツ02ィャ ィョィャィェ060302ィェィィ ィィ ィィィー ィェィ ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ 09 ィャ06ィャ02ィェィー ィェィィ07 ィコ ィィィェィ ィー04 ィコ06ィャィ ィェ0106ィヲ glvertex ィィ ィェ02ィコ06ィー060804ィャィィ 0108ィョ00ィィィャィィ ィケィェ06-09ィィ ィ 08ィ ィ ィェィィ07 08 ィャ ィケィェ06-09ィィ ィャ ィ 08ィ ィ ィェィィ07ィャ ィ ィョ0102ィャ 06ィーィェ0609ィィィーィケ ィェ0609, ィー ィィ ィィ04ィャ02ィェ02ィェィィ02 ィャィ 0903ィーィ ィ ィ ィケ ィコ ィィィェィ ィーィェ ィヲ ィェィィ07 05ィーィィ ィ 02ィィィヲ ィーィ ィー06 ツィェ06 ィョィャィェ0603ィィィーィケ ィェィ ィー0902ィー09ィー09ィョ06ィエィョ06 ィャィ ィー08ィィ02ィョ ィコィ 0301ィョ ィィィェィョ 06ィ ィイ02ィコィーィ ィィ ィョ ツィィィーィケ ィィ04-

59 ィケィェ06-09ィィ ィ 08ィ ィ ィェィィ07 59 ィャ02ィェ02ィェィェ0402 ィコ ィィィェィ ィー04 05ィー06ィヲ ィィィェ04: 69 x x 60y 63 61z 64 = M 60y 63 61z M ィャィ ィー08ィィ02ィ ィャ ィケィェ06-09ィィ ィ 08ィ ィ ィェィィ ィコィーィィ09ィェ ィ 08ィ ィ ィェィィ02 ィィ ィィ080609ィ ィェィィ ィィ ィィィー0907 ィ ィェィ ィィ ツィェ06. 05ィ ィャィ ィャィ ィー08ィィ02ィ ィャ060302ィー ィ 04ィーィケ ィ ィェィ ィャ06ィエィケ ィョ06ィエィィ01 ィコ06ィャィ ィェ01: void g l T r a n s l a t e [ f d ] ( GLtype x, GLtype y, GLtype z ) void glrotate [ f d ] ( GLtype angle, GLtype x, GLtype y, GLtype z ) void g l S c a l e [ f d ] ( GLtype x, GLtype y, GLtype z ) gltranslate ィィ ィィィー ィェ ィ ィイ02ィコィーィ, 0708ィィィ ィ ィコ ィコ ィィィェィ ィーィ ィャ ィィィェ 04ィェィ ツ02ィェィィ ィィ01 07ィ 08ィ ィャ02ィー glrotate ィィ ィィィー ィー 06ィ ィイ02ィコィーィ ィーィィ09 ツィ ィヲ 09ィー080205ィコィィ ィェィ ィョ angle (ィィ04ィャ ィー ィ 01ィョ09ィ 01) 0906ィコ08ィョ ィコィー0608ィ (x,y,z). glscale ィィ ィィィー ィャィ 0903ィーィ ィ ィィ080609ィ ィェィィ02 06ィ ィイ02ィコィーィ (0903ィ ィーィィ02 ィィ05ィィ 08ィ 09ィー070302ィェィィ02) ィケ 0902ィコィー0608ィ (x,y,z), ィョィャィェ0603ィ ィー0902ィー09ィー09ィョ06ィエィィ02 ィコ ィィィェィ ィー ィィィェ ィェィ 04ィェィ ツ02ィェィィ ィィ01 07ィ 08ィ ィャ02ィー ィーィィ ィ 08ィ ィ ィェィィ07 ィィ04ィャ02ィェ0706ィー ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ, ィ 0706ィー06ィャィョ 0708ィィィャ02ィェ0706ィー0907 ィコ 0708ィィィャィィィーィィ09ィ ィャ, ィコ06ィー ィー ィョ ツィ 02, ィィ ィェィ 0106, ィェィ 0708ィィィャ0208, ィェィョィーィケ 0601ィィィェ 06ィ ィイ02ィコィー ィェ04, ィ 0108ィョ0006ィヲ 0609ィーィ 09ィィィーィケ ィェ ィィ03ィェ04ィャ, ィョ0106ィ ィェ06 09ィェィ ツィ 05ィ ィ ィェィィィーィケ ィー02ィコィョィエィョ06 09ィィ010609ィョ06 ィャィ ィー08ィィ02ィョ 09 09ィー02ィコ02 ィコ06ィャィ ィェ0106ィヲ glpushmatrix, 04ィ ィー02ィャ ィ ィーィケ glrotate 09 ィェィョ03ィェ04ィャィィ 07ィ 08ィ ィャ02ィー08ィ ィャィィ, 0607ィィ09ィ ィーィケ 0708ィィィャィィィーィィ0904, ィィ04 ィコ06ィー ィー06ィィィー 05ィー06ィー 06ィ ィイ02ィコィー, ィ 04ィ ィー02ィャ ィーィ ィェ0609ィィィーィケ ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ ィコ06ィャィ ィェ0106ィヲ glpopmatrix ィャ02 ィィ04ィャ02ィェ02ィェィィ ィェィィ07 09ィ ィャ ィ ィイ02ィコィーィ, ツィ 09ィー06 ィ 0409ィ 02ィー ィェ0206ィ ィィィャ06 ィィ04ィャ02ィェィィィーィケ ィェィィ02 ィェィ ィ ィ ィー020507, ツィー06 ィーィ ィコ ィィ090601ィィィー ィコ ィィ04ィャ02ィェ02ィェィィ06 ィャ ィケィェ06-09ィィ ィヲ ィャィ ィー08ィィ ィー06 ィャ0603ィェ ィ ィーィケ ィャ06ィエィケ06 ィコ06ィャィ ィェ0104

60 ィ 09ィ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー0609 void glulookat ( GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centx, GLdouble centy, GLdouble c e n t z, GLdouble upx, GLdouble upy, GLdouble upz ) ィー06 ツィコィ (eyex, eyey, eyez) ィー ィー06 ツィコィョ ィェィ ィ ィェィィ07, (centx, centy, centz) 04ィ 01ィ 02ィー 0202ィェィー ィェ04, ィコ06ィー060804ィヲ ィ ィョ0102ィー ィィ080609ィ ィーィケ ィェィー08 06ィ 05ィ 09ィーィィ ィ, ィ 0902ィコィー0608 (upx, upy, upz) 04ィ 01ィ 02ィー ィィィー0205ィケィェ0602 ィェィ 0708ィ ィェィィ ィィ y, ィー ィコィ ィャ ィィ, ィェィ 0708ィィィャ0208, ィコィ ィャ0208ィョ ィェ02 ィェィ ィ ツィィ09ィ ィーィケ, ィー06 04ィ 01ィ 02ィー ィェィ - ツ02ィェィィ02 (0, 1, 0), ィ ィェィ ツ02ィェィィ02ィャ (0, 6モ11, 0) ィェィ ィ ィョ0102ィー ィェィョィーィ. 05ィー , 05ィーィ ィコ06ィャィ ィェ01ィ ィ 02ィー ィェ0609 ィィ ィー 06ィ ィイ02ィコィー ィェ04, ィェ06 09 ィーィ ィコ06ィャ 09ィィ ィ 01ィ 09ィ ィーィケ 07ィ 08ィ ィャ02ィー0804 ィ 0409ィ 02ィー ィョ0106ィ ィェ ィョ02ィー 06ィーィャ02ィーィィィーィケ, ツィー ィ ィーィケ ィコ06ィャィ ィェ01ィョ glulookat() ィィィャ0202ィー 09ィャ ィェィィ02ィャ ィ 08ィ ィ ィェィィィヲ 06ィ ィイ02ィコィー0609, ィコ060001ィ ィャ ィケィェ06-09ィィ010609ィ 07 ィャィ ィー08ィィ02ィ 08ィ 09ィェィ 0201ィィィェィィ ツィェ06ィヲ. 05ィ 0706ィャィェィィィー02: ィャィ ィー08ィィ ツィェ ィ 08ィ ィ ィェィィ07 09 OpenGL ィェィョ03ィェ06 04ィ 07ィィ090409ィ ィーィケ 09 06ィ 08ィ ィーィェ06ィャ ィコ02. 01ィ 0708ィィィャ0208, ィィ ィーィィィー02 09ィェィ ツィ 05ィ ィェィョィーィケ 06ィ ィイ02ィコィー, ィ 04ィ ィー02ィャ ィィィェィョィーィケ , 09ィェィ ツィ 05ィ ィィィー02 ィコ06ィャィ ィェ01ィョ gltranslate(), ィ ィー0605ィケィコ ィー06ィャ glrotate() ィー ィヲィー02 09ィ ィャ 06ィ ィイ02ィコィー ィコ02ィィィィ 00 OpenGL 09ィョィエ0209ィー09ィョ06ィー 09ィーィ ィェ01ィ 08ィーィェ0402 ィコ06ィャィ ィェ ィ 01ィ ィェィィ ィー060008ィ 00ィィ ツ0209ィコ06ィヲ (07ィ 08ィ ィケィェ06ィヲ) ィィ ィコィーィィ09ィェ06ィヲ ィコ02ィィィヲ ィヲ ィーィィ ィコ02ィィィィ ィャ060302ィー ィ 04ィーィケ 04ィ 01ィ ィェ ィコ06ィャィ ィェ01ィ ィャィィ void glortho ( GLdouble l e f t, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble f a r ) void gluortho2d ( GLdouble l e f t, GLdouble right, GLdouble bottom, GLdouble top )

61 ィコ02ィィィィ ィ 07 ィコ06ィャィ ィェ01ィ ィ 02ィー ィャィ ィー08ィィ02ィョ ィコ02ィィィィ 09 ィョ0902 ツ02ィェィェ04ィヲ 06ィ ィイ02ィャ 09ィィ01ィィィャ0609ィーィィ (07ィ 08ィ ィィ ィィ01ィィィャ0609ィーィィ) ィー060806ィェィェ02ィヲ 09ィィ09ィー02ィャ02 ィコ ィィィェィ ィー. 03ィ 08ィ ィャ02ィー0804 ィコ06ィャィ ィェ ィ 01ィ 06ィー ィー06 ツィコィィ (lef t, bottom, znear) ィィ (right, top, zf ar), ィコ06ィー ィー0902 ツィ 06ィー ィャィョ ィェィィ03ィェ02ィャィョ ィィ 0708ィ 0906ィャィョ ィェ02ィャィョ ィョ0005ィ ィャ 06ィコィェィ ィ. 03ィ 08ィ ィャ02ィー0804 near ィィ far 04ィ 01ィ 06ィー 08ィ 0909ィー0607ィェィィ ィ 05ィィ03ィェ02ィヲ ィィ 01ィ 05ィケィェ02ィヲ ィコ0609ィー02ィヲ 06ィー0902 ツ02ィェィィ ィョ01ィ 0502ィェィィ06 06ィー ィー06 ツィコィィ (0, 0, 0) ィィ ィャ0600ィョィー ィ 04ィーィケ 06ィー08ィィ02ィ ィー0205ィケィェ04ィャィィ. 04ィィ ィー060008ィ 00ィィ ツ0209ィコィ ィコ02ィィ ィー060806ィヲ ィコ06ィャィ ィェ0102, 09 06ィー05ィィ ツィィ02 06ィー ィヲ, 04ィェィ ツ02ィェィィ07 near ィィ far ィョ09ィーィ ィェィ 0905ィィ09ィ 06ィー ィ 09ィェ04ィャィィ 6モ11 ィィ ィー0902ィー09ィー0902ィェィェ06. 06ィー06 ィョ0106ィ ィェ06, ィィ OpenGL ィィ ィケ04ィョ02ィー ィィ090609ィ ィェィィ ィョィャ0208ィェ ィ ィイ02ィコィー ィー06ィャ 0905ィョ ツィ ィェィィ ィィィェ ィャ0603ィェ06 04ィ 01ィ 09ィ ィーィケ, ィィ ィケ04ィョ07 ィコ06ィャィ ィェ0104 glvertex ィコィーィィ09ィェィ ィコ02ィィ ィー0907 ィコ06ィャィ ィェ0106ィヲ void g l u P e r s p e c t i v e ( GLdouble angley, GLdouble aspect, GLdouble znear, GLdouble z f a r ) ィコ06ィー0608ィ 07 04ィ 01ィ 02ィー ィョ0902 ツ02ィェィェ04ィヲ ィコ06ィェィョ09 09ィィ01ィィィャ0609ィーィィ ィー060806ィェィェ02ィヲ 09ィィ09ィー02ィャ02 ィコ ィィィェィ ィー. 03ィ 08ィ ィャ02ィー08 angley ィー ィョ ィィ01ィィィャ0609ィーィィ ィ 01ィョ09ィ ィィ ィョ ィィ ィェ ィェィ ィィィーィケ ィィィ 07ィ 0406ィェ02 06ィー

62 ィ 09ィ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー ィィ01ィィィャ0609ィーィィ ィケ 0609ィィ x 04ィ 01ィ 02ィー ィ 08ィ ィャ02ィー0806ィャ aspect, ィコ06ィー060804ィヲ 06ィ 04 ツィェ06 04ィ 01ィ 02ィー0907 ィコィ ィコ 06ィーィェ060302ィェィィ02 09ィー060806ィェ 06ィ 05ィ 09ィーィィ ィ (ィコィ ィコ 0708ィ 09ィィ0506, 08ィ 04ィャ ィコィェィ ). 04ィィ ィコィーィィ09ィェィ ィコ02ィィ07 03ィ 08ィ ィャ02ィー0804 zfar ィィ znear 04ィ 01ィ 06ィー 08ィ 0909ィー0607ィェィィ02 06ィー ィェィ ィ ィ ィー ィコ0609ィー02ィヲ 06ィー0902 ツ02ィェィィ ィョィ ィィィェ02 ィィ ィェ04 ィ 04ィーィケ ィィィー0205ィケィェ04ィャィィ. チ02ィャ ィ 0605ィケ ィーィェ060302ィェィィ02 zfar/znear, ィー02ィャ 01ィョ ィ ィョ ィョィ ィィィェ04 ィ ィョ01ィョィー 08ィ 0405ィィ ツィ ィーィケ ィ ィェィェ ィャ ィェ0609ィーィィ, ィーィ ィコ ィコィ ィコ 0706 ィョィャ0605 ツィ ィェィィ06 09 ィェ ィ ィョ0102ィー 04ィ 07ィィ090409ィ ィーィケ ィ ィーィ ィョィ ィィィェィ 09 01ィィィ 07ィ 0406ィェ02 06ィー ツ02ィャ 04ィ 01ィ 09ィ ィーィケ ィャィ ィー08ィィ ィコ02ィィィヲ, ィェ02 04ィ ィ ィョ01ィケィー02 09ィコ0506 ツィィィーィケ ィィィャ 08ィ ィ 06ィー04 09 ィェィョ03ィェ06ィヲ ィャィ ィー08ィィ0202ィヲ ィコ06ィャィ ィェ0106ィヲ glmatrixmode(gl_projection) ィィ 09ィ ィィィーィケ ィー02ィコィョィエィョ ィャ06ィエィケ ィ glloadidentity(). 0308ィィィャ0208: /* 0608ィー060008ィ 00ィィ ツ0209ィコィ ィコ02ィィ07 */ glmatrixmode (GL_PROJECTION) ; g l L o a d I d e n t i t y ( ) ; glortho (0, w, 0, h, 6モ11.0, 1. 0 ) ;

63 ィ 05ィ 09ィーィケ ィ ィ 05ィ 09ィーィケ ィ ィィィャ02ィェ02ィェィィ07 ィャィ ィー08ィィ ィコ02ィィィヲ ィェィ ィョ06ィエ ィ 08ィ ィ ィェィィ ィ 06ィー0907 ィーィ ィコ ィェィ ィ 02ィャ0402 ィョ0902 ツ02ィェィェ0402 (clipped) ィコ ィィィェィ ィー04. 05ィ ィー02ィャ ィェィ ィー0907 ィェ0608ィャィ 05ィィ040609ィ ィェィェ0402 ィコ ィィィェィ ィー ィィィェ ィャィョ0502: x n y n z n x c /w c 64 = 61y c /w c 64 z c /w c 02ィ 05ィ 09ィーィケ ィ ィーィ ィー 0906ィ 06ィヲ ィャ06ィョ000605ィケィェィィィコ 09 06ィコ06ィェィェ06ィヲ 09ィィ09ィー02ィャ02 ィコ ィィィェィ ィー, 08ィ 04ィャ ィコ06ィー ィ 01ィ 06ィー0907 ィコ06ィャィ ィェ0106ィヲ void glviewport ( GLint x, GLint y, GLint width, GLint height ) 05ィェィ ツ02ィェィィ ィ 08ィ ィャ02ィー ィ 01ィ 06ィー ィィィコ090205ィ 01 ィィ ィー 03ィィ08ィィィェィョ ィィ ィーィョ 06ィ 05ィ 09ィーィィ ィ 09 ィコ ィィィェィ ィーィ ィャィィ ィェィィ03ィェ ィョ0005ィ (x,y) 09 06ィコ06ィェィェ06ィヲ 09ィィ09ィー02ィャ02 ィコ ィィィェィ ィー. 04ィ 04ィャ ィコ06ィェィェ06ィヲ 09ィィ09ィー02ィャ04 ィコ ィィィェィ ィー ィー0907 ィー02ィコィョィエィィィャィィ 08ィ 04ィャ0208ィ ィャィィ 06ィコィェィ 0708ィィ ィェィィ07, ィー06 ツィコィ (0,0) ィェィ ィィィー ィャ ィェィィ03ィェ02ィャ ィョ0005ィョ 06ィコィェィ ィケ04ィョ07 07ィ 08ィ ィャ02ィー0804 ィコ06ィャィ ィェ0104 glviewport(), OpenGL 0904 ツィィ ィー 06ィコ06ィェィェ0402 ィコ ィィィェィ ィー ィェィー08ィ 06ィ 05ィ 09ィーィィ ィ (ox,oy) ィャィョ05ィ ィャ: o x = x + width/2 o y = y + height/2 03ィョ09ィーィケ p x = width, p y = height, ィー060001ィ ィャ0603ィェ06 ィェィ ィヲィーィィ 06ィコ06ィェィェ0402 ィコ ィィィェィ ィー04 ィコィ ィヲ ィィィェ04: x w (p x /2)x n + o x 61y w 64 = 61 (p y /2)y n + o y 64 z w [(f 6モ1 n)/2]z n + (n + f)/2 0308ィィ 05ィー06ィャ ィィィー0205ィケィェ ィィ ツィィィェ04 n ィィ f 04ィ 01ィ 06ィー ィャィィィェィィィャィ 05ィケィェィョ06 ィィ ィャィ ィコ09ィィィャィ 05ィケィェィョ ィョィ ィィィェィョ ィー06 ツィコィィ 09 06ィコィェ02 ィィ 0706 ィョィャ0605- ツィ ィェィィ06 08ィ 09ィェ04 0 ィィ ィー0902ィー09ィー0902ィェィェ ィョィ ィィィェィ ィコィ ィヲ ィー06 ツィコィィ 04ィ 07ィィ090409ィ 02ィー ィィィ 05ィケィェ04ィヲ ィ ィョ ィョィ ィィィェ04 (z-ィ ィョ000208), ィコ06ィー060804ィヲ

64 ィ 09ィ ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー0609 ィィ ィケ04ィョ02ィー ィョ01ィ 0502ィェィィ07 ィェ0209ィィ01ィィィャ ィィィェィィィヲ ィィ ィェ0609ィー02ィヲ. 0709ィーィ ィェ0609ィィィーィケ 04ィェィ ツ02ィェィィ07 n ィィ f ィャ0603ィェ ィャ 00ィョィェィコ02ィィィィ void gldepthrange ( GLclampd n, GLclampd f ) 0806ィャィ ィェ01ィ glviewport() 06ィ 04 ツィェ06 ィィ ィケ04ィョ02ィー ィョィェィコ02ィィィィ, 04ィ ィィ09ィー08ィィ080609ィ ィェィェ06ィヲ ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 glutreshapefunc(), ィコ06ィー0608ィ ィ 02ィー0907, ィィ ィケ040609ィ ィー0205ィケ ィィ04ィャ02ィェ0702ィー 08ィ 04ィャ ィコィェィ 0708ィィ ィェィィ ィェィー080605ィケィェ ) 08ィ ィコィィ02 09ィィ09ィー02ィャ04 ィコ ィィィェィ ィー ィィ ィケ04ィョ06ィー OpenGL? 2) ツィィ0905ィィィー02 09ィィ0104 ィャィ ィー08ィィ ツィェ ィ 08ィ ィ ィェィィィヲ 09 OpenGL. 08ィ ィコィィィャ 06ィ 08ィ 0406ィャ 09 OpenGL ィィ ィー ィ 08ィ ィ ィェィィ07 06ィ ィイ02ィコィー0609? 3) チィー06 ィーィ ィコ0602 ィャィ ィー08ィィ ツィェ04ィヲ 09ィー02ィコ? 4) ツィィ0905ィィィー ィ 04 ィィ04ィャ02ィェ02ィェィィ ィェィィ07 ィェィ ィ ィ ィー OpenGL. 5) 08ィ ィコィ ィ ィー0205ィケィェ0609ィーィケ ィコ06ィャィ ィェ01 gltranslate(), glrotate() ィィ glscale () ィー0902ィー09ィー09ィョ02ィー ィコ06ィャィ ィェ0102 glulookat(0, 0, 6モ110, 10, 0, 0, 0, 6モ11, 0)? 6) 08ィ ィコィィ02 09ィーィ ィェ01ィ 08ィーィェ0402 ィコ06ィャィ ィェ ィ 01ィ ィェィィ ィコ02ィィィヲ ィェィ 02ィー02? 7) チィー06 ィーィ ィコ ィィ ィコ ィィィェィ ィー04? ィャィ 05ィィ040609ィ ィェィェ0402 ィコ ィィィェィ ィー04?

65 130105ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ ィエ02ィェィィ ィ ィェィィ ィ 05ィィ09ィーィィ ツィェ0401 ィィ0406ィ 08ィ 0302ィェィィィヲ ィェ0206ィ ィィィャ ィィィーィケ ィコィ ィコ ィヲ09ィー09ィ 09ィ ィャ ィ ィイ02ィコィーィ, ィーィ ィコ ィィ ィヲ09ィー09ィ , 09 ィコ06ィー060806ィヲ 06ィェ ィェィ ィィィー ィ ィョ0707ィ ィヲ09ィー09 09ィコ0506 ツィ 02ィー ィ 07 07ィ 08ィ ィャ02ィー0804 ィャィ ィー0208ィィィ 05ィ, ィィ04 ィコ06ィー ィ ィェ 06ィ ィイ02ィコィー, ィ 04 ィェィ ィェ020902ィェィィ07 ィー02ィコ09ィーィョ0804 ィェィ ィェ0609ィーィケ, 09ィー020702ィェィケ ィ ツィェ0609ィーィィ 06ィ ィイ02ィコィーィ ィー060806ィヲ 0008ィョ ィャ0603ィェ06 06ィーィェ0209ィーィィ ィコ0605ィィ ツ0209ィー0906 ィィ ィヲ09ィー09ィ ィィ09ィー06 ツィェィィィコ ィーィ, ィョ ィェィケ ィ ツィェ0609ィーィィ , ィ ィーィ ィコ0302 ィャ ィケ ィエ02ィェィィ ィーィィ ィヲ09ィー09ィ ィャ0603ィェ06 04ィ 01ィ 09ィ ィーィケ, ィ ィー0902ィー09ィー09ィョ06ィエィィ02 ィコ06ィャィ ィェ0104 OpenGL ィケ ィエ02ィェィィ07 00 OpenGL ィィ ィケ04ィョ02ィー0907 ィャ ィケ ィエ02ィェィィ07, ィー0902ィー09ィー09ィィィィ 09 ィコ06ィー060806ィヲ ィー ィー06 ツィコィィ ィー0907 ィェ0209ィコ0605ィケィコィィィャィィ 00ィ ィコィー0608ィ ィャィィ: ィヲ09ィー09ィ ィャィィ ィャィ ィー0208ィィィ 05ィ ィィ ィー02ィコ09ィーィョ0804, ィィ ツィィィェ06ィヲ ィェ0608ィャィ 05ィィ 09 05ィー06ィヲ ィー06 ツィコ02, ィ ィーィ ィコ ィェィィ02ィャ ィィ09ィー06 ツィェィィィコィ ィーィ ィィ ィェィ ィ ィ ィー ィコ ィコィーィェ ィ 09 ツ02ィーィ ィエ02ィェィェ0609ィーィィ 09 ィー06 ツィコ02 ィェィ 0106 ィィ ィケ040609ィ ィーィケ 0201ィィィェィィ ツィェ0402 ィェ0608ィャィ 05ィィ, 0601ィェィ ィコ06 ィコ06ィャィ ィェ0104 ィーィィ07ィ glscale ィャ0600ィョィー ィィ04ィャ02ィェ07ィーィケ 0105ィィィェィョ ィェ0608ィャィ 0502ィヲ. チィー06ィ 04 05ィー06 ィョ ツィィィー0409ィ ィーィケ, ィィ ィケ04ィョィヲィー02 ィョ0302 ィョ0706ィャィィィェィ 0903ィィィヲ ィィィャ ィェ0608ィャィ 05ィィ04ィ 02ィィィィ 0902ィコィー ィェ0608ィャィ 0502ィヲ, ィコ06ィー060804ィヲ 65

66 ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ ィエ02ィェィィ02 09ィコ0506 ツィ 02ィー ィャ ィコ06ィャィ ィェ0104 glenable (GL_NORMALIZE) ィ 01ィ ィェィィ ィ ィ 05ィケィェ ィ 08ィ ィャ02ィー ィエ02ィェィィ07 ィィ ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 void gllightmodel [ i f ] (GLenum pname, GLenum param ) void gllightmodel [ i f ] v (GLenum pname, const GLtype * params ) ィョィャ02ィェィー pname ィー, ィコィ ィコ06ィヲ 07ィ 08ィ ィャ02ィー08 ィャ ィィ ィエ02ィェィィ07 ィ ィョ0102ィー ィェィ 09ィー08ィ ィィ09ィ ィーィケ0907 ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_LIGHT_MODEL_LOCAL_VIEWER 07ィ 08ィ ィャ02ィー08 param ィェ ィ 04ィーィケ ィ ィョ ィャ ィィ 04ィ 01ィ 02ィー ィェィィ02 ィェィ ィ ィ ィー ィィ 06ィェ 08ィ 0902ィェ GL_FALSE, ィー06 ィェィ 0708ィ ィェィィ02 06ィ ィ 09 ツィィィーィ 02ィー ィ 08ィ ィケィェ04ィャ 0609ィィ 6モ1z 09ィェ02 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー ィェィィ ィィ x ィコ ィィィェィ ィーィ ィィ ィェ 08ィ 0902ィェ GL_TRUE, ィー06 ィェィ ィ ィ ィー0205ィケ ィェィ ィィィー ィェィ ツィ ィィ ィヲ 09ィィ09ィー02ィャ04 ィコ ィィィェィ ィー. 06ィー06 ィャ060302ィー ィョ05ィョ ツ03ィィィーィケ ィコィ ツ0209ィー ィエ02ィェィィ07, ィェ06 ィョ ィェ0702ィー ィ 09 ツ02ィー. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: GL_FALSE. GL_LIGHT_MODEL_TWO_SIDE 07ィ 08ィ ィャ02ィー08 param ィェ ィ 04ィーィケ ィ ィョ ィャ ィィ ィョ0708ィ ィー ィィィャ06ィャ 08ィ 09 ツ02ィーィ ィエ02ィェィェ0609ィーィィ ィコィ ィコ ィィ , ィーィ ィコ ィィ ィ 08ィ ィーィェ ィ ィェ02ィヲ ィィ 06ィェ 08ィ 0902ィェ GL_FALSE, ィー ィエ02ィェィェ0609ィーィケ 08ィ 0909 ツィィィー0409ィ 02ィー0907 ィー0605ィケィコ ィィ ィ ィェ02ィヲ ィィ ィェ 08ィ 0902ィェ GL_TRUE, 08ィ 09 ツ02ィー ィィィー0907 ィィ ィ 08ィ ィーィェ ィ ィェ02ィヲ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: GL_FALSE. GL_LIGHT_MODE_AMBIENT 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 ツィィ0905ィ, ィコ06ィー ィー ィー 0006ィェ ィエ02ィェィィ07 01ィ ィョ ツィ 02 06ィー09ィョィー09ィー09ィィ ィェィェ0401 ィィ09ィー06 ツィェィィィコ ィーィ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (0.2, 0.2, 0.2,1.0).

67 ィィ00ィィィコィ 02ィィ07 ィャィ ィー0208ィィィ ィィ00ィィィコィ 02ィィ07 ィャィ ィー0208ィィィ ィ 01ィ ィェィィ07 07ィ 08ィ ィャ02ィー ィー02ィコィョィエ ィャィ ィー0208ィィィ 05ィ ィィ ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 void g l M a t e r i a l [ i f ] (GLenum face, GLenum pname, GLtype param ) void g l M a t e r i a l [ i f ] v (GLenum face, GLenum pname, GLtype * params ) 05 ィィ ィャ06ィエィケ06 ィャ0603ィェ ィィィーィケ 08ィ ィェィェ04ィヲ, 01ィィ0000ィョ04ィェ04ィヲ ィィ ィコィ 05ィケィェ04ィヲ ィーィ ィャィ ィー0208ィィィ 05ィ, ィ ィーィ ィコ ィー020702ィェィケ ィコィ 05ィケィェ ィー08ィ 0302ィェィィ07 ィィ ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィィ0405ィョ ツ02ィェィィ ィーィ, ィィ 06ィ ィイ02ィコィー ィェ ィーィィィーィケ ィ ィコ06ィヲ ィィィャ02ィェィェ06 07ィ 08ィ ィャ02ィー08 ィ ィョ0102ィー ィーィケ ィェィ ツ02ィェィィ02ィャ param, 04ィ 09ィィ09ィィィー 06ィー 04ィェィ ツ02ィェィィ07 pname: GL_AMBIENT 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ ィェィ ツ02ィェィィ ィー0609 RGBA, ィコ06ィー ィー 08ィ ィェィェ04ィヲ ィー ィャィ ィー0208ィィィ 05ィ (020902ィー ィャィ ィー0208ィィィ 05ィ 09 ィー02ィェィィ). 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (0.2, 0.2, 0.2, 1.0). GL_DIFFUSE 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ ィェィ ツ02ィェィィ ィー0609 RGBA, ィコ06ィー ィー 01ィィ0000ィョ04ィェ04ィヲ ィー ィャィ ィー0208ィィィ 05ィ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (0.8, 0.8, 0.8, 1.0). GL_SPECULAR 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ ィェィ ツ02ィェィィ ィー0609 RGBA, ィコ06ィー ィー ィコィ 05ィケィェ04ィヲ ィー ィャィ ィー0208ィィィ 05ィ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 0.0, 1.0). GL_SHININESS 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ 0601ィェ ィィ05ィィ 0902ィエ0209ィー0902ィェィェ ィェィ ツ02ィェィィ ィィィ 07ィ 0406ィェ02 06ィー , ィコ06ィー ィー 09ィー020702ィェィケ ィコィ 05ィケィェ ィー08ィ 0302ィェィィ07 ィャィ ィー0208ィィィ 05ィ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: 0.

68 ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ ィエ02ィェィィ02 GL_EMISSION 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ ィェィ ツ02ィェィィ ィー0609 RGBA, ィコ06ィー ィー ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィィ0405ィョ ツィ 02ィャ ィーィ ィャィ ィー0208ィィィ 05ィ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 0.0, 1.0). GL_AMBIENT_AND_DIFFUSE 05ィコ09ィィ09ィ 0502ィェィーィェ ィョィャ ィ ィャ ィコ06ィャィ ィェ0104 glmaterial() ィェィ ツ02ィェィィ02ィャ pname GL_AMBIENT ィィ GL_DIFFUSE ィィ 0601ィィィェィ ィコ060904ィャィィ 04ィェィ ツ02ィェィィ07ィャィィ params ィー ィョ02ィー, ツィー ィコ06ィャィ ィェ0104 glmaterial[ i f ]() ィャ060302ィェ ィー0605ィケィコ ィョ09ィーィ ィェ0609ィコィィ 09ィー020702ィェィィ ィコィ 05ィケィェ ィー08ィ 0302ィェィィ07 ィャィ ィー0208ィィィ 05ィ (shininess). 0806ィャィ ィェ01ィ glmaterial[ i f ] v() ィィ ィケ04ィョ02ィー ィ 01ィ ィェィィ ィーィ 05ィケィェ ィ 08ィ ィャ02ィー ィ 08ィ ィャ02ィー08 face ィー ィーィィ ィ ィェ02ィヲ, ィコ06ィー ィ 01ィ 02ィー ィー06ィー ィャィ ィー0208ィィィ 05 ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 04ィェィ ツ02ィェィィ07 GL_FRONT, GL_BACK ィィ05ィィ GL_FRONT_AND_BACK ィィ ィェ02 ィャィ ィー0208ィィィ ィ ィイ02ィコィー ィ 0405ィィ ツィ 06ィー ィィ03ィケ 0601ィェィィィャ 07ィ 08ィ ィャ02ィー0806ィャ, 0802ィコ06ィャ02ィェ01ィョ02ィー ィェィ ツィ 05ィ ィョ09ィーィ ィェ0609ィィィーィケ ィェィョ03ィェ04ィヲ ィィィャ, ィ 09 glenable() c 07ィ 08ィ ィャ02ィー0806ィャ GL_COLOR_MATERIAL, ィ 04ィ ィー02ィャ ィィ ィケ040609ィ ィーィケ ィコ06ィャィ ィェ01ィョ void g l C o l o r M a t e r i a l (GLenum face, GLenum pname) ィ 08ィ ィャ02ィー08 face ィィィャ0202ィー ィ ィェィ ィィ ツィェ04ィヲ 09ィャ040905, ィ 07ィ 08ィ ィャ02ィー08 pname ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ツィィ090502ィェィェ ィェィ ツ02ィェィィ ィー ィェィ - ツ02ィェィィ ィ 08ィ ィェィェ ィャ06ィエィケ06 pname ィヲ09ィー09ィ ィャィ ィー0208ィィィ 05ィ ィコ06ィェィコ0802ィーィェ ィ ィイ02ィコィーィ (ィィ05ィィ ィィィェ04) ィョ09ィーィ ィェィ 0905ィィ09ィ 06ィー ィャ ィコ06ィャィ ィェ0104 glcolor, ツィー ィー ィィ04ィ 0203ィ ィーィケ ィ ィョ ィャィコ06ィヲ ィコ06ィャィ ィェ0104 glmaterial ィィ ィ 02ィー ィコィーィィ09ィェ0609ィーィケ ィ ィャィャ ィョ00ィィ02 ィャ02ィー ィーィィィャィィ04ィ 02ィィィィ 0708ィィ ィェ ィ ィィィャ ィェィィ ィヲ09ィー09 ィャィ ィー0208ィィィ 05ィ : float mat_dif [ ] = { 0. 8, 0. 8, 0. 8 } ; float mat_amb [ ] = { 0. 2, 0. 2, 0. 2 } ; float mat_spec [ ] = { 0. 6, 0. 6, 0. 6 } ;

69 ィィ09ィ ィェィィ02 ィィ09ィー06 ツィェィィィコ ィーィ 69 float s h i n i n e s s = 0. 7 * 128;... g l M a t e r i a l f v (GL_FRONT_AND_BACK,GL_AMBIENT, mat_amb ) ; g l M a t e r i a l f v (GL_FRONT_AND_BACK,GL_DIFFUSE, mat_dif ) ; g l M a t e r i a l f v (GL_FRONT_AND_BACK,GL_SPECULAR, mat_spec ) ; g l M a t e r i a l f (GL_FRONT, GL_SHININESS, s h i n i n e s s ) ; ィィ09ィ ィェィィ02 ィィ09ィー06 ツィェィィィコ ィーィ ィェィィ ィヲ09ィー09 ィャィ ィー0208ィィィ 05ィ 06ィ ィイ02ィコィーィ ィィィャ0202ィー 09ィャ040905, ィー0605ィケィコ ィィ ィェ ィーィケ ィィ09ィー06 ツィェィィィコィィ ィーィ. 06ィェィ ツ ィ ィイ02ィコィー04 ィ ィョ01ィョィー ツ0208ィェ04ィャィィ (ィィ05ィィ, 09ィー , ィィィャ02ィーィケ ィー, 08ィ 09ィェ04ィヲ 08ィ ィェィェ06ィャィョ ィーィョ ィャィ ィー0208ィィィ 05ィ, ィョィャィェ060302ィェィェ06ィャィョ ィェィ ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィ ィ 05ィケィェ ィェ ィエ02ィェィィ07, 09ィャ. ィコ06ィャィ ィェ01ィョ gllightmodel). 0206ィ ィ 09ィィィーィケ ィェィョ ィィ09ィー06 ツィェィィィコ ィーィ ィャ0603ィェ ィャ06ィエィケ06 ィコ06ィャィ ィェ01 void g l L i g h t [ i f ] (GLenum l i g h t, GLenum pname, GLf loat param ) void g l L i g h t [ i f ] (GLenum l i g h t, GLenum pname, GLfloat *params ) 03ィ 08ィ ィャ02ィー08 light 0601ィェ0604ィェィ ツィェ ィー ィィ09ィー06 ツィェィィィコ ィーィ. 02ィェ 0904ィ ィィ08ィ 02ィー0907 ィィ04 ィェィ ィ 0608ィ ィィィ 05ィケィェ ィィィャ090605ィィ ツ0209ィコィィ01 ィィィャ02ィェ 09ィィ01ィ GL_LIGHTi, i ィェ ィ ィーィケ 09 01ィィィ 07ィ 0406ィェ02 06ィー ィコ06ィェ09ィーィ ィェィー04 GL_MAX_LIGHT, ィコ06ィー0608ィ 07 06ィ 04 ツィェ06 ィェ ィィィー ィケィャィィ. 03ィ 08ィ ィャ02ィー0804 pname ィィ params ィィィャ0206ィー 09ィャ040905, ィ ィェィ ィィ ツィェ04ィヲ ィコ06ィャィ ィェ0102 glmaterial. 04ィ 0909ィャ06ィー08ィィィャ 04ィェィ ツ02ィェィィ07 07ィ 08ィ ィャ02ィー08ィ pname: GL_SPOT_EXPONENT 07ィ 08ィ ィャ02ィー08 param ィェ ィ ィーィケ ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0602 ツィィ ィー , 04ィ 01ィ 06ィエ0202

70 ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ ィエ02ィェィィ02 08ィ ィェィィ02 ィィィェィー02ィェ09ィィ09ィェ0609ィーィィ ィーィ. 06ィー06ィー 07ィ 08ィ ィャ02ィー ィィ090409ィ 02ィー ィョ ィェィケ ィコィョ09ィィ080609ィ ィェィェ0609ィーィィ ィィ09ィー06 ツィェィィィコィ ィーィ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: 0 (08ィ ィェィェ04ィヲ ィー). GL_SPOT_CUTOFF 07ィ 08ィ ィャ02ィー08 param ィェ ィ ィーィケ ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0602 ツィィ ィャ020301ィョ 0 ィィ 90 ィィ05ィィ 08ィ 09ィェ , ィコ06ィー ィー ィャィ ィコ09ィィィャィ 05ィケィェ04ィヲ ィョ ィ 04ィ ィ ィーィ. 05ィェィ ツ02ィェィィ02 05ィー ィ 08ィ ィャ02ィー08ィ 0209ィーィケ ィィィェィ ィョ0005ィ ィィィェ02 ィコ06ィェィョ090609ィィ01ィェ ィー ィー06ィコィ, ィ 09ィ 02ィャ ィィ09ィー06 ツィェィィィコ06ィャ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: 180 (08ィ ィェィェ04ィヲ ィー). GL_AMBIENT 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ ィェィ ツ02ィェィィ ィー0609 RGBA, ィコ06ィー ィー ィー 0006ィェ ィエ02ィェィィ07. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 0.0, 1.0). GL_DIFFUSE 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ ィェィ ツ02ィェィィ ィー0609 RGBA, ィコ06ィー ィー ィー 01ィィ0000ィョ04ィェ ィエ02ィェィィ07. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (1.0, 1.0, 1.0, 1.0) GL_LIGHT0 ィィ (0.0, 0.0, 0.0, 1.0) ィーィ 05ィケィェ0401. GL_SPECULAR 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ ィェィ ツ02ィェィィ ィー0609 RGBA, ィコ06ィー ィー ィー ィコィ 05ィケィェ ィー08ィ 0302ィェィィ07. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (1.0, 1.0, 1.0, 1.0) GL_LIGHT0 ィィ (0.0, 0.0, 0.0, 1.0) ィーィ 05ィケィェ0401. GL_POSITION 07ィ 08ィ ィャ02ィー08 params ィェ ィ ィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 ツィィ0905ィ, ィコ06ィー ィー ィェィィ02 ィィ09ィー06 ツィェィィィコィ ィーィ ィィ 04ィェィ ツ02ィェィィ02 ィコ06ィャ0706ィェ02ィェィー04 w 08ィ 09ィェ06 0.0, ィー06 ィィ09ィー06 ツィェィィィコ 09 ツィィィーィ 02ィー0907 ィ 0209ィコ06ィェ02 ツィェ06 ィョ01ィ 0502ィェィェ04ィャ ィィ 0708ィィ 08ィ 09 ツ02ィー ィエ02ィェィェ0609ィーィィ ィョ ツィィィー0409ィ 02ィー0907 ィー0605ィケィコ06 ィェィ 0708ィ ィェィィ02 ィェィ ィー06 ツィコィョ (x, y, z), ィーィィ09ィェ06ィャ 0905ィョ ツィ ツィィィーィ 02ィー0907, ツィー06 ィィ09ィー06 ツィェィィィコ 08ィ ィェ 09 ィー06 ツィコ02 (x, y, z, w) ィャ 0905ィョ ツィ ィ ィ 0502ィェィィ07

71 ィィ09ィ ィェィィ02 ィィ09ィー06 ツィェィィィコ ィーィ ィーィ 0708ィィ ィョ01ィ 0502ィェィィィィ 06ィー ィィ09ィー06 ツィェィィィコィ ィェ ィィ ィィィー, ィー.02. ィィ09ィー06 ツィェィィィコ 09 ツィィィーィ 02ィー0907 ィ 0209ィコ06ィェ02 ツィェ06 ィョ01ィ 0502ィェィェ04ィャ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 1.0, 0.0). GL_SPOT_DIRECTION 07ィ 08ィ ィャ02ィー08 params ィェ 0108ィ ィェィィィーィケ ツ02ィー ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 ツィィ0905ィ, ィコ06ィー ィー ィェィ 0708ィ ィェィィ ィーィ. 05ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 6モ11.0, 1.0). 06ィーィ 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィ ィィ09ィー06 ツィェィィィコィ ィィィャ0202ィー 09ィャ040905, ィィ 04ィェィ ツ02ィェィィ02 GL_SPOT_CUTOFF 06ィー05ィィ ツィェ06 06ィー 180 (ィコ06ィー , ィコ09ィーィ ィーィィ, 04ィ 01ィ ィェ ィョィャ0605 ツィ ィェィィ06). GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION, GL_QUADRATIC_ATTENUATION 07ィ 08ィ ィャ02ィー08 params 04ィ 01ィ 02ィー 04ィェィ ツ02ィェィィ ィェ ィィ04 ィー ィコ ィィ02ィィ02ィェィー0609, ィエィィ ィ ィ 0502ィェィィ02 ィィィェィー02ィェ09ィィ09ィェ0609ィーィィ ィーィ 0708ィィ ィョ01ィ 0502ィェィィィィ 06ィー ィィ09ィー06 ツィェィィィコィ ィョ09ィコィ 06ィー0907 ィー0605ィケィコ06 ィェ0206ィー08ィィ02ィ ィー0205ィケィェ ィェィ ツ02ィェィィ ィィ ィィ09ィー06 ツィェィィィコ ィェ ィー0907 ィェィ 0708ィ ィェィェ04ィャ (09ィャ. GL_POSITION), ィー ィ ィ 0502ィェィィ02 06ィ 08ィ ィーィェ ィィ06ィェィ 05ィケィェ06 09ィョィャィャ02: attconstant + attlinear 6モ5 d + attquadratic 6モ5 d d 08ィ 0909ィー0607ィェィィ02 ィャ020301ィョ ィィ09ィー06 ツィェィィィコ06ィャ ィーィ ィィ ィエィ 02ィャ06ィヲ ィィィャ ィィィェ06ィヲ; attconstant, attlinear ィィ attquadratic 08ィ 09ィェ04 07ィ 08ィ ィャ02ィー08ィ ィャ, 04ィ 01ィ ィェィェ04ィャ ィャ06ィエィケ06 ィコ06ィェ09ィーィ ィェィー GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION ィィ GL_QUADRATIC_ATTENUATION ィー0902ィー09ィー0902ィェィェ ィョィャ0605 ツィ ィェィィ06 05ィーィィ 07ィ 08ィ ィャ02ィー ィ 01ィ 06ィー0907 ィー0806ィヲィコ06ィヲ (1, 0, 0), ィィ 00ィ ィコィーィィ ツ0209ィコィィ ィ ィ 0502ィェィィ07 ィェ ィィ ィィィー.

72 ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ ィエ02ィェィィ ィィ ィィ04ィャ02ィェ02ィェィィィィ ィェィィ07 ィィ09ィー06 ツィェィィィコィ ィーィ ィョ02ィー ィョ ツィィィー0409ィ ィーィケ ィョ06ィエィィィヲ 00ィ ィコィー: 09 OpenGL ィィ09ィー06 ツィェィィィコィィ ィーィ ィー ィ ィイ02ィコィーィ ィャィィ, 0906 ィャィェ060006ィャ ィーィ ィコィィィャィィ 0302, ィコィ ィコ ィャィェ060006ィョ000605ィケィェィィィコィィ ィィ ィー06 ツィコィィ. 01ィ ィェィィ01 08ィ ィー08ィ ィェ0702ィー ィェ0609ィェ ィ 09ィィ ィ 08ィ ィ 06ィーィコィィ ィコ ィィィェィ ィー 09 OpenGL 07ィ 08ィ ィャ02ィー0804, 0607ィィ090409ィ 06ィエ ィェィィ ィー08ィ ィェ09ィー0902, ィ 08ィ 04ィョ06ィー0907 ィー02ィコィョィエ02ィヲ ィャ ィケィェ06-09ィィ ィヲ ィャィ ィー08ィィ0202ィヲ 09 ィャ06ィャ02ィェィー ィャィィ080609ィ ィェィィ07 06ィ ィイ02ィコィーィ, ィー ィャ06ィャ02ィェィー ィ ィー0902ィー09ィー09ィョ06ィエィィ01 ィコ06ィャィ ィェ01 OpenGL. 06ィ ィコィィィャ 06ィ 08ィ 0406ィャ, ィャィィ08ィョ07 ィィ09ィー06 ツィェィィィコ ィーィ 0601ィェ ィャ02ィェィェ ィ ィイ02ィコィー06ィャ ィェ04 ィィ05ィィ ィコィ ィャ020806ィヲ, ィャ0603ィェ ィィ090704ィ ィーィケ ィコ 05ィー06ィャィョ 06ィ ィイ02ィコィーィョ. 0605ィィ, ィェィ 06ィ ィー, ィャィィ080609ィ ィーィケ 09ィーィ 02ィィ06ィェィ 08ィェ04ィヲ ィィ09ィー06 ツィェィィィコ ィーィ, ィコ06ィー060804ィヲ ィ ィョ0102ィー 0609ィーィ 09ィ ィーィケ0907 ィェィ ィャ0209ィー02, 0706ィコィ 0108ィョ00ィィ02 06ィ ィイ02ィコィー ィャ02ィエィ 06ィー ィ ィエ ィ 09ィィ0506 ィーィ ィコ0602: e0905ィィ ィェィィ02 ィィ09ィー06 ツィェィィィコィ ィーィ 04ィ 01ィ 02ィー0907 ィコ06ィャィ ィェ0106ィヲ gllight ィェィィ02ィャ ィェィィ07 09ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィャ (ィェィ 0708ィィィャ0208, ィコ06ィャィ ィェ0106ィヲ gllookat()), ィー06 ィ ィョ0102ィー 09 ツィィィーィ ィーィケ0907, ツィー06 ィコ ィィィェィ ィー04 (0, 0, 0) ィィ09ィー06 ツィェィィィコィ ィェィ ィィィー ィー06 ツィコ02 ィェィ ィ ィェィィ07 ィィ, ィ ィー0205ィケィェ06, ィェィィ02 ィィ09ィー06 ツィェィィィコィ ィーィ ィー ィーィェ0609ィィィー0205ィケィェ ィェィィ07 ィェィ ィ ィ ィー ィィ ィェィィ02 ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー0907 ィャ020301ィョ ィェィィ02ィャ ィェィィ07 ィコィ ィャ ィィ ィ 08ィ ィ ィェィィ07ィャィィ ィャ ィケィェ06-09ィィ ィヲ ィャィ ィー08ィィ ィ ィイ02ィコィーィ, ィー06 06ィェ06 00ィィィコ09ィィ08ィョ02ィー0907, ィー ィー06ィャ 0905ィョ ツィ ィェィィ02 ィィ09ィー06 ツィェィィィコィ ィーィ 04ィ 01ィ 02ィー ィャィィ ィコ ィィィェィ ィーィ ィィ ィケ040609ィ ィェィィ ィエ02ィェィィ07 09ィェィ ツィ 05ィ ィェィ 0106 ィョ09ィーィ ィェ0609ィィィーィケ ィー0902ィー09ィー09ィョ06ィエィィィヲ ィィィャ ィャ ィコ06ィャィ ィェ0104 glenable(gl_lighting), ィ 04ィ ィー02ィャ 09ィコ0506 ツィィィーィケ ィェィョ03ィェ04ィヲ ィィ09ィー06 ツィェィィィコ ィコ06ィャィ ィェ0106ィヲ glenable(gl_lighti). 03ィエ02 08ィ 04 06ィ 08ィ ィーィィィャ 09ィェィィィャィ ィェィィ02 ィェィ ィー06, ツィー ィィ 0904ィコ0506 ツ02ィェィェ06ィャ ィエ02ィェィィィィ ィー ィィィェ04 08ィ 0902ィェ ィー02ィコィョィエ02ィャィョ ィーィョ, ィコ06ィー060804ィヲ 04ィ 01ィ 02ィー0907 ィコ06ィャィ ィェ01ィ ィャィィ glcolor. 0308ィィ 09ィコ0506 ツ02ィェィェ06ィャ ィエ02ィェィィィィ ィー ィィィェ ツィィ ィー0907 ィィ ィィ04 ィィィェ000608ィャィ 02ィィィィ 06 ィャィ ィー0208ィィィ 0502, ィェ0608ィャィ ィィ ィィ09ィー06 ツィェィィィコィ ィーィ. 0308ィィ 0904ィコ0506 ツ02ィェィィィィ ィエ02ィェィィ07 09ィィ04ィョィ 05ィィ04ィ 02ィィ ィィ ィィィー ィ 0409ィー080202, 0601ィェィ ィコ06 09 ィーィ ィコ06ィャ 0905ィョ ツィ ィィ ィェィィ ィェ06 09ィ ィャ06 08ィ 0909 ツィィィー0409ィ ィーィケ ィーィ ィィィェ.

73 ィ ィェィィ ィコィーィ ィーィョィャィ ィェィ ィコ09ィー ィ ィャィャ04, 0102ィャ06ィェ09ィー08ィィ08ィョ06ィエ02ィヲ 0609ィェ0609ィェ ィィィェ02ィィ ィェィィ07 ィャィ ィー0208ィィィ ィィ ィィ09ィー06 ツィェィィィコ ィーィ, 0708ィィ ィェ ィィ ィェィィィィ ィ ィェィィ ィコィーィ ィーィョィャィ ィェィ 00 04ィ ィェィィ02 08ィ 0909ィャ06ィー08ィィィャ 0601ィェィョ ィィィェィー ィェィョ06 ィィ ツィ 09ィー06 ィィ ィケ04ィョ02ィャィョ ィャ0603ィェ0609ィーィケ OpenGL ィ ィェィィ ィコィーィ ィーィョィャィ ィェィ ィコ ィ ィーィョィャィ ィェィィ09ィ ィェィィ ィェ ィ 02ィー 0802ィ 05ィィ09ィーィィ ツィェ04ィヲ ィコィー, ィ ィィィェ060001ィ ィャ060302ィー ィィ 09ィコ0804ィーィケ ィェ02ィコ06ィー ィ 08ィー0200ィ ィコィー04, ィコ06ィー ィー0907, ィコ060001ィ ィェ ィィ09ィョィー09ィー09ィョ06ィー 06ィー01ィ 0502ィェィェ ィ ィイ02ィコィー04. 06ィョィャィ ィェ 09 OpenGL 0802ィ 05ィィ04ィョ02ィー ィョィー02ィャ ィィ04ィャ02ィェ02ィェィィ ィーィ 06ィ ィイ02ィコィー ィェ ィ 09ィィ09ィィィャ0609ィーィィ 06ィー ィィ ィョィ ィィィェ04, ィー ィ 0909ィー0607ィェィィ ィー06 ツィコィィ ィェィ ィ ィェィィ ィャ02ィェ02ィェィィ ィーィ ィィ ィィィー 05ィィィ ィィィェ 0708ィィィャィィィーィィ090609, 05ィィィ ィコィ ィィィコ ィェィ 05ィーィ ィ 09ィー0208ィィ04ィ 02ィィィィ 09 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー 0802ィ 05ィィ04ィ 02ィィィィ OpenGL. 06ィーィィィャ ィャ ィャ0603ィェ06 ツィ 09ィーィィ ツィェ06 ィョ0708ィ ィーィケ 09ィャ. 08ィ ィコ0506 ツ02ィェィィ ィコィーィ 04ィ ィーィョィャィ ィェィィ09ィ ィェィィ07 ィェ0206ィ ィィィャ ィ ィーィケ ィコ06ィャィ ィェ01ィョ glenable(gl_fog). 0002ィー ツィィ090502ィェィィ07 ィィィェィー02ィェ09ィィ09ィェ0609ィーィィ ィーィョィャィ ィェィ ィィィェ02 ィャ0603ィェ ィィィーィケ ィャ06ィエィケ06 ィコ06ィャィ ィェ01 void glfog [ i f ] (enum pname, T param ) void glfog [ i f ] v (enum pname, T params ) ィョィャ02ィェィー pname ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_FOG_MODE ィ 0800ィョィャ02ィェィー param ィー ィャィョ05ィョ, 0706 ィコ06ィー060806ィヲ ィ ィョ0102ィー 0904 ツィィ090507ィーィケ0907 ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィーィョィャィ ィェィ 09 ィー06 ツィコ ィー06ィャ 0905ィョ ツィ 02 param ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_EXP ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ 04ィ 01ィ 02ィー ィャィョ0506ィヲ f = e (6モ1d6モ5z) ; GL_EXP2 ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ 04ィ 01ィ 02ィー ィャィョ0506ィヲ f = e 6モ1(d6モ5z)2 ;

74 ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ ィエ02ィェィィ02 GL_LINEAR ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ 0904 ツィィ ィー ィャィョ0502 f = e 6モ1 z/e 6モ1 s, z 08ィ 0909ィー0607ィェィィ02 06ィー ィィィェ04, 09 ィコ06ィー060806ィヲ ツィィ ィー0907 ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィーィョィャィ ィェィ, 0106 ィー06 ツィコィィ ィェィ ィ ィェィィ ィィ02ィィ02ィェィー04 d, e, s 04ィ 01ィ 06ィー ィャ06ィエィケ ィョ06ィエィィ01 04ィェィ - ツ02ィェィィィヲ ィ 0800ィョィャ02ィェィーィ pname: GL_FOG_DENSITY param ィー ィコ ィィ02ィィ02ィェィー d GL_FOG_START param ィー ィコ ィィ02ィィ02ィェィー s GL_FOG_END param ィー ィコ ィィ02ィィ02ィェィー e ィー ィーィョィャィ ィェィ 04ィ 01ィ 02ィー ィャ06ィエィケ06 ィ 0800ィョィャ02ィェィーィ pname, 08ィ 09ィェ GL_FOG_COLOR ィー06ィャ 0905ィョ ツィ 02 params ィョィコィ 04ィ ィー0205ィケ ィェィ ィャィ 0909ィィ09 ィィ ィコ06ィャ0706ィェ02ィェィー ィーィ. 0308ィィ ィャ 0708ィィィャ0208 ィィ ィケ040609ィ ィェィィ07 05ィー ィコィーィ : GLfloat FogColor [ 4 ] = { 0. 5, 0. 5, 0. 5, 1 } ; glenable (GL_FOG) ; glfogi (GL_FOG_MODE,GL_LINEAR) ; glfogf (GL_FOG_START, ) ; glfogf (GL_FOG_END, ) ; glfogfv (GL_FOG_COLOR, FogColor ) ; ィェィー080605ィケィェ ) ィェィィィー02 08ィ 04ィェィィ02ィョ ィャ020301ィョ 0506ィコィ 05ィケィェ04ィャィィ ィィ ィ 0209ィコ06ィェ02 ツィェ06 ィョ01ィ 0502ィェィェ04ィャィィ ィィ09ィー06 ツィェィィィコィ ィャィィ ィーィ. 2) ツ ィョ03ィィィー ィコ06ィャィ ィェ01ィ glcolormaterial? 3) 08ィ ィコ 04ィ 01ィ ィーィケ ィェィィ02 ィィ09ィー06 ツィェィィィコィ ィーィ ィーィ ィコィィィャ 06ィ 08ィ 0406ィャ, ツィー06ィ 04 06ィェ ィ ィェィ ィィ ィー06 ツィコ ィェィィ07 ィェィ ィ ィ ィー020507? 4) 08ィ ィコ 04ィ 01ィ ィーィケ 00ィィィコ09ィィ080609ィ ィェィェ ィェィィ02 ィィ09ィー06 ツィェィィィコィ ィーィ? ィェ06 05ィィ 04ィ 01ィ 09ィ ィーィケ ィェィィ02 ィィ09ィー06 ツィェィィィコィ 06ィーィェ0609ィィィー0205ィケィェ ィコィ 05ィケィェ0401 ィコ ィィィェィ ィー 06ィ ィイ02ィコィーィ?

75 ィェィー080605ィケィェ ) 08ィ ィコ 04ィ 01ィ ィーィケ ィコ06ィェィョ09ィェ04ィヲ ィィ09ィー06 ツィェィィィコ ィーィ? 6) ィィ ィェ02 09ィコ0506 ツ02ィェ ィエ02ィェィィ02, ィェ06 ィェ02ィー ィィ09ィー06 ツィェィィィコ ィーィ, ィコィ ィコ06ィヲ ィー ィ ィョ01ィョィー ィィィャ02ィーィケ 06ィ ィイ02ィコィー04?

76 13

77 130105ィ 09ィ ィコ09ィーィョ08ィィ080609ィ ィェィィ ィー02ィコ09ィーィョ0806ィヲ ィ ィョ0102ィャ 0706ィェィィィャィ ィーィケ ィィ0406ィ 08ィ 0302ィェィィ02, ィコ06ィー ィェィ ィェィェ04ィャ 06ィ 08ィ 0406ィャ ィェィ ィェ0209ィーィィ ィェィ 06ィ ィイ02ィコィー, ィェィ 0708ィィィャ0208, ィィ01ィ ィェィィ07 ィィ ィィィィ ィケ0200ィェ0609ィーィィ ィェ0609ィーィィ ィ ィ 06ィー04 09 ィー02ィコ09ィーィョ0806ィヲ ィョ02ィー ィェィィィーィケ ィョ06ィエィョ ィ ィー0205ィケィェ0609ィーィケ 0102ィヲ09ィー09ィィィヲ: 0キ3 0904ィ 08ィ ィーィケ ィィ0406ィ 08ィ 0302ィェィィ02 ィィ ィ 08ィ ィ ィーィケ ィコ ィェィョ03ィェ06ィャィョ ィャィ ィーィョ; 0キ ィ ィーィケ ィィ0406ィ 08ィ 0302ィェィィ02 09 OpenGL; 0キ ィィィーィケ, ィコィ ィコ ィー02ィコ09ィーィョ08ィ ィ ィョ0102ィー ィェィ ィェ0609ィィィーィケ0907 ィェィ 06ィ ィイ02ィコィー ィィ ィコィ ィコ 06ィェィ ィ ィョ0102ィー 09 ィェィィィャ 0904ィ ィィィャ060102ィヲ09ィー090609ィ ィーィケ; 0キ ィ ィーィケ ィー02ィコ09ィーィョ08ィョ 09 06ィ ィイ02ィコィー06ィャ ィー0609ィコィ ィー02ィコ09ィーィョ ィィ ィケ040609ィ ィェィィ07 ィー02ィコ09ィーィョ0804 ィェ0206ィ ィィィャ06 09ィェィ ツィ 05ィ 04ィ 0008ィョ04ィィィーィケ 09 07ィ ィャ07ィーィケ ィェィョ03ィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02 ィィ ィ ィーィケ OpenGL. 77

78 ィ 09ィ ィコ09ィーィョ08ィィ080609ィ ィェィィ02 05 ツィィィー0409ィ ィェィィ ィ 00ィィ ツ0209ィコィィ01 01ィ ィェィェ0401 ィィ04 00ィ ィヲ05ィ ィィ ィィ ィ 08ィ ィ ィェィィ02 ィャ0603ィェ ィィィーィケ 0908ィョ ツィェィョ ィィ ィェィィィィ ィィ ィェ ィィ ィェ04ィヲ ィー02ィコ09ィー 00ィョィェィコ02ィィィィ ィ 0008ィョ04ィコィィ ィィ0406ィ 08ィ 0302ィェィィ07 ィィ04 00ィ ィヲ05ィ ィャィ ィー02 BMP ィェ06 ィーィ ィコ ィケ040609ィ ィーィケ ィョィェィコ02ィィ02ィヲ, ィエ02ィヲ ィーィ 09 ィ ィィィ 05ィィ06ィー02ィコィィ GLAUX ( ィィ ィケ040609ィ ィェィィ07 ィェィ ィェィィィー0205ィケィェ ィコ0506 ツィィィーィケ glaux.lib), ィコ06ィー0608ィ 07 09ィ ィャィ ィィィー ィェ0206ィ ィィィャ ィ 02ィィィィ. 06ィー06 00ィョィェィコ02ィィ07 AUX_RGBImageRec* auxdibimageload ( const char * f i l e ) le ィェィ 0409ィ ィェィィ02 00ィ ィヲ05ィ 09 08ィ 0903ィィ0802ィェィィ02ィャ *.bmp ィィ05ィィ *.dib. 08ィョィェィコ02ィィ ィ ィエィ 02ィー ィョィコィ 04ィ ィー0205ィケ ィェィ 06ィ 05ィ 09ィーィケ 07ィ ィャ07ィーィィ, ィ ィェ07ィー ィ 08ィ ィ ィェィェ ィ ィェィェ ィィ ィ ィェィィィィ 06ィ 08ィ 04ィ ィー02ィコ09ィーィョ ィ ィャ07ィーィィ ィョ02ィー ィョ ツィィィー0409ィ ィーィケ ィョィコィ ィ 02ィャ0402 ィー0802ィ 0609ィ ィェィィ , 08ィ 04ィャ ィー02ィコ09ィーィョ0804, ィコィ ィコ ィィ0406ィェィーィ 05ィィ, ィーィ ィコ ィィ ィーィィィコィ 05ィィ ィェ ィーィ ィーィケ 0906ィ 06ィヲ 09ィー020702ィェィィ ィヲィコィィ. 06ィー06 ィー0802ィ 0609ィ ィェィィ02 ィェィ ィコ05ィ ィ 02ィー ィコ06ィャ07ィ ィコィーィェ ィ 04ィャ02ィエ02ィェィィ07 ィー02ィコ09ィーィョ ィー02ィコ09ィーィョ08ィェ06ィヲ 07ィ ィャ07ィーィィ ィィ ィ 09ィー09ィョ02ィー ィコィーィィ09ィェ06ィャィョ ィィ ィケ040609ィ ィェィィ06. 04ィ ィ 06ィーィ ィーィケ ィー0605ィケィコ06 09 ィーィ ィコィィィャィィ ィー02ィコ09ィーィョ08ィ ィャィィ ィコ06ィェ02 ツィェ06 ィェ02ィョ0106ィ ィェ06, ィー06ィャィョ ィ 0008ィョ04ィコィィ ィィ01 ィェィ ィ 08ィ ィ ィーィケ. 0604ィャ02ィェ02ィェィィ02 08ィ 04ィャ ィー02ィコ09ィーィョ0804 ィャ0603ィェ ィーィィ ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 void gluscaleimage (GLenum format, GLint widthin, GL heightin, GLenum typein, const void * datain, GLint widthout, GLint heightout, GLenum typeout, void * dataout ) 00 ィコィ ツ0209ィー ィェィ ツ02ィェィィ07 07ィ 08ィ ィャ02ィー08ィ format 06ィ 04 ツィェ06 ィィ ィケ04ィョ02ィー ィェィ ツ02ィェィィ02 GL_RGB ィィ05ィィ GL_RGBA, ィエ ィャィ ィー 0108ィ ィェ02ィェィィ07 ィィィェ000608ィャィ 02ィィィィ. 03ィ 08ィ ィャ02ィー0804 widthin, heightin, widhtout, heightout ィー 08ィ 04ィャ ィェ ィィ ィェ ィィ0406ィ 08ィ 0302ィェィィィヲ, ィ ィャ06ィエィケ06 typein ィィ typeout 04ィ 01ィ 02ィー0907 ィーィィ ィャ02ィェィー0609 ィャィ 0909ィィ090609, 08ィ

79 ィー0609ィコィ ィー02ィコ09ィーィョ ィェィェ ィ ィ ィャ datain ィィ dataout. 08ィ ィコ ィィ 06ィ 04 ツィェ06, 05ィー06 ィャ060302ィー ィ 04ィーィケ ィーィィ07 GL_UNSIGNED_BYTE, GL_SHORT, GL_INT ィィ ィー ィョ05ィケィーィ ィー ィヲ 08ィ ィ 06ィー04 00ィョィェィコ02ィィ07 04ィ ィェ0609ィィィー 09 06ィ 05ィ 09ィーィケ 07ィ ィャ07ィーィィ, ィェィ ィコ06ィー0608ィョ06 ィョィコィ ィ 02ィー 07ィ 08ィ ィャ02ィー08 dataout ィー , ィェィ ィョ09ィャ06ィー0802ィーィケ 0905ィョ ツィ ィヲ, ィコ060001ィ 06ィ ィイ02ィコィー ィ 09ィー0208ィィ04ィ 02ィィィィ 06ィコィ ィ 02ィー ィ 04ィャ0208ィ ィャ 04ィェィ ツィィィー0205ィケィェ06 ィャ02ィェィケ0302 ィェィ ィェ0609ィィィャ06ィヲ ィェィ ィェ ィー02ィコ09ィーィョ0804. チ02ィャ ィャ02ィェィケ ィ ィイ02ィコィー, ィー02ィャ ィャ02ィェィケ ィェィ ィ 04ィーィケ ィェィ ィェ0609ィィィャィ 07 ィェィ ィェ ィー02ィコ09ィーィョ08ィ ィィ ィー06ィャィョ ィィィー ィェ07ィーィィ02 ィョ080609ィェ02ィヲ 0102ィーィ 05ィィ04ィ 02ィィィィ ィー02ィコ09ィーィョ0804 (mipmap). 08ィ ィヲ ィョ ィェィケ 0102ィーィ 05ィィ04ィ 02ィィィィ 04ィ 01ィ 02ィー ィェ02ィコ06ィー ィィ0406ィ 08ィ 0302ィェィィ02, ィコ06ィー ィー0907, ィコィ ィコ 0708ィ 09ィィ0506, ィョィャ02ィェィケ0302ィェィェ06ィヲ ィ 08ィ 04ィ ィコ0607ィィ02ィヲ 0608ィィ00ィィィェィ 05ィ. 06ィ ィコ06ィヲ ィー ィョ05ィョ ツ03ィィィーィケ ィコィ ツ0209ィー0906 ィェィ ィェ020902ィェィィ07 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー. 01ィ 0708ィィィャ0208, ィィ0406ィ 08ィ 0302ィェィィ07 08ィ 04ィャ020806ィャ 2 m チ 2 n ィャ0603ィェ ィー0806ィィィーィケ max(m, n) + 1 ィョィャ02ィェィケ0302ィェィェ0401 ィィ0406ィ 08ィ 0302ィェィィィヲ, ィー0902ィー09ィー09ィョ06ィエィィ01 08ィ 0405ィィ ツィェ04ィャ ィョ080609ィェ07ィャ 0102ィーィ 05ィィ04ィ 02ィィィィ. 06ィーィィ 0109ィ 05ィーィ 07ィ ィ ィェィィ07 06ィ 08ィ 04ィ ィー02ィコ09ィーィョ ィェィョィー0802ィェィェ02ィヲ 07ィ ィャ07ィーィィ OpenGL ィャ0603ィェ ィーィィ ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 void glubuild2dmipmaps (GLenum target, GLint components, GLint width, GLint height, GLenum format, GLenum type, const void * data ) ィ 08ィ ィャ02ィー08 target ィェ ィ 04ィーィケ 08ィ 0902ィェ GL_TEXTURE_2D. 03ィ 08ィ ィャ02ィー08 components ィー ィコ0605ィィ ツ0209ィー ィー ィコ06ィャ0706ィェ02ィェィー ィー02ィコ09ィーィョ0804 ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ ィェ0609ィェ ィェィ ツ02ィェィィ07: GL_LUMINANCE 0601ィェィ ィコ06ィャ0706ィェ02ィェィーィ 0708ィコ0609ィーィケ (ィー02ィコ09ィーィョ08ィ ィ ィョ0102ィー ィャ06ィェ ィャィェ06ィヲ); GL_RGB ィコ08ィ 09ィェ04ィヲ, 09ィィィェィィィヲ, ィェ04ィヲ; GL_RGBA ィコ08ィ 09ィェ04ィヲ, 09ィィィェィィィヲ, ィェ04ィヲ, ィ 05ィケ00ィ (09ィャ ). 03ィ 08ィ ィャ02ィー0804 width, height, data ィー 08ィ 04ィャ ィィ 08ィ ィェィィ02 ィー02ィコ09ィーィョ ィー0902ィー09ィー0902ィェィェ06, ィ format ィィ type ィィィャ0206ィー ィ ィェィ ィィ ツィェ04ィヲ 09ィャ040905, ツィー06 ィィ 09 ィコ06ィャィ ィェ0102 gluscaleimage().

80 ィ 09ィ ィコ09ィーィョ08ィィ080609ィ ィェィィ ィェ02ィェィィ07 05ィー06ィヲ ィコ06ィャィ ィェ0104 ィー02ィコ09ィーィョ08ィ ィコ0607ィィ08ィョ02ィー ィェィョィー0802ィェィェ ィ ィャ07ィーィケ OpenGL, ィィ ィー06ィャィョ 07ィ ィャ07ィーィケ, 04ィ ィェィィィャィ 02ィャィョ06 ィィ ィェ04ィャ ィィ0406ィ 08ィ 0302ィェィィ02ィャ, ィャ0603ィェ ィ 0601ィィィーィケ. 00 OpenGL ィョ09ィコィ 02ィー0907 ィィ ィケ040609ィ ィェィィ ィェ06ィャ0208ィェ0401 ィー02ィコ09ィーィョ08, ィー ィーィケ 08ィ 04ィャ0208ィ 1 チ N, 0601ィェィ ィコ06 05ィー ィ ィェィ 0106 ィョィコィ ィ ィーィケ, 04ィ 01ィ 09ィ ィコィ ツ0209ィー ィェィ ツ02ィェィィ07 target ィコ06ィェ09ィーィ ィェィーィョ GL_TEXTURE_1D. 0201ィェ06ィャ0208ィェ0402 ィー02ィコ09ィーィョ0804 ィィ ィケ04ィョ06ィー ィーィ ィー06 ツィェ ィコ06, ィー06ィャィョ ィェ02 ィ ィョ0102ィャ 0609ィーィ ィェィ 0905ィィ09ィ ィーィケ0907 ィェィ 05ィー06ィャ ィ ィェ ィィ ィィ ィケ040609ィ ィェィィィィ ィェ02 ィェ0209ィコ0605ィケィコィィ01 ィー02ィコ09ィーィョ08, 09 OpenGL 0708ィィィャ02ィェ0702ィー , ィェィ 0706ィャィィィェィ 06ィエィィィヲ ィ ィェィィ ィィ09ィコ0609 ィィ0406ィ 08ィ 0302ィェィィィヲ (ィーィ ィコ ィェィ ィ 02ィャ0402 ィー02ィコ09ィーィョ08ィェ ィ ィイ02ィコィー04). 05ィェィ ツィ 05ィ ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 void glgentextures ( GLsizei n, GLuint * t e x t u r e s ) ィェィ ィ ィーィケ n ィィ0102ィェィーィィ00ィィィコィ ィー ィー02ィコ09ィーィョ08, ィコ06ィー ィ ィョ01ィョィー 04ィ 07ィィ09ィ ィェ04 09 ィャィ 0909ィィ09 textures ィェィ ツィ 0506ィャ ィェィィ ィヲ09ィー09 06 ツ ィェ06ィヲ ィー02ィコ09ィーィョ ィョ02ィー ィ ィーィケ 0202 ィー02ィコィョィエ02ィヲ (060708ィィ090704ィ ィーィケ07 ィー02ィコ09ィーィョ08ィョ), ィ 09 ィコ06ィャィ ィェ01ィョ void glbindtexture (GLenum target, GLuint t e x t u r e ) target ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 04ィェィ ツ02ィェィィ07 GL_TEXTURE_1D ィィ05ィィ GL_TEXTURE_2D, ィ 07ィ 08ィ ィャ02ィー08 texture ィェ ィ 04ィーィケ 08ィ 0902ィェ ィィ0102ィェィーィィ00ィィィコィ ィー0608ィョ ィー06ィヲ ィー02ィコ09ィーィョ0804, ィコ ィコ06ィー060806ィヲ ィ ィョ01ィョィー 06ィーィェ0609ィィィーィケ ィョ06ィエィィ02 ィコ06ィャィ ィェ ィー060006, ツィー06ィ ィィ090609ィ ィェィィ ィ ィーィケ ィー02ィコィョィエ02ィヲ ィー02ィコ09ィーィョ08ィョ 09 ィェ02ィコ06ィー060804ィャ ィィ0102ィェィーィィ00ィィィコィ ィー060806ィャ, ィーィ ィー06 ツィェ ィーィケ ィ ィーィケ ィコ06ィャィ ィェ01ィョ glbindtexture() c ィー0902ィー09ィー09ィョ06ィエィィィャ 04ィェィ - ツ02ィェィィ02ィャ target ィィ texture. 06ィ ィコィィィャ 06ィ 08ィ 0406ィャ, ィコ06ィャィ ィェ01ィ glbindtexture() 09ィコ0506 ツィ 02ィー ィィィャ ィ ィェィィ07 ィー02ィコ09ィーィョ ィィ0102ィェィーィィ00ィィィコィ ィー060806ィャ texture, ィィ ィーィ ィコィ 07 ィー02ィコ09ィーィョ08ィ 02ィエ02 ィェ ィ ィェィ, 05ィィィ ィィィャ 0202 ィィ ィケ040609ィ ィェィィ07, ィー ィーィケ ィ 02ィー 05ィーィョ ィー02ィコ09ィーィョ08ィョ ィー02ィコィョィエ02ィヲ. 06ィ ィコ ィコィ ィコ ィェ ィコィ 07 ィ 0707ィ 08ィ ィーィョ08ィ ィャ060302ィー ィィ080609ィ ィーィケ ィー02ィコ09ィーィョ08ィ ィャィィ ィ 0605ィケ ィ 04ィャ0208ィ, ィ 08ィ 04ィェ ィ ィェィィ ツィィィーィケ 08ィ 04ィャ ィー02ィコ09ィーィョ チ256 ィィ05ィィ 512 チ512 07ィィィコ ィヲ. 02ィーィャ02ィーィィィャ, ツィー06 ィィ ィケ040609ィ ィェィィ02 ィェ02ィ 0605ィケ03ィィ01 ィー02ィコ09ィーィョ ィ 02ィー ィコィーィィ09ィェ0609ィーィケ ィ ィャィャ04.

81 ィ ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー ィ ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー ィィ ィェィ ィェィィィィ ィー02ィコ09ィーィョ0804, ィコィ ィコ ィョ0302 ィョ0706ィャィィィェィ ィケ, ィェィ 0106 ィョ ツィィィー0409ィ ィーィケ 0905ィョ ツィ ィヲ, ィコ060001ィ 08ィ 04ィャ ィー02ィコ09ィーィョ ィー05ィィ ツィ 06ィー ィー 06ィコ06ィェィェ ィ 04ィャ ィ ィイ02ィコィーィ, ィェィ ィコ06ィー060804ィヲ 06ィェィ ィェィ ィコ05ィ ィ 02ィー ィィ 05ィー06ィャ ィャ0603ィェ06 ィコィ ィコ 08ィ 09ィー070302ィェィィ02, ィーィ ィコ ィィ 0903ィ ィーィィ02 ィィ0406ィ 08ィ 0302ィェィィ07, ィィ ィー06, ィコィ ィコ ィ ィョ01ィョィー ィィィーィケ ィーィィ ィ 08ィ ィ ィェィィ07, ィャ060302ィー ィケ0204ィェ ィィ07ィーィケ ィェィ ィコィ ツ0209ィー ィー080602ィェィェ ィィ0406ィ 08ィ 0302ィェィィ ィェィィ ィェィィ07 ィー06 ツィコィィ ィェィ ィー02ィコ09ィーィョ0802 ィィ ィケ04ィョ02ィー ィ 08ィ ィャ02ィー08ィィ ツ0209ィコィ 07 09ィィ09ィー02ィャィ ィコ ィィィェィ ィー (s, t), 0708ィィ ツ02ィャ 04ィェィ ツ02ィェィィ07 s ィィ t ィェィ ィー ィー080204ィコ02 [0, 1] (09ィャ. 08ィィ09ィョィェ06ィコ 6.1) 04ィィ ィコ09ィーィョ08ィェ0402 ィコ ィィィェィ ィー ィィ04ィャ02ィェ02ィェィィ07 08ィ 0405ィィ ツィェ ィ 08ィ ィャ02ィー ィー02ィコ09ィーィョ ィィィャ02ィェ0706ィー0907 ィコ06ィャィ ィェ0104: void gltexparameter [ i f ] (GLenum target, GLenum pname, GLenum param ) void gltexparameter [ i f ] v (GLenum target, GLenum pname, Glenum* params ) 03ィ 08ィ ィャ02ィー08 target 0708ィィィェィィィャィ 02ィー 04ィェィ ツ02ィェィィ07 GL_TEXTURE_1D ィィ05ィィ GL_TEXTURE_2D, pname ィー, ィコィ ィコ ィヲ09ィー0906 ィ ィョ0102ィャ ィャ02ィェ07ィーィケ, ィ ィャ06ィエィケ06 param ィィ05ィィ params ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー0907 ィェ ィェィ - ツ02ィェィィ ィャ0603ィェ ィェィ ツ02ィェィィ07 pname: GL_TEXTURE_MIN_FILTER 07ィ 08ィ ィャ02ィー08 param

82 ィ 09ィ ィコ09ィーィョ08ィィ080609ィ ィェィィ ィー 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 ィ ィョ0102ィー ィィ ィケ040609ィ ィーィケ ィ ィーィィ07 ィー02ィコ09ィーィョ ィィ 04ィェィ ツ02ィェィィィィ GL_NEAREST ィ ィョ0102ィー ィィ ィケ040609ィ ィーィケ ィィィェ (ィ 05ィィ03ィ ィヲ03ィィィヲ), ィ 0708ィィ 04ィェィ ツ02ィェィィィィ GL_LINEAR ツ02ィー ィ 05ィィ03ィ ィヲ03ィィ ィャ02ィェィーィ ィー02ィコ09ィーィョ ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: GL_LINEAR. GL_TEXTURE_MAG_FILTER 07ィ 08ィ ィャ02ィー08 param ィー 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 ィ ィョ0102ィー ィィ ィケ040609ィ ィーィケ ィョ090205ィィ ツ02ィェィィ07 (08ィ 09ィー070302ィェィィ07) ィー02ィコ09ィーィョ ィィ 04ィェィ ツ02ィェィィィィ GL_NEAREST ィ ィョ0102ィー ィィ ィケ040609ィ ィーィケ ィィィェ (ィ 05ィィ03ィ ィヲ03ィィィヲ), ィ 0708ィィ 04ィェィ ツ02ィェィィィィ GL_LINEAR ツ02ィー ィ 05ィィ03ィ ィヲ03ィィ ィャ02ィェィーィ ィー02ィコ09ィーィョ ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: GL_LINEAR. GL_TEXTURE_WRAP_S 07ィ 08ィ ィャ02ィー08 param ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー 04ィェィ ツ02ィェィィ02 ィコ ィィィェィ ィー04 s, ィィ 06ィェ06 ィェ ィィィー 09 06ィー ィコ [0, 1]. 0308ィィ 04ィェィ ツ02ィェィィィィ GL_REPEAT ィ 07 ツィ 09ィーィケ s 06ィーィ 08ィ ィ 02ィー0907, ィィ ィョ05ィケィーィ ィー02 ィィ0406ィ 08ィ 0302ィェィィ02 08ィ 04ィャィェ0603ィ 02ィー ィェ0609ィーィィ. 0308ィィ 04ィェィ ツ02ィェィィィィ GL_CLAMP ィィ ィケ04ィョ06ィー0907 ィコ08ィ ィェィ ツ02ィェィィ07 (0 ィィ05ィィ 1), ツィー06 ィョ0106ィ ィェ06 ィィ ィケ040609ィ ィーィケ, ィィ ィェィ 06ィ ィイ02ィコィー ィェィ ィコ05ィ ィ 02ィー ィィィェ 06ィ 08ィ ィェィ ツ02ィェィィ ィョィャ0605 ツィ ィェィィ06: GL_REPEAT. GL_TEXTURE_WRAP_T ィ ィェィ ィィ ツィェ ィョィエ02ィャィョ 04ィェィ - ツ02ィェィィ06, ィー0605ィケィコ ィコ ィィィェィ ィー04 t ィケ040609ィ ィェィィ ィィィャィ GL_NEAREST ィ 02ィー 09ィコ ィーィケ ィェィ ィェィィ07 ィー02ィコ09ィーィョ0804, 0601ィェィ ィコ ィィ 05ィー06ィャ 09ィェィィ03ィ 02ィー0907 ィコィ ツ0209ィー0906, ィーィ ィコ ィコィ ィコ, 09 06ィー05ィィ ツィィ02 06ィー GL_LINEAR, ィィィェィー ィィ07 ィェ ィィ ィィィー ィー ツィー06ィ ィィィーィケ, ィコィ ィコ ィー02ィコ09ィーィョ08ィ ィ ィョ0102ィー 0904ィ ィィィャ060102ィヲ09ィー090609ィ ィーィケ 09 ィャィ ィー0208ィィィ 0506ィャ, ィィ04 ィコ06ィー ィ ィェ 06ィ ィイ02ィコィー, ィィ ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 void gltexenv [ i f ] (GLenum target, GLenum pname, GLtype param ) void gltexenv [ i f ] v (GLenum target, GLenum pname, GLtype * params )

83 ィ ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー ィ 08ィ ィャ02ィー08 target ィェ ィ 04ィーィケ 08ィ 0902ィェ GL_TEXTURE_ENV, ィ 09 ィコィ ツ0209ィー0902 pname 08ィ 0909ィャ06ィー08ィィィャ ィー0605ィケィコ ィェ06 04ィェィ ツ02ィェィィ02 GL_TEXTURE_ENV_MODE, ィコ06ィー ィィィャ02ィェ0702ィー0907 ィェィ ィィィ ツィ 09ィー06. 01ィ ィィィ ツィ 09ィー06 ィィ ィケ04ィョ02ィャ ィェィ ツ02ィェィィ07 07ィ 08ィ ィャ02ィー08ィ param: GL_MODULATE ィコ06ィェ02 ツィェ04ィヲ ィー ィェィ ィィィー0907 ィコィ ィコ ィィ ィェィィ ィーィ ィー06 ツィコィィ ィェィ ィェ0609ィーィィ ィィ ィーィ ィー0902ィー09ィー09ィョ06ィエ02ィヲ 02ィヲ ィー06 ツィコィィ ィェィ ィー02ィコ09ィーィョ0802. GL_REPLACE 09 ィコィ ツ0209ィー0902 ィコ06ィェ02 ツィェ ィーィ ィィ ィケ04ィョ02ィー ィー ィー06 ツィコィィ ィェィ ィー02ィコ09ィーィョ ィョ06ィエィィィヲ 0708ィィィャ0208 ィコ0601ィ 0102ィャ06ィェ09ィー08ィィ08ィョ02ィー 06ィ ィエィィィヲ ィコ ィ ィェィィ06 ィー02ィコ09ィーィョ08: /* ィェィョ03ィェ0602 ィェィ ィャ ィコ0605ィィ ツ0209ィー0906 ィー02ィコ09ィーィョ08 */ #define NUM_TEXTURES 10 /* ィィ0102ィェィーィィ00ィィィコィ ィー ィー02ィコ09ィーィョ08 */ int TextureIDs [NUM_TEXTURES] ; /* 06ィ 08ィ 04 ィー02ィコ09ィーィョ0804 */ AUX_RGBImageRec * pimage ;... /* 1) ィョ ツィ 02ィャ ィィ0102ィェィーィィ00ィィィコィ ィー ィー02ィコ09ィーィョ08 */ glgentextures (NUM_TEXTURES, TextureIDs ) ; /* 2) 0904ィ ィィ08ィ 02ィャ ィー02ィコ09ィーィョ08ィョ ィャ0601ィィ00ィィィコィ 02ィィィィ 07ィ 08ィ ィャ02ィー */ glbindtexture ( TextureIDs [ i ] ) ; /* 0<=i<NUM_TEXTURES*/ /* 3) 04ィ 0008ィョ03ィ 02ィャ ィー02ィコ09ィーィョ08ィョ. 04ィ 04ィャ ィー02ィコ09ィーィョ0804 "6モ16モ16モ1 09ィー020702ィェィケ 2 */ pimage=dibimageload ( " t e x t u r e.bmp" ) ; i f ( Texture!=NULL) { /* 4) ィ 02ィャ ィー02ィコ09ィーィョ08ィョ OpenGL ィィ 04ィ 01ィ 02ィャ 07ィ 08ィ ィャ02ィー0804 */

84 ィ 09ィ ィコ09ィーィョ08ィィ080609ィ ィェィィ02 /* ィ 09ィェィィ09ィ ィェィィ ィ ィ ィヲィーィョ */ g l P i x e l S t o r e i (GL_UNPACK_ALIGNMENT, 1 ) ; glubuildmipmaps (GL_TEXTURE_2D,GL_RGB, pimage6モ1>sizex, pimage6モ1>sizey, GL_RGB, GL_UNSIGNED_BYTE, pimage6モ1>data ) ; gltexparameterf (GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER, ( float )GL_LINEAR) ; gltexparameterf (GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, ( float )GL_LINEAR) ; gltexparameterf (GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, ( float )GL_REPEAT) ; gltexparameterf (GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, ( float )GL_REPEAT) ; gltexenvf (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, ( float )GL_REPLACE) ; /* 5) ィョ01ィ ィャ ィィ ィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02. */ f r e e ( Texture ) ; } else Error ( ) ; ィコ09ィーィョ08ィェ0402 ィコ ィィィェィ ィー ィェィ ィェ020902ィェィィ02ィャ ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー ィェ0206ィ ィィィャ06 ィョ09ィーィ ィェ0609ィィィーィケ ィー0902ィー09ィー09ィィ02 ィャ020301ィョ ィー06 ツィコィ ィャィィ ィェィ ィェ0609ィーィィ 06ィ ィイ02ィコィーィ ィィ ィェィ 09ィ ィャ06ィヲ ィー02ィコ09ィーィョ ィ 01ィ 09ィ ィーィケ 05ィー ィー0902ィー09ィー09ィィ02 ィャ0603ィェ ィョィャ07 ィャ02ィー0601ィ ィャィィ: 06ィー010205ィケィェ ィコィ ィヲ ィィィェ04 ィィ05ィィ 0908ィ 04ィョ ィィィェ, 04ィ 01ィ 09

85 ィコ09ィーィョ08ィェ0402 ィコ ィィィェィ ィー ィ 08ィ ィャ02ィー ィィィ 05ィケィェ06ィヲ 00ィョィェィコ02ィィィィ 06ィー06ィ 08ィ 0302ィェィィ ィヲ ィャ02ィー ィ 05ィィ04ィョ02ィー ィャ06ィエィケ06 ィコ06ィャィ ィェ01 void gltexcoord [ ] [ s i f d ] ( type coord ) void gltexcoord [ ] [ s i f d ] v ( type * coord ) チィ ィエ ィィ ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 gltexcoord2*(type s, type t), 04ィ 01ィ 06ィエィィ02 ィー02ィコィョィエィィ02 ィコ ィィィェィ ィー04 ィー02ィコ09ィーィョ ィェ07ィーィィ02 ィー02ィコィョィエィィ01 ィコ ィィィェィ ィー ィー02ィコ09ィーィョ0804 ィ ィェィ ィィ ツィェ ィェ07ィーィィ07ィャ ィー02ィコィョィエ ィーィ ィィ ィー02ィコィョィエ02ィヲ ィェ0608ィャィ 05ィィ ィィ ィー0907 ィ ィー08ィィィ ィョィー06ィャ ィィィェ ィェィ ィコ06 01ィ ィコィョィ ィ ィェィ ィェィィ ィー0902ィー09ィー09ィョ06ィエィィ01 ィコ ィィィェィ ィー ィー02ィコ09ィーィョ ィー ィケィェ06 ィー08ィョ010602ィャィコィィィャ 04ィ ィェ07ィーィィ02ィャ, ィー06ィャィョ 09 ィ ィィィ 05ィィ06ィー02ィコ02 GLU 0706ィャィィィャ06 ィコ06ィャィ ィェ01, ィエィィ ィー080602ィェィィ02 ィーィ ィコィィ ィィィャィィィーィィ ィコィ ィコ ィ, 02ィィ05ィィィェ0108 ィィ 01ィィ09ィコ, ィョ09ィャ06ィー0802ィェ06 ィーィ ィコ0302 ィェィ ィェィィ02 ィェィ ィェィィ01 ィー02ィコ09ィーィョ ィー ィーィ ィー06 ツィェ ィ ィーィケ ィコ06ィャィ ィェ01ィョ void gluquadrictexture ( GLUquadricObj * quadobject, GLboolean texturecoords ) 09 07ィ 08ィ ィャ02ィー0806ィャ texturecoords 08ィ 09ィェ04ィャ GL_TRUE, ィィ ィー060001ィ ィー02ィコィョィエィ 07 ィー02ィコ09ィーィョ08ィ ィ ィョ0102ィー ィ 09ィー06ィャィ ィーィィ ツ0209ィコィィ ィェィ ィコ05ィ ィ ィーィケ0907 ィェィ 0708ィィィャィィィーィィ09. 00ィー060806ィヲ ィャ02ィー ィ 05ィィ04ィョ02ィー ィャ06ィエィケ06 ィコ06ィャィ ィェ01 void gltexgen [ i f d ] (GLenum coord, GLenum pname, GLtype param ) void gltexgen [ i f d ] v (GLenum coord, GLenum pname, const GLtype * params ) 03ィ 08ィ ィャ02ィー08 coord ィー ィコィ ィコ06ィヲ ィコ ィィィェィ ィー04 04ィ 01ィ 02ィー ィャィョ05ィ, ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 04ィェィ ツ02ィェィィ02 GL_S, GL_T; pname ィャ060302ィー ィ 04ィーィケ 08ィ 0902ィェ 0601ィェ06ィャィョ ィィ ィョ06ィエィィ01 04ィェィ ツ02ィェィィィヲ: GL_TEXTURE_GEN_MODE 04ィ 01ィ 02ィー 00ィョィェィコ02ィィ ィェィ ィェィィ07 ィー02ィコ09ィーィョ ィー06ィャ 0905ィョ ツィ 02 ィ 0800ィョィャ02ィェィー param 0708ィィィェィィィャィ 02ィー 04ィェィ ツ02ィェィィ07: GL_OBJECT_LINEAR 04ィェィ ツ02ィェィィ ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィー02ィコ09ィーィョ08ィェ06ィヲ ィコ ィィィェィ ィー ィー ィ 0909ィー0607ィェィィ02ィャ 0106

86 ィ 09ィ ィコ09ィーィョ08ィィ080609ィ ィェィィ ィコ0609ィーィィ, 04ィ 01ィ 09ィ 02ィャ06ィヲ ィャ06ィエィケ06 04ィェィ ツ02ィェィィ07 pname GL_OBJECT_PLANE (09ィャ. ィェィィ0302) ィャィョ05ィ ィィィー ィョ06ィエィィィャ 06ィ 08ィ 0406ィャ: g = x 6モ5 x p + y 6モ5 y p + z 6モ5 z p + w 6モ5 w p g ィー0902ィー09ィー09ィョ06ィエィ 07 ィー02ィコ09ィーィョ08ィェィ 07 ィコ ィィィェィ ィーィ (s ィィ05ィィ p), x, y, z, w ィコ ィィィェィ ィー ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィー06 ツィコィィ. x p, y p, z p, w p ィコ ィィ02ィィ02ィェィー04 ィョ08ィ 09ィェ02ィェィィ ィコ0609ィーィィ ィャィョ0502 ィィ ィケ04ィョ06ィー0907 ィコ ィィィェィ ィー04 06ィ ィイ02ィコィーィ. GL_EYE_LINEAR ィ ィェィ ィィ ツィェ06 GL_OBJECT_LINEAR, ィー0605ィケィコ ィャィョ0502 ィィ ィケ04ィョ06ィー ィィ ィコ ィィィェィ ィー ィコ ィィィェィ ィー04 ィー02ィコ09ィーィョ ィ ィイ02ィコィーィ 09 05ィー06ィャ 0905ィョ ツィ 02 04ィ 09ィィ0907ィー 06ィー ィェィィ07 05ィー ィ ィイ02ィコィーィ. GL_SPHERE_MAP ィー 05ィャィョ05ィィ080609ィ ィーィケ 06ィー08ィ 0302ィェィィ02 06ィー ィェ0609ィーィィ 06ィ ィイ02ィコィーィ. 0602ィコ09ィーィョ08ィ ィコィ ィコ ィ ィ 0608ィ ツィィ09ィ 02ィー ィコ08ィョ00 06ィ ィイ02ィコィーィ ィ ィェィェ ィャ02ィー0601ィ ィィ ィケ04ィョ06ィー ィィ ィコ ィィィェィ ィー04 ィィ ィェ0206ィ ィィィャ06 04ィ 01ィ ィェィィ02 ィェ0608ィャィ 0502ィヲ. GL_OBJECT_PLANE ィー 04ィ 01ィ ィーィケ ィコ0609ィーィケ, 08ィ 0909ィー0607ィェィィ ィコ06ィー060806ィヲ ィ ィョ0102ィー ィィ ィケ040609ィ ィーィケ ィィ 0002ィェ0208ィ 02ィィィィ ィコ ィィィェィ ィー, ィィ ィョ09ィーィ ィェ ィェ ィィィャ GL_OBJECT_LINEAR ィー06ィャ 0905ィョ ツィ 02 07ィ 08ィ ィャ02ィー08 params ィー0907 ィョィコィ 04ィ ィー020502ィャ ィェィ ィャィ 0909ィィ09 ィィ04 ツ02ィー ィコ ィィ02ィィ02ィェィー0609 ィョ08ィ 09ィェ02ィェィィ ィコ0609ィーィィ. GL_EYE_PLANE ィ ィェィ ィィ ツィェ ィョィエ02ィャィョ 04ィェィ ツ02ィェィィ ィー 04ィ 01ィ ィーィケ ィコ0609ィーィケ ィィィャィ GL_EYE_LINEAR ィョ09ィーィ ィェ0609ィコィィ ィ 09ィー06ィャィ ィーィィ ツ0209ィコ ィィィャィ 04ィ 01ィ ィェィィ07 ィー02ィコ09ィーィョ08ィェ0401 ィコ ィィィェィ ィー ィェ0206ィ ィィィャ ィ ィーィケ ィコ06ィャィ ィェ01ィョ glenable 09 07ィ 08ィ ィャ02ィー0806ィャ GL_TEXTURE_GEN_S ィィ05ィィ GL_TEXTURE_GEN_P ィ ィャィャィ, ィィ ィケ04ィョ06ィエィ 07 ィェィ ィェィィ02 ィー02ィコ09ィーィョ0804 ィィ ィ ィェィィィャィ 02ィィ06, 0708ィィ ィェィ ィィ ィェィィィィ 09.

87 ィェィー080605ィケィェ ィェィー080605ィケィェ ) チィー06 ィーィ ィコ0602 ィー02ィコ09ィーィョ08ィ ィィ ツ ィィ ィケ04ィョ06ィー0907 ィー02ィコ09ィーィョ0804? 2) チィー06 ィーィ ィコ0602 ィー02ィコ09ィーィョ08ィェ0402 ィコ ィィィェィ ィー04 ィィ ィコィ ィコ 04ィ 01ィ ィーィケ ィィ ィ ィイ02ィコィーィ? 3) 08ィ ィコ06ィヲ ィャ02ィー ィ ィィィャ060102ィヲ09ィー09ィィ07 09 ィャィ ィー0208ィィィ 0506ィャ ィェィョ03ィェ06 ィィ ィケ040609ィ ィーィケ, ィィ ィー02ィコ09ィーィョ08ィ ィーィ ィー 0906ィ 06ィヲ ィコィ 08ィーィィィェィョ, 09ィィ0907ィエィョ06 ィェィ 09ィー02ィェ02 (GL_MODULATE, GL_REPLACE)? 4) ツィィ0905ィィィー02 ィィ ィーィェ ィ ィャ ィャ02ィー ィェ0208ィ 02ィィィィ ィー02ィコ09ィーィョ08ィェ0401 ィコ ィィィェィ ィー 09 OpenGL. 5) ツ ィィ ィケ04ィョ06ィー0907 ィョ080609ィェィィ 0102ィーィ 05ィィ04ィ 02ィィィィ ィー02ィコ09ィーィョ0804 (mipmapping)? 6) チィー06 ィーィ ィコ ィィィャ04 00ィィ05ィケィー08ィ 02ィィィィ ィー02ィコ09ィーィョ0804 ィィ ィコィ ィコ 04ィ 01ィ ィーィケ ィィ01 09 OpenGL?

88 13

89 130105ィ 09ィ ィ 02ィィィィ 09 07ィィィコ ィャィィ ィェィィ ィ 02ィィィヲ ィ 08ィ ィ ィェィィ06 ィコ ィィィェィ ィー ィィィェ, 0904 ツィィ090502ィェィィ ィーィ ィィ ィー.07., OpenGL ィィィー ィコ 05ィーィ 07ィョ 08ィ 09ィー0208ィィ04ィ 02ィィィィ, ィェィ ィコ06ィー060806ィャ ィィ ィィィー 08ィ 09ィー0208ィィ04ィ 02ィィ ィィィャィィィーィィ090609, ィェィ ィェィィ02 ィー02ィコ09ィーィョ0804, ィェィ ィェィィ ィコィーィ ィーィョィャィ ィェィ ィコィ ィィィャィィィーィィ09ィ ィョ05ィケィーィ ィー06ィャ 05ィー ィ ィー ィ ィェィィィャィ 02ィャィ 07 ィィィャ 09 ィ ィョ ィコィ 0108ィ 06ィ 05ィ 09ィーィケ, ィコィ ィャィョ 07ィィィコ ィー06ィヲ 06ィ 05ィ 09ィーィィ 0708ィィ07ィィ090409ィ 02ィー ィー ィィ 04ィェィ ツ02ィェィィ ィョィ ィィィェ04. OpenGL ィィ ィケ04ィョ02ィー 05ィーィョ ィィィェ000608ィャィ 02ィィ06, ツィー06ィ 04 04ィ 07ィィ09ィ ィーィケ 06ィ ィェ ィェィェ ィ ィェィェ ィ ィョ ィコィ 0108ィ ィー OpenGL ィィィャ0202ィー ィェ02 ィー0605ィケィコ06 06ィー010205ィケィェ04ィヲ ィコ06ィェ0902ィヲ ィ 08ィ ィ 06ィーィコィィ 07ィィィコ ィヲ, ィェ06 ィィ ィェ0209ィコ0605ィケィコ ィェィィィー0205ィケィェ0401 ィ ィョ ィ 0405ィィ ツィェ ィェィ 04ィェィ ツ02ィェィィ07. 06ィー ィー ィ ィャィャィィ09ィーィョ 00ィィィ ィコ06 ィコ06ィェィー080605ィィ080609ィ ィーィケ ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィェィ 09ィ ィャ06ィャ ィェィィ04ィコ06ィャ ィョ080609ィェ ィ 00ィィ ツ0209ィコィ 07 ィ ィィィ 05ィィ06ィー02ィコィ OpenGL ィィ09ィ 02ィー 08ィ ィ 06ィーィョ ィョ06ィエィィィャィィ ィ ィョ000208ィ ィャィィ: 0キ3 ィェ0209ィコ0605ィケィコ06 ィ ィョ ィーィ ; 0キ3 ィ ィョ ィョィ ィィィェ04; 0キ3 ィ ィョ ィェィ ィコ0607ィィィー0205ィケ (ィ ィコィコィョィャィョ0507ィー0608); 89

90 ィ 09ィ ィ 02ィィィィ 09 07ィィィコ ィャィィ 0キ3 ィ ィョ ィャィ 09ィコィィ. 0108ィョ0707ィ ィ ィョ ィーィ 09ィコ0506 ツィ 02ィー ィ ィョ ィコィ 0108ィ, ィェ06 ィーィ ィコィィ01 ィ ィョ ィャ060302ィー ィ 04ィーィケ ィェ0209ィコ0605ィケィコ ィィ ィィ ィケ040609ィ ィェィィィィ ィヲィェ06ィヲ ィ ィョ000208ィィ04ィ 02ィィィィ ィー 06 08ィ ィ 06 ツ02ィャ (front) ィィ 0006ィェ060906ィャ (back) ィ ィョ000208ィ ィ ィコ 0708ィ 09ィィ0506, ィェ060906ィャ ィ ィョ ィ ィャィャィ ィ 02ィー ィィ0406ィ 08ィ 0302ィェィィ02, ィコ06ィー ィ ィー02ィャ 08ィ 0406ィャ ィコ0607ィィ08ィョ02ィー ィ ィ 06 ツィィィヲ ィ ィョ ィ 05ィコ08ィ ィェ02 ィャ060302ィー ィィィーィケ0907 ィィィェ000608ィャィ 02ィィ07 ィー0605ィケィコ06 ィィ04 ィ ィョ ィーィ. 09ィョ ィョィ ィィィェ04 ィィ ィケ04ィョ02ィー ィョ01ィ 0502ィェィィ07 ィェ0209ィィ01ィィィャ ィェ0609ィー02ィヲ ィィ ィャィ 07 08ィ ィ 06ィーィ 09 ィェィィィャ ィー0802ィ ィョ02ィー0907 ィコ08ィ ィヲィェ ィコ06. 09ィョ ィェィ ィコ0607ィィィー0205ィケ ィャ0603ィェ ィィィャ02ィェ07ィーィケ ィ 0405ィィ ツィェ ィ 02ィィィヲ ィ ィェ06 08ィ ィ 06ィーィ 09 ィェィィィャ 0607ィィ09ィ ィェィ 09 08ィ ィョ ィャィ 09ィコィィ ィィ ィケ04ィョ02ィー ィャィィ080609ィ ィェィィ07 07ィィィコ090205ィケィェ0401 ィャィ 0906ィコ (ィー08ィ 00ィ 0802ィー0609), 0905ィョ03ィ ィエィィ ィ ィェィィ07 ィィ04 06ィ ィエ ィャィ 0909ィィ09ィ ィー ィィィコ ィヲ, ィコ06ィー ィョ02ィー ィーィィ ィェィ 05ィコ08ィ ィェ. 09ィョ ィャィ 09ィコィィ ィィ 08ィ ィ 06ィーィ 09 ィェィィィャ ィ ィ ィェ06 08ィ 0909ィャ06ィー0802ィェ ィ ィ , 8.2 ィィ ィャ0203ィィ09ィ ィェィィ02 ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ ィ ツィェ0609ィーィケ 04ィ 04ィェ0606ィ 08ィ 04ィェ ィ ツィェ ィ ィイ02ィコィー04 09ィー02ィコ05ィ, ィ ツィェィ ィョ01ィ ィィ ィー.01. ツィ 09ィー ィー0802 ツィ 06ィー ィ 05ィケィェ0609ィーィィ, ィー06ィャィョ 09ィ 03ィェ06 ィョィャ02ィーィケ ィ 09ィ ィーィケ ィーィ ィコィィ02 06ィ ィイ02ィコィー04 09 ィィィェィー0208ィ ィコィーィィ09ィェ06ィヲ 0008ィ 00ィィィコ02. OpenGL ィーィ ィー ィ ィャィャィィ09ィーィョ ィャ0201ィ ィェィィ04ィャ 08ィ ィ 06ィー ィョ ィ ツィェ04ィャィィ 06ィ ィイ02ィコィーィ ィャィィ, ィコ06ィー060804ィヲ ィィ ィ ィョ0102ィー ィコ08ィ ィーィコ ィィ09ィ ィェ 09 05ィー06ィャ 08ィ ィ ツィェ0609ィーィケ 0802ィ 05ィィ04ィョ02ィー ィャ06ィエィケ ィィィ 05ィケィェ ィィィャィ 09ィャ0203ィィ09ィ ィェィィ ィー0609 (blending) ィィィーィャ 09ィャ0203ィィ09ィ ィェィィ07 ィコ06ィャィ ィィィェィィ08ィョ02ィー ィーィ ィーィ ィコ ィェィ ィ 02ィャ ィエィィ01 07ィィィコ ィヲ (ィー ィコィ ィェ01ィィ01ィ ィー ィェィ 0706ィャ02ィエ02ィェィィ02 09 ィ ィョ ィコィ 0108ィ ) ィーィ ィャィィ ィー0902ィー09ィー09ィョ06ィエィィ01 07ィィィコ ィヲ, ィョ ィ ィェ07ィエィィ ィ ィョ ィャ0203ィィ09ィ ィェィィ07 ィィ ィケ04ィョ02ィー0907 ツ02ィー090208ィーィ 07 ィコ06ィャ0706ィェ02ィェィーィ ィーィ ィ 05ィケ00ィ -ィコ06ィャ0706ィェ02ィェィーィ,

91 ィャ0203ィィ09ィ ィェィィ02 ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ ィ ツィェ0609ィーィケ ィー06ィャィョ 05ィー06ィー ィィィャ ィェィ ィ 06ィー 02ィエ02 ィ 05ィケ00ィ -09ィャ0203ィィ09ィ ィェィィ02ィャ ィ ィャィャィ ィャ060302ィー ィョ0708ィ ィーィケ ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ06 ィ 05ィケ00ィ -ィコ06ィャ0706ィェ02ィェィー04 ィー06 ツィェ06 ィーィ ィコ 0302, ィコィ ィコ ィィ ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィェ0609ィェ ィー0609, ィー ィ 01ィ 09ィ ィーィケ 04ィェィ ツ02ィェィィ02 ィィィェィー02ィェ09ィィ09ィェ0609ィーィィ ィコィ ィィィコ ィィ05ィィ ィコィ ィヲ ィィィェ ィィィャィィィーィィ09ィ ィィィャ 09ィコ0506 ツィ 02ィー ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 glenable(gl_blend) ィィィーィケ 07ィ 08ィ ィャ02ィー ィャ0203ィィ09ィ ィェィィ07 ィャ0603ィェ ィャ06ィエィケ06 ィコ06ィャィ ィェ0104: void glblendfunc (enum src,enum dst ) 03ィ 08ィ ィャ02ィー08 src ィー ィコィ ィコ ィョ ツィィィーィケ ィコ ィィ02ィィ02ィェィー k 1 ィィ ィェ ィーィ 07ィィィコ , a dst 04ィ 01ィ 02ィー ィ ィョ ツ02ィェィィ07 ィコ ィィ02ィィ02ィェィーィ k ィーィ 09 ィ ィョ ィコィ 0108ィ ィョ ツ02ィェィィ ィョ05ィケィーィィ08ィョ06ィエ ィーィ ィィ ィケ04ィョ02ィー ィョ06ィエィ ィャィョ05ィ : res = c src 6モ5 k 1 + c dst 6モ5 k 2, c src ィー ィィ ィェ ィィィコ , c dst ィー 07ィィィコ ィ ィョ ィコィ 0108ィ (res, k 1, k 1, c src, c dst ツ02ィー ィコ06ィャ0706ィェ02ィェィーィェ0402 RGBA-0902ィコィー060804). 0308ィィ ィャ ィェィ ィィィ ツィ 09ィー06 ィィ ィケ04ィョ02ィャ ィェィ ツ02ィェィィ07 ィ 0008ィョィャ02ィェィー0609 src ィィ dst. GL_SRC_ALPHA k = (A s, A s, A s, A s ) GL_SRC_ONE_MINUS_ALPHA k = (1, 1, 1, 1) 6モ1 (A s, A s, A s, A s ) GL_DST_COLOR k = (R d, G d, B d ) GL_ONE_MINUS_DST_COLOR k = (1, 1, 1, 1) 6モ1 (R d, G d, B d, d ) GL_DST_ALPHA k = (A d, A 6モ1 d, A 6モ1 d, A d ) GL_DST_ONE_MINUS_ALPHA k = (1, 1, 1, 1) 6モ1 (A d, A d, A d, A d )

92 ィ 09ィ ィ 02ィィィィ 09 07ィィィコ ィャィィ GL_SRC_COLOR k = (Rs, Gs, Bs) GL_ONE_MINUS_SRC_COLOR k = (1, 1, 1, 1) 6モ1 (R s, G s, B s, A s ) 0308ィィィャ0208: ィィィャ, ィャ ィーィィィャ 0802ィ 05ィィ040609ィ ィーィケ ィ ツィェ ィ ィイ02ィコィー ィィ02ィィ02ィェィー ィ ツィェ0609ィーィィ 04ィ 01ィ 02ィー0907 ィ 05ィケ00ィ ィコ06ィャ0706ィェ02ィェィー06ィヲ ィーィ. 03ィョ09ィーィケ 1 ィェ ィ ツィェ04ィヲ 06ィ ィイ02ィコィー; 0 ィ ィ ィーィェ ィ ツィェ04ィヲ, ィー.02. ィェ0209ィィ01ィィィャ04ィヲ ィ 05ィィ04ィ 02ィィィィ 0905ィョ03ィィィー ィョ06ィエィィィヲ ィコ0601: glenable (GL_BLEND) ; glblendfunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) ; 01ィ 0708ィィィャ0208, ィョ ィ ツィェ04ィヲ ィー0802ィョ000605ィケィェィィィコ ィャ0603ィェ06 04ィ 01ィ ィーィケ ィョ06ィエィィィャ 06ィ 08ィ 0406ィャ: g l C o l o r 3 f ( 1. 0, 0. 0, 0. 0, 0. 5 ) ; glbegin (GL_TRIANGLES) ; g l V e r t e x 3 f ( 0. 0, 0. 0, 0. 0 ) ; g l V e r t e x 3 f ( 1. 0, 0. 0, 0. 0 ) ; g l V e r t e x 3 f ( 1. 0, 1. 0, 0. 0 ) ; glend ( ) ; ィィ ィェ ィーィケ ィェ0209ィコ0605ィケィコ ィ ツィェ ィ ィイ02ィコィー0609, ィコ06ィー ィャ0600ィョィー ィコ080409ィ ィーィケ 0108ィョ ィョ00ィ, ィコ ィコィーィェ04ィヲ ィャ0603ィェ06 00ィ 08ィ ィェィーィィ080609ィ ィーィケ ィー0605ィケィコ ィョ ツィ ィェ02ィェィィ ィョ06ィエィィ01 ィョ ィィィヲ: 0キ ィ ツィェ ィ ィイ02ィコィー ィー ィェ ィ ツィェ0401; 0キ3 0708ィィ ィ ィイ02ィコィー ィ ツィェ0609ィーィケ ィェ04 ィ 04ィーィケ ィョ ツ02ィェ ィョィャ02ィェィケ0302ィェィィ ィョィ ィィィェ04, ィー ィィィーィケ0907, ィェィ ツィィィェィ ィェィ ィィィ ィー01ィ 0502ィェィェ ィー ィェィ ィ ィ ィー OpenGL ィコ06ィャィ ィェ ィ 08ィ ィ ィ ィー0409ィ 06ィー ィコ02 ィィ ィーィョ070502ィェィィ07, ィー06ィャィョ ィ 05ィィ04ィ 02ィィィィ ツィィ090502ィェィェ0401 ィー0802ィ 0609ィ ィェィィィヲ ィーィ ィー06 ツィェ06 08ィ 0909ィーィ 09ィィィーィケ ィー0902ィー09ィー09ィョ06ィエ02ィャ ィコ ィコ06ィャィ ィェ01 glvertex, ィェ06 ィィ 05ィー ィ ィエ02ィャ 0905ィョ ツィ 02 ィェ02ィー08ィィ09ィィィ 05ィケィェ06.

93 ィョ ィェィ ィコ0607ィィィー0205ィケ ィョ ィェィ ィコ0607ィィィー0205ィケ 09ィョ ィェィ ィコ0607ィィィー0205ィケ (accumulation buer) 05ィー ィィィェ ィィ ィェィィィー0205ィケィェ0401 ィ ィョ OpenGL. 00 ィェ02ィャ ィャ0603ィェ ィ ィェ07ィーィケ 09ィィ04ィョィ 05ィィ04ィィ080609ィ ィェィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02, 0708ィィィャ02ィェ ィィ 05ィー06ィャ ィィィコ090205ィケィェ ィィィ 05ィケィェ ィ 02ィィィィ. 09ィョ ィェィ ィコ0607ィィィー0205ィケ 03ィィ0806ィコ06 ィィ ィケ04ィョ02ィー ィ ィェィィ07 08ィ 0405ィィ ツィェ ィコィー ィ 08ィ 0302ィェィィ02 ィ ィー0907 ィィ04 ィ ィョ000208ィ, 0904ィ 08ィ ィェィェ ィェィ ツィー02ィェィィ02 ィコ06ィャィ ィェ0106ィヲ void glreadbuffer (enum buf ) ィョィャ02ィェィー buf ィー ィ ィョ ツィー02ィェィィ07. 05ィェィ ツ02ィェィィ07 buf, 08ィ 09ィェ0402 GL_BACK, GL_FRONT, ィー ィー0902ィー09ィー09ィョ06ィエィィ02 ィ ィョ ィーィ ツィー02ィェィィ07. GL_BACK 04ィ 01ィ 02ィー 09 ィコィ ツ0209ィー0902 ィィ09ィー06 ツィェィィィコィ 07ィィィコ ィヲ 09ィェ0205ィコ08ィ ィェィェ04ィヲ ィ ィョ000208; GL_FRONT ィー02ィコィョィエ ィィィャ ィコィェィ ィ. 0806ィャィ ィェ01ィ ィィィャ0202ィー 04ィェィ ツ02ィェィィ02, ィィ ィィ ィケ04ィョ02ィー ィョィ 05ィィ08ィョ06ィエィ 07 ィ ィョ000208ィィ04ィ 02ィィ ィーィィ09ィェ06ィャ 0905ィョ ツィ 02 ィィ ィケ04ィョ02ィー0907 ィー0605ィケィコ ィィィェ ィ ィョ000208, ィー0902ィー09ィー09ィョ06ィエィィィヲ 06ィコィェィョ ィ (09ィー , OpenGL ィィィャ0202ィー ィェィ ィ ィェィィィー0205ィケィェ0401 ィ ィョ , ィィ ィケ04ィョ02ィャ0401, 09 ツィ 09ィーィェ0609ィーィィ, ィ ィ 06ィー ィー ィィ0406ィ 08ィ 0302ィェィィ07ィャィィ, ィェ ィケ ィャ04 ィィ01 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ ィェ02 ィ ィョ0102ィャ). 09ィョ ィェィ ィコ0607ィィィー0205ィケ ィー ィェィィィー0205ィケィェ04ィャ ィ ィョ ィャ ィーィ. 02ィェ ィェ02 ィィ ィケ04ィョ02ィー0907 ィェ ィー0902ィェィェ ィ 06ィ 08ィ , ィェ06 06ィェィィ 0106ィ ィ ィー ィェ ィ ィィィェ ィィ04 ィ ィョ ィーィ. 0308ィィィャ02ィェ ィ 0405ィィ ツィェ ィ 02ィィィィ, 0607ィィ09ィ ィェィェ0402 ィェィィ0302, ィャ0603ィェ ィェ02ィャィェ0600ィョ 06ィェィ ィコィ 0705ィィ09ィ ィーィケ07 ィィ0406ィ 08ィ 0302ィェィィ02 09 ィ ィョ ィ ィー02ィャ ィョ ツ02ィェィェ0602 ィィ0406ィ 08ィ 0302ィェィィ ィェ0609ィィィー0907 ィィ04 ィ ィョ000208ィ -ィェィ ィコ0607ィィィー ィィィェ ィィ04 ィ ィョ ィーィ, 0904ィ 08ィ ィェィェ04ィヲ ィェィ 04ィ 07ィィ09ィケ ィコ06ィャィ ィェ0106ィヲ void gldrawbuffer (enum buf ) 05ィェィ ツ02ィェィィ02 buf ィ ィェィ ィィ ツィェ06 04ィェィ ツ02ィェィィ ィー0902ィー09ィー09ィョ06ィエ ィ 0800ィョィャ02ィェィーィ 09 ィコ06ィャィ ィェ0102 glreadbuer ィ 02ィィィィ 09 ィ ィョ ィャ-ィェィ ィコ0607ィィィー020502ィャ ィコ06ィェィー080605ィィ08ィョ06ィー0907 ィコ06ィャィ ィェ0106ィヲ

94 ィ 09ィ ィ 02ィィィィ 09 07ィィィコ ィャィィ void glaccum (enum op, GLfloat value ) ィョィャ02ィェィー op 04ィ 01ィ 02ィー ィ 02ィィ06 ィェィ 01 07ィィィコ ィャィィ ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_LOAD 07ィィィコ090205ィケ ィ ィー0907 ィィ04 ィ ィョ000208ィ, 0904ィ 08ィ ィェィェ ィェィ ツィー02ィェィィ02, ィェィ ツ02ィェィィ02 ィョィャィェ0603ィ 02ィー0907 ィェィ value ィィ 04ィ ィェ0609ィィィー ィ ィョ000208ィェィ ィコ0607ィィィー0205ィケ; GL_ACCUM ィ ィェィ ィィ ツィェ ィョィエ02ィャィョ, ィェ ィョ ツ02ィェィェ ィョィャィェ060302ィェィィ07 04ィェィ ツ02ィェィィ02 09ィコ05ィ ィ 02ィー ィョ0302 ィィィャ0206ィエィィィャ ィ ィョ ; GL_MULT 05ィーィ ィ 02ィィ07 ィョィャィェ0603ィ 02ィー 04ィェィ ツ02ィェィィ02 ィコィ ィィィコ ィ ィョ ィェィ ィコ ィェィィ07 ィェィ value; GL_ADD ィ ィェィ ィィ ツィェ ィョィエ02ィャィョ, ィー0605ィケィコ06 09ィャ0209ィー06 ィョィャィェ060302ィェィィ07 ィィ ィケ04ィョ02ィー ィェィィ02; GL_RETURN ィ 08ィ 0302ィェィィ ィェ0609ィィィー0907 ィィ04 ィ ィョ000208ィ ィェィ ィコ0607ィィィー ィ ィョ000208, 0904ィ 08ィ ィェィェ04ィヲ ィ 07ィィ09ィィ ィーィィィャ 04ィェィ ツ02ィェィィ02 ィコィ ィィィコ ィョィャィェ0603ィ 02ィー0907 ィェィ value ィョ02ィー 06ィーィャ02ィーィィィーィケ, ツィー ィィ ィケ040609ィ ィェィィ07 ィ ィョ000208ィ -ィェィ ィコ0607ィィィー ィェ02ィー ィェ0206ィ ィィィャ0609ィーィィ ィ ィーィケ ィコィ ィコィィ02-05ィィィ 06 ィコ06ィャィ ィェ0104 glenable ィーィ ィー06 ツィェ06 ィィィェィィ02ィィィ 05ィィ04ィィ080609ィ ィーィケ ィー0605ィケィコ06 09ィ ィャ ィ ィョ ィィィャ0208 ィィ ィケ040609ィ ィェィィ07 ィ ィョ000208ィ -ィェィ ィコ0607ィィィー ィョ09ィー08ィ ィェ02ィェィィ ィェ0609ィー02ィヲ 08ィ 09ィー0208ィィ04ィ 02ィィィィ (09ィーィョ0702ィェ ツィ ィー0609ィーィィ) 0708ィィ ィェ 09 08ィ ィョ ィャィ 09ィコィィ 0308ィィ ィィィコ ィヲ 09 ィ ィョ ィコィ 0108ィ ィィィェ060001ィ ィェィィィコィ 02ィー ィェ0206ィ ィィィャ0609ィーィケ ィィィーィケ ィェ ィィィコ090205ィィ, ィ ィー0605ィケィコ06 ィェ02ィコ06ィー ィャィェ ィー0906, ィー.02. ィェィ ィィィーィケ ィー08ィ 00ィ 0802ィー (ィャィ 09ィコィョ) ィェィ ィィ0406ィ 08ィ 0302ィェィィ ィー OpenGL ィーィ ィー ィーィ ィコ ィェィ ィ 02ィャ04ィヲ ィ ィョ ィャィ 09ィコィィ (stencil

95 ィョ ィャィ 09ィコィィ 95 buer) ィャ02 ィェィ ィェィィ07 ィャィ 09ィコィィ, 05ィー06ィー ィ ィョ ィーィ ィー 02ィエ02 ィェ0209ィコ0605ィケィコ06 ィィィェィー ィェ ィャ0603ィェ0609ィー02ィヲ ツ02ィャ 0706ィャ0209ィーィィィーィケ 07ィィィコ090205ィケ 09 ィ ィョ ィコィ 0108ィ, ィャ0201ィ ィェィィ04ィャ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ OpenGL ィー ィェィィィーィケ 0908ィ 09ィェ02ィェィィ02 (ィー0209ィー) ィャ020301ィョ 04ィ 01ィ ィェィェ04ィャ 04ィェィ ツ02ィェィィ02ィャ ィィ 04ィェィ ツ02ィェィィ02ィャ 09 ィ ィョ ィャィ 09ィコィィ ィィ ィー0209ィー ィィィー, 07ィィィコ090205ィケ 08ィィ09ィョ02ィー ィ ィョ ィコィ 0108ィ ィ ィェィィ04ィャ 0908ィ 09ィェ02ィェィィ ィケィャィ 00ィィィ 06ィコ ィィ ィコ06ィェィー080605ィィ08ィョ02ィー ィョ06ィエィィィャィィ ィコ06ィャィ ィェ01ィ ィャィィ: void g l S t e n c i l F u n c (enum func, int r e f, uint mask ) void g lstencilop (enum s f a i l, enum d p f a i l, enum dppass ) ィョィャ02ィェィー ref ィコ06ィャィ ィェ0104 glstencilfunc 04ィ 01ィ 02ィー 04ィェィ ツ02ィェィィ ィ 09ィェ02ィェィィ07. 02ィェ ィェ 0708ィィィェィィィャィ ィーィケ 04ィェィ ツ02ィェィィ02 06ィー s 6モ1 1, s ツィィ ィ ィィィー ィェィ ィー06 ツィコィョ 09 ィ ィョ ィャィ 09ィコィィ ィャ06ィエィケ06 ィ 0800ィョィャ02ィェィーィ func 04ィ 01ィ 02ィー ィョィェィコ02ィィ ィ 09ィェ02ィェィィ07. 02ィェ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_NEVER ィー0209ィー ィェィィィコ060001ィ ィェ ィィィー, ィー ィ ィ ィエィ 02ィー false; GL_ALWAYS ィー0209ィー ィィィー ィ ; GL_LESS, GL_LEQUAL, GL_EQUAL GL_GEQUAL, GL_GREATE, GL_NOTEQUAL ィー0209ィー ィィィー ィョ ツィ 02, ィィ ref ィー0902ィー09ィー0902ィェィェ06 ィャ02ィェィケ ィェィ ツ02ィェィィ07 09 ィ ィョ ィャィ 09ィコィィ, ィャ02ィェィケ ィィィ 06 08ィ 0902ィェ, 08ィ 0902ィェ, ィ 0605ィケ0302, ィ 0605ィケ ィィィ 06 08ィ 0902ィェ, ィィ05ィィ ィェ02 08ィ 0902ィェ ィョィャ02ィェィー mask 04ィ 01ィ 02ィー ィャィ 09ィコィョ ィェィ ツ02ィェィィィヲ ィィィー ィー ィー0209ィーィ ィョ ツィ 02ィャ ィョ06ィエィョ ィャィョ05ィョ: ((ref AND mask) op (svalue AND mask)). 0806ィャィ ィェ01ィ glstencilop ィェィ 04ィェィ ツ02ィェィ ィェィィ ィヲ09ィー09ィィィヲ ィェィ 01 07ィィィコ ィャ ィ ィョ000208ィ ィャィ 09ィコィィ ィョ ツィ ィィィー0205ィケィェ ィィ05ィィ 06ィー08ィィ02ィ ィー0205ィケィェ ィョ05ィケィーィ ィーィ ィー0209ィーィ.

96 ィ 09ィ ィ 02ィィィィ 09 07ィィィコ ィャィィ ィョィャ02ィェィー sfail 04ィ 01ィ 02ィー 0102ィヲ09ィー09ィィ ィョ ツィ 02 06ィー08ィィ02ィ ィー0205ィケィェ ィョ05ィケィーィ ィーィ ィー0209ィーィ, ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_KEEP, GL_ZERO, GL_REPLACE, GL_INCR GL_DECR, GL_INVERT ィー0902ィー09ィー0902ィェィェ ィ ィェ0702ィー 04ィェィ - ツ02ィェィィ02 09 ィ ィョ ィャィ 09ィコィィ, 06ィ ィェィョ050702ィー , 04ィ ィャ02ィェ0702ィー ィェィ 04ィ 01ィ ィェィェ ィェィ ツ02ィェィィ02 (ref), ィョ090205ィィ ツィィ09ィ 02ィー, ィョィャ02ィェィケ03ィ 02ィー ィィ05ィィ 0706ィ ィィィー ィィィェ090208ィーィィ08ィョ02ィー ィョィャ02ィェィー04 dpfail ィー 0102ィヲ09ィー09ィィ ィョ ツィ 02 06ィー08ィィ02ィ ィー0205ィケィェ ィョ05ィケィーィ ィーィ ィー0209ィーィ ィェィ 0005ィョィ ィィィェィョ 09 z-ィ ィョ , ィ dppass 04ィ 01ィ 02ィー 0102ィヲ09ィー09ィィ ィョ ツィ ィィィー0205ィケィェ ィョ05ィケィーィ ィーィ 05ィー ィー0209ィーィ ィョィャ02ィェィー ィィィェィィィャィ 06ィー ィー ィェィ ツ02ィェィィ07, ツィー06 ィィ ィ 0800ィョィャ02ィェィー sfail ィョィャ0605 ツィ ィェィィ ィー08ィィ 07ィ 08ィ ィャ02ィー08ィ ィョ09ィーィ ィェ ィェ04 ィェィ GL_KEEP ィコ0506 ツ02ィェィィ07 ィャィ 09ィコィィ080609ィ ィェィィ07 ィェ0206ィ ィィィャ ィェィィィーィケ ィコ06ィャィ ィェ01ィョ glenable(gl_stencil_test); 09ィョ ィャィ 09ィコィィ ィィ ィケ04ィョ02ィー ィィ ィ ィェィィィィ ィーィ ィコィィ ィコィー0609, ィコィ ィコ 07ィ 01ィ 06ィエィィ02 ィー02ィェィィ, 06ィー08ィ 0302ィェィィ07, 0705ィ 09ィェ ィィ ィェ06ィヲ ィコィ 08ィーィィィェィコィィ ィョ00ィョ06 ィィ ィィィャ0208 ィィ ィケ040609ィ ィェィィ07 ィ ィョ000208ィ ィャィ 09ィコィィ 0708ィィ ィー080602ィェィィィィ ィー02ィェ02ィヲ ィィ 06ィー08ィ 0302ィェィィィヲ 0708ィィ ィェ 09 08ィ ィ ィィ ィ ィェィィ02 08ィ 09ィー0208ィィ04ィ 02ィィ02ィヲ ィ ィェ02ィェィィ07 08ィ 09ィー0208ィィ04ィ 02ィィィィ 0708ィィィャィィィーィィ ィャ0603ィェ06 ツィ 09ィーィィ ツィェ ィョ05ィィ080609ィ ィーィケ ィコ06ィャィ ィェ0106ィヲ glhint (target, mode), target 09ィィ01 ィコ06ィェィー080605ィィ08ィョ02ィャ ィヲ09ィー09ィィィヲ, 0708ィィィェィィィャィ 06ィエィィィヲ 0601ィェ06 ィィ ィョ06ィエィィ01 04ィェィ ツ02ィェィィィヲ: GL_FOG_HINT ィー06 ツィェ0609ィーィケ 0904 ツィィ090502ィェィィィヲ 0708ィィ ィェィ ィェィィィィ ィーィョィャィ ィェィ ツィィ090502ィェィィ07 ィャ0600ィョィー ィェ07ィーィケ ィィィコ ィャ (ィェィ ィィィ 0605ィケ03ィ 07 ィー06 ツィェ0609ィーィケ) ィィ05ィィ ィー0605ィケィコ ィィィェィ ィィ 0802ィ 05ィィ04ィ 02ィィ07 OpenGL ィェ ィィ09ィ 02ィー ィィィコ090205ィケィェ ツィィ090502ィェィィ07, ィー ィェ0702ィー0907 ィー0605ィケィコ ツィィ090502ィェィィ ィィィェィ ィャ;

97 ィ ィェィィ02 08ィ 09ィー0208ィィ04ィ 02ィィ02ィヲ 97 GL_LINE_SMOOTH_HINT ィョ0708ィ ィェィィ02 ィコィ ツ0209ィー0906ィャ ィャ ィィ 04ィェィ ツ02ィェィィィィ mode, 08ィ 09ィェ04ィャ GL_NICEST, ィョィャ02ィェィケ03ィ 02ィー ィーィョ0702ィェ ツィ ィー0609ィーィケ ィャ ィ 09 ツ02ィー ィ 0605ィケ ツィィ0905ィ 07ィィィコ ィヲ ィャ0401; GL_PERSPECTIVE_CORRECTION_HINT ィー06 ツィェ0609ィーィケ ィィィェィー ィィィィ ィコ ィィィェィ ィー 0708ィィ 0904 ツィィ090502ィェィィィィ ィー0609 ィィ ィェィ ィェィィィィ ィー02ィコ09ィーィョ ィィ 0802ィ 05ィィ04ィ 02ィィ07 OpenGL ィェ ィィ09ィ 02ィー ィィィャ GL_NICEST, ィー ィョィエ0209ィー ィー ィィィェ02ィヲィェィ 07 ィィィェィー ィィ07 ィコ ィィィェィ ィー; GL_POINT_SMOOTH_HINT ィョ0708ィ ィェィィ02 ィコィ ツ0209ィー0906ィャ ィー06- ツ02ィコ. 0308ィィ 04ィェィ ツ02ィェィィィィ 07ィ 08ィ ィャ02ィー08ィ mode, 08ィ 09ィェ06ィャ GL_NICEST, ィー06 ツィコィィ 08ィィ09ィョ06ィー0907 ィコィ ィコ 06ィコ08ィョ03ィェ0609ィーィィ; ィコィ ツ02- GL_POLYGON_SMOOTH_HINT ィョ0708ィ ィェィィ02 09ィー0906ィャ ィ 09ィー060806ィェ ィャィェ060006ィョ000605ィケィェィィィコィ. 03ィ 08ィ ィャ02ィー08 mode ィィィェィー ィーィィ08ィョ02ィー ィョ06ィエィィィャ 06ィ 08ィ 0406ィャ: GL_FASTEST ィィ ィケ04ィョ02ィー0907 ィェィ ィィィ ィ 0409ィー0804ィヲ ィ ィィィーィャ; GL_NICEST ィィ ィケ04ィョ02ィー0907 ィ ィィィーィャ, 06ィ ツィィ09ィ 06ィエィィィヲ 05ィョ ツ ィコィ ツ0209ィー0906; GL_DONT_CARE 0904ィ 0608 ィ ィィィーィャィ 04ィ 09ィィ09ィィィー 06ィー 0802ィ 05ィィ04ィ 02ィィィィ. 00ィ 03ィェ06 04ィ ィャ02ィーィィィーィケ, ツィー06 ィコ06ィャィ ィェ0106ィヲ glhint() ィ ィャィャィィ09ィー ィャ060302ィー ィー0605ィケィコ ィィィーィケ ィィ ィ ィェィィ07 06ィーィェ0609ィィィー0205ィケィェ06 ィー ィィ05ィィ ィィィェ ィ ィコィーィ 08ィ 09ィー0208ィィ04ィ 02ィィィィ 0708ィィィャィィィーィィ ィェィコ0802ィーィェィ ィ 05ィィ04ィ 02ィィ07 OpenGL ィ 0902 ィィ00ィェ0608ィィ080609ィ ィーィケ 01ィ ィェィェ0402 ィョ09ィーィ ィェ0609ィコィィ. 02ィ 08ィ ィーィィィー02 09ィェィィィャィ ィェィィ02, ツィー06 glhint() ィェ0205ィケ ィ ィーィケ ィャ020301ィョ ィ ィー0608ィェ04ィャィィ 09ィコ06ィ ィコィ ィャィィ glbegin()/glend().

98 ィ 09ィ ィ 02ィィィィ 09 07ィィィコ ィャィィ ィェィー080605ィケィェ ) 08ィ ィコィィ02 ィ ィョ ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ ィケ04ィョ06ィー OpenGL ィィ ツ020006? 2) ツ ィィ ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ glblendfunc? 3) 0306 ツ02ィャィョ ィコ ィコィーィェ ィ ィ ツィェ ィ ィイ02ィコィー0609 ィー0802ィ ィョ02ィー ィ ィェィィ02 ィョ ィィィヲ ィョ ツ02ィェィェ ィ 0708ィィィャィィィーィィ ィ ツィェ0609ィーィケ06? 4) ツ ィィ ィケ04ィョ02ィー0907 ィ ィョ ィェィ ィコ0607ィィィー0205ィケ? 0308ィィ090201ィィィー ィィィャ ィ ィ 06ィー04 09 ィェィィィャ. 5) 08ィ ィコ 09 OpenGL ィャ0603ィェ06 ィェィ ィィィーィケ ィャィ 09ィコィョ ィェィ ィョ05ィケィーィィ08ィョ06ィエ0202 ィィ0406ィ 08ィ 0302ィェィィ02? 6) 02ィ ィイ0709ィェィィィー02, ツ ィィィャ02ィェ07ィー0907 ィコ06ィャィ ィェ01ィ glhint(). 7) 08ィ ィコ ィコィー ィェ02ィェィィ07 ィコ06ィャィ ィェ0104 glhint(gl_fog_hint, GL_DONT_CARE)?

99 13 チィ 09ィーィケ II 0308ィィ02ィャ04 08ィ ィ 06ィー04 09 OpenGL 99

100 13

101 130105ィ 09ィ ィ 00ィィ ツ0209ィコィィ02 ィ ィィィーィャ04 ィェィ 0609ィェ OpenGL 00 05ィー06ィヲ 0005ィ 0902 ィャ04 08ィ 0909ィャ06ィー08ィィィャ ィコィ ィコ ィャ06ィエィケ06 OpenGL ィ 09ィ ィーィケ ィェ02ィコ06ィー ィィィェィー ィェ ィィ04ィョィ 05ィケィェ ィコィー04, ィェ ィー0902ィェィェィ ィコィ ィコ06ィー ィー09ィョィー09ィー09ィョ02ィー 09 09ィーィ ィェ01ィ 08ィー02 ィ ィィィ 05ィィ06ィー02ィコィィ ィー08ィ ィェ02ィェィィ02 09ィーィョ0702ィェ ツィ ィー0609ィーィィ 01ィ ツィェ02ィャ 09 04ィ 01ィ ツィィ ィョ09ィー08ィ ィェ02ィェィィ07 09ィーィョ0702ィェ ツィ ィー0609ィーィィ (antialiasing) ィコィー 09ィーィョ0702ィェ ツィ ィー0609ィーィィ (aliasing) ィェィィィコィ 02ィー ィョ05ィケィーィ ィー ィェ0609ィー02ィヲ 08ィ 09ィー0208ィィ04ィ 02ィィィィ 0708ィィィャィィィーィィ ィ ィョ ィコィ 0108ィ ィィ04-04ィ ィコ06ィェ02 ツィェ (ィィ ィコィ ィコ 0708ィ 09ィィ0506, ィェ02ィ 0605ィケ ) 08ィ ィェィィ07 ィ ィョ000208ィ. 0309ィーィケ ィェ0209ィコ0605ィケィコ ィコ ィェィィ06 01ィ ィェィェ06ィヲ ィ 0502ィャ04. 01ィ 0708ィィィャ0208, ィャ0603ィェ ィィィャ02ィェ07ィーィケ 00ィィ05ィケィー08ィ 02ィィ ィョ ツ02ィェィェ ィィ0406ィ 08ィ 0302ィェィィ07. 06ィ ィコ ィー06ィー ィコィー ィャ0603ィェ06 ィョ09ィー08ィ ィェ07ィーィケ ィェィ 05ィーィ ィ 09ィー0208ィィ04ィ 02ィィィィ, ィ 03ィィ09ィ 07 06ィ 08ィ 04 ィコィ ィィィャィィィーィィ09ィ ィケ ィャ04 08ィ 0909ィャ06ィー08ィィィャ 0708ィィ02ィャ, ィエィィィヲ ィョ09ィー08ィ ィェ07ィーィケ ィ ィェ0402 ィ 08ィー0200ィ ィコィー ィヲ ィェ ィィィコ06ィャ ィコィ ィコィ 0108ィ ィェ0206ィ ィィィャ06 ィェィ 08ィィ090609ィ ィーィケ ィェィョ ィェ0209ィコ0605ィケィコ06 101

102 ィ 09ィ ィ 00ィィ ツ0209ィコィィ02 ィ ィィィーィャ04 ィェィ 0609ィェ OPENGL 08ィ 04, ィェィ ィコィ ィャ ィェ02ィャィェ ィャ02ィエィ 07 ィコィ ィャ0208ィョ 06ィーィェ0609ィィィー0205ィケィェ06 ィェィ ツィ 05ィケィェ ィェィィ ィェィィ07 ィコィ ィャ0208, ィェィ 0708ィィィャ0208, ィャ0600ィョィー 06ィ 08ィ ィ ィーィケ 06ィコ08ィョ03ィェ0609ィーィケ ィィ ィィ00 ィコィ ィャ ィーィェ0609ィィィー0205ィケィェ06 ィャィ 05, ィー ィェ0609ィーィィ 01ィィ09ィコ0802ィーィィ04ィ 02ィィィィ ィー ィ 04ィェ06ィャィョ, ィィ, ィョ ィェ ィョ ツ02ィェィェ0402 ィィ0406ィ 08ィ 0302ィェィィ07, ィャ ィョ ツィィィャ ィ 0302ィェィェ0602 ィィ0406ィ 08ィ 0302ィェィィ ィエ ィィ00ィ ィーィケ ィェィィ02 ィェィ ィ ィ ィー020507, ィェ ィーィィィャ ィェィョ03ィェ ツィィ0905ィィィーィケ 08ィ 04ィャ ィィ00ィ ィーィ ィコ, ツィー06ィ ィィ ィェィェ0602 ィコ ィコ ィィィェィ ィーィ ィャ 05ィコ08ィ ィェィ 04ィェィ ツ02ィェィィ02 ィェ ィ 0506, 09ィコィ 0302ィャ, ィィィェ04 08ィ 04ィャ0208ィ 07ィィィコ ィョ ツ02ィェィェ0402 ィィ0406ィ 08ィ 0302ィェィィ ィ ィェ0702ィャ 09 ィ ィョ ィェィ ィコ0607ィィィー ィコ ィィ02ィィ02ィェィー06ィャ 1/n, n ツィィ ィコィ ィコィ 0108ィ. チ02ィャ ィ 0605ィケ0302 ィーィ ィコィィ ィー02ィャ ィェィィ ィィ ィィィー0205ィケィェ0609ィーィケ, ィェ06 05ィョ ツ ィョ05ィケィーィ ィー. for ( i =0; i <samples_count;++ i ) // 06ィ 04 ツィェ06 samples_ count ィィィー ィ 01 06ィー { ShiftCamera ( i ) ; // ィィ00ィ 02ィャ ィコィ ィャ0208ィョ RenderScene ( ) ; i f ( i ==0) // ィェィ ィヲ ィィィー0208ィ 02ィィィィ 04ィ 0008ィョ03ィ 02ィャ ィィ0406ィ 08ィ 0302ィェィィ02 glaccum (GL_LOAD, 1 / ( float ) samples_count ) ; else // 0106ィ ィ ィャ ィコ ィョ ィョィエ0209ィー09ィョ06ィエ02ィャィョ glaccum (GL_ACCUM, 1 / ( float ) samples_count ) ; } // 03ィィ0302ィャ ィー06, ツィー ィョ ツィィ050609ィケ, ィェィ 04ィ ィィ ィェ04ィヲ ィ ィョ glaccum (GL_RETURN, 1. 0 ) ; ィョ02ィー 06ィーィャ02ィーィィィーィケ, ツィー06 ィョ09ィー08ィ ィェ02ィェィィ02 09ィーィョ0702ィェ ツィ ィー0609ィーィィ 0908ィ 04ィョ ィヲ ィェ04, ィコィ ィコ 0708ィ 09ィィ0506, ィ ィェ ィケ0204ィェ04ィャ 07ィ 0102ィェィィ02ィャ ィィ ィィィー0205ィケィェ0609ィーィィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ, ィーィ ィコ ィコィ ィコ ィェィ 08ィィ09ィョ02ィー0907 ィェ0209ィコ0605ィケィコ06 08ィ ィャ02ィェィェ0402 ィョ09ィコ0608ィィィー0205ィィ 06ィ 04 ツィェ06 ィ 0707ィ 08ィ ィーィェ ィ 05ィィ04ィョ06ィー 0108ィョ00ィィ02 ィャ02ィー

103 ィー080602ィェィィ02 ィー02ィェ02ィヲ ィー080602ィェィィ02 ィー02ィェ02ィヲ 00 OpenGL ィェ02ィー 0909ィー080602ィェィェ06ィヲ ィコィィ ィー080602ィェィィ07 ィー02ィェ02ィヲ ィェィ ィョ080609ィェ02 ィ ィ ィコ06ィャィ ィェ ィェィ ツィィィー0205ィケィェ06ィヲ 09ィー020702ィェィィ 05ィー06 06ィ ィイ0709ィェ0702ィー0907 ィー02ィャ, ツィー06 09ィョィエ0209ィー09ィョ02ィー ィャィェ ィー0906 ィ ィィィーィャ0609 ィィ ィー080602ィェィィ07, ィコ06ィー ィャ0600ィョィー ィ 04ィーィケ 0802ィ 05ィィ040609ィ ィェ04 ツ ィョィェィコ02ィィィィ OpenGL. 0308ィィ09ィョィー09ィー09ィィ02 ィー02ィェ02ィヲ 09ィィ05ィケィェ ィィ0702ィー ィェィ 0802ィ 05ィィ09ィーィィ ツィェ0609ィーィケ ィー080201ィャ0208ィェ ィィ0406ィ 08ィ 0302ィェィィ07, ィー06ィャィョ 08ィ 0909ィャ06ィー08ィィィャ 0601ィィィェ ィィ ィコ ィィ ィー080602ィェィィ ィケ03ィィィェ09ィー0906 ィ ィィィーィャ0609, ィェィ 04ィェィ ツ02ィェィェ ィー080602ィェィィ07 ィー02ィェ02ィヲ, ィィ ィケ04ィョ06ィー ィャ0601ィィ00ィィ02ィィ080609ィ ィェィェ ィィィェ02ィィ ィコィーィィ09ィェ06ィヲ ィコ02ィィィィ ィケ 08ィ 0909ィャィ ィー08ィィ09ィ 02ィー ィィィェ ィィ04 09ィ ィャ ィー0401 ィャ02ィー ィャ06ィエィケ06 ィャ0603ィェ ィョ ツィ ィーィケ ィー02ィェィィ, 06ィーィ 08ィ ィ 02ィャ0402 ィー080201ィャ0208ィェ04ィャ 06ィ ィイ02ィコィー06ィャ ィェィ ィコ0609ィーィケ. 02ィ ィエィィィヲ ィーィ ィコ0609: ィー06 ツ02ィコ 06ィ ィイ02ィコィーィ ィェィ ィィィー0907 ィィ ィコ02ィィ07 07ィ 08ィ ィケィェ ィコィー0608ィョ, ィィィェ0706ィエ02ィャィョ 01ィ ィェィェィョ06 ィー06 ツィコィョ ィィ ィー06 ツィコィョ, 09 ィコ06ィー060806ィヲ ィェィ ィィィー0907 ィィ09ィー06 ツィェィィィコ ィーィ, ィェィ ィェ02ィコィョ06 04ィ 01ィ ィェィェィョ ィコ0609ィーィケ. 0602ィャ 09ィ ィャ04ィャ ィョ ツィ 02ィャ ィェ060904ィヲ 06ィ ィイ02ィコィー, ィィィコ06ィャ ィ ィエィィィヲ 09 04ィ 01ィ ィェィェ06ィヲ ィコ0609ィーィィ. 06ィー06ィー 06ィ ィイ02ィコィー ィィ ィー0907 ィー02ィェィケ06 ィィ ィェ ィ 0909ィャ06ィー08ィィィャ ィャィ ィー02ィャィ ィーィィ ツ0209ィコィィ ィェ ィ ィェィェ ィャ02ィー0601ィ. 03ィョ09ィーィケ: P ィー06 ツィコィ 09 ィー080201ィャ0208ィェ06ィャ ィー08ィ ィェ09ィー0902, ィコ06ィー0608ィ 07 06ィーィ 08ィ ィ 02ィー ィー02ィェィケ. L ィェィィ02 ィィ09ィー06 ツィェィィィコィ ィーィ, ィコ06ィー060804ィヲ ィエィ 02ィー 01ィ ィェィェィョ06 ィー06 ツィコィョ. ィー06 ツィコィ, 09 ィコ06ィー0608ィョ06 06ィーィ 08ィ ィ 02ィー ィー02ィェィケ ィー06 ツィコィ P, a 07ィ 08ィ ィャ02ィー08. S = a(l 6モ1 P ) 6モ1 P ィィィャ, ツィー06 ィー02ィェィケ 07ィ 01ィ 02ィー ィェィ ィコ0609ィーィケ z = ィー06ィャ 0905ィョ ツィ 02 a = z p /(z l 6モ1 z p ) ィ ィー0205ィケィェ06,

104 ィ 09ィ ィ 00ィィ ツ0209ィコィィ02 ィ ィィィーィャ04 ィェィ 0609ィェ OPENGL x s = (x p z l 6モ1 z l z p )/(z l 6モ1 z p ) y s = (y p z l 6モ1 y l z p )/(z l 6モ1 z p ) z s = ィャ 0601ィェ ィェ0402 ィコ ィィィェィ ィー04: x s = x s/w s y s = y s/w s z s = 0 w s = z l 6モ1 z p 02ィー090601ィ ィコ ィィィェィ ィー04 S ィャ0600ィョィー ィ 04ィーィケ ィョ ツ02ィェ04 09 ィィ ィケ040609ィ ィェィィ02ィャ ィョィャィェ060302ィェィィ07 ィャィ ィー08ィィ ィョ06ィエィィィャ 06ィ 08ィ 0406ィャ: z l ( x s y s 0 w s ) ( = xs y s z s 1 ) 60 0 z l モ1x l 6モ1y l z l ィー060006, ツィー06ィ 04 ィ ィィィーィャ ィャ ィ 0909 ツィィィー0409ィ ィーィケ ィー02ィェィケ, 07ィ 01ィ 06ィエィョ06 ィェィ ィィ ィケィェィョ ィコ0609ィーィケ, 08ィ 0909ィャ06ィー08ィィィャ ィィ ィケィェィョ06 ィー06 ツィコィョ ィェィ 05ィィィェィィィィ ィャ020301ィョ S ィィ P, ィーィ ィェィェィョ ィェ ィェ0401 ィコ ィィィェィ ィーィ 01: ap + bl, a ィィ b 09ィコィ ィェ ィ 08ィ ィャ02ィー ィョ06ィエィ 07 ィャィ ィー08ィィ02ィ 04ィ 01ィ 02ィー ィコ0609ィーィケ ツ ィコ ィィィェィ ィー ィェ0608ィャィ 05ィィ: 69 x n 62 G = 60y n 63 61z n 64 d 0606 ツィコィ, 09 ィコ06ィー060806ィヲ 05ィョ ツ, ィェィェ04ィヲ 06ィー ィィ09ィー06 ツィェィィィコィ ィーィ ツ ィ ィェィェィョ06 ィー06 ツィコィョ P, ィコィ 02ィー ィコ0609ィーィケ G, ィー ィ 08ィ ィャ02ィー08ィ ィャィィ a ィィ b, ィョ ィー ィエィィィャィィ ィョ06ィエ02ィャィョ ィョ08ィ 09ィェ02ィェィィ06:

105 ィー080602ィェィィ02 ィー02ィェ02ィヲ 105 (ap + bl)g = 0 02ィー090601ィ ィョ ツィ 02ィャ: a(p G) + b(lg) = 0. 06ィー06ィャィョ ィョ08ィ 09ィェ02ィェィィ06 ィョ ィー ィー a = (LG), b = 6モ1(P G) ィ ィー0205ィケィェ06, ィコ ィィィェィ ィー04 ィィ09ィコ06ィャ06ィヲ ィー06 ツィコィィ S = (LG)P 6モ1 (P G)L ィケ04ィョ0709ィケ ィ ィィィ ィーィィ09ィェ0609ィーィケ06 ィャィ ィー08ィィ ツィェ ィィ ィェィィ07, ィョ ツィィィャ S = P [(LG)I 6モ1 GL] (8.1) I 0201ィィィェィィ ツィェィ 07 ィャィ ィー08ィィ02ィ. 00ィ ィー08ィィ02ィ (LG)I 6モ1 GL ィィ ィケ04ィョ02ィー ィョ ツ02ィェィィ07 ィー02ィェ02ィヲ ィェィ ィィ ィケィェ06ィヲ ィコ0609ィーィィ. 04ィ 0909ィャ06ィー08ィィィャ ィェ02ィコ06ィー ィ ィコィー ィ ィコィーィィ ツ0209ィコ06ィヲ 0802ィ 05ィィ04ィ 02ィィィィ 01ィ ィェィェ ィャ02ィー0601ィ ィャ06ィエィケ06 OpenGL ィィィャ, ツィー06 ィャィ ィー08ィィ02ィ oorshadow ィ 0405ィ 08ィ ィェ ィョ ツ02ィェィ ィェィ ィャィィ ィィ ィャィョ0504 (LG)I 6モ1 GL ィョ06ィエィィィヲ ィコ ィャ06ィエィケ06 09ィー0806ィィィー ィー02ィェィィ ィ 01ィ ィェィェ06ィヲ ィコ0609ィーィィ: /* 00ィィ04ィョィ 05ィィ04ィィ08ィョ02ィャ ィェィョ 09 06ィ 04 ツィェ06ィャ ィィィャ02 */ RenderGeometry ( ) ; /* ィ 02ィャ ィー02ィェィィ ィョ ィ ツィェ04ィャィィ 09 ィィ ィケ040609ィ ィェィィ02ィャ 09ィャ0203ィィ09ィ ィェィィ ィー0609 ( b l e n d i n g ) */ glenable (GL_BLEND) ; glblendfunc (GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA) ; g l D i s a b l e (GL_LIGHTING) ; g l C o l o r 4 f ( 0. 0, 0. 0, 0. 0, 0. 5 ) ; glpushmatrix ( ) ; /* ィィ08ィョ02ィャ ィー02ィェィケ */ glmultmatrixf ( ( GLfloat *) floorshadow ) ; /* 00ィィ04ィョィ 05ィィ04ィィ08ィョ02ィャ ィェィョ ィコ02ィィィィ */

106 ィ 09ィ ィ 00ィィ ツ0209ィコィィ02 ィ ィィィーィャ04 ィェィ 0609ィェ OPENGL RenderGeometry ( ) ; glpopmatrix ( ) ; glenable (GL_LIGHTING) ; g l D i s a b l e (GL_BLEND) ; 00ィ ィー08ィィ02ィ oorshadow ィャ060302ィー ィ 04ィーィケ ィョ ツ02ィェィ ィィ04 ィョ08ィ 09ィェ02ィェィィ ィャ06ィエィケ ィョ06ィエ02ィヲ 00ィョィェィコ02ィィィィ: /* 07ィ 08ィ ィャ02ィー0804 : p l a n e 6モ1 ィコ ィィ02ィィ02ィェィー04 ィョ08ィ 09ィェ02ィェィィ ィコ0609ィーィィ l i g h t p o s 6モ1 ィコ ィィィェィ ィー04 ィィ09ィー06 ツィェィィィコィ ィーィ ィ ィエィ 02ィー : m a t r i x 6モ ィョ05ィケィーィィ08ィョ06ィエィ 07 ィャィ ィー08ィィ02ィ */ void shadowmatrix ( GLfloat matrix [ 4 ] [ 4 ], GLfloat plane [ 4 ], GLfloat l i g h t p o s [ 4 ] ) { GLfloat dot ; dot = plane [ 0 ] * l i g h t p o s [ 0 ] + plane [ 1 ] * l i g h t p o s [ 1 ] + plane [ 2 ] * l i g h t p o s [ 2 ] + plane [ 3 ] * l i g h t p o s [ 3 ] ; matrix [ 0 ] [ 0 ] = dot 6モ1 l i g h t p o s [ 0 ] * plane [ 0 ] ; matrix [ 1 ] [ 0 ] = 0. f 6モ1 l i g h t p o s [ 0 ] * plane [ 1 ] ; matrix [ 2 ] [ 0 ] = 0. f 6モ1 l i g h t p o s [ 0 ] * plane [ 2 ] ; matrix [ 3 ] [ 0 ] = 0. f 6モ1 l i g h t p o s [ 0 ] * plane [ 3 ] ; matrix [ 0 ] [ 1 ] = 0. f 6モ1 l i g h t p o s [ 1 ] * plane [ 0 ] ; matrix [ 1 ] [ 1 ] = dot 6モ1 l i g h t p o s [ 1 ] * plane [ 1 ] ; matrix [ 2 ] [ 1 ] = 0. f 6モ1 l i g h t p o s [ 1 ] * plane [ 2 ] ; matrix [ 3 ] [ 1 ] = 0. f 6モ1 l i g h t p o s [ 1 ] * plane [ 3 ] ; matrix [ 0 ] [ 2 ] = 0. f 6モ1 l i g h t p o s [ 2 ] * plane [ 0 ] ; matrix [ 1 ] [ 2 ] = 0. f 6モ1 l i g h t p o s [ 2 ] * plane [ 1 ] ; matrix [ 2 ] [ 2 ] = dot 6モ1 l i g h t p o s [ 2 ] * plane [ 2 ] ; matrix [ 3 ] [ 2 ] = 0. f 6モ1 l i g h t p o s [ 2 ] * plane [ 3 ] ;

107 ィー080602ィェィィ02 ィー02ィェ02ィヲ 107 } matrix [ 0 ] [ 3 ] = 0. f 6モ1 l i g h t p o s [ 3 ] * plane [ 0 ] ; matrix [ 1 ] [ 3 ] = 0. f 6モ1 l i g h t p o s [ 3 ] * plane [ 1 ] ; matrix [ 2 ] [ 3 ] = 0. f 6モ1 l i g h t p o s [ 3 ] * plane [ 2 ] ; matrix [ 3 ] [ 3 ] = dot 6モ1 l i g h t p o s [ 3 ] * plane [ 3 ] ; 05ィ ィャ02ィーィィィャ, ツィー06 ィー02ィェィィ, ィー080602ィェィェ0402 ィーィ ィコィィィャ 06ィ 08ィ 0406ィャ, ィィィャ0206ィー ィェ ィーィ ィーィコ0609: 0キ3 0207ィィ09ィ ィェィェ04ィヲ ィ ィィィーィャ ィ 00ィ 02ィー, ツィー ィコ0609ィーィィ ィ 0209ィコ06ィェ02 ツィェ04, ィィ ィェ02 06ィー080204ィ 02ィー ィー02ィェィィ ィ ィェィィ ィ 0708ィィィャ0208, ィィ ィェ02ィコ06ィー060804ィヲ 06ィ ィイ02ィコィー 06ィーィ 08ィ ィ 02ィー ィー02ィェィケ ィェィ 09ィー0605, 06ィェィ ィェ02 ィ ィョ0102ィー 06ィー0902ィコィ ィーィケ ィ ィェィィ0202, ィィ, ィー02ィャ ィ , 0604ィ ィ ツィィ09ィ ィーィケ ィェィ ィ 06ィコ0609ィョ ィェ0609ィーィケ 09ィー0605ィ. 0キ3 00 ィェ02ィコ06ィー ィャ0209ィーィ 01 ィー02ィェ02ィヲ ィャ060302ィー ィェィ ィ ィ ィーィケ ィコィー ィヲィェ ィャ0203ィィ09ィ ィェィィ0707 (reblending), ィー.02. ィー02ィャィェ ィーィェィ 09 ィー0201 ィョ ツィ 09ィーィコィ 01, ィィ080609ィ ィェィェ0402 ィー0802ィョ000605ィケィェィィィコィィ ィコ080409ィ 06ィー 0108ィョ ィョ00ィ. 0キ3 05 ィョ090205ィィ ツ02ィェィィ02ィャ ツィィ0905ィ ィェ0609ィー02ィヲ ィェ0609ィーィケ ィ ィィィーィャィ ィコ06 ィョ090205ィィ ツィィ09ィ 02ィー0907, ィー.ィコ ィコィ ィヲ ィェ0609ィーィィ ィェィョ03ィェ06 04ィ ィェ ィー0806ィィィーィケ ィェィョ, 01ィ ィィ ィ 0502ィャィ 06ィー0902 ツ02ィェィィ07 ィー02ィェ02ィヲ ィ ィェィィ0202 ィ ィョ0102ィー ィェィ. 0キ3 0602ィェィィ 06ィ 04 ツィェ06 ィィィャ0206ィー 08ィ 04ィャ04ィー ィ ィェィィ0204, ィ ィィ ィェィェ06ィャ ィ ィィィーィャ02 06ィェィィ ィ ィィィャ0206ィー ィコィィ02 ィコ08ィ 07. チィ 09ィーィィ ツィェ06 ィィ04ィ 0203ィ ィーィケ 05ィー ィー 08ィ 09 ツ02ィー ィー02ィェ02ィヲ ィィ04 ィェ0209ィコ0605ィケィコィィ01 ィィ09ィー06 ツィェィィィコ ィーィ, 08ィ ィェィェ ィャ ィィ ィョ06ィエ ィャ0203ィィ09ィ ィェィィ ィョ05ィケィーィ ィー ィャ0202ィー ィェィィ ィヲ ィィ 09ィー060806ィヲ ィ 0502ィャ ィー ィィ ィケ04ィョ02ィー0907 ィ ィョ ィャィ 09ィコィィ (09ィャ ). 06ィーィ ィコ, 04ィ 01ィ ツィ 06ィー0902 ツィケ ィャ02ィー08ィィィィ (ィー02ィェィィ) ィ ィェィィ0202 ィェ02ィコ06ィー060806ィヲ ィィ ィケィェ06ィヲ 06ィ 05ィ 09ィーィィ ィィ ィィ04ィ 0203ィ ィーィケ ィヲィェ ィャ0203ィィ-

108 ィ 09ィ ィ 00ィィ ツ0209ィコィィ02 ィ ィィィーィャ04 ィェィ 0609ィェ OPENGL 09ィ ィェィィ ィ ィエィィィヲ ィ ィィィーィャ ィェィィ07 09 ィィ ィケ040609ィ ィェィィ02ィャ ィ ィョ000208ィ ィャィ 09ィコィィ ィーィ ィコ0609: 1) 06 ツィィィエィ 02ィャ ィ ィョ ィャィ 09ィコィィ 04ィェィ ツ02ィェィィ02ィャ 0; 2) 06ィー06ィ 08ィ 03ィ 02ィャ 04ィ 01ィ ィェィェィョ06 06ィ 05ィ 09ィーィケ 06ィー0902 ツ02ィェィィ07, ィョ09ィーィ ィェィ 0905ィィ09ィ 07 04ィェィ ツ02ィェィィ07 09 ィ ィョ ィャィ 09ィコィィ 09 1; 3) 08ィィ09ィョ02ィャ ィー02ィェィィ 09 ィー ィ 05ィ 09ィー0701, ィ ィョ ィャィ 09ィコィィ ィョ09ィーィ ィェ ィェ04 04ィェィ ツ02ィェィィ07; ィィ ィー0209ィー ィィィー, ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィャ 09 05ィーィィ 06ィ 05ィ 09ィーィィ 04ィェィ ツ02ィェィィ ィケ 08ィ 0909ィャ06ィー08ィィィャ 05ィーィィ 05ィーィ 0704 ィ ィ ィェ /* 06 ツィィィエィ 02ィャ ィ ィョ ィャィ 09ィコィィ */ g l C l e a r S t e n c i l (0 x0 ) g l C l e a r (GL_STENCIL_BUFFER_BIT) ; /* 09ィコ0506 ツィ 02ィャ ィー0209ィー */ glenable (GL_STENCIL_TEST) ; 2. /* ィョ ィィ ィ ィェ02ィェ06 ィィ 04ィェィ ツ02ィェィィ02 09 ィ ィョ ィ ィョ0102ィー 08ィ 09ィェ06 1 */ g l S t e n c i l F u n c (GL_ALWAYS, 0x1, 0 x f f f f f f f f ) ; /* ィ 06ィャ 0905ィョ ツィ 02 04ィ ィャ02ィェ0702ィャ 04ィェィ ツ02ィェィィ02 09 ィ ィョ ィャィ 09ィコィィ */ g lstencilop (GL_REPLACE, GL_REPLACE, GL_REPLACE) ; /* ィィィャ ィャ02ィー08ィィ06, 0706 ィコ06ィー060806ィヲ 04ィ ィー02ィャ ィ ィョ0102ィー 06ィー0902 ツ02ィェィ ィー02ィェィケ */ RenderPlane ( ) ; 3. /* ィョ ィィ ィェ02ィェ06 ィィ ィー0209ィー 01ィ 02ィー ィィ09ィーィィィェィョ ィー0605ィケィコ ィィ 04ィェィ ツ02ィェィィ02 09 ィ ィョ ィャィ 09ィコィィ 08ィ 09ィェ06 1 */

109 ィコィ 05ィケィェ ィー08ィ 0302ィェィィ g l S t e n c i l F u n c (GL_EQUAL, 0x1, 0 x f f f f f f f f ) ; /* 04ィェィ ツ02ィェィィ02 09 ィ ィョ ィ 09ィェ06 2, ィィ ィー02ィェィケ ィョ ィェィ */ g lstencilop (GL_KEEP, GL_KEEP, GL_INCR) ; /* ィィィャ ィー02ィェィィ */ RenderShadow ( ) ; 05ィー , 01ィ ィィ 0708ィィィャ02ィェ02ィェィィィィ ィャィ 09ィコィィ080609ィ ィェィィ ィーィ 06ィー0907 ィェ02ィコ06ィー ィ 0502ィャ04, ィ ィェィェ ィ ィ 06ィー06ィヲ z-ィ ィョ000208ィ. 00 ツィ 09ィーィェ0609ィーィィ, ィェ02ィコ06ィー ィョ ツィ 09ィーィコィィ ィー02ィェ02ィヲ ィャ0600ィョィー 09ィーィ ィーィケ ィェ0209ィィ01ィィィャ04ィャィィ ィェィィ07 05ィー06ィヲ ィ 0502ィャ04 ィャ0603ィェ06 ィェ02ィャィェ ィィ070601ィェ07ィーィケ ィー02ィェィィ ィェィ ィコ0609ィーィケ06 c 0706ィャ06ィエィケ06 ィャ0601ィィ00ィィィコィ 02ィィィィ ィョ08ィ 09ィェ02ィェィィ07, 0607ィィ090409ィ 06ィエ ィコ0609ィーィケ. 0207ィィ09ィ ィェィィ ィョ00ィィ01 ィャ02ィー ィィィー 04ィ 08ィ ィャィコィィ 01ィ ィェィェ ィ ィィ ィコィ 05ィケィェ ィー08ィ 0302ィェィィ ィー06ィャ 08ィ ィャ04 08ィ 0909ィャ06ィー08ィィィャ ィ ィィィーィャ ィー080602ィェィィ07 06ィー08ィ 0302ィェィィィヲ 06ィー ィコィィ01 06ィ ィイ02ィコィー ィ ィコィィ02 06ィー08ィ 0302ィェィィ ィィ01ィ 06ィー ィ 0605ィケ03ィョ ィー ィェ0609ィーィケ ィー080602ィェィェ06ィャィョ ィィ0406ィ 08ィ 0302ィェィィ06 ィィ ィィ01 06ィーィェ0609ィィィー0205ィケィェ ィコ ィ 05ィィ040609ィ ィーィケ ィィィーィャ ィィ ィケ04ィョ02ィー ィィィェィーィョィィィーィィ09ィェ ィーィ ィェィィ ィェ06ィヲ ィェ ィコィ 0506ィャ ィコィ ィコ ィーィ ィェィェ06ィヲ ィィ ィョ01: 06ィェィ 09ィー0607ィエ02ィヲ07 ィィ 0609ィィ08ィーィョィ 05ィケィェ06ィヲ07 ィェィ ィエ02ィヲ ィ ィコィ 0506ィャ ィ ィー0205ィケィェ06, ィィ090609ィ ィェィィ07 06ィー08ィ 0302ィェィィィヲ ィー06ィィィー ィィ ィョ01 ツィ 09ィー02ィヲ: 1) 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ 06ィ 04 ツィェ06ィヲ ィェ04 ィィ 2) ィー080602ィェィィ07 ィィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ 09ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィ ィイ02ィコィーィ 06ィェィ 09ィー0607ィエ02ィヲ ィェ04 09ィー0806ィィィー ィー08ィ 0302ィェィェ04ィヲ ィヲィェィィィコ, ィコ06ィー060804ィヲ ィェィ ィ ィ ィー0205ィケ ィィ ィョ09ィィ01ィィィー ィコィ ィィ ィー08ィ 02ィィィィ 08ィ 0909ィャ06ィー08ィィィャ ィコ06ィャィェィ ィーィョ ィコィ 0506ィャ ィェィ 09ィー02ィェ ィャィェィ ィーィ ィィ 06ィ ィイ02ィコィー04, ィェィ ィエィィ ィェ02ィヲ, ィー ィコィ 0502 ィーィ ィコ, ィコィ ィコ ィィ ィ ィコィ 0506 ィ ィコィェ06ィャ, ィ 04ィ ィェィィィャ ィ 0405ィ ィ 04 02ィエ ィェィ ィーィ ィコィ ィコ06ィャィェィ ィーィ 09 ィー02ィャ ィ ィイ02ィコィーィ ィャィィ, ィェ06 09ィィィャィャ02ィー08ィィ ツィェ06 06ィー08ィ 0302ィェィェ04ィャィィ 06ィーィェ0609ィィィー0205ィケィェ ィコ0609ィーィィ, ィェィェ06ィヲ ツ ィェ0609ィーィケ

110 ィ 09ィ ィ 00ィィ ツ0209ィコィィ02 ィ ィィィーィャ04 ィェィ 0609ィェ OPENGL 04ィィ ィコィ 05ィケィェ ィー08ィ 0302ィェィィ ィコィ 05ィ ィエ02ィェィェ04ィヲ 09ィ 08ィィィ ィェィー ィ ィィィーィャィ ィ ィェィィ ィコ ィー08ィ 0302ィェィィ ィー06ィィィー ィィ ィョ06ィエィィ01 03ィ : 1) 04ィィ09ィョ02ィャ ィェィョ ィコィ ィコ 06ィ 04 ツィェ06, ィェ06 ィ ィ ィイ02ィコィー ィコィ 05. 2) ィケ04ィョ07 ィ ィョ ィャィ 09ィコィィ, ィ ィェィィ ツィィ09ィ 02ィャ 01ィ 05ィケィェ02ィヲ03ィィィヲ ィコ02ィィ02ィヲ ィコィ 05ィ ィェィ 05ィコ08ィ ィェ. 3) 00ィィ04ィョィ 05ィィ04ィィ08ィョ02ィャ ィェィョ, 06ィー08ィ 0302ィェィェィョ06 06ィーィェ0609ィィィー0205ィケィェ ィコ0609ィーィィ ィコィ 05ィ. 0308ィィ 05ィー06ィャ ィ ィョ ィャィ 09ィコィィ ィィィー ィ ィェィィ ツィィィーィケ ィャ06ィヲ ィコ02ィィィィ 06ィ ィイ02ィコィーィ ィコィ 05ィ. 06ィーィ ィ ィー0205ィケィェ0609ィーィケ 0102ィヲ09ィー09ィィィヲ ィィィー ィョ ツィィィーィケ ィョィ 0201ィィィー0205ィケィェ04ィヲ ィコィー 06ィー08ィ 0302ィェィィ07. 04ィ 0909ィャ06ィー08ィィィャ 05ィーィ 0704 ィ ィ ィェ06. 05ィェィ ツィ 05ィ ィェ0206ィ ィィィャ06 ィェィ 08ィィ090609ィ ィーィケ ィェィョ ィコィ ィコ 06ィ 04 ツィェ ィ ィョ0102ィャ 0609ィーィ ィェィ 0905ィィ09ィ ィーィケ0907 ィェィ 05ィー06ィャ 05ィーィ ィ ィェ06. 05ィ ィャ02ィーィィィャ ィー0605ィケィコ06, ツィー06, 06 ツィィィエィ 07 ィ ィョ OpenGL ィェ ィー0902ィェィェ ィィ090609ィ ィェィィ02ィャ, ィェィョ03ィェ06 ィェ02 04ィ ィ 04ィーィケ 06 ツィィ09ィーィィィーィケ ィ ィョ ィャィ 09ィコィィ:

111 ィコィ 05ィケィェ ィー08ィ 0302ィェィィ g l C l e a r (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT GL_STENCIL_BUFFER_BIT) ; ィャ07 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィェ04 05ィョ ツ0302 ィェ02 08ィィ090609ィ ィーィケ 06ィ ィイ02ィコィー04, ィコ06ィー ィ ィー02ィャ 09ィーィ ィェィョィー ィコィ 05ィケィェ04ィャィィ. 01ィ 09ィー060806ィャ 05ィーィ 0702 ィェ0206ィ ィィィャ ィ ィェィィ ツィィィーィケ 01ィ 05ィケィェ02ィヲ03ィィィヲ ィコ02ィィ02ィヲ ィコィ 05ィケィェ ィ ィイ02ィコィーィ ィェィ 05ィコ08ィ ィェ ィー ィェィ 09ィー08ィ ィィ09ィ 02ィャ ィ ィョ ィャィ 09ィコィィ ィィ 08ィィ09ィョ02ィャ ィコィ 0506 glenable (GL_STENCIL_TEST) ; /* ィョ ィィ ィ ィェ02ィェ06 ィィ 04ィェィ ツ02ィェィィ02 09 ィ ィョ ィ ィョ0102ィー 08ィ 09ィェ06 1 */ g l S t e n c i l F u n c (GL_ALWAYS, 1, 0 ) ; g lstencilop (GL_KEEP, GL_KEEP, GL_REPLACE) ; RenderMirrorObject ( ) ; ィョ05ィケィーィ ィー02 ィャ ィョ ツィィ05ィィ: 0キ3 09 ィ ィョ ィコィ 0108ィ ィコ ィコィーィェ06 ィェィ 08ィィ090609ィ ィェィェィ ィェィ, 04ィ ィィ09ィコ0506- ツ02ィェィィ02ィャ 06ィ 05ィ 09ィーィィ ィコィ 05ィ ; 0キ ィ 05ィ 09ィーィィ ィコィ 05ィ (ィーィ ィャ, ィャ ィーィィィャ 09ィィ0102ィーィケ 06ィー08ィ 0302ィェィィ02) 04ィェィ ツ02ィェィィ02 ィ ィョ000208ィ ィャィ 09ィコィィ 08ィ 09ィェ ィ ィー0802ィーィケ02ィャ 05ィーィ 0702 ィェィョ03ィェ06 ィェィ 08ィィ090609ィ ィーィケ ィェィョ, 06ィー08ィ 0302ィェィェィョ06 06ィーィェ0609ィィィー0205ィケィェ ィコ0609ィーィィ ィコィ 05ィケィェ ィ ィイ02ィコィーィ. 05ィェィ ツィ 05ィ ィェィ 09ィー08ィ ィィ09ィ 02ィャ ィャィ ィー08ィィ02ィョ 06ィー08ィ 0302ィェィィ07. 00ィ ィー08ィィ02ィ 06ィー08ィ 0302ィェィィ ィェィ ィコィ 05ィケィェ06 06ィー08ィ 03ィ ィーィケ ィャ02ィー08ィィ06 06ィーィェ0609ィィィー0205ィケィェ ィコ0609ィーィィ, 09 ィコ06ィー060806ィヲ ィィィー 06ィ ィイ02ィコィー ィコィ ィャ0603ィェ ィョ ツィィィーィケ, ィェィ 0708ィィィャ0208, ィャ06ィエィケ06 ィーィ ィコ06ィヲ 00ィョィェィコ02ィィィィ ( ィ ィョィヲィー ィョ ツィィィーィケ 05ィーィョ ィャィ ィー08ィィ02ィョ 09ィ ィャ0609ィー0607ィー0205ィケィェ06 09 ィコィ ツ0209ィー0902 ィョ0708ィ 03ィェ02ィェィィ07): void r e f l e c t i o n m a t r i x ( GLfloat r e f l e c t i o n _ m a t r i x [ 4 ] [ 4 ], GLfloat plane_point [ 3 ], G l f l o a t plane_normal [ 3 ] ) { GLfloat * p ;

112 ィ 09ィ ィ 00ィィ ツ0209ィコィィ02 ィ ィィィーィャ04 ィェィ 0609ィェ OPENGL } GLfloat * v ; float pv ; GLfloat * p = ( G l f l o a t *) plane_point ; G l f l o a t * v = ( G l f l o a t *) plane_normal ; float pv = p [ 0 ] * v [0]+ p [ 1 ] * v [1]+ p [ 2 ] * v [ 2 ] ; r e f l e c t i o n _ m a t r i x [ 0 ] [ 0 ] = 1 6モ1 2 * v [ 0 ] * v [ 0 ] ; r e f l e c t i o n _ m a t r i x [ 1 ] [ 0 ] = 6モ1 2 * v [ 0 ] * v [ 1 ] ; r e f l e c t i o n _ m a t r i x [ 2 ] [ 0 ] = 6モ1 2 * v [ 0 ] * v [ 2 ] ; r e f l e c t i o n _ m a t r i x [ 3 ] [ 0 ] = 2 * pv * v [ 0 ] ; r e f l e c t i o n _ m a t r i x [ 0 ] [ 1 ] = 6モ1 2 * v [ 0 ] * v [ 1 ] ; r e f l e c t i o n _ m a t r i x [ 1 ] [ 1 ] = 16モ1 2 * v [ 1 ] * v [ 1 ] ; r e f l e c t i o n _ m a t r i x [ 2 ] [ 1 ] = 6モ1 2 * v [ 1 ] * v [ 2 ] ; r e f l e c t i o n _ m a t r i x [ 3 ] [ 1 ] = 2 * pv * v [ 1 ] ; r e f l e c t i o n _ m a t r i x [ 0 ] [ 2 ] = 6モ1 2 * v [ 0 ] * v [ 2 ] ; r e f l e c t i o n _ m a t r i x [ 1 ] [ 2 ] = 6モ1 2 * v [ 1 ] * v [ 2 ] ; r e f l e c t i o n _ m a t r i x [ 2 ] [ 2 ] = 1 6モ1 2 * v [ 2 ] * v [ 2 ] ; r e f l e c t i o n _ m a t r i x [ 3 ] [ 2 ] = 2 * pv * v [ 2 ] ; r e f l e c t i o n _ m a t r i x [ 0 ] [ 3 ] = 0 ; r e f l e c t i o n _ m a t r i x [ 1 ] [ 3 ] = 0 ; r e f l e c t i o n _ m a t r i x [ 2 ] [ 3 ] = 0 ; r e f l e c t i o n _ m a t r i x [ 3 ] [ 3 ] = 1 ; 01ィ 09ィー08ィ ィィ09ィ 02ィャ ィ ィョ ィャィ 09ィコィィ ィェィ 08ィィ090609ィ ィェィィ02 ィー0605ィケィコ ィ 05ィ 09ィー0701, ィェィ ツ02ィェィィ02 ィ ィョ000208ィ 08ィ 09ィェ06 1: /* ィョ ィィ ィェ02ィェ06 ィィ ィー0209ィー 01ィ 02ィー ィィ09ィーィィィェィョ ィー0605ィケィコ ィィ 04ィェィ ツ02ィェィィ02 09 ィ ィョ ィャィ 09ィコィィ 08ィ 09ィェ06 1 */ g l S t e n c i l F u n c (GL_EQUAL, 0x1, 0 x f f f f f f f f ) ; /* ィェィィ ツ ィェ02 ィャ02ィェ0702ィャ 09 ィ ィョ */ g lstencilop (GL_KEEP, GL_KEEP, GL_KEEP) ; ィィ 08ィィ09ィョ02ィャ ィェィョ 02ィエ02 08ィ 04 (ィ ィコィ 05ィケィェ ィ ィイ02ィコィー0609)

113 ィェィー080605ィケィェ glpushmatrix ( ) ; glmultmatrixf ( ( float *) r e f l e c t i o n _ m a t r i x ) ; RenderScene ( ) ; glpopmatrix ( ) ; 01ィ ィコ06ィェ0202, 06ィーィコ0506 ツィ 02ィャ ィャィ 09ィコィィ080609ィ ィェィィ02: g l D i s a b l e (GL_STENCIL_TEST) ; ィー ィャ0603ィェ ィィ06ィェィ 05ィケィェ06 02ィエ02 08ィ ィーィィ ィコィ 05ィケィェ04ィヲ 06ィ ィイ02ィコィー, ィェィ 0708ィィィャ0208, 09 ィ 05ィケ00ィ -09ィャ020302ィェィィ02ィャ ィ ィェィィ ィコィーィ 04ィ ィャィョィーィェ02ィェィィ ィコィ 05ィ ィィ ィー ィ 08ィ ィーィィィー02 09ィェィィィャィ ィェィィ02, ツィー ィィ09ィ ィェィェ04ィヲ ィャ02ィー0601 ィコ ィコィーィェ06 08ィ ィ 06ィーィ 02ィー, ィー0605ィケィコ ィィ 04ィ ィコィ 05ィケィェ04ィャ 06ィ ィイ02ィコィー06ィャ ィェ02ィー 0108ィョ00ィィ01 06ィ ィイ02ィコィー ィェ ィー06ィャィョ 09ィョィエ0209ィー09ィョ02ィー ィェ0209ィコ0605ィケィコ06 ィャ0601ィィ00ィィィコィ 02ィィィヲ 05ィー ィ ィィィーィャィ, 06ィー05ィィ ツィ 06ィエィィ ィ ィー0205ィケィェ0609ィーィケ ィヲ09ィー09ィィィヲ ィィ ィィィャ0206ィエィィ01 08ィ 04ィェ ィ ィェィィ ツ02ィェィィ07 ィェィ ィャ02ィー08ィィ ィェィー080605ィケィェ キ ィョ05ィケィーィ ィー02 ツ ィェィィィコィ 02ィー ィコィー 09ィーィョ0702ィェ ツィ ィー0609ィーィィ ィィ0406ィ 08ィ 0302ィェィィ07? 0207ィィ03ィィィー02 ィ ィィィーィャ ィョ09ィー08ィ ィェ02ィェィィ07 09ィーィョ0702ィェ ツィ ィー0609ィーィィ. 0キ ツ02ィャィョ 09 OpenGL ィェ02ィー 0909ィー080602ィェィェ06ィヲ ィコィィ ィー080602ィェィィ07 ィー02ィェ02ィヲ? 0キ3 0808ィ ィーィコ ィィ03ィィィー ィェィェ04ィヲ ィャ02ィー ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィコィ 05ィケィェ ィ ィイ02ィコィー ツ02ィャィョ 06ィェ ィェ02 08ィ ィ 06ィーィ 02ィー, ィィ 04ィ ィコィ 0506ィャ ィェィ ィー ィョ00ィィ02 06ィ ィイ02ィコィー ィェ04? チィー06 ィ ィョ0102ィー 06ィー08ィ 03ィ ィーィケ ィー06ィャ 0905ィョ ツィ 02? ィョィャィ ィヲィー02, ィコィ ィコ 06ィ 06ィヲィーィィ 05ィー ィ ィェィィ ツ02ィェィィ02?

114 13

115 130105ィ 09ィ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ ィ ィェィィ04ィ 02ィィ ィィ ィェィィ07 01ィ ィヲ ィャ060302ィー 0706ィコィ 04ィ ィーィケ0907, ツィー ィィ ィィィー0205ィケィェ0609ィーィケ 0008ィ 00ィィ ツ0209ィコィィ ィィ ィェィィィヲ, 0609ィェ0609ィ ィェィェ0401 ィェィ OpenGL, ィー ィョ06 06 ツ ィケ ィィ ィィィー0205ィケィェ0609ィーィケ ィ 05ィィ04ィ 02ィィィィ 09ィ ィャ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ. 06ィー ィェ06, 0601ィェィ ィコ ィ ィェィィ04ィ 02ィィ ィィ ィェィィ07 ィーィ ィコ ツ02ィェィケ 09ィ 03ィェィ ィコ06ィョ080609ィェ0209ィ ィーィィィャィィ04ィ 02ィィ07 02ィ 04 ツィェ06 06ィー ィ ィャィャ OpenGL ィー0802ィ ィョ02ィー ィィ04ィョィ 05ィィ04ィ 02ィィ ィコ ィコィ ツ0209ィー09ィ ィェィ ィィィェィー0208ィ ィコィーィィ09ィェ ィコ ィー ィコィ ィコ 0708ィ 09ィィ0506, ィィ ィー06 ィィ 0108ィョ ィ 04ィョ ィョ ツィィィーィケ ィェ02 ィョ01ィ 02ィー ィ ィー0205ィケィェ06, ィェ0206ィ ィィィャ 0706ィィ09ィコ ィコ06ィャ070806ィャィィ0909ィ ィャ020301ィョ ィコィ ツ0209ィー0906ィャ ィィ ィィ ィィィー0205ィケィェ0609ィーィケ06. 05ィョィエ0209ィー09ィョ02ィー ィャィェ ィー ィ 0405ィィ ツィェ , ィェ06 ィィ ィ ィェ ィィ09ィ ィェィィ ィィィー 04ィ ィー ィ ィィ ィィ ィャ 05ィィ03ィケ ィェ0209ィコ0605ィケィコ ィィィャ キ ィェ06 06ィー06ィ 08ィ 03ィ ィーィケ ィャ02ィー08ィィ ィェ04 09 ィェィィ04ィコィィィャ ィコィ ツ0209ィー0906ィャ ィャ07 ィ ィェィィィャィ 02ィィィィ, ィ 09 ィャ06ィャ02ィェィー ィーィ ィェ060906ィコ 0706ィコィ ィ ィーィケ

116 ィ 09ィ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ ィェィ ィィ05ィョ ツ03ィィィャ ィコィ ツ0209ィー0906ィャ ィャ07 ィィィェィー0208ィ ィコィーィィ09ィェ ィ ィエ02ィェィィ07 (ィェィ 0708ィィィャ0208, 0708ィィ ィェィ 03ィ ィー06ィヲ ィコ05ィ 09ィィ0302 ィャ0403ィィ) 09ィィ04ィョィ 05ィィ04ィィ080609ィ ィーィケ ィャ ィケ 09 ィョィャ02ィェィケ0302ィェィェ04ィャ ィコ0605ィィ ツ0209ィー0906ィャ 0708ィィィャィィィーィィ ィィ 08ィィ090609ィ ィェィィィィ 09ィーィ ィーィィ ツィェ ィィ0406ィ 08ィ 0302ィェィィ07 06ィー06ィ 08ィ 03ィ ィーィケ ィャ ィケ ィェ0609ィーィケ06. 0キ3 08ィェィ ィィ ツィェ06, 06ィ ィイ02ィコィー04, ィコ06ィー ィ ィ 00ィ 06ィー ィ 0502ィコ06 06ィー ィェィ ィ ィ ィー020507, ィャ0600ィョィー ィ 04ィーィケ ィーィ ィェ04 ィャ ィャィィ 0706ィェィィ0302ィェィェ06ィヲ ィェ0609ィーィィ. 06ィー06 04ィェィ ツィィィー0205ィケィェ06 09ィェィィ04ィィィー ィェィ 0008ィョ04ィコィョ ィェィ ィーィョ0702ィェィィ ィコ06ィェ0902ィヲ0208ィ OpenGL. 02ィ ィイ02ィコィー04, ィコ06ィー ィェィ ィー ィェ0609ィーィケ06 09ィェ ィィ01ィィィャ0609ィーィィ, ィャ0600ィョィー ィ 04ィーィケ ィコィーィィ09ィェ06 06ィー0902 ツ02ィェ04 ィ ィ ツィィ ィェィ ィコ06ィェ0902ィヲ0208 OpenGL ィャ06ィエィケ ィコィィ ィ 01ィ ィェィィ ィ ィェィィ ツィィ09ィ 06ィエィィ01 ィィ ィー ィ ィイ02ィャ0609 ( ィィ05ィィ ィコィョィ 0609) 09 07ィィ08ィ ィャィィ01ィョ ィェィィ ィィ04ィコ06ィョ080609ィェ0209ィ ィーィィィャィィ04ィ 02ィィ07 02ィ ィイ02ィコィー04, 06ィー06ィ 08ィ 03ィ 02ィャ ィャ06ィエィケ06 OpenGL, 0108ィ ィェ07ィー ィェ02ィコ06ィー ィー08ィョィコィーィョ08ィ 01 01ィ ィェィェ ィェィィ ィーィィ0704 ィーィ ィコィィ01 09ィー08ィョィコィーィョ08 ィ ィコィーィィ09ィェ04 09 ィィ ィケ040609ィ ィェィィィィ, ツ02ィャ 0108ィョ00ィィ02, ツィー ィー 09ィコ ィーィケ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィ ィー0205ィケィェ06, ツィー06ィ 04 ィィ ィケ040609ィ 05ィィ09ィケ 09ィー08ィョィコィーィョ ィ ィェィェ0401, ィコ06ィー ィャ0600ィョィー ィ 04ィーィケ ィ 0409ィー0806 ィィ ィコィーィィ09ィェ ィ ィェ04 ィェィ ィコ06ィェ0902ィヲ0208 OpenGL. 01ィ 0708ィィィャ0208, ィィ ィャ ィーィィィャ 06ィー06ィ 08ィ 04ィィィーィケ ィャィ 0909ィィ09 ィー0802ィョ000605ィケィェィィィコ0609, ィー06 ィィ ィケ040609ィ ィェィィ02 ィョィコィ 04ィ ィー ィェィ 05ィー06ィー ィャィ 0909ィィ09 04ィェィ ツィィィー0205ィケィェ06 ィ ィコィーィィ09ィェ06, ツ02ィャ ィ ツィ OpenGL ィャ02ィェィーィェ ィィィャ ィィィャ, ツィー06 ィャ04 07ィィ0302ィャ 0708ィィ ィェィィ02, ィコ06ィー ィ 05ィィ04ィョ02ィー 08ィィ090609ィ ィェィィ02 ィコィ 08ィー04 ィャ0209ィーィェ0609ィーィィ. 0201ィィィェ ィィ04 ィコ06ィャ0706ィェ02ィェィー0609 ィ ィ ィ ィェィェ ィィ0906ィコ ィィ01 03ィィ08ィィィェ06ィヲ, ィー06ィヲ ィィ ィェィ 0409ィ ィェィィ02ィャ ィー0902ィー09ィー09ィョ06ィエィ 07 09ィー08ィョィコィーィョ08ィ 01ィ ィェィェ0401 ィャ060302ィー ィ 04ィーィケ ィーィ ィコ06ィヲ: struct c i t y { float l a t i t u t e, l o n g i t u d e ; /* ィェィィ ィ */ char *name ; /* ィェィ 0409ィ ィェィィ02 */

117 ィ ィェィィ04ィ 02ィィ ィィ ィェィィ } ; int l a r g e _ f l a g ; /* 0 = ィャィ 0502ィェィケィコィィィヲ, 1 = ィ 0605ィケ0306ィヲ */ 0507ィィ0906ィコ ィャ060302ィー 0108ィ ィェィィィーィケ0907 ィコィ ィコ ィャィ 0909ィィ09 ィーィ ィコィィ01 09ィー08ィョィコィーィョ ィョ09ィーィィィャ, ィャ04 07ィィ0302ィャ 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 08ィィ09ィョ02ィー ィ ィェィ ィコィ 08ィー ィィ0102 ィー06 ツ02ィコ 08ィ 04ィェ ィ 04ィャ0208ィ ィィ0907ィャィィ: void draw_cities ( int n, struct c i t y c i t y l i s t [ ] ) { int i ; for ( i =0; i < n ; i++) { i f ( c i t y l i s t [ i ]. l a r g e _ f l a g ) g l P o i n t S i z e ( 4. 0 ) ; else g l P o i n t S i z e ( 2. 0 ) ; } glbegin ( GL_POINTS ) ; g l V e r t e x 2 f ( c i t y l i s t [ i ]. longitude, c i t y l i s t [ i ]. l a t i t u d e ) ; glend ( ) ; /* 08ィィ09ィョ02ィャ ィェィ 0409ィ ィェィィ ィ */ DrawText ( c i t y l i s t [ i ]. longitude, c i t y l i s t [ i ]. l a t i t u d e, c i t y l i s t [ i ]. name ) ; } 06ィーィ 0802ィ 05ィィ04ィ 02ィィ07 ィェ02ィョ01ィ ツィェィ ィョ06ィエィィィャ 0708ィィ ツィィィェィ ィャ: 0キ3 glpointsize ィ 02ィー ィコィ ィヲ ィィィー0208ィ 02ィィィィ 02ィィィコ05ィ ; 0キ3 ィャ020301ィョ glbegin ィィ glend 08ィィ09ィョ02ィー0907 ィー0605ィケィコ ィェィ ィー06 ツィコィ ; 0キ ィィィェ ィー ィェ020607ィーィィィャィ 05ィケィェ06ィャ ィャィ ィー02. 01ィィ ィィ ィェ06 ィ ィ 02ィィ06ィェィ 05ィケィェ ィェィィ02: void draw_cities ( int n, struct c i t y c i t y l i s t [ ] ) {

118 ィ 09ィ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ int i ; /* 09ィェィ ツィ 05ィ 08ィィ09ィョ02ィャ ィャィ 0502ィェィケィコィィ02 ィー06 ツィコィィ */ g l P o i n t S i z e ( 2. 0 ) ; glbegin ( GL_POINTS ) ; for ( i =0; i < n ; i++) { i f ( c i t y l i s t [ i ]. l a r g e _ f l a g ==0) { g l V e r t e x 2 f ( c i t y l i s t [ i ]. longitude, c i t y l i s t [ i ]. l a t i t u d e ) ; } } glend ( ) ; /* ィ 0605ィケ03ィィ02 ィー06 ツィコィィ 08ィィ09ィョ02ィャ ィー0608ィョ06 06 ツ ィケ */ g l P o i n t S i z e ( 4. 0 ) ; glbegin ( GL_POINTS ) ; for ( i =0; i < n ; i++) { i f ( c i t y l i s t [ i ]. l a r g e _ f l a g ==1) { g l V e r t e x 2 f ( c i t y l i s t [ i ]. longitude, c i t y l i s t [ i ]. l a t i t u d e ) ; } } glend ( ) ; } /* 04ィ ィー02ィャ 08ィィ09ィョ02ィャ ィェィ 0409ィ ィェィィ */ for ( i =0; i < n ; i++) { DrawText ( c i t y l i s t [ i ]. longitude, c i t y l i s t [ i ]. l a t i t u d e, c i t y l i s t [ i ]. name ) ; } 00 ィーィ ィコ06ィヲ 0802ィ 05ィィ04ィ 02ィィィィ ィャ ィ 02ィャ glpointsize 0109ィ ィィ ィョ090205ィィ ツィィ09ィ 02ィャ ツィィ ィィィェ ィャ020301ィョ glbegin ィィ glend. 0201ィェィ ィコ ィーィ 06ィー ィエ02 07ィョィーィィ ィーィィィャィィ04ィ 02ィィィィ ィィ ィャ ィャ02-

119 ィ ィェィィ04ィ 02ィィ ィィ ィェィィ ィェ0702ィャ ィェィ 03ィィ 09ィー08ィョィコィーィョ ィ ィェィェ0401, ィー06 ィャ060302ィャ 02ィエ ィィィーィケ ィコィーィィ09ィェ0609ィーィケ 08ィィ090609ィ ィェィィ07 ィー06 ツ02ィコ. 01ィ 0708ィィィャ0208: struct c i t y _ l i s t { int num_cities ; /* ツィィ ィィ09ィコ02 */ float * p o s i t i o n ; /* ィコ ィィィェィ ィー ィ */ char **name ; /* ィョィコィ 04ィ ィー0205ィケ ィェィ ィェィ 0409ィ ィェィィ */ float s i z e ; /* 08ィ 04ィャ0208 ィー06 ツィコィィ, 06ィ 0604ィェィ ツィ 06ィエ02ィヲ */ } ; ィケ ィ 08ィ 04ィェ ィ 04ィャ ィ ィェ07ィー ィ 04ィェ ィィ09ィコィ ィェィィ07 ィー06 ツ02ィコ 0108ィ ィェ07ィー ィー010205ィケィェ ィィィェィ ィャィィ ツ0209ィコ06ィャ ィャィ 0909ィィ ィ ィェィィ04ィ 02ィィィィ ィャ04 ィィ09ィコ0506 ツィ 02ィャ ィェ0206ィ ィィィャ0609ィーィケ 09 ィョ ィェ06ィャ ィ ィー ィェィョィー08ィィ glbegin/glend ィィ ィョ ツィ 02ィャ ィャ0603ィェ0609ィーィケ ィィ ィケ040609ィ ィーィケ ィャィ 0909ィィ ィィィェ ィーィィィャィィ04ィ 02ィィィィ ィョ05ィケィーィ ィー02 ィェィ 03ィ 00ィョィェィコ02ィィ ィィィー ィョ06ィエィィィャ 06ィ 08ィ 0406ィャ: void draw_cities ( struct c i t y _ l i s t * l i s t ) { int i ; } /* 08ィィ09ィョ02ィャ ィー06 ツィコィィ */ g l P o i n t S i z e ( l i s t 6モ1>s i z e ) ; glvertexpointer ( 2, GL_FLOAT, 0, l i s t 6モ1>num_cities, l i s t 6モ1>p o s i t i o n ) ; gldrawarrays ( GL_POINTS, 0, l i s t 6モ1>num_ cities ) ; /* 08ィィ09ィョ02ィャ ィェィ 0409ィ ィェィィ ィ */ for ( i =0; i < l i s t 6モ1>num_cities ; i++) { DrawText ( c i t y l i s t [ i ]. longitude, c i t y l i s t [ i ]. l a t i t u d e c i t y l i s t [ i ]. name ) ; }

120 ィ 09ィ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ ィーィィィャィィ04ィ 02ィィ OpenGL ィ ツィ 01ィ ィェィェ OpenGL 00 01ィ ィェィェ06ィャ 08ィ ィ 0909ィャ06ィー08ィィィャ ィ 04 ィャィィィェィィィャィィ04ィ 02ィィィィ ィャ02ィェィィ ィェィ ィ ツィョ 01ィ ィェィェ ィィィャィィィーィィ09ィ OpenGL ィケ04ィョィヲィー ィ ィェィェ ィィィャィィィーィィ ィ ィェィェ ィィィャィィィーィィ0904, ィーィ ィコィィ02 ィコィ ィコ GL_LINES, GL_LINE_LOOP, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN ィィ GL_QUAD_STRIP ィー0802ィ ィョ06ィー ィェィィ07 ィャ02ィェィケ ィィィェ, ツ02ィャ 06ィー010205ィケィェ ィィィェィィ07 ィィ05ィィ ィャィェ060006ィョ000605ィケィェィィィコ. 06ィー06 ィョィャ02ィェィケ03ィ 02ィー ィコ0605ィィ ツ0209ィー ィ ィェィェ0401, ィ 09ィ 02ィャ0401 OpenGL ィケ04ィョィヲィー02 ィャィ 0909ィィ ィィィェ 01ィ ィ 0605ィケ03ィィィェ09ィー0902 ィ 0801ィィィー02ィコィーィョ08 04ィ ィャ02ィェィ ィャィェ ィー0902ィェィェ glvertex/glcolor/glnormal ィェィ ィャ0201ィ ィェィィ04ィャ ィャィ 0909ィィ ィィィェ ィャ060302ィー ィ 04ィーィケ 06 ツ02ィェィケ 0904ィィ ィェ06ィヲ ィケ04ィョィヲィー02 ィィィェ0102ィコ09ィィ080609ィ ィェィェ ィィィャィィィーィィ ィェ02ィコ06ィー ィョ ツィ ィ ィィ ィィ ィケ040609ィ ィェィィィィ ィ ィェィェ ィィィャィィィーィィ GL_TRIANGLE_STRIP (GL_QUAD_STRIP) ィィィェ04 01ィョィ 05ィィ08ィョ06ィー0907. チィー06ィ 04 ィェ ィ 09ィ ィーィケ 09 OpenGL 01ィョィ 05ィィ, ィョ090205ィィ- ツィィ09ィ 07 ィェィ 0008ィョ04ィコィョ ィェィ 03ィィィェィョ, ィィ ィケ04ィョィヲィー02 ィコ06ィャィ ィェ01ィョ gldrawelements(). 05ィ 01ィ 09ィ ィヲィー02 ィェ0206ィ ィィィャ0402 ィャィ 0909ィィ ィェ06ィヲ ィコ06ィャィ ィェ0106ィヲ 00ィャ0209ィー06 ィィ ィケ040609ィ ィェィィ07 ィコ06ィャィ ィェ01 glvertexpointer, glcolorpointer, glnormalpointer 05ィョ ツ ィケ040609ィ ィーィケ ィェ06ィヲ ィコ06ィャィ ィェ0106ィヲ void g l I n t e r l e a v e d A r r a y s ( Glint format, G l s i z e i s t r i d e, void * ptr ) ;

121 ィーィィィャィィ04ィ 02ィィ OPENGL ィ ィコ, ィィ ィィィャ0202ィー ィー08ィョィコィーィョ08ィ typedef struct tag_vertex_data { float c o l o r [ 4 ] ; float normal [ 3 ] ; float vertex [ 3 ] ; }VERTEX_DATA; VERTEX_DATA * pdata ; ィー06 07ィ 08ィ ィャ02ィー0804 ィャ0603ィェ ィ ィーィケ ィャ06ィエィケ ィョ06ィエ02ィヲ ィコ06ィャィ ィェ0104 g l I n t e r l e a v e d A r r a y s (GL_C4F_N3F_V3F, 0, pdata ) ; ツィー ィェィ ツィ 02ィー, ツィー ツ02ィー oat 06ィーィェ060907ィー0907 ィコ ィーィョ, 04ィ ィー02ィャ ィー08ィィ oat ィコ ィェ0608ィャィ 05ィィ, ィィ ィェィィ02 ィー08ィィ oat 04ィ 01ィ 06ィー ィコ ィィィェィ ィー ィィィェ ィ ィェ ィィ09ィ ィェィィ02 ィコ06ィャィ ィェ ィャ06ィー08ィィィー ィィ00ィィィコィ 02ィィィィ OpenGL. 0908ィ ィェィィィー02 01ィ ィェィェ ィィィェィ ィ ィャ07ィーィィ ィ ィー0205ィケィェ ィ ィー0205ィケィェ ィ ィェィィ02 01ィ ィェィェ ィ ィャ07ィーィィ ィョ05ィョ ツ03ィ 02ィー 09ィコ ィーィケ 06ィ ィャ02ィェィ ィャ020301ィョ 0609ィェ0609ィェ06ィヲ 07ィ ィャ07ィーィケ06 ィィ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィィ09ィー02ィャ06ィヲ ィケ04ィョィヲィー ィコィー0608ィェ ィィィィ glvertex, glcolor, glnormal ィィ gltexcoord. 08ィョィェィコ02ィィィィ glvertex, glcolor ィィ ィー.01., ィコ06ィー ィコィ ツ0209ィー0902 ィ 0800ィョィャ02ィェィー ィィィェィィィャィ 06ィー ィョィコィ 04ィ ィー0205ィィ (ィェィ 0708ィィィャ0208, glvertex3fv(v)), ィャ0600ィョィー 08ィ ィ 06ィーィ ィーィケ 04ィェィ ツィィィー0205ィケィェ06 ィ 0409ィー080202, ツ02ィャ ィィ ィー0902ィー09ィー09ィョ06ィエィィ ィィィィ glvertex3f(x,y,z). 07ィャ02ィェィケ03ィ ィヲィー ィェ0609ィーィケ 0708ィィィャィィィーィィ ィャィェ0600ィィ ィョ ツィ 0701 ィ ィョ01ィケィー02 09ィェィィィャィ ィー0205ィケィェ04, ツィー06ィ 04 ィェ02 08ィ 04ィ ィィ09ィ ィーィケ ィ 0605ィケ03ィィ ィコ0609ィーィィ ィェィ ツィ 09ィーィィ 09ィィ05ィケィェ0202, ツ02ィャ ィェ0206ィ ィィィャ ィコ ィィィャ02ィェィーィィ08ィョィヲィー02, ィェィ 0708ィィィャ0208, ィィィャィィィーィィ09ィ ィャィィ GLU ィェィィ07 ィェィ ィィ05ィョ ツ ィーィェ060302ィェィィ07 ィコィ ツ0209ィー09ィ ィィ ィィ ィィィー0205ィケィェ0609ィーィィ.

122 ィ 09ィ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ 0602ィコ09ィーィョ08ィィ080609ィ ィェィェ ィ ィイ02ィコィー04, ィェィ 0708ィィィャ0208, ィャ0600ィョィー ィ 04ィーィケ ィコィ ツ0209ィー0902ィェィェ06 06ィー06ィ 08ィ 0302ィェ04 09 ィェ02ィ 0605ィケ0306ィヲ ィェ0609ィーィケ ィャ02ィー08ィィィィ ィケ04ィョィヲィー02 01ィィ ィヲィェ ィィ09ィコィィ ィケ04ィョィヲィー02 01ィィ ィヲィェ ィィ09ィコィィ ィェィ ィィィ ツィ 09ィー ィィィャ ィ ィイ02ィコィー ィィ ィヲィェ ィィ09ィコィィ ィャ0600ィョィー 0108ィ ィェィィィーィケ ィ ィャ07ィーィィ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィィ09ィー02ィャ04 ィィ, ィ ィー0205ィケィェ06, ィィ09ィコ0506 ツィ ィーィケ ツィ 09ィー ィャ02ィエ02ィェィィ07 01ィ ィェィェ0401 ィィ ィェ0609ィェ06ィヲ 07ィ ィャ07ィーィィ ィョィコィ ィ ィヲィー02 ィェ02ィェィョ03ィェ0402 ィ ィー08ィィィ ィョィー ィィィェ ィィ ィエ02ィェィィ ィコ0506 ツ02ィェ06, ィェ ィ ィヲィー02 glnormal ィィ ィェ02 ィィ ィケ04ィョ06ィー0907 ィー02ィコ09ィーィョ0804, ィェ ィ ィヲィー02 gltexcoord, ィィ ィー ィィィェィィィャィィ04ィィ08ィョィヲィー02 ィコ0605ィィ ツ0209ィー ィィ03ィェ ィコ0601ィ ィャ020301ィョ ィ ィー0608ィェ04ィャィィ 09ィコ06ィ ィコィ ィャィィ glbegin/glend ィャィ ィコ09ィィィャィ 05ィケィェ06ィヲ ィィ ィィィー0205ィケィェ0609ィーィィ ィェィ high-end 09ィィ09ィー02ィャィ 01 09ィ 03ィェ06, ツィー06ィ 04 ィィィェ000608ィャィ 02ィィ ィィィェィ 01 ィ 0405ィ ィ ィェィ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィィ09ィー02ィャ02 ィャィ ィコ09ィィィャィ 05ィケィェ06 ィ 0409ィー ィ 0200ィ ィヲィー02 05ィィ03ィェ ィコ0601ィ ィャ020301ィョ glbegin/glend. 0308ィィィャ0208 ィェ02ィョ01ィ ツィェ ィェィィ07: glbegin (GL_TRIANGLE_STRIP) ; for ( i =0; i < n ; i++) { i f ( l i g h t i n g ) { glnormal3fv ( norm [ i ] ) ; } glvertex3fv ( v e r t [ i ] ) ; } glend ( ) ;

123 ィーィィィャィィ04ィ 02ィィ OPENGL ィーィ ィコ06ィェ09ィー08ィョィコ02ィィ ィ ィー02ィャ, ツィー06 ィャ ィャ ィャ02ィェィェィョ06 lighting ィコィ ィヲ ィィィェ06ィヲ. 06ィー ィャ0603ィェ06 ィィ04ィ 0203ィ ィーィケ, 04ィ 09 ツ02ィー ツィ 09ィーィィ ツィェ ィョィ 05ィィ080609ィ ィェィィ07 ィコ0601ィ : i f ( l i g h t i n g ) { glbegin (GL_TRIANGLE_STRIP) ; for ( i =0; i < n ; i++) { glnormal3fv ( norm [ i ] ) ; glvertex3fv ( v e r t [ i ] ) ; } glend ( ) ; } else { glbegin (GL_TRIANGLE_STRIP) ; for ( i =0; i < n ; i++) { glvertex3fv ( v e r t [ i ] ) ; } glend ( ) ; } ィ 08ィ ィ ィェィィ ィ 08ィ ィ ィェィィ07 09ィコ0506 ツィ 06ィー ィ 07 ィー08ィ ィェ ィャィ 02ィィィィ ィィィェ 06ィー ィコ ィィィェィ ィー, ィョィコィ 04ィ ィェィェ glvertex, ィコ 06ィコ06ィェィェ04ィャ ィコ ィィィェィ ィーィ ィャ, 06ィー0902- ツ02ィェィィ02, ィエ02ィェィィ02 ィィ ィー ィエ02ィェィィ02 0キ3 0604ィ 0200ィ ィヲィー02 ィィ ィケ040609ィ ィェィィ07 ィー06 ツ02 ツィェ0401 ィィ09ィー06 ツィェィィィコ ィーィ. 0キ3 0604ィ 0200ィ ィヲィー02 ィィ ィケ040609ィ ィェィィ ィョ0109ィー060806ィェィェ ィエ02ィェィィ07 (twosided lighting).

124 ィ 09ィ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ 0キ3 0604ィ 0200ィ ィヲィー02 ィィ ィケ040609ィ ィェィィ ィコィ 05ィケィェ06ィヲ ィャ ィィ ィエ02ィェィィ07. 0キ3 0604ィ 0200ィ ィヲィー02 ツィ 09ィー06ィヲ 09ィャ02ィェ04 07ィ 08ィ ィャ02ィー08ィ GL_SHININESS. 0キ3 04ィ 0909ィャ06ィー08ィィィー ィャ0603ィェ0609ィーィケ 04ィ 08ィ ィェ ツィィィーィ ィーィケ ィエ02ィェィィ ィェ ィョ ツィィィーィケ ィコィー ィエ02ィェィィ07, 04ィ 01ィ 09ィ ィーィ ィィィェ 09ィャ0209ィー06 ィェ0608ィャィ 0502ィヲ. 02ィーィコ0506 ツィ ィヲィー02 ィェ0608ィャィ 05ィィ04ィ 02ィィ ィコィー ィェ0608ィャィ 0502ィヲ, ィコ060001ィ 05ィー06 ィェ ィー0907 ィェ0206ィ ィィィャ04ィャ 0806ィャィ ィェ01ィ glenable/disable(gl_normalize) ィョ0708ィ ィー ィェ0608ィャィ 05ィィ04ィ 02ィィ02ィヲ 0902ィコィー ィェ0608ィャィ 0502ィヲ ィィ ィケ040609ィ ィェィィ02ィャ ィィ 0904 ィェ02 ィィ ィケ04ィョ02ィー02 ィコ06ィャィ ィェ01ィョ glscale, ィー06 ィェ0608ィャィ 05ィィ04ィ 02ィィ06 ィャ0603ィェ06 06ィーィコ0506 ツィィィーィケ ィ ィー060806ィェィェィィ ィコィー ィョィャ0605 ツィ ィェィィ06 05ィーィ ィィ ィコ0506 ツ02ィェィ ィケ04ィョィヲィー ィ ィェィェ ィィィャィィィーィィ ィ ィェィェ ィィィャィィィーィィ0904, ィーィ ィコィィ02 ィコィ ィコ GL_LINES, GL_LINE_LOOP, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, ィィ GL_QUAD_STRIP ィョィャ02ィェィケ03ィ 06ィー ィェィ 0008ィョ04ィコィョ ィェィ ィコ06ィェ0902ィヲ0208 OpenGL, ィ ィーィ ィコ0302 ィョィャ02ィェィケ03ィ 06ィー ィコ0605ィィ ツ0209ィー ィ ィェィェ0401, ィ 09ィ 02ィャ ィ 00ィィ- ツ0209ィコ06ィヲ ィィ09ィー02ィャ ィ 09ィー0208ィィ04ィ 02ィィ07 04ィ 09ィー0208ィィ04ィ 02ィィ07 ツィ 09ィー ィー0907 ィョ04ィコィィィャ ィャ0209ィー06ィャ ィ ィャィャィェ ィ 05ィィ04ィ 02ィィィヲ OpenGL. 02ィーィコ0506 ツィ ィヲィー02 ィー0209ィー ィェィ 0005ィョィ ィィィェィョ, ィコ060001ィ 09 05ィー06ィャ ィェ02ィー ィェ0206ィ ィィィャ0609ィーィィ 0806ィェ ィ ィイ02ィコィー04, ィェィ 0708ィィィャ0208, ィャ0600ィョィー ィ 04ィーィケ ィェィ 08ィィ090609ィ ィェ04 ィ 0204 ィー0209ィーィ ィェィ 0005ィョィ ィィィェィョ, ィィ 06ィェィィ 09ィィ04ィョィ 05ィィ04ィィ08ィョ02ィー ィャィィ.

125 ィーィィィャィィ04ィ 02ィィ OPENGL ィケ04ィョィヲィー02 06ィー0902 ツ02ィェィィ02 06ィ 08ィ ィーィェ ィ ィェ02ィヲ ィィ0006ィェ ィ ィャィコィェィョィー ィ ィイ02ィコィー04 ィャ0600ィョィー ィ 04ィーィケ ィェィ 08ィィ090609ィ ィェ04 09 ィョ09ィーィ ィェ ィェィェ04ィャ ィィィャ06ィャ 06ィー0902 ツ02ィェィィ07 06ィ 08ィ ィーィェ ィ ィェ02ィヲ glenable(gl_cull_face) 06ィェ060001ィ 05ィー ィー 06ィーィ ィィィーィケ ィィィェ04 ィャィェ060006ィョ000605ィケィェィィィコ0609, ィェ02 08ィ 09ィー0208ィィ04ィョ07 ィィ ィ 0200ィ ィヲィー02 05ィィ03ィェィィ ィ 02ィィィヲ 09 07ィィィコ ィャィィ 00ィ 09ィコィィ080609ィ ィェィィ02, ィ 05ィケ00ィ -09ィャ0203ィィ09ィ ィェィィ02 ィィ 0108ィョ00ィィ ィィィコ090205ィケィェ ィ 02ィィィィ ィャ0600ィョィー 04ィ ィェィィィャィ ィーィケ 09ィョィエ0209ィー0902ィェィェ ィャ07 ィェィ 05ィーィ ィ 09ィー0208ィィ04ィ 02ィィィィ. 02ィーィコ0506 ツィ ィヲィー ィ 02ィィィィ, ィコ06ィー ィェ02 ィィ ィケ04ィョ02ィー02. 07ィャ02ィェィケ03ィ ィヲィー02 08ィ 04ィャ ィコィェィ ィィ05ィィ 08ィ ィェィィ02 05ィコ08ィ ィェィ ィー06ィヲ ィ ィョィャ02ィェィケ03ィィィーィケ ィャ07 08ィ 09ィー0208ィィ04ィ 02ィィィィ ィョィャ02ィェィケ03ィィィーィケ ツィィ ィィィコ ィヲ, ィコ06ィー ィ ィョ01ィョィー ィェィ 08ィィ090609ィ ィェ ィィ ィャ02ィェィケ03ィィ02 08ィ 04ィャ ィコィェィ ィィ05ィィ ィャ02ィェィケ ィ ィェィィ02 05ィコ08ィ ィェィ 0708ィィ02ィャ0502ィャ04, ィー06 05ィー ィィィヲ 07ィョィーィケ ィョ090205ィィ ツ02ィェィィ07 09ィコ ィーィィ 08ィ 09ィー0208ィィ04ィ 02ィィィィ ィコ09ィーィョ08ィィ080609ィ ィェィィ02 01ィ ィェィィ02 ィー02ィコ09ィーィョ ィー ィヲ ィ 02ィィ02ィヲ, ィコィ ィコ ィ ィャィャィェ0401, ィーィ ィコ ィィ 09 ィ 0707ィ 08ィ ィーィェ ィ 05ィィ04ィ 02ィィ ィケ04ィョィヲィー ィコィーィィ09ィェ ィャィ ィー ィ ィェ02ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィィヲ ィャィ ィー GL_UNSIGNED_BYTE 06ィ 04 ツィェ06 ィェィ ィィィ ィィィー ィ ツィィ ィー02ィコ09ィーィョ OpenGL. 02ィ ィイ0201ィィィェ07ィヲィー02 ィー02ィコ09ィーィョ ィー02ィコ09ィーィョ08ィェ ィ ィイ02ィコィー04 ィィ05ィィ 01ィィ ィヲィェ ィィ09ィコィィ. 06ィー ィ 02ィェィェ06 09ィ 03ィェ06, ィィ 0904 ィィ ィケ04ィョ02ィー02 ィェ0209ィコ0605ィケィコ06 ィー02ィコ09ィーィョ08, ィィ ィー 0008ィ 00ィィ ツ0209ィコ06ィヲ ィィ09ィー02ィャ ィコィーィィ09ィェ06 ィョ0708ィ ィーィケ

126 ィ 09ィ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ 08ィ 04ィャ02ィエ02ィェィィ02ィャ ィー02ィコ09ィーィョ ィィ ィ ィャ07ィーィィ ィィ ィケ04ィョィヲィー02 ィー02ィコ09ィーィョ0804 ィ 0605ィケ ィ 04ィャ0208ィ 0102ィ 0605ィケ03ィィ02 ィー02ィコ09ィーィョ0804 ィ 0409ィー ィ 08ィ ィ ィ ィー0409ィ 06ィー0907 ィィ 04ィ ィェィィィャィ 06ィー ィャ02ィェィケ ィ ィャ07ィーィィ, ツィー ィー 0108ィ ィェィィィーィケ 0908ィ 04ィョ ィェ0209ィコ0605ィケィコ06 ィー02ィコ09ィーィョ ィ ィャ07ィーィィ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィィ09ィー02ィャ ィャィ ィィィェィィ08ィョィヲィー02 ィェ02ィ 0605ィケ03ィィ02 ィー02ィコ09ィーィョ ィェィョ ィィ 0904 ィィ ィケ04ィョ02ィー02 ィェ0209ィコ0605ィケィコ06 ィャィ 0502ィェィケィコィィ01 ィー02ィコ09ィーィョ08, ィー06 ィャ0603ィェ06 06ィ ィイ0201ィィィェィィィーィケ ィィ ィェィョ ィ 0605ィケ ィ 04ィャ0208ィ ィィ ィィ04ィャ02ィェィィィーィケ ィー02ィコ09ィーィョ08ィェ0402 ィコ ィィィェィ ィー ィ ィ 06ィー04 09 ィェィョ03ィェ06ィヲ ィー02ィコ09ィーィョ0806ィヲ. 06ィー ィー ィョィャ02ィェィケ03ィィィーィケ ツィィ ィコ0506 ツ02ィェィィィヲ ィー02ィコ09ィーィョ08. 08ィェィィィャィィ080609ィ ィェィェ0402 ィー02ィコ09ィーィョ ィィ ィーィィィー02 ィィ ィケ040609ィ ィーィケ ィ ィェィィィャィィ080609ィ ィェィェ0402 ィー02ィコ09ィーィョ0804, ィェ02 ィィ ィケ04ィョィヲィー02 ィコ06ィャィ ィェ01ィョ glteximage2d ツィー06ィ 04 06ィ ィェ ィーィケ 06ィ 08ィ 04 ィー02ィコ09ィーィョ ィャ0209ィー06 05ィー ィコ06ィャ02ィェ01ィョ02ィー ィ ィーィケ gltexsubimage2d ィィ05ィィ gltexcopytexsubimage2d ツィィ09ィーィコィ ィ ィョ ツィィ09ィーィコィ ィ ィョ ィーィ, 0005ィョィ ィィィェ04, ィャィ 09ィコィィ ィィ ィ ィョ000208ィ -ィェィ ィコ0607ィィィー ィャ060302ィー ィー0802ィ 0609ィ ィーィケ 04ィェィ ツィィィー0205ィケィェ ィャ02ィェィィ ィー06ィャ 08ィ ィィ09ィ ィェ04 ィェ02ィコ06ィー ィィ02ィャ04, ィコ06ィー ィャ0600ィョィー 0706ィャ06 ツィケ 0607ィーィィィャィィ04ィィ080609ィ ィーィケ 05ィーィョ ィ 02ィィ ィケ04ィョィヲィー02 ィコ06ィャィ ィェ01ィョ glclear ィー ィェ0609ィーィケ06 02 ツィィィエィ ィヲィー ィェィョ03ィェ0402 ィ ィョ ィャ06ィエィケ ィェ06ィヲ ィコ06ィャィ ィェ0104 glclear ィェ06:

127 ィーィィィャィィ04ィ 02ィィ OPENGL 127 g l C l e a r (GL_COLOR_BUFFER_BIT) ; i f ( s t e n c i l i n g ) /* 06 ツィィ09ィーィィィーィケ ィ ィョ ィャィ 09ィコィィ? */ { g l C l e a r (GL_STENCIL_BUFFER_BIT) ; } ィェ06: i f ( s t e n c i l i n g ) /* 06 ツィィ09ィーィィィーィケ ィ ィョ ィャィ 09ィコィィ? */ { g l C l e a r (GL_COLOR_BUFFER_BIT STENCIL_BUFFER_BIT) ; } else { g l C l e a r (GL_COLOR_BUFFER_BIT) ; } ィ 04ィェ ィヲィー ィィィ ィコィィ GL ィャ07 ィェィ 07ィィ09ィ ィェィィ ィ ィャィャ ィ ィヲィー02 ィコ06ィャィ ィェ01ィョ glgeterror() ィコィィ, ィェ ィィ ィィ 0603ィィィ ィコィィ ィャ ィ 0601ィェ06ィヲ ィィ04 00ィョィェィコ02ィィィヲ OpenGL. 08ィ ィコ 0708ィ 09ィィ0506, 0603ィィィ ィコィィ ィェィィィコィ 06ィー ィィ04-04ィ ィェ ィェ ィ 08ィ ィャ02ィー ィコ06ィャィ ィェ01 OpenGL ィィ05ィィ ィェ ィェ06ィヲ ィ ィー0205ィケィェ0609ィーィィ ィコ06ィャィ ィェ ィィィェィ 05ィケィェ ィィィヲ ィコ0601ィ 06ィーィコ0506 ツィ ィヲィー02 05ィーィィ ィコィィ, ィーィ ィコ ィコィ ィコ 06ィェィィ ィャ0600ィョィー 09ィョィエ0209ィー0902ィェィェ06 04ィ ィャ020105ィィィーィケ 08ィ ィ 06ィーィョ ィコィィ ィャ0603ィェ06 ィィ ィケ040609ィ ィーィケ, ィェィ 0708ィィィャ0208, ィーィ ィコ06ィヲ ィャィ ィコ080609: #include <a s s e r t. h> #define CHECK_GL a s s e r t ( glgeterror ( )!= GL_NO_ERROR) ; ィケ040609ィ ィーィケ ィャ0603ィェ06 ィーィ ィコ: glbegin (GL_TRIANGLES) ; g l V e r t e x 3 f ( 1, 1, 1 ) ; glend ( ) ;

128 ィ 09ィ ィーィィィャィィ04ィ 02ィィ ィ ィャィャ CHECK_GL; ィケ04ィョィヲィー02 glcolormaterial 09ィャ0209ィー06 glmaterial ィィ ィェ02 ィャィ ィー0208ィィィ ィ ィイ02ィコィー ィ 0405ィィ ツィ 06ィー ィィ03ィケ 0601ィェィィィャ 07ィ 08ィ ィャ02ィー0806ィャ, ィコ06ィャィ ィェ01ィ glcolormaterial ィャ060302ィー ィ 04ィーィケ ィ 0409ィー080202, ツ02ィャ glmaterial. 00ィィィェィィィャィィ04ィィ08ィョィヲィー02 ツィィ ィィ04ィャ02ィェ02ィェィィィヲ ィー0607ィェィィ07 OpenGL 0806ィャィ ィェ0104, ィィ04ィャ02ィェ0706ィエィィ ィー0607ィェィィ02 OpenGL (glenable, gldisable, glbindtexture ィィ 0108ィョ00ィィ02), ィ 06ィー ィー0608ィェ ィェィョィー0802ィェィェィィ ィコィィ ィーィェ0609ィーィィ, ィ ィェィィ ィェィィィー0205ィケィェ ィー08ィョィコィーィョ08 01ィ ィェィェ0401 ィィ ィー.01., ツィー06 ィャ060302ィー 0708ィィ090601ィィィーィケ ィコ 04ィ ィコィ ィャ. 0604ィ 0200ィ ィヲィー02 ィィ ィケ040609ィ ィェィィ07 ィコ06ィャィ ィェ0104 glpolygonmode ィィ 09ィ ィャ ィェ0206ィ ィィィャ06 08ィィ090609ィ ィーィケ ィャィェ ィェ0204ィ ィコ08ィ 0302ィェィェ0401 ィャィェ060006ィョ000605ィケィェィィィコ0609, ィィ ィケ04ィョィヲィー02 glbegin 09 GL_POINTS, GL_LINES, GL_LINE_LOOP ィィ05ィィ GL_LINE_STRIP 09ィャ0209ィー06 ィィ04ィャ02ィェ02ィェィィ ィィィャィ 08ィィ090609ィ ィェィィ ィィィャィィィーィィ090609, ィーィ ィコ ィコィ ィコ 05ィー06 ィャ060302ィー ィ 04ィーィケ ィェィ ィャィェ ィ 0409ィー ィェ02 ツィェ06, 05ィーィィ 0802ィコ06ィャ02ィェ01ィ 02ィィィィ ィ ィー0409ィ 06ィー 05ィィ03ィケ ィャィ 05ィョ06 ツィ 09ィーィケ ィャ0603ィェ0609ィー02ィヲ ィーィィィャィィ04ィ 02ィィィィ OpenGL-0708ィィ ィェィィィヲ. 0602ィャ ィェ02 ィャ02ィェ0202, 0708ィィ ィィ ィ 09ィィ05ィケィェ06ィャ ィィ ィケ040609ィ ィェィィィィ ィャ0603ィェ ィーィィ ツィケ 09ィョィエ0209ィー0902ィェィェ ィョ09ィコ060802ィェィィ07 08ィ ィ 06ィー04 09ィ 03ィィ ィ ィャィャ ィェィー080605ィケィェ ) ツィィ0905ィィィー02 ィィ ィーィェ ィ ィャ ィャ02ィー ィコ06ィョ080609ィェ020906ィヲ 0607ィーィィィャィィ04ィ 02ィィィィ OpenGL-0708ィィ ィェィィィヲ. 2) 0306 ツ02ィャィョ ツィーィィィー0205ィケィェ0202 ィィ ィケ040609ィ ィェィィ ィ ィェィェ ィィィャィィィーィィ090609?

129 ィェィー080605ィケィェ ) 08ィ ィコィ 07 ィィ ィョ01 ィコ06ィャィ ィェ ィェ0702ィー0907 OpenGL ィ 0409ィー080202? g l V e r t e x 3 f ( 1, 1, 1 ) ; ィィ05ィィ float vct [ 3 ] = { 1, 1, 1 } ; glvertex3fv ( vct ) ;

130 13

131 13 チィ 09ィーィケ III ィ ィェィィ ィィ ィェィィィヲ 09 OpenGL 131

132 13

133 130105ィ 09ィ 10. OpenGL-0708ィィ ィェィィ ィャ06ィエィケ06 GLUT ィー08ィョィコィーィョ08ィ GLUT-0708ィィ ィェィィ07 02ィ ィ ィョ0102ィャ 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ ィー080602ィェィィ02 ィコ06ィェ090605ィケィェ ィィ ィェィィ ィィ 0706ィャ06ィエィィ ィ ィィィ 05ィィ06ィー02ィコィィ GLUT. 06ィーィ ィ ィィィ 05ィィ06ィー02ィコィ 06ィ ツィィ09ィ 02ィー 0201ィィィェ04ィヲ ィィィェィー ィヲ ィ ィ 06ィー ィコィェィ ィャィィ 09ィェ02 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー 0705ィ ィー000608ィャ04, ィー06ィャィョ 0607ィィ090409ィ 02ィャィ 07 ィェィィ ィー08ィョィコィーィョ08ィ 0708ィィ ィェィィ ィーィ 02ィー0907 ィェ02ィィ04ィャ02ィェィェ06ィヲ ィ 02ィィ06ィェィェ ィィ09ィー02ィャ Windows, Linux ィィ 0108ィョ00ィィ01. 08ィョィェィコ02ィィィィ GLUT ィャ0600ィョィー ィ 04ィーィケ ィコ05ィ 0909ィィ00ィィ02ィィ080609ィ ィェ04 ィェィ ィェ0209ィコ0605ィケィコ ィョ ィャィョ ィェィ 04ィェィ ツ02ィェィィ06: 0キ3 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ07; 0キ3 ィェィ ツィ ィ 08ィ ィ 06ィーィコィィ 0906ィ 04ィーィィィヲ; 0キ3 ィョ0708ィ ィェィィ02 06ィコィェィ ィャィィ; 0キ3 ィョ0708ィ ィェィィ02 ィャ02ィェ06; 0キ ィィ09ィー08ィ 02ィィ07 00ィョィェィコ02ィィィヲ 09 06ィ 08ィ ィーィェ04ィャ ィャ; 133

134 ィ 09ィ 10. OPENGL-0708ィィ ィェィィ ィャ06ィエィケ06 GLUT 0キ3 ィョ0708ィ ィェィィ02 ィィィェ0102ィコ09ィィ080609ィ ィェィェ06ィヲ 07ィ 05ィィィー0806ィヲ ィー0609; 0キ3 06ィー06ィ 08ィ 0302ィェィィ ィィ00ィー0609; 0キ3 06ィー06ィ 08ィ 0302ィェィィ ィェィィィー0205ィケィェ ィャ02ィー08ィィ ツ0209ィコィィ01 00ィィ00ィョ08 (ィー0608, ィコ06ィェィョ09 ィィ 0108.). 06ィェィィ02ィィィ 05ィィ04ィ 02ィィ ィィィー ィャ06ィエィケ06 00ィョィェィコ02ィィィィ: g l u t I n i t ( int * argcp, char ** argv ) ィャ02ィェィェィ 07 argcp 0209ィーィケ ィョィコィ 04ィ ィー0205ィケ ィェィ 09ィーィ ィェ01ィ 08ィーィェィョ ィャ02ィェィェィョ06 argc, 0607ィィ090409ィ 02ィャィョ ィョィェィコ02ィィィィ main(), ィ argv ィョィコィ 04ィ ィー0205ィケ ィェィ 07ィ 08ィ ィャ02ィー0804, ィ 09ィ 02ィャ ィ ィャィャ ィィ 04ィ 07ィョ09ィコ02, ィコ06ィー060804ィヲ 0607ィィ090409ィ 02ィー0907 ィーィ ィャ ィーィ 00ィョィェィコ02ィィ ィィィー ィェ0206ィ ィィィャ0402 ィェィ ツィ 05ィケィェ ィヲ09ィー09ィィ ィー080602ィェィィ07 06ィコィェィ 0708ィィ ィェィィ07, ィィ ィー0605ィケィコ06 ィェ0209ィコ0605ィケィコ06 00ィョィェィコ02ィィィヲ GLUT ィャ0600ィョィー ィ 04ィーィケ ィ ィェ ィェ ィェィィィャ 06ィーィェ060907ィー0907: glutinitwindowposition ( int x, int y ) glutinitwindowsize ( int width, int height ) glutinitdisplaymode ( unsigned int mode) ィョィェィコ02ィィィィ 04ィ 01ィ 06ィー ィー0902ィー09ィー0902ィェィェ ィェィィ02 ィィ 08ィ 04ィャ ィコィェィ, ィ ィェ ィョィェィコ02ィィ ィー 08ィ 0405ィィ ツィェ ィィィャ04 06ィー06ィ 08ィ 0302ィェィィ07 ィィィェ000608ィャィ 02ィィィィ, ィコ06ィー ィャ0600ィョィー ィャ0209ィーィェ06 04ィ 01ィ 09ィ ィーィケ ィィ ィケ040609ィ ィェィィ02ィャ ィ 02ィィィィ 0706ィ ィィィー ィィ05ィィ07 (06 07): GLUT_RGBA ィィィャ RGBA ィケ04ィョ02ィー ィョィャ0605 ツィ ィェィィ06, ィィ ィェ02 ィョィコィ 04ィ ィェ ィィィャ04 GLUT_RGBA ィィ05ィィ GLUT_INDEX. GLUT_RGB , ツィー06 ィィ GLUT_RGBA. GLUT_INDEX ィィィャ ィィィェ0102ィコ09ィィ080609ィ ィェィェ ィー0609 (ィィ ィケ040609ィ ィェィィ02 07ィ 05ィィィー0804). 02ィーィャ02ィェ0702ィー GLUT_RGBA. GLUT_SINGLE 02ィコィェ ィィィェ06 ツィェ04ィャ ィ ィョ ィャ ィケ04ィョ02ィー ィョィャ0605 ツィ ィェィィ06. GLUT_DOUBLE 02ィコィェ ィヲィェ04ィャ ィ ィョ ィャ. 02ィーィャ02ィェ0702ィー GLUT_SINGLE.

135 ィー08ィョィコィーィョ08ィ GLUT-0708ィィ ィェィィ GLUT_STENCIL 02ィコィェ06 09 ィ ィョ ィャ ィャィ 09ィコィィ. GLUT_ACCUM 02ィコィェ06 09 ィ ィョ ィャ-ィェィ ィコ0607ィィィー020502ィャ. GLUT_DEPTH 02ィコィェ06 09 ィ ィョ ィャ 0005ィョィ ィィィェ04. 06ィー06 ィェ ィェ04ィヲ 0907ィィ0906ィコ 07ィ 08ィ ィャ02ィー ィ ィェィェ06ィヲ 00ィョィェィコ02ィィィィ, 0601ィェィ ィコ ィ 0605ィケ03ィィィェ09ィー09ィ 0905ィョ ツィ ィー ィ 0409ィ 02ィー ィーィ ィー06 ツィェ06. 04ィ ィ 06ィーィ 09 ィ ィョ ィャ ィャィ 09ィコィィ ィィ ィ ィョ ィャ ィェィ ィコ ィェィィ ィィ09ィ ィェィ ィ ィョィェィコ02ィィィィ ィ ィィィ 05ィィ06ィー02ィコィィ GLUT 0802ィ 05ィィ04ィョ06ィー ィーィ ィコ ィェィ ィ 02ィャ04ィヲ 0906ィ 04ィーィィィヲィェ06-ィョ0708ィ ィャ04ィヲ ィャ0201ィ ィェィィ04ィャ. 06ィー ィェィ ツィ 02ィー, ツィー ィーィケ ィェ02ィコ06ィー060804ィヲ 09ィェィョィー0802ィェィェィィィヲ 02ィィィコ05, ィコ06ィー060804ィヲ 04ィ 07ィョ09ィコィ 02ィー ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ 06ィ 08ィ ィ ィ ィー0409ィ 02ィー 0601ィェ06 04ィ 0108ィョ00ィィィャ ィ 04ィーィィ07, 06ィ ィイ ィェィェ ィャ07 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィ 04ィーィィ07ィャ 06ィーィェ060907ィー0907: ィエ0205 ツ06ィコ ィャ0403ィィ, 04ィ ィコ0804ィーィィ02 06ィコィェィ, ィィ04ィャ02ィェ02ィェィィ ィヲ09ィー09 06ィコィェィ, ィィ0302ィェィィ02 ィコィョ ィ, ィェィ 03ィ ィーィィ02 ィコ05ィ 09ィィ03ィィ ィィ 0607ィョ09ィー (idle) 0906ィ 04ィーィィ02, ィコ060001ィ ィェィィ ツ ィェ ィィ ィィィー ィェィィ ィィ0601ィィ ツ0209ィコ06ィヲ ィコィィ ィェィィ07 ィー ィィ05ィィ ィィィェ ィ 04ィーィィ07 ィェィ ィ ィィ09ィー08ィィ080609ィ ィーィケ 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 ィ ィョ0102ィー ィ 08ィ ィ ィ ィー0409ィ ィーィケ ィー ィィ ィケ04ィョ06ィー ィョィェィコ02ィィィィ 09ィィ01ィ : void glutdisplayfunc ( void ( * func ) ( void ) ) void glutreshapefunc ( void ( * func ) ( int width, int height ) ) void glutmousefunc ( void ( * func ) ( int button, int state, int x, int y ) ) void glutidlefunc ( void ( * func ) ( void ) ) void glutmotionfunc ( void ( * func ) ( int x, int y ) ) ; void glutpassivemotionfunc ( void ( * func ) ( int x, int y ) ) ; 03ィ 08ィ ィャ02ィー0806ィャ ィェィィ ィー0907 ィィィャ ィー0902ィー09ィー09ィョ06ィエ02ィヲ 00ィョィェィコ02ィィィィ 04ィ 01ィ ィェィェ ィーィィ07ィ ィャ06ィエィケ06 glutdisplayfunc() 04ィ 01ィ 02ィー ィョィェィコ02ィィ07 08ィィ090609ィ ィェィィ ィコィェィ 0708ィィ ィェィィ07, ィコ06ィー0608ィ ィ 02ィー ィィ ィェ0206ィ ィィィャ0609ィーィィ ィ ィェィィ07 ィィ05ィィ ィーィ ィェ ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ

136 ィ 09ィ 10. OPENGL-0708ィィ ィェィィ ィャ06ィエィケ06 GLUT 0709ィェ ィョィコィ 04ィ ィェィィ07, ツィー06 06ィコィェ06 ィェィ ィ ィェ0609ィィィーィケ, ィィィェ060001ィ ィョ0106ィ ィェ06 ィィ ィケ040609ィ ィーィケ 00ィョィェィコ02ィィ06 void glutpostredisplay ( void ) チ glutreshapefunc() ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー ィョィェィコ02ィィ07 06ィ 08ィ ィ 06ィーィコィィ ィィ04ィャ02ィェ02ィェィィ07 08ィ 04ィャ ィコィェィ ィケ040609ィ ィー020502ィャ, ィコ06ィー060806ィヲ ィ 06ィー0907 ィェ ィ 04ィャ glutmousefunc() ィー 00ィョィェィコ02ィィ06-06ィ 08ィ ィ 06ィー ツィィィコ ィコ06ィャィ ィェ01 06ィー ィャ0403ィィ, ィ glutidlefunc() 04ィ 01ィ 02ィー 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 ィ ィョ0102ィー ィ ィーィケ0907 ィコィ ィヲ 08ィ 04, ィコ060001ィ ィェ02ィー 0906ィ 04ィーィィィヲ 06ィー ィケ040609ィ ィー ィョィェィコ02ィィ07, ィャィ 07 glutmotionfun09(), ィ 02ィー0907, ィコ060001ィ ィケ040609ィ ィー0205ィケ 0109ィィ00ィ 02ィー ィョィコィ 04ィ ィー0205ィケ ィャ0403ィィ, ィョ ィィ09ィ 07 ィコィェ0607ィコィョ ィャ0403ィィ. glutpassivemotionfunc ィィ09ィー08ィィ08ィョ02ィー 00ィョィェィコ02ィィ06, ィ 02ィャィョ06, ィィ ィケ040609ィ ィー0205ィケ 0109ィィ00ィ 02ィー ィョィコィ 04ィ ィー0205ィケ ィャ0403ィィ ィィ ィェ02 ィェィ 03ィ ィー06 ィェィィ 0601ィェ06ィヲ ィコ070607ィコィィ ィャ0403ィィ. 0806ィェィー080605ィケ ィ 04ィーィィィヲ ィィ ィィィー 09ィェィョィー08ィィ ィ 0209ィコ06ィェ02 ツィェ ィィィコ05ィ 09 00ィョィェィコ02ィィィィ void glutmainloop ( void ) ィコ06ィー0608ィ 07 06ィ 04 ツィェ ィ 02ィー ィコ06ィェ ィ 06ィヲ ィ ィャィャ04, ィィ ィケ04ィョ06ィエ02ィヲ GLUT. 05ィー08ィョィコィーィョ08ィ 0708ィィ ィェィィ07, ィィ ィケ04ィョ06ィエ ィ ィェィィィャィ 02ィィ06, ィ ィョ0102ィー ィョ06ィエ02ィヲ: #i n c l u d e <GL/ g l u t. h> void MyIdle ( void ) { /* , ィコ06ィー060804ィヲ ィャ02ィェ0702ィー ィャ02ィェィェ0402, ィエィィ ィョ06ィエィィィヲ ィコィ 0108 */... } ; void MyDisplay ( void ) { /* OpenGL, ィコ06ィー060804ィヲ 06ィー06ィ 08ィ 03ィ 02ィー ィコィ 0108 */...

137 GLUT MICROSOFT VISUAL C /* ィィ090609ィ ィェィィ ィーィ ィャ ィ ィョ */ glutswapbuffers ( ) ; } ; void main ( int argcp, char ** argv ) { /* 06ィェィィ02ィィィ 05ィィ04ィ 02ィィ07 GLUT */ g l u t I n i t (&argcp, argv ) ; glutinitwindowsize (640, ) ; glutinitwindowposition (0, 0 ) ; /* 02ィーィコ0804ィーィィ02 06ィコィェィ */ glutcreatewindow ( "My OpenGL Application " ) ; /* 0004ィ ィィィャィ : ィヲィェ06ィヲ ィ ィョ ィィ RGBA ィーィ */ glutinitdisplaymode (GLUT_RGBA GLUT_DOUBLE GLUT_DEPTH) ; /* ィィ09ィー08ィ 02ィィ ィ 02ィャ ィョィェィコ02ィィィヲ */ glutdisplayfunc ( MyDisplay ) ; glutidlefunc ( MyIdle ) ; /* 05ィ 07ィョ09ィコ ィャ0201ィ ィェィィ04ィャィ 06ィ 08ィ ィ 06ィーィコィィ 0906ィ 04ィーィィィヲ */ glutmainloop ( ) ; } ; ィョ ツィ 02, ィィ 0708ィィ ィェィィ ィェ06 09ィー0806ィィィーィケ 09ィーィ ィーィィ ツィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02, ィャ0603ィェ06 04ィ ィャ02ィェィィィーィケ GLUT_DOUBLE ィェィ GLUT_SINGLE, ィーィ ィコ ィコィ ィコ 0601ィェ ィ ィョ000208ィ 09 05ィー06ィャ 0905ィョ ツィ 02 ィ ィョ0102ィー ィーィ ィー06 ツィェ06, ィィ ィョィ 08ィ ィーィケ ィョィェィコ02ィィィィ glutidlefunc() GLUT Microsoft Visual C ィェィ ツィ 0506ィャ 08ィ ィ 06ィー04 ィェ0206ィ ィィィャ06 09ィコ0607ィィ080609ィ ィーィケ 00ィ ィヲ0504 glut.h, glut32.lib glut32.dll 09 ィコィ ィーィ ィィ MSVC Include Gl, MSVC Lib, Windows System ィー0902ィー09ィー0902ィェィェ06. 06ィ ィコ ィーィィ01 ィコィ ィーィ ィ 01 ィェィ ィィィーィケ ィェィ 05ィィ ツィィ02 00ィ ィヲ gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, ィコ06ィー ィ 04 ツィェ ィー ィーィ 09 Visual C++ ィィ Windows. 0308ィィ ィィ ィケ040609ィ ィェィィィィ ィコ06ィャィ ィェ01 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ

138 ィ 09ィ 10. OPENGL-0708ィィ ィェィィ ィャ06ィエィケ06 GLUT GLAUX ィコ ツィィ090502ィェィェ04ィャ 00ィ ィヲ05ィ ィャ ィェィ ィ ィ 09ィィィーィケ ィコ0506 ツィ 02ィャ ィ ィヲ0504 ィ ィィィ 05ィィ06ィー02ィコィィ glaux.h ィィ glaux.lib ィ ィェィィ ィィ ィェィィ07 ィェィ ィェィィィーィケ ィョ06ィエィィ ィヲ09ィー09ィィ07: 0キ ィ ィェィィ ィコィーィ : ィー ィェィ ィ 08ィ ィーィケ FileNew ProjectsWin32 Console Application, ィェィ ィ 08ィ ィーィケ ィィィャ ィコィーィ, OK. 0キ ィィ090302ィャ ィコィェ ィ 08ィ ィーィケ 06An empty project07, Finish, OK. 0キ3 0602ィコ09ィー ィ ィャィャ04 ィャ0603ィェ06 05ィィィ 06 08ィ 04ィャ0209ィーィィィーィケ ィ ィェィェ06ィャ ィー02ィコ09ィー060906ィャ 00ィ ィヲ0502 (0904ィ 08ィ 09 FileNewFilesText File), 05ィィィ ィ ィ 09ィィィーィケ 00ィ ィヲ ィ 0903ィィ0802ィェィィ02ィャ *.c ィィ05ィィ *.cpp ィコィー (0904ィ 08ィ 09 ProjectAdd To ProjectFiles). 0キ ィコ0506 ツィィィーィケ ィコ ィコィーィョ ィ ィィィ 05ィィ06ィー02ィコィィ OpenGL ィー ィェィ ィ 08ィ ィーィケ ProjectSettingsLink ィィ Object library modules ィェィ ィ 08ィ ィーィケ ィェィ 0409ィ ィェィィ07 ィェィョ03ィェ0401 ィ ィィィ 05ィィ06ィー02ィコ: opengl32.lib, glu32.lib, glut32.lib ィィ, ィィ ィェィ 0106, glaux.lib. 0キ ィコ06ィャ07ィィ050702ィィィィ 0904ィ 08ィ ィーィケ BuildBuild program.exe, ィェ02ィェィィ07 BuildExecute program.exe. 0キ3 チィー06ィ ィィ 04ィ 07ィョ09ィコ02 ィェ ィケ ィー02ィコ09ィー ィコィェ06, ィェィ ィ 08ィ ィーィケ ProjectSettingsLink ィィ Project Options 09ィャ0209ィー06 06subsystem:console07 ィェィ ィ 08ィ ィーィケ 06subsystem:windows07, ィィ ィェィ ィ 08ィ ィーィケ ィーィ ィャ ィー0806ィコィョ 06/entry:mainCRTStartup ィ ィ ィャィャィ 0006ィー0609ィ, 0802ィコ06ィャ02ィェ01ィョ02ィー ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ ィィィャ02 06Release ィーィィィャィィ04ィ 02ィィィィ 0706 ィ 0409ィー ィヲ09ィー09ィィ06 ィィ 06ィ ィイ02ィャィョ ィー ィェィ ィ 08ィ ィーィケ BuildSet Active Conguration ィィ 06ィーィャ02ィーィィィーィケ Win32 Release07, ィ 04ィ ィー02ィャ 04ィ ィェ ィコ0506 ツィィィーィケ ィェ0206ィ ィィィャ0402 ィ ィィィ 05ィィ06ィー02ィコィィ.

139 GLUT MICROSOFT VISUAL C GLUT Microsoft Visual C ィェィ ツィ 0506ィャ 08ィ ィ 06ィー04 ィェ0206ィ ィィィャ06 09ィコ0607ィィ080609ィ ィーィケ 00ィ ィヲ0504 glut.h, glut32.lib ィィ glut32.dll 09 ィコィ ィーィ ィィ MVS8 VC PlatformSDK Include, MVS8 VC PlatformSDK Lib, Windows System ィー0902ィー09ィー0902ィェィェ06. 06ィ ィコ ィーィィ01 ィコィ ィーィ ィ 01 ィェィ ィィィーィケ ィェィ 05ィィ ツィィ02 00ィ ィヲ gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, ィコ06ィー ィ 04 ツィェ ィー ィーィ 09 Visual C++ ィィ Windows. 0308ィィ ィィ ィケ040609ィ ィェィィィィ ィコ06ィャィ ィェ01 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ GLAUX ィコ ツィィ090502ィェィェ04ィャ 00ィ ィヲ05ィ ィャ ィェィ ィ ィ 09ィィィーィケ ィコ0506 ツィ 02ィャ ィ ィヲ0504 ィ ィィィ 05ィィ06ィー02ィコィィ glaux.h ィィ glaux.lib ィ ィェィィ ィィ ィェィィ07 ィェィ ィェィィィーィケ ィョ06ィエィィ ィヲ09ィー09ィィ07: 0キ ィ ィェィィ ィコィーィ : ィー ィェィ ィ 08ィ ィーィケ FileNew ProjectsWin32Win32 Console Application, ィェィ ィ 08ィ ィーィケ ィィィャ ィコィーィ, OK. 0キ ィィ090302ィャ ィコィェ ィコ05ィ 01ィコ02 Application Settings 0904ィ 08ィ ィーィケ 06Console application07, 06An empty project07, Finish. 0キ3 0602ィコ09ィー ィ ィャィャ04 ィャ0603ィェ06 05ィィィ 06 08ィ 04ィャ0209ィーィィィーィケ ィ ィェィェ06ィャ ィー02ィコ09ィー060906ィャ 00ィ ィヲ0502 (0904ィ 08ィ 09 FileNewFilesVisual C++ C++File ), 05ィィィ ィ ィ 09ィィィーィケ 00ィ ィヲ ィ 0903ィィ0802ィェィィ02ィャ *.c ィィ05ィィ *.cpp ィコィー (0904ィ 08ィ 09 ProjectAdd To ProjectFiles). 0キ ィコ0506 ツィィィーィケ ィコ ィコィーィョ ィ ィィィ 05ィィ06ィー02ィコィィ OpenGL ィー ィェィ ィ 08ィ ィーィケ ProjectPropertiesConguration Properties LinkerInput ィィ Additional dependencies ィェィ ィ 08ィ ィーィケ ィェィ 0409ィ ィェィィ07 ィェィョ03ィェ0401 ィ ィィィ 05ィィ06ィー02ィコ: opengl32.lib, glu32.lib, glut32.lib ィィ, ィィ ィェィ 0106, glaux.lib. 0キ ィコ06ィャ07ィィ050702ィィィィ 0904ィ 08ィ ィーィケ Build program.exe, ィェ02ィェィィ07 DebugStart Debugging ィィ05ィィ DebugStart Without Debugging.

140 ィ 09ィ 10. OPENGL-0708ィィ ィェィィ ィャ06ィエィケ06 GLUT 0キ3 チィー06ィ ィィ 04ィ 07ィョ09ィコ ィ ィャィャ04 ィェ ィケ ィコ06ィェ090605ィケィェ0602 ィー02ィコ09ィー ィコィェ06, ィェィ ィ 08ィ ィーィケ ProjectProperties Conguration PropertiesLinkerSystem ィィ SubSystem 09ィャ0209ィー06 06Console ィ 08ィ ィーィケ 06Windows ィヲィーィィ 09 08ィ LinkerAdvanced ィィ Entry Point ィェィ 07ィィ09ィ ィーィケ 06wmainCRTStartup07 (ィ 0204 ィコィ 0904 ツ02ィコ) ィ ィ ィャィャィ 0006ィー0609ィ, 0802ィコ06ィャ02ィェ01ィョ02ィー ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ ィィィャ02 06Release ィーィィィャィィ04ィ 02ィィィィ 0706 ィ 0409ィー ィヲ09ィー09ィィ06 ィィ 06ィ ィイ02ィャィョ ィー ィェィ ィ 08ィ ィーィケ BuildConguration Manager ィィ Active solution conguration ィ 08ィ ィーィケ 06Release07, ィ 04ィ ィー02ィャ 04ィ ィェ ィコ0506 ツィィィーィケ ィェ0206ィ ィィィャ0402 ィ ィィィ 05ィィ06ィー02ィコィィ ィー06ィヲ ィコ06ィェ00ィィ00ィョ08ィ 02ィィィィ GLUT Borland C++ Builder ィェィ ツィ 0506ィャ 08ィ ィ 06ィー04 ィェ0206ィ ィィィャ06 09ィコ0607ィィ080609ィ ィーィケ 00ィ ィヲ0504 glut.h, glut32.lib, glut32.dll 09 ィコィ ィーィ ィィ CBuilder6 Include Gl, CBuilder6 Lib, Windows System ィー0902ィー09ィー0902ィェィェ06. 06ィ ィコ ィーィィ01 ィコィ ィーィ ィ 01 ィェィ ィィィーィケ ィェィ 05ィィ ツィィ02 00ィ ィヲ gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, ィコ06ィー ィ 04 ツィェ ィー ィーィ 09 Borland C++ ィィ Windows. 0308ィィ 05ィー06ィャ ィェィ 0106 ィョ ツィィィー0409ィ ィーィケ, ツィー ィィ00ィィィェィ 05ィケィェ0402 ( Microsoft Visual C++) ィィィィ 00ィ ィヲ05ィ glut32.lib c Borland C++ Builder 6 08ィ ィ 06ィーィ ィーィケ ィェ02 ィ ィョ01ィョィー, ィィ ィョ02ィー ィィ ィケ040609ィ ィーィケ ィー0605ィケィコ ィャ0209ィーィィィャィョ ィィ06. チィー06ィ ィ ィーィケ ィーィ ィコィョ ィィ06, ィェィ 0106 ィィ ィケ040609ィ ィーィケ 09ィーィ ィェ01ィ 08ィーィェィョ ィ ィャィャィョ 'implib', ィコ06ィー0608ィ 07 ィェィ ィィィー ィコィ ィーィ Builder6 Bin ィー ィコ06ィャィ ィェ01ィェ06ィヲ 09ィー0806ィコ02 ィェィ ィェィィィーィケ ィコ06ィャィ ィェ01ィョ implib glut32.lib glut32.dll ィコ06ィー0608ィ ィ 02ィー ィェィョ03ィェ04ィヲ lib-00ィ ィヲ05 ィィ ィー0902ィー09ィー09ィョ06ィエ dll-00ィ ィヲ05ィ.

141 GLUT BORLAND C++ BUILDER ィ ィェィィ ィィ ィェィィ07 ィェィ ィェィィィーィケ ィョ06ィエィィ ィヲ09ィー09ィィ07: 0キ ィ ィェィィ ィコィーィ : ィー ィェィ ィ 08ィ ィーィケ FileNew OtherConsole Wizard, OK. 0キ ィィ090302ィャ ィコィェ ィ 08ィ ィーィケ Source Type 05++, Console Application, 09ィ ィィィーィケ ィィィィ 06Use VCL07, 06Use CLX07, 06Multi Threaded07. 01ィ 03ィ ィーィケ キ3 0602ィコ09ィー ィ ィャィャ04 ィャ0603ィェ06 05ィィィ 06 08ィ 04ィャ0209ィーィィィーィケ ィ ィェィェ06ィャ ィー02ィコ09ィー060906ィャ 00ィ ィヲ0502, 05ィィィ 06 ィョ01ィ 05ィィィーィケ ィィ ィコィーィ (Project Remove From Project) ィィ 0106ィ ィ 09ィィィーィケ 00ィ ィヲ ィ 0903ィィ0802ィェィィ02ィャ *.c ィィ05ィィ *.cpp ィコィー (0904ィ 08ィ 09 ProjectAdd To Project). 0キ ィ ィェィィィー ィ ィェィェ04ィヲ ィコィー ィ 02ィャ06ィャ ィコィ ィーィ (0904ィ 08ィ 09 FileSave All). 0キ ィコ0506 ツィィィーィケ ィコ ィコィーィョ ィ ィィィ 05ィィ06ィー02ィコィョ GLUT ィー ィェィ ィ 08ィ ィーィケ ProjectAdd To Project ィィ 0106ィ ィ 09ィィィーィケ 00ィ ィヲ05 glut32.lib 0キ ィコ06ィャ07ィィ050702ィィィィ 0904ィ 08ィ ィーィケ ProjectBuild..., ィェ02ィェィィ07 RunRun ィ ィ ィャィャィ 0006ィー0609ィ, 0802ィコ06ィャ02ィェ01ィョ02ィー ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ ィィィャ02 06Release ィーィィィャィィ04ィ 02ィィィィ 0706 ィ 0409ィー ィヲ09ィー09ィィ06 ィィ 06ィ ィイ02ィャィョ ィー ィェィ ツィ 05ィ ィェィ ィ 08ィ ィーィケ ProjectOptions Compiler ィィ ィェィ 03ィ ィーィケ ィコィェ0607ィコィョ 06Release GLUT Borland C++ Builder ィェィ ツィ 0506ィャ 08ィ ィ 06ィー04 ィェ0206ィ ィィィャ06 09ィコ0607ィィ080609ィ ィーィケ 00ィ ィヲ0504 glut.h, glut32.lib, glut32.dll 09 ィコィ ィーィ ィィ Borland BDS 4.0 Include Gl, Borland BDS 4.0 Lib,

142 ィ 09ィ 10. OPENGL-0708ィィ ィェィィ ィャ06ィエィケ06 GLUT Windows System ィー0902ィー09ィー0902ィェィェ06. 06ィ ィコ ィーィィ01 ィコィ ィーィ ィ 01 ィェィ ィィィーィケ ィェィ 05ィィ ツィィ02 00ィ ィヲ gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, ィコ06ィー ィ 04 ツィェ ィー ィーィ 09 Borland C++ ィィ Windows. 0308ィィ 05ィー06ィャ ィェィ 0106 ィョ ツィィィー0409ィ ィーィケ, ツィー ィィ00ィィィェィ 05ィケィェ0402 ( Microsoft Visual C++) ィィィィ 00ィ ィヲ05ィ glut32.lib c Borland C++ Builder 6 08ィ ィ 06ィーィ ィーィケ ィェ02 ィ ィョ01ィョィー, ィィ ィョ02ィー ィィ ィケ040609ィ ィーィケ ィー0605ィケィコ ィャ0209ィーィィィャィョ ィィ06. チィー06ィ ィ ィーィケ ィーィ ィコィョ ィィ06, ィェィ 0106 ィィ ィケ040609ィ ィーィケ 09ィーィ ィェ01ィ 08ィーィェィョ ィ ィャィャィョ 'implib', ィコ06ィー0608ィ 07 ィェィ ィィィー ィコィ ィーィ Borland BDS 4.0 Bin ィー ィコ06ィャィ ィェ01ィェ06ィヲ 09ィー0806ィコ02 ィェィ ィェィィィーィケ ィコ06ィャィ ィェ01ィョ implib glut32.lib glut32.dll ィコ06ィー0608ィ ィ 02ィー ィェィョ03ィェ04ィヲ lib-00ィ ィヲ05 ィィ ィー0902ィー09ィー09ィョ06ィエ dll-00ィ ィヲ05ィ ィ ィェィィ ィィ ィェィィ07 ィェィ ィェィィィーィケ ィョ06ィエィィ ィヲ09ィー09ィィ07: 0キ ィ ィェィィ ィコィーィ : ィー ィェィ ィ 08ィ ィーィケ FileNew OtherConsole Application, OK. 0キ ィィ090302ィャ ィコィェ ィ 08ィ ィーィケ Source Type , 06Console Application07, 09ィ ィィィーィケ ィィィィ 06Use VCL07, 06Multi Threaded07. 01ィ 03ィ ィーィケ キ3 0602ィコ09ィー ィ ィャィャ04 ィャ0603ィェ06 05ィィィ 06 08ィ 04ィャ0209ィーィィィーィケ ィ ィェィェ06ィャ ィー02ィコ09ィー060906ィャ 00ィ ィヲ0502, 05ィィィ 06 ィョ01ィ 05ィィィーィケ ィィ ィコィーィ (Project Remove From Project) ィィ 0106ィ ィ 09ィィィーィケ 00ィ ィヲ ィ 0903ィィ0802ィェィィ02ィャ *.c ィィ05ィィ *.cpp ィコィー (0904ィ 08ィ 09 ProjectAdd To Project). 0キ ィ ィェィィィー ィ ィェィェ04ィヲ ィコィー ィ 02ィャ06ィャ ィコィ ィーィ (0904ィ 08ィ 09 FileSave All). 0キ ィコ0506 ツィィィーィケ ィコ ィコィーィョ ィ ィィィ 05ィィ06ィー02ィコィョ GLUT ィー ィェィ ィ 08ィ ィーィケ ProjectAdd To Project ィィ 0106ィ ィ 09ィィィーィケ 00ィ ィヲ05 glut32.lib

143 GLUT BORLAND C++ BUILDER キ ィコ06ィャ07ィィ050702ィィィィ 0904ィ 08ィ ィーィケ ProjectBuild..., ィェ02ィェィィ07 RunRun ィ ィ ィャィャィ 0006ィー0609ィ, 0802ィコ06ィャ02ィェ01ィョ02ィー ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ ィィィャ02 06Release ィーィィィャィィ04ィ 02ィィィィ 0706 ィ 0409ィー ィヲ09ィー09ィィ06 ィィ 06ィ ィイ02ィャィョ ィー ィェィ ィ 08ィ ィーィケ ProjectBuild Congurations ィィ ィィ09ィコ02 06Conguration name ィ 08ィ ィーィケ 06Release Build07.

144 13

145 130105ィ 09ィ ィケ040609ィ ィェィィ02 OpenGL 09 MFC ィィ VCL 02ィ ィ ィョ0102ィャ 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ 0708ィィィェ02ィィ ィー080602ィェィィ02 06ィコ06ィェィェ ィィ ィェィィ07 Windows ィコ06ィヲ OpenGL 0708ィィ 0706ィャ06ィエィィ ィャ0603ィェ0609ィー02ィヲ ィ ィィィ 05ィィ06ィー02ィコ MFC (Microsoft Foundation Classes) ィィ VCL (Visual Component Library) ィコ0605ィケィコィョ Windows ィー0907 ィャィェ ィコ06ィェィェ06ィヲ ィ 02ィィ06ィェィェ06ィヲ 09ィィ09ィー02ィャ06ィヲ, 0609ィェ0609ィェィ 07 04ィ 01ィ ツィ 0708ィィ ィェィィ07 ィェィ 05ィーィ 0702 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ090704ィ ィーィケ07 ィコ06ィャィ ィェ0104 OpenGL ィコ ィコ06ィェィコ0802ィーィェ06ィャィョ 06ィコィェィョ ィィ ィ ィーィケ ィー ィコィェィ ィャ0600ィ ィー0205ィケィェ0402 ィ ィョ (ィ ィョ ィコィ 0108ィ, ィ ィョ ィョィ ィィィェ04 ィィ ィー.07.). 05ィ ィャィ ィ ィィィ 05ィィ06ィー02ィコィ ィェ ィィィー ィー ィー060006, ィー06ィャィョ ィコィ 0301ィ ィ 02ィィ06ィェィェィ 07 09ィィ09ィー02ィャィ, ィィ09ィ 06ィエィ 07 OpenGL, ィーィ ィー ィィ. 09ィィィ 05ィィ06ィー02ィコィ GLUT ィーィ ィー ィョィェィィ00ィィ02ィィ080609ィ ィェィェ04ィヲ ィィィェィー ィヲ ィーィョ07ィ ィコ 05ィー06ィヲ 00ィョィェィコ02ィィ06ィェィ 05ィケィェ0609ィーィィ, 0601ィェィ ィコ ィ ィー06ィヲ 04ィ ィョィェィィ00ィィィコィ 02ィィ ィー ィーィ ィー06 ツィェ06 09ィコ0806ィャィェ ィャ0603ィェ0609ィーィィ ィー080602ィェィィ ィ 00ィィ ツ0209ィコ ィィィェィー ィヲ09ィ ィケ040609ィ ィー020507, 0802ィ 05ィィ040609ィ ィェィェ GLUT ィ ィェィィ ィィ ィェィィィヲ 09 08ィ 0409ィィィー04ィャ ィィィェィー ィヲ0906ィャ ィェ0206ィ ィィィャ ィィィャ02ィェ07ィーィケ ィー09ィ ィコ06ィェィコ0802ィーィェ06ィヲ ィ 02ィィ06ィェィェ06ィヲ 09ィィ09ィー02ィャ ィ ィ 06ィー04 09 OpenGL ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ 08ィ ィ 06ィー04 09 OpenGL 09 Windows ィェ0206ィ

146 ィ 09ィ ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL 01ィィィャ ィェィィィーィケ ィョ06ィエィィ02 03ィ 00ィィ: 1) ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ07 (0708ィィ ィ ィェィィィィ 06ィコィェィ ); ィ ) ィョ ツ02ィェィィ02 ィィ ィョ09ィーィ ィェ0609ィコィ ィコ06ィェィー02ィコ09ィーィ 0008ィ 00ィィ ツ0209ィコ ィョ09ィー0806ィヲ09ィー09ィ (09ィャ ); ィ ) ィョ09ィーィ ィェ0609ィコィ 07ィィィコ090205ィケィェ ィャィ ィーィ ( ); 09) ィョ ツ02ィェィィ02 ィィ ィョ09ィーィ ィェ0609ィコィ ィコ06ィェィー02ィコ09ィーィ 08ィィ090609ィ ィェィィ07 ( ); 2) 08ィィ090609ィ ィェィィ ィャ06ィエィケ06 OpenGL 09 06ィコィェ02; 3) ィ ィェィィ02 ィコ06ィェィー02ィコ09ィー0609 (0708ィィ ィョ01ィ 0502ィェィィィィ 06ィコィェィ ) ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ 0806ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ (device context) 09ィ 03ィェ04ィヲ ィャ02ィェィー 0008ィ 00ィィィコィィ Windows. 0806ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ ィョィコィ ィ 02ィー ィャ0209ィー06 06ィー06ィ 08ィ 0302ィェィィ ィ 00ィィ ツ0209ィコィィ01 ィコ06ィャィ ィェ ィェィー02ィコ09ィー06ィャ ィャ060302ィー ィ 04ィーィケ 06ィコィェ ィ ィャィャ04 ィェィ 05ィコ08ィ ィェ02, 0708ィィィェィー0208, ィィ05ィィ 0108ィョ ィョ09ィー0806ィヲ09ィー0906, ィィ09ィ 06ィエ ィ 00ィィ ツ0209ィコィィィヲ ィェィーィィ00ィィィコィ ィー0608 ィコ06ィェィー02ィコ09ィーィ ィョ09ィー0806ィヲ09ィー09ィ 05ィー06 ツィィ ィェィ ツ02ィェィィ02, 04ィェィ ィェィィ02 ィコ06ィー ィー ィェィ 0708ィ 09ィィィーィケ 0008ィ 00ィィ ツ0209ィコィィィヲ ィェィョ03ィェ04ィヲ ィコ06ィェィー02ィコ09ィー ィェィ ツィ 0506ィャ 08ィィ090609ィ ィェィィ07 ィェ0206ィ ィィィャ ィョ ツィィィーィケ 05ィー06 ツィィ ィェィ ツ02ィェィィ02, ィ ィィ090609ィ ィェィィ07 ィェィョ03ィェ06 ィコ06ィェィー02ィコ09ィー ィ 0601ィィィーィケ, ィー ィェィョィーィケ ィィ ィケ04ィョ02ィャ ィョ ィィ09ィー02ィャィョ ィ ィェィィ02 05ィー ィ 09ィィ05ィ ツ080209ィ ィー06 ィーィ ィコィィィャィィ ィー09ィィ07ィャィィ ィコィ ィコ ィョィー02 ツィコィィ 07ィ ィャ07ィーィィ ィィ ィコ08ィ ィエ02ィェィィ02 ィェ0608ィャィ 05ィケィェ06ィヲ 08ィ ィ 06ィー ィ ィャィャ ィコ0605ィケィコィョ ィェィ 0302ィヲ 04ィ 01ィ ツ02ィヲ ィー ィィ090609ィ ィェィィ ィコィェ02, ィコ06ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ hdc ィャ0603ィェ ィョ ツィィィーィケ 0706 ィィ0102ィェィーィィ00ィィィコィ ィー0608ィョ 06ィコィェィ hwnd: HWND hwnd = <ィコ ィョ ツ02ィェィィ02 ィィ0102ィェィーィィ00ィィィコィ ィー0608ィ 06ィコィェィ >; HDC hdc = GetDC(hWnd) ; ィ ィェィィ07 ィコ06ィェィー02ィコ09ィーィ ィィ ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ ReleaseDC: ReleaseDC (hwnd, hdc) ;

147 ィーィ ィェ0609ィコィ ィャィ ィーィ 07ィィィコ ィヲ ィーィ ィェ0609ィコィ ィャィ ィーィ 07ィィィコ ィヲ ィョ ツ02ィェィィ07 ィコ06ィェィー02ィコ09ィーィ ィョ09ィー0806ィヲ09ィー09 ィェィョ03ィェ06 ィョ09ィーィ ィェ0609ィィィーィケ ィャィ ィー 07ィィィコ ィヲ (pixel format) ィコ06ィェィー02ィコ09ィーィ. 06ィー06 ィェィョ03ィェ ィー060006, ツィー06ィ ィ ィエィィィーィケ ィ 02ィィ06ィェィェ06ィヲ 09ィィ09ィー02ィャ02, ィコィ ィコィィ ィョ ィェ0206ィ ィィィャ ィィィーィケ ィ ィェィェ ィコ06ィェィー02ィコ09ィーィ ィャィ ィー 07ィィィコ ィヲ ィョィコィ ィ 02ィー, ィコィ ィコィィ ィャ0603ィェ0609ィーィィ OpenGL ィャ04 ィ ィョ0102ィャ ィィ ィケ040609ィ ィーィケ: ィヲィェ06ィヲ ィ ィョ000208, ィ ィョ ィャィ 09ィコィィ, ィ ィョ ィョィ ィィィェ04, ィャィ ィー ィーィ ィィ ィー.01. チィー06ィ 04 ィョ09ィーィ ィェ0609ィィィーィケ ィャィ ィー 07ィィィコ , ィェィョ03ィェ06 04ィ ィェィィィーィケ 09ィー08ィョィコィーィョ08ィョ PIXELFORMATDESCRIPTOR ィィ ィ ィーィケ ィー02ィコィョィエィィィヲ ィコ06ィェィー02ィコ09ィー: PIXELFORMATDESCRIPTOR pfd ; // 06ィ ィェィョ050702ィャ ィー0605ィケィコ06 ツィー ィ ィェィェ06ィヲ 09ィー08ィョィコィーィョ0804 ; ZeroMemory(&pfd, sizeof ( pfd ) ) ; // 04ィ ィェ0702ィャ 09ィー08ィョィコィーィョ08ィョ pfd. nsize = sizeof ( pfd ) ; pfd. nversion = 1 ; // 0005ィ 00ィィ 0706ィコィ ィ 06ィー, ツィー06 ィャ04 ィ ィョ0102ィャ ィィ ィケ040609ィ ィーィケ // 01ィョィ 05ィィ08ィョ06ィエィョ06 ィ ィョ000208ィィ04ィ 02ィィ06 OpenGL 09 05ィー06ィャ 06ィコィェ02 Pfd. dwflags = PFD_DRAW_TO_WINDOW PFD_SUPPORT_OPENGL PFD_DOUBLEBUFFER; pfd. ipixeltype = PFD_TYPE_RGBA; // ィェ ィーィェ04ィヲ ィ ィョ ィーィ ( 8 ィ ィィィー ィェィ ィコィ ィェィ 05 ) pfd. ccolorbits = 2 4 ; // 04ィ 0708ィ 03ィィ09ィ 02ィャ 16 ィ ィィィー ィェィ 07ィィィコ090205ィケ ィ ィョ000208ィ 0005ィョィ ィィィェ04 pfd. cdepthbits = 1 6 ; pfd. ilayertype = PFD_MAIN_PLANE; int iformat = ChoosePixelFormat (hdc, &pfd ) ; SetPixelFormat (hdc, iformat, &pfd ) ; 04ィ 0909ィャ06ィー08ィィィャ ィ ィェ ィョィェィコ02ィィィィ, ィコ06ィー ィィ ィケ04ィョ06ィー ィョ09ィーィ ィェ0609ィコィィ ィャィ ィーィ 07ィィィコ : int ChoosePixelFormat ( HDC hdc, CONST PIXELFORMATDESCRIPTOR * ppfd ) ;

148 ィ 09ィ ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL 06ィーィ 00ィョィェィコ02ィィ ィー 0706 ィコ06ィェィー02ィコ09ィーィョ 0008ィ 00ィィ ツ0209ィコ ィョ09ィー0806ィヲ09ィー09ィ ィェィ ィヲィーィィ 07ィィィコ090205ィケィェ04ィヲ ィャィ ィー, ィャィ ィコ09ィィィャィ 05ィケィェ06 ィョ ィー ィエィィィヲ ィェィ 03ィィィャ ィー0802ィ 0609ィ ィェィィ07ィャ, ィィ ィ ィエィ 02ィー ィコ08ィィ07ィー ィ 0708ィィィャ0208, ィィ 04ィ ィェ 24-ィ ィィィーィェ04ィヲ ィ ィョ ィーィ, ィ ィコ06ィェィー02ィコ09ィー 0008ィ 00ィィ ツ0209ィコ ィョ09ィー0806ィヲ09ィー09ィ ィーィ ィー ィー0605ィケィコ06 8-ィ ィィィーィェ04ィヲ ィ ィョ000208, ィー06 00ィョィェィコ02ィィ ィ ィーィィィー ィャィ ィー 07ィィィコ ィ ィィィーィェ04ィャ ィ ィョ ィャ. 08ィョィェィコ02ィィ07 SetPixelFormat ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー ィャィ ィー 07ィィィコ ィコ06ィェィー02ィコ09ィー 0008ィ 00ィィ ツ0209ィコ ィョ09ィー0806ィヲ09ィー09ィ : BOOL SetPixelFormat ( HDC hdc, int ipixelformat, CONST PIXELFORMATDESCRIPTOR * ppfd ) ; ィコ0605ィケィコィョ ィャ04 ィィ ィケ04ィョ02ィャ ィコ06ィェィー02ィコ09ィー 0008ィ 00ィィ ツ0209ィコ ィョ09ィー0806ィヲ09ィー09ィ ィヲィェ04ィャ ィ ィョ ィャ, OpenGL-08ィィ090609ィ ィェィィ02 09 ィコ06ィェィー02ィコ09ィー ィィ ィィィー 09 ィェ0209ィィ01ィィィャ0602 ィェィ 05ィコ08ィ ィェ02 ィャ0209ィー ィ ィャ07ィーィィ. 06ィー06 ィェ0206ィ ィィィャ ィー0908ィ ィエ02ィェィィ07 ィャ020802ィ ィェィィ ィー060006, ツィー06ィ 04 ィィ0406ィ 08ィ 0302ィェィィ ィィ050609ィケ ィェィ 05ィコ08ィ ィェ02, ィェィョ03ィェ ィ ィーィケ ィョ06ィエィョ06 00ィョィェィコ02ィィ06: SwapBuffers ( hdc ) ; ィェィー02ィコ09ィー 08ィィ090609ィ ィェィィ07 (render context) 0806ィェィー02ィコ09ィー 08ィィ090609ィ ィェィィ ィー 09 ィコィ ィコ06ィヲ ィコ06ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ ィ ィョ01ィョィー ィェィ 0708ィ ィーィケ0907 ィコ06ィャィ ィェ0104 OpenGL. 01ィ 0708ィィィャ0208, ィィ ィ ィャィャ ィーィケ ィェ0209ィコ0605ィケィコ06 06ィコ06ィェ OpenGL, ィー ィャ ィコ06ィャィ ィェ01 OpenGL ィェ0206ィ ィィィャ06 ィョィコィ 04ィ ィーィケ 06ィコィェ06, 09 ィコ06ィー ィ ィョ01ィョィー ィェィ 0708ィ ィェ04 05ィーィィ ィコ06ィャィ ィェ ィコ06ィェィー02ィコ09ィー06ィャ 08ィィ090609ィ ィェィィ07 ィ ィィィィ080609ィ ィェ06 ィー02ィコィョィエ ィー0607ィェィィ02 OpenGL, ィー02ィコ09ィーィョ0804, 01ィィ ィヲィェ ィィ09ィコィィ ィィ ィー ィ ィェィィ02 ィコ06ィェィー02ィコ09ィーィ 08ィィ090609ィ ィェィィ07 hrc: HGLRC hrc; hrc = wglcreatecontext (hdc) ; ィィ ィケ040609ィ ィェィィ02ィャ ィコ06ィェィー02ィコ09ィーィ ィェ0206ィ ィィィャ ィ ィーィケ ィー02ィコィョィエィィィャ:

149 ィ 0909 GLRC 149 wglmakecurrent (hdc, hrc) ; 02ィ ィャ0603ィェ ィ 0601ィェ06 ィィ ィケ040609ィ ィーィケ ィコ06ィャィ ィェ0104 OpenGL, ィェ02 04ィ ィ 0409ィ ィ ィーィケ SwapBuers ィコ06ィェ ツィ ィェィィ07 08ィィ090609ィ ィェィィ07 ィコィ 0108ィ ィィ ィケ040609ィ ィェィィ07 ィコ06ィェィー02ィコ09ィーィ 08ィィ090609ィ ィェィィ ィェィョ03ィェ ィ 0601ィィィーィケ (06ィ 04 ツィェ ィ ィェィィ02ィャ ィー0902ィー09ィー09ィョ06ィエ ィコ06ィェィー02ィコ09ィーィ ィョ09ィー0806ィヲ09ィー09ィ ): wgldeletecontext (hrc) ; ィ 0909 GLRC ィィ ィェ 0708ィィィャ0208 ィコ05ィ 0909ィ GLRC, 0802ィ 05ィィ04ィョ06ィエィィィヲ ツィィ090502ィェィェ ィ 02ィィィィ. 00ィィィコ05 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ 08ィィ090609ィ ィェィィ07 09 ィィ ィケ040609ィ ィェィィ02ィャ 05ィー ィコ05ィ 0909ィ ィィィー ィョ06ィエィィィャ 06ィ 08ィ 0406ィャ: GLRC* m_pglrc;... // 1. ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ07 06ィコィェィ m_pglrc = new GLRC(hWnd) ; bool r e s = m_pglrc6モ1>create ( ) ; i f (! r e s ) Error ( " ィャ0603ィェ ィ ィーィケ ィコ06ィェィー02ィコ09ィー OpenGL" ) ;.. // 2. 08ィィ090609ィ ィェィィ02 // ( 06ィ 04 ツィェ ィ 08ィ ィ 06ィー ツィィィコィ ィ 04ィーィィ07 WM_PAINT) bool r e s = m_pglrc6モ1>makecurrent ( ) ; i f (! r e s ) Error ( " ィャ0603ィェ ィ ィーィケ ィコ06ィェィー02ィコ09ィー ィー02ィコィョィエィィィャ" ) ; // ィコ06ィャィ ィェ0104 OpenGL g l C l e a r (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT)... // 04ィ ィェィィ02 ィコィ 0108ィ m_pglrc6モ1>swapbuffers ( ) ;

150 ィ 09ィ ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL // 3. ィョィェィィ ツィー060302ィェィィ02 06ィコィェィ // ( 06ィ 04 ツィェ ィ 08ィ ィ 06ィー ツィィィコィ ィ 04ィーィィ07 WM_DESTROY) m_pglrc6モ1>destroy ( ) ; delete m_pglrc; ィケ040609ィ ィェィィ02 OpenGL c MFC ィィ 0708ィィ ィ ィェィィィィ Windows-0708ィィ ィェィィ07 ィィ ィケ04ィョ02ィー0907 ィ ィィィ 05ィィ06ィー02ィコィ MFC, ィー06 ィェ0206ィ ィィィャ ィー0806ィィィーィケ ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ06, ィ ィェィィ02 ィコ06ィェィー02ィコ09ィー0609 ィィ 08ィィ090609ィ ィェィィ02 OpenGL 09 08ィ 0405ィィ ツィェ ィ 08ィ ィ 06ィー ツィィィコィィ ィョィェィ ィ ィェィェ0401 ィコ05ィ MFC. 02ィ ィェィェィ 07 ィコィェィィ00ィ ィェ ィー ィョィコ ィー0906ィャ ィ ィャィャィィ080609ィ ィェィィ06 09 ィィ ィケ040609ィ ィェィィ02ィャ MFC, ィー06ィャィョ ィ ィェィィ ツィィィャ ィーィ ィャィィ 0706 ィィ ィケ040609ィ ィェィィ06 OpenGL 09 05ィー06ィヲ ィ ィィィ 05ィィ06ィー02ィコ06ィヲ: 0キ ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ 08ィィ090609ィ ィェィィ07 ィー ィケ ィェ ィェィ ィィィーィケ ィャ02ィー0601ィ 01 (ィィ05ィィ ィ ィーィケ0907 ィィ04 05ィーィィ01 ィャ02ィー ) ィコ05ィ 0909ィ, ィョィェィ ィ ィェィェ ィー ィコ05ィ 0909ィ CWnd ィェィ ィャィョ06 ィィ05ィィ ィコ ィェィェ06. 0キ ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ OpenGL 05ィョ ツ ィィ ィケ040609ィ ィーィケ ィャ02ィー0601 OnCreate, ィィ090609ィ ィェィィ07 OnPaint, OnUpdate, OnDraw ィィ05ィィ OnTimer (05ィー06 04ィ 09ィィ09ィィィー 06ィー 08ィ 04ィェ ィ ィコィー , ィェィ 0708ィィィャ0208, 06ィー ィコィ ィコ ィィィャ02ィェィェ06 ィコ05ィ 0909ィ ィョィェィ ィ ィェ ィコ05ィ 0909 OpenGL-06ィコィェィ ィィ ツィー06 ィィィャ02ィェィェ06 ィィ0406ィ 08ィ 03ィ 02ィー0907). 0キ ィー0908ィ ィエ02ィェィィ07 ィャ020802ィ ィェィィ07 ィェ0206ィ ィィィャ ィョ04ィィィーィケ 06ィ 08ィ ィ 06ィー ツィィィコ ィ ィエ02ィェィィ07 WM_ERASEBKGND, ィィィェィ ツ02 Windows ィ ィョ0102ィー 04ィ 05ィィ09ィ ィーィケ 0006ィェ 06ィコィェィ ィャ 06ィ 08ィ ィ 06ィー ツィィィコィ OnPaint. 0キ ィ ィェィィ ィヲ0102ィー 06ィ 08ィ ィ 06ィー ツィィィコ OnDestroy, ィ ィ 08ィ ィ 06ィーィコィィ ィィ04ィャ02ィェ02ィェィィィヲ 08ィ 04ィャ0208ィ 06ィコィェィ OnSize. 0キ ィョ ツィィィーィケ ィィ0102ィェィーィィ00ィィィコィ ィー ィコィェィ ィャ0603ィェ ィャ06ィエィケ06 ィャ02ィー0601ィ CWnd::GetSafeHwnd.

151 ィケ040609ィ ィェィィ02 OPENGL C MFC ィィィャ0208 ィコ05ィ 0909ィ 06ィコィェィ, 08ィィ090609ィ ィェィィ02 09 ィコ06ィー ィョィエ0209ィー ィー ィィ 0706ィャ06ィエィィ OpenGL. c l a s s OpenGLWindow : public CWnd { public : OpenGLWindow ( ) ; // 06ィーィコ0804ィー0402 ツ0502ィェ04 ィコ05ィ 0909ィ... private : // 04ィ ィコ0804ィー0402 ツ0502ィェ04 ィコ05ィ 0909ィ... // 09ィィ00ィェィ ィーィョ ィーィィ01 ィャ02ィー ィェ04 04ィ 08ィ ィェ0202 MFC // ィィ ィェ ィーィケ ィィィャ02ィェィェ06 ィーィ ィコ afx_msg int OnCreate (LPCREATESTRUCT l p C r e a t e S t r u c t ) ; afx_msg BOOL OnEraseBkgnd (CDC* pdc) ; afx_msg void OnPaint ( ) ; afx_msg void OnDestroy ( ) ; // 06ィ ィイ ィェィィ02 ィコィ 08ィー ィ ィエ02ィェィィィヲ Windows DECLARE_MESSAGE_MAP( ) // ィコ05ィ ィ ィェ02ィェィィ07 ィコ06ィェィー02ィコ09ィー0609 OpenGL GLRC* m_pglrc; } ; 0402ィ 05ィィ04ィ 02ィィ07 ィャ02ィー : // ィコ06ィェ09ィー08ィョィコィー0608 OpenGLWindow : : OpenGLWindow( ) : m_pglrc(null) { } // 04ィ ィェ02ィェィィ02 ィコィ 08ィー ィ ィエ02ィェィィィヲ BEGIN_MESSAGE_MAP( OpenGLWindow, CWnd) // 09ィーィ ィェ01ィ 08ィーィェ0402 ィャィ ィコ MFC ON_WM_CREATE( ) ON_WM_PAINT( )

152 ィ 09ィ ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL ON_WM_DESTROY( ) ON_WM_ERASEBKGND( ) END_MESSAGE_MAP( ) // 09 05ィー06ィャ ィャ02ィー ィ 05ィィ04ィョ02ィャ ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ06 afx_msg int OpenGLWindow : : OnCreate ( LPCREATESTRUCT l p C r e a t e S t r u c t ) { m_pglrc = new GLRC( GetSafeHwnd ( ) ) ; bool r e s = m_pglrc6モ1>create ( ) ; i f (! r e s ) return FALSE; } return CWnd: : OnCreate ( l p C r e a t e S t r u c t ) ; // 04ィ ィエィ 02ィャ 04ィ 05ィィ09ィコィョ 0006ィェィ afx_msg BOOL OpenGLWindow : : OnEraseBkgnd (CDC* pdc) { return FALSE; } // ィケ 08ィィ09ィョ02ィャ afx_msg void OpenGLWindow : : OnPaint ( ) { CWnd: : OnPaint ( ) ; // ィ 02ィャ ィー02ィコィョィエィィィャ m_glrc6モ1>makecurrent ( ) ; g l C l e a r (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT) ; // 08ィィ09ィョ02ィャ ィー06, ツィー ィーィィィャ ィェィ 08ィィ090609ィ ィーィケ <ィャ02ィー ィィ090609ィ ィェィィ07 OpenGL>

153 ィケ040609ィ ィェィィ02 OPENGL C VCL 153 } m_glrc6モ1>swapbuffers ( ) ; // ィケ ィィ ィィィー ィ ィェィィ ィョ afx_msg void OpenGLWindow : : OnDestroy ( ) { m_glrc6モ1>destroy ( ) ; delete m_glrc; } CWnd: : OnDestroy ( ) ; ィケ040609ィ ィェィィ02 OpenGL c VCL ィケ040609ィ ィェィィ02 OpenGL 09 VCL 0108ィョ0006ィヲ ィョ050708ィェ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ06ィヲ ィ 0408ィ ィ 06ィーィコィィ Windows-0708ィィ ィェィィィヲ, 06ィー05ィィ ツィ 02ィー ィー ィョィエ ィィィャ0208ィ ィー0605ィケィコ ィーィ 0507ィャ ィィ ィェィ 0409ィ ィェィィ07ィャィィ ィコ05ィ ィー 0708ィィィャ0208 ィャィィィェィィィャィ 05ィケィェ ィコ0601ィ ィェィ 05++, ィコ06ィー060804ィヲ 0106ィ ィ 09ィィィー OpenGL ィコ ィャ02 (06ィコィェィョ) VCL: c l a s s OpenGLForm : public TForm { public : fastcall OpenGLForm(TComponent * owner ) ; // 06ィーィコ0804ィー0402 ツ0502ィェ04 ィコ05ィ 0909ィ... private : // 04ィ ィコ0804ィー0402 ツ0502ィェ04 ィコ05ィ 0909ィ GLRC* m_pglrc;... // ィコ06ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ 06ィコィェィ published : // 09ィィ00ィェィ ィーィョ ィーィィ01 ィャ02ィー ィェ04 04ィ 08ィ ィェ0202 void fastcall FormCreate ( TObject * sender ) ; void fastcall FormDestroy ( TObject * sender ) ;

154 ィ 09ィ ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL void fastcall FormPaint ( TObject * sender ) ; } ; // ィコ06ィェ09ィー08ィョィコィー0608 fastcall OpenGLForm : : OpenGLForm( TComponent* owner ) : TForm( owner ), m_pglrc(null) { } // 09 05ィー06ィャ ィャ02ィー ィ 05ィィ04ィョ02ィャ ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ06 void fastcall OpenGLForm : : FormCreate ( TObject * sender ) { m_pglrc = new GLRC( Handle ) ; bool r e s = m_pglrc6モ1>create ( ) ; a s s e r t ( r e s ) ; } // ィケ 08ィィ09ィョ02ィャ void fastcall OpenGLForm : : FormPaint ( TObject * sender ) { // ィ 02ィャ ィー02ィコィョィエィィィャ m_glrc6モ1>makecurrent ( ) ; g l C l e a r (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT) ; // 08ィィ09ィョ02ィャ ィー06, ツィー ィーィィィャ ィェィ 08ィィ090609ィ ィーィケ <ィャ02ィー ィィ090609ィ ィェィィ07 OpenGL> } m_glrc6モ1>swapbuffers ( ) ; // ィケ ィィ ィィィー 0102ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ07

155 ィケ040609ィ ィェィィ02 OPENGL C VCL 155 void fastcall OpenGLForm : : FormDestroy ( ) { m_glrc6モ1>destroy ( ) ; delete m_glrc; }

156 13

157 130105ィ 09ィ 12. OpenGL 09.NET 00 05ィー06ィャ 08ィ ィ 0909ィャィ ィー08ィィ09ィ 02ィー ィー080602ィェィィ02 06ィコ06ィェィェ ィィ ィェィィ ィコ06ィヲ OpenGL ィェィ 0705ィ ィー000608ィャ02 Microsoft.NET ィャ06ィー0807 ィェィ ィー06, ツィー06 OpenGL ィェ02 ィィィャ0202ィー 0909ィー080602ィェィェ06ィヲ ィコィィ 09.NET, 09 ィェィ 09ィー0607ィエ ィャ07 09ィョィエ0209ィー09ィョ02ィー ィーィ ィー06 ツィェ06 ィャィェ ィェィィィヲ, ィエィィ ィコ0506 ツィ ィーィケ OpenGL ィコ.NET ィ ィャィャィ ィャ ィ 0909ィャ06ィー08ィィィャ 08ィ ィ 06ィーィョ ィェ06ィヲ ィィ04 ィェィィ ィ 0601ィェ06-08ィ ィー08ィ ィェ0702ィャ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ06ィヲ Tao Framework. Tao Fram02work ( 0802ィ 05ィィ04ィョ02ィー ィャ0203ィョィー06 ツィェ04ィヲ ィョ ィェィケ ィャ020301ィョ.NET 0708ィィ ィェィィ02ィャ ィィ 08ィ 0405ィィ ツィェ04ィャィィ Win32-ィ ィィィ 05ィィ06ィー02ィコィ ィャィィ, 09 ツィ 09ィーィェ0609ィーィィ GL, GLU, GLUT, WGL GLUT Microsoft Visual C# ィー02ィヲ03ィィィャ ィ 06ィャ ィ ィェィィ07 OpenGL-0708ィィ ィェィィ NET ィャ0603ィェ06 09 ツィィィーィ ィーィケ ィィ ィケ040609ィ ィェィィ02 ィ ィィィ 05ィィ06ィー02ィコィィ GLUT, ィーィョ07ィェ06ィヲ ツ NET-ィコ06ィャ0706ィェ02ィェィーィョ Tao.FreeGlut. 02ィ ィィ ィー ィ 00ィィ, ィェ0206ィ ィィィャ ィ ィェィィ07 ィコ06ィェ090605ィケィェ NET-0708ィィ ィェィィ Microsoft Visual C# 2005 ィェィ C# 09 GLUT ィィ OpenGL: 157

158 ィ 09ィ 12. OPENGL 09.NET 0キ3 07ィ 0201ィィィーィケ0907, ツィー06 ィェィ ィャィ 03ィィィェ02 ィョ09ィーィ ィェ ィェ GLUT (glut32.dll ィィィー 09 Windows System32). 0キ ィ ィェィィ ィコィーィ ィコ06ィェ090605ィケィェ ィィ ィェィィ07: FileNew ProjectsVisual C#WindowsConsole Application, ィェィ ィ 08ィ ィーィケ ィィィャ ィコィーィ, OK. 0キ3 0206ィ ィ ィェィィ02 Tao ィコ ィコィーィョ: ProjectAdd Reference.NET, ィェィ ィヲィーィィ ィィ09ィコ02 06Tao Framework OpenGL Binding For.NET07 ィィ 06Tao Framework FreeGLUT Binding For.NET07, ィィィーィケ 06ィ ィ, ィィ ィコ06ィャ0706ィェ02ィェィー ィェ02ィー ィィ09ィコ02, ィェ0206ィ ィィィャ06 ィェィ ィヲィーィィ ィィ01 09 ィィィェ09ィーィ ィィ06ィェィェ06ィャ ィコィ ィーィ ィ ィィィ 05ィィ06ィー02ィコィィ Tao Framework ィィ 0106ィ ィ 09ィィィーィケ ツ ィコ05ィ 01ィコィョ Browse ィ ィャィャィィ080609ィ ィェィィ02 09 ィィ ィケ040609ィ ィェィィ02 GLUT ィィ OpenGL 09.NET ィェィ C# 0708ィ ィコィーィィ ツ0209ィコィィ ィェ02 06ィー05ィィ ツィ 02ィー ィー 09ィ 08ィィィ ィェィーィ Win32 ィィ C++. 01ィィ ィィ ィェ 0708ィィィャ ィー06ィヲ ィ ィャィャ04, ィ ィェィ ィィ ツィェ06ィヲ 0708ィィィャ0208ィョ ィィ : ィ ィャィャィ ィー06ィヲ 0708ィィィャ0208 OpenGL 09 C#. using Tao. FreeGlut ; using Tao. OpenGl ; namespace gl_ glut_ net { class Program { private static int Width = 512; private static int Height = 512; public const int CubeSize = 2 0 0; static void Display ( ) { int l e f t, right, top, bottom ;

159 GLUT MICROSOFT VISUAL C# l e f t = ( Width 6モ1 CubeSize ) / 2 ; r i g h t = l e f t + CubeSize ; bottom = ( Height 6モ1 CubeSize ) / 2 ; top = bottom + CubeSize ; Gl. g l C l e a r C o l o r ( 0. 7 f, 0. 7 f, 0. 7 f, 1 ) ; Gl. g l C l e a r ( Gl.GL_COLOR_BUFFER_BIT) ; Gl. glcolor3ub (255, 0, 0 ) ; Gl. glbegin ( Gl.GL_QUADS) ; Gl. g l V e r t e x 2 f ( l e f t, bottom ) ; Gl. g l V e r t e x 2 f ( l e f t, top ) ; Gl. g l V e r t e x 2 f ( right, top ) ; Gl. g l V e r t e x 2 f ( right, bottom ) ; Gl. glend ( ) ; } Gl. g l F i n i s h ( ) ; static void Reshape ( int w, int h) { Width = w; Height = h ; Gl. glviewport (0, 0, w, h ) ; Gl. glmatrixmode ( Gl.GL_PROJECTION) ; Gl. g l L o a d I d e n t i t y ( ) ; Gl. glortho (0, w, 0, h, 6モ11.0, 1. 0 ) ; } Gl. glmatrixmode ( Gl.GL_MODELVIEW) ; Gl. g l L o a d I d e n t i t y ( ) ; static void Keyboard ( byte key, int x, int y )

160 ィ 09ィ 12. OPENGL 09.NET { } const int ESCAPE = 2 7 ; i f ( key == ESCAPE) Glut. glutleavemainloop ( ) ; static void Main ( s t r i n g [ ] args ) { Glut. g l u t I n i t ( ) ; Glut. glutinitdisplaymode ( Glut.GLUT_RGB) ; Glut. glutinitwindowsize ( Width, Height ) ; Glut. glutcreatewindow ( "Red square example" ) ; Glut. glutdisplayfunc ( Display ) ; Glut. glutreshapefunc ( Reshape ) ; Glut. glutkeyboardfunc ( Keyboard ) ; } } } Glut. glutmainloop ( ) ; 02ィ 08ィ ィーィィィー02 09ィェィィィャィ ィェィィ02, ツィー ィコ06ィャィ ィェ0104 ィィ ィコ06ィェ09ィーィ ィェィー04 GL, GLU ィィ GLUT ィェィ ィー ィー08ィ ィェ09ィー09ィ 01 ィィィャ02ィェ Gl, Glu ィィ Glut, ィー0902ィー09ィー0902ィェィェ ィケ040609ィ ィェィィ02 OpenGL 09 WindowsForms OpenGL 09 WindowsForms ィー0802ィ ィョ02ィー ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ, ィ ィェィ ィィ ツィェ06ィヲ 08ィ 0909ィャ06ィー0802ィェィェ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ MFC ィィ VCL (09ィャ ). 00 Tao Framework ィョ ィ 05ィィ040609ィ ィェ ィー06ィヲ ィコ05ィ ィコィェィ OpenGL Tao.Platform.Windows.SimpleOpenGlControl. 04ィ 0909ィャ06ィー08ィィィャ ィ ィー0205ィケィェ0609ィーィケ 0102ィヲ09ィー09ィィィヲ, ィェ0206ィ ィィィャィョ

161 ィケ040609ィ ィェィィ02 OPENGL 09 WINDOWSFORMS ィ ィェィィ ィー ィコ06ィェィェ ィィ ィェィィ07 09 WindowsForms ィィ ィコ06ィヲ OpenGL: 0キ ィ ィェィィ ィコィーィ 0708ィィ ィェィィ07: FileNewProjectsVisual C#WindowsWindows Application, ィェィ ィ 08ィ ィーィケ ィィィャ ィコィーィ, OK. 0キ3 0206ィ ィ ィェィィ02 Tao ィコ ィコィーィョ: ProjectAdd Reference.NET, ィェィ ィヲィーィィ ィィ09ィコ02 06Tao Framework OpenGL Binding For.NET07 ィィ 06Tao Framework Windows Platform API Binding For.NET07, ィィィーィケ 06ィ ィ, ィィ ィコ06ィャ0706ィェ02ィェィー ィェ02ィー ィィ09ィコ02, ィェ0206ィ ィィィャ06 ィェィ ィヲィーィィ ィィ01 09 ィィィェ09ィーィ ィィ06ィェィェ06ィャ ィコィ ィーィ ィ ィィィ 05ィィ06ィー02ィコィィ Tao Framework ィィ 0106ィ ィ 09ィィィーィケ ツ ィコ05ィ 01ィコィョ Browse. 0キ3 チィー06ィ 04 ィョ0106ィ ィェ ィ ィーィケ 06ィコィェ06 OpenGL, ィェ0206ィ ィィィャ ィ ィ 09ィィィーィケ ィー0902ィー09ィー09ィョ06ィエィィィヲ 06ィ ィイ02ィコィー ィェィ 07ィ ィェ0205ィケ ィィィェ09ィー08ィョィャ02ィェィー ィー ィェィョ03ィェ06 09 ィコ06ィェィー02ィコ09ィーィェ06ィャ ィャ02ィェ06 07ィ ィェ0205ィィ 06Toolbox ィ 08ィ ィーィケ 07ィョィェィコィー 06Choose Items...07, ィィ090302ィャ ィィ09ィコ02 ィェィ ィヲィーィィ 06SimpleOpenGLControl07, ィーィ 09ィィィーィケ 00ィ 0506 ツィコィョ 06ィコ ィェ020006, キ3 0206ィ ィ ィェィィ02 06ィコィェィ OpenGL ィェィ ィャィョ: ィェィ 07ィ ィェ0205ィィ 06Toolbox07 ィェィ ィヲ01ィィィー02 06SimpleOpenGLControl07 ィィ ィーィ ィエィィィー02 ィェィ ィャィョ 0708ィィ ィェィィ07. 02ィコィェ ィェ06 04ィ ィェ07ィーィケ0907 ツ0208ィェ04ィャ ィー06ィャ. 0キ3 06ィェィィ02ィィィ 05ィィ04ィ 02ィィ07 OpenGL: 09 ィコ06ィェ09ィー08ィョィコィー ィャ ィ InitializeComponent() 0106ィ ィ 09ィィィーィケ ィョィェィコ02ィィィィ ィ ィェィィ07 ィコ06ィェィー02ィコ09ィーィ simpleopenglcontrol1.initializecontexts(). 08ィョィェィコ02ィィィィ 08ィィ090609ィ ィェィィ07 OpenGL ィャ0603ィェ ィ ィ ィーィケ 09 06ィ 08ィ ィ 06ィー ツィィィコ 0906ィ 04ィーィィ07 Paint 06ィコィェィ OpenGL (ィェ02 07ィョィーィ ィーィケ 09 Paint ィャ04).

162 13

163 13 チィ 09ィーィケ IV 0308ィィ ィェィィ07 163

164 13

165 130308ィィ ィェィィ ィィィャィィィーィィ0904 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT 04ィ 0909ィャ06ィー08ィィィャ 09ィーィ ィェ01ィ 08ィーィェ0402 ィコ06ィャィ ィェ ィー080602ィェィィ ィィィャィィィーィィ090609, ィコ06ィー ィ 05ィィ040609ィ ィェ04 09 ィ ィィィ 05ィィ06ィー02ィコィ 01 GLU ィィ GLUT. チィー06ィ ィー0806ィィィーィケ 0708ィィィャィィィーィィ09 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ GLU, ィェィ ィェィ - ツィ 05ィ ィ ィーィケ ィョィコィ 04ィ ィー0205ィケ ィェィ quadric-06ィ ィイ02ィコィー ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 glunewquadric(), ィ 04ィ ィー02ィャ ィ ィーィケ 0601ィェィョ ィィ04 ィコ06ィャィ ィェ01 glusphere(), glucylinder(), gludisk(), glupartialdisk(). 04ィ 0909ィャ06ィー08ィィィャ 05ィーィィ ィコ06ィャィ ィェ ィー010205ィケィェ06: void glusphere ( GLUquadricObj * qobj, GLdouble radius, GLint s l i c e s, GLint s t a c k s ) 06ィーィ 00ィョィェィコ02ィィ07 09ィー0806ィィィー ィョ ィェィー0806ィャ 09 ィェィ ツィ 0502 ィコ ィィィェィ ィー ィィ 08ィ 01ィィィョ0906ィャ radius. 0308ィィ 05ィー06ィャ ツィィ ィ 04ィ ィィ02ィェィィィヲ ィコ08ィョ ィィ z 04ィ 01ィ 02ィー ィ 08ィ ィャ02ィー0806ィャ slices, ィ ィケ 0609ィィ z 07ィ 08ィ ィャ02ィー0806ィャ stacks. void glucylinder ( GLUquadricObj * qobj, GLdouble baseradius, GLdouble topradius, GLdouble height, GLint s l i c e s, GLint s t a c k s ) 165

166 ィィ ィェィィ ィィィャィィィーィィ0904 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT 02ィ ィェィェィ 07 00ィョィェィコ02ィィ07 09ィー0806ィィィー 02ィィ05ィィィェ0108 ィ ィェ0609ィ ィェィィィヲ (ィコ0605ィケ0206), ィケィェィ ィケ 07ィ 08ィ ィケィェィ 0609ィィ z, 04ィ 01ィェ ィェ0609ィ ィェィィ02 ィィィャ0202ィー 08ィ 01ィィィョ09 baseradius, ィィ 08ィ ィェ ィコ0609ィーィィ z = 0, ィェ ィェ0609ィ ィェィィ02 ィィィャ0202ィー 08ィ 01ィィィョ09 topradius ィィ 08ィ ィェ ィコ0609ィーィィ z = height ィィ 04ィ 01ィ ィーィケ 0601ィィィェ ィィ04 08ィ 01ィィィョ ィ 09ィェ04ィャ ィェィョ0506, ィー06 ィ ィョ0102ィー ィー080602ィェ ィコ06ィェィョ09. 03ィ 08ィ ィャ02ィー0804 slices ィィ stacks ィィィャ0206ィー ィ ィェィ ィィ ツィェ04ィヲ 09ィャ040905, ツィー06 ィィ ィョィエ02ィヲ ィコ06ィャィ ィェ0102. void gludisk ( GLUquadricObj * qobj, GLdouble innerradius, GLdouble outerradius, GLint s l i c e s, GLint l oops ) 08ィョィェィコ02ィィ07 09ィー0806ィィィー ィコィィィヲ 01ィィ09ィコ (ィコ08ィョ00) ィェィー0806ィャ 09 ィェィ ツィ 0502 ィコ ィィィェィ ィー ィィ 08ィ 01ィィィョ0906ィャ outerradius ィィ 04ィェィ ツ02ィェィィ02 innerradius 06ィー05ィィ ツィェ06 06ィー ィェィョ0507, ィー ィェィー ィィ09ィコィ ィ ィョ0102ィー ィェィ ィィィーィケ ィー ィーィィ02 08ィ 01ィィィョ0906ィャ innerradius. 03ィ 08ィ ィャ02ィー08 slices 04ィ 01ィ 02ィー ツィィ ィ 04ィ ィィ02ィェィィィヲ 01ィィ09ィコィ 0906ィコ08ィョ ィィ z, ィ 07ィ 08ィ ィャ02ィー08 loops ツィィ ィコ06ィェ0202ィェィー08ィィ ツ0209ィコィィ01 ィコ , ィェ01ィィィコィョ050708ィェ ィィ z. void g l u P a r t i a l D i s k ( GLUquadricObj * qobj, GLdouble innerradius, GLdouble outerradius, GLint s l i c e s, GLint loops, GLdouble startangle, GLdouble sweepangle ) ; 02ィー05ィィ ツィィ02 05ィー06ィヲ ィコ06ィャィ ィェ ィー ィョィエ02ィヲ 04ィ ィコ0506 ツィ 02ィー ィー06ィャ, ツィー06 06ィェィ 09ィー0806ィィィー 0902ィコィー0608 ィコ08ィョ00ィ, ィェィ ツィ 05ィケィェ04ィヲ ィィ ィコ06ィェ02 ツィェ04ィヲ ィョ ィコ06ィー ィー09 ツィィィー0409ィ 06ィー ィーィィ09 ツィ ィヲ 09ィー080205ィコィィ 06ィー ィィィー0205ィケィェ ィェィ 0708ィ ィェィィ ィィ y ィィ 04ィ 01ィ 06ィー ィ 08ィ ィャ02ィー08ィ ィャィィ startangle ィィ sweepangle ィィ04ィャ ィー ィ 01ィョ09ィ ィャィ ィェ0104, ィエィィ ィー080602ィェィィ ィィィャィィィーィィ ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ GLUT, 0802ィ 05ィィ040609ィ ィェ04 ツ ィーィ ィェ01ィ 08ィーィェ ィィィャィィィーィィ0904 OpenGL

167 13167 ィィ GLU ィー080602ィェィィ07 ィェィョ03ィェ ィィィャィィィーィィ09ィ ィーィ ィー06 ツィェ ィィ ィーィィ ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィコ06ィャィ ィェ0104. void g l u t S o l i d S p h e r e ( GLdouble radius, GLint s l i c e s, GLint s t a c k s ) void glutwiresphere ( GLdouble radius, GLint s l i c e s, GLint s t a c k s ) 0806ィャィ ィェ01ィ glutsolidsphere() 09ィー0806ィィィー ィョ, ィ glutwiresphere() ィコィ 08ィコィ ィ 01ィィィョ0906ィャ radius. 0209ィーィ 05ィケィェ ィ 08ィ ィャ02ィー0804 ィー , ツィー06 ィィ ィョィエィィ01 ィコ06ィャィ ィェ01ィ 01. void glutsolidcube ( GLdouble s i z e ) void glutwirecube ( GLdouble s i z e ) 0806ィャィ ィェ ィー080607ィー ィコィョィ ィィ05ィィ ィコィ 08ィコィ 09 ィコィョィ ィ ィェィー0806ィャ 09 ィェィ ツィ 0502 ィコ ィィィェィ ィー ィィ 0105ィィィェ06ィヲ 0802ィ 08ィ size. void glutsolidcone ( GLdouble base, GLdouble height, GLint s l i c e s, GLint s t a c k s ) void glutwirecone ( GLdouble base, GLdouble h e i g h t, GLint s l i c e s, GLint s t a c k s ) 06ィーィィ ィコ06ィャィ ィェ ィー080607ィー ィコ06ィェィョ09 ィィ05ィィ ィコィ 08ィコィ ィー06ィヲ height ィィ 08ィ 01ィィィョ0906ィャ 0609ィェ0609ィ ィェィィ07 base, 08ィ ィェィェ04ィヲ ィケ 0609ィィ z. 0209ィェ0609ィ ィェィィ02 ィェィ ィィィー ィコ0609ィーィィ z = 0. void g l u t S o l i d T o r u s ( GLdouble innerradius, GLdouble outerradius, GLint nsides, GLint r i n g s ) void glutwiretorus ( GLdouble innerradius, GLdouble outerradius, GLint nsides, GLint r i n g s ) 06ィーィィ ィコ06ィャィ ィェ ィー080607ィー ィー0608 ィィ05ィィ ィコィ 08ィコィ ィコ0609ィーィィ z = 0. 00ィェィョィー0802ィェィェィィィヲ ィィ 09ィェ0203ィェィィィヲ 08ィ 01ィィィョ0904 ィコ06ィェィー080605ィィ08ィョ06ィー ィ 08ィ ィャ02ィー08ィ ィャィィ

168 ィィ ィェィィ ィィィャィィィーィィ0904 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT innerradius ィィ outerradius. 03ィ 08ィ ィャ02ィー08 nsides 04ィ 01ィ 02ィー ツィィ ィー060806ィェ 09 ィコ0605ィケ02ィ 01, ィーィ ィエィィ ィー060006ィェィ 05ィケィェ ツ02ィェィィ02 ィー0608ィ, ィ rings ツィィ ィ 01ィィィ 05ィケィェ ィ 04ィ ィィ02ィェィィィヲ ィー0608ィ. void glutsolidtetrahedron ( void ) void glutwiretetrahedron ( void ) 06ィーィィ ィコ06ィャィ ィェ ィー080607ィー ィー02ィー08ィ (0708ィ 09ィィ05ィケィェィョ06 ィー0802ィョ000605ィケィェィョ06 07ィィ08ィ ィャィィ01ィョ) ィィ05ィィ ィコィ 08ィコィ 09, 0708ィィ 05ィー06ィャ 08ィ 01ィィィョ ィィ09ィ ィェィェ06ィヲ ィコ08ィョ00 ィェ ィ 0902ィェ 1. void glutsolidoctahedron ( void ) void glutwireoctahedron ( void ) 06ィーィィ ィコ06ィャィ ィェ ィー080607ィー 06ィコィーィ ィィ05ィィ ィコィ 08ィコィ 09, 08ィ 01ィィィョ ィィ09ィ ィェィェ06ィヲ 0906ィコ08ィョ00 ィェ ィ 0902ィェ 1. void glutsoliddodecahedron ( void ) void glutwiredodecahedron ( void ) 06ィーィィ ィコ06ィャィ ィェ ィー080607ィー ィコィ ィィ05ィィ ィコィ 08ィコィ 09, 08ィ 01ィィィョ ィィ09ィ ィェィェ06ィヲ 0906ィコ08ィョ00 ィェ ィ 0902ィェ ィコ09ィ 0108ィ ィーィェ06ィャィョ ィコ0608ィェ06 ィィ04 ィー void g l u t S o l i d I c o s a h e d r o n ( void ) void glutwireicosahedron ( void ) 06ィーィィ ィコ06ィャィ ィェ ィー080607ィー ィィィコ0609ィ ィィ05ィィ ィコィ 08ィコィ 09, 08ィ 01ィィィョ ィィ09ィ ィェィェ06ィヲ 0906ィコ08ィョ00 ィェ ィ 0902ィェ ィ 09ィィ05ィケィェ ィー080602ィェィィ ツィィ090502ィェィェ ィィィャィィィーィィ ィャ0603ィェ ィィ ィョ01ィ 0502ィェィィィィ ィェ0209ィィ01ィィィャ ィィィェィィィィ ィィ ィェ0609ィー02ィヲ, ツ ィェィ ィコ0506 ツィィィーィケ ィー0902ィー09ィー09ィョ06ィエィィィヲ ィィィャ ィャ ィコ06ィャィ ィェ0104 glenable(gl_depth_test).

169 130308ィィ ィェィィ ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ ィ ィャィャ ィィィャ0208 1: ィー0602 GLUT-0708ィィ ィェィィ02 06ィー06ィー ィー06ィヲ 0708ィィィャ ィェィ 04ィェィ ツ02ィェ ィャ06ィェ09ィー08ィ 02ィィィィ 09ィー08ィョィコィーィョ0804 GLUT-0708ィィ ィェィィ07 ィィ ィー02ィヲ03ィィ ィェ0609 OpenGL ィョ05ィケィーィ ィー06ィャ 08ィ ィ 06ィー ィ ィャィャ ィー ィョ ツィ ィヲィェ04ィヲ ィェィ ィ ィーィェ ィャ06ィョ000605ィケィェィィィコ0609, ィコ06ィー060804ィヲ ィャ02ィェ0702ィー ィィ ィェィ 03ィ ィーィィィィ ィヲ ィコィェ0607ィコィィ ィャ0403ィィ ィャ06ィエィケ ィ 0906ィヲ ィコィェ0607ィコィィ ィャ0403ィィ ィャ0603ィェ06 ィャ02ィェ07ィーィケ ィィィャ 04ィ 05ィィ09ィコィィ ィャ06ィョ000605ィケィェィィィコ ィ ィャィャィ ィー06ィヲ 0708ィィィャ0208 OpenGL. #include <s t d l i b. h> #include <g l g l u t. h> #ifdef random #undef random #endif #define random (m) ( float ) rand ( ) *m/rand_max 169

170 ィィ ィェィィ ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ ィ ィャィャ04 // 03ィィ08ィィィェィ ィィ ィーィ 06ィコィェィ GLint Width = 512, Height = 512; // ツィィ ィャ06ィョ000605ィケィェィィィコ ィコィェ02 int Times = 100; // 09 04ィ ィェ02ィェィィ02ィャ? int F i l l F l a g = 1 ; long Seed = 0 ; // 00ィョィェィコ02ィィ07 06ィー06ィ 08ィ 03ィ 02ィー ィャ06ィョ000605ィケィェィィィコ void DrawRect ( float x1, float y1, float x2, float y2, int F i l l F l a g ) { glbegin ( F i l l F l a g? GL_QUADS : GL_LINE_LOOP) ; g l V e r t e x 2 f ( x1, y1 ) ; g l V e r t e x 2 f ( x2, y1 ) ; g l V e r t e x 2 f ( x2, y2 ) ; g l V e r t e x 2 f ( x1, y2 ) ; glend ( ) ; } // ィョ0708ィ ィー ィャ ィャ ィェィ 05ィコ08ィ ィェ void Display ( void ) { int i ; float x1, y1, x2, y2 ; float r, g, b ; srand ( Seed ) ; g l C l e a r C o l o r (0, 0, 0, 1 ) ; g l C l e a r (GL_COLOR_BUFFER_BIT) ; for ( i = 0 ; i < Times ; i++ ) { r = random ( 1 ) ; g = random ( 1 ) ;

171 ィィィャ0208 1: ィー0602 GLUT-0708ィィ ィェィィ b = random ( 1 ) ; g l C o l o r 3 f ( r, g, b ) ; } x1 = random ( 1 ) * Width ; y1 = random ( 1 ) * Height ; x2 = random ( 1 ) * Width ; y2 = random ( 1 ) * Height ; DrawRect ( x1, y1, x2, y2, F i l l F l a g ) ; } g l F i n i s h ( ) ; // ィ 02ィー ィィ ィィ04ィャ02ィェ02ィェィィィィ 08ィ 04ィャ ィコィェィ void Reshape ( GLint w, GLint h) { Width = w; Height = h ; glviewport (0, 0, w, h ) ; glmatrixmode (GL_PROJECTION) ; g l L o a d I d e n t i t y ( ) ; glortho (0, w, 0, h, 6モ11.0, 1. 0 ) ; } glmatrixmode (GL_MODELVIEW) ; g l L o a d I d e n t i t y ( ) ; // 02ィ 08ィ ィ ィ ィー0409ィ 02ィー ィ ィエ02ィェィィ07 06ィー ィャ0403ィィ void Mouse ( int button, int state, int x, int y ) { i f ( s t a t e == GLUT_DOWN ) { switch ( button ) { case GLUT_LEFT_BUTTON: Seed = random (RAND_MAX) ;

172 ィィ ィェィィ ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ ィ ィャィャ04 } } break ; case GLUT_RIGHT_BUTTON: F i l l F l a g =! F i l l F l a g ; break ; } glutpostredisplay ( ) ; // 02ィ 08ィ ィ ィ ィー0409ィ 02ィー ィ ィエ02ィェィィ07 06ィー ィコ05ィ 09ィィィ ィーィョ0804 void Keyboard ( unsigned char key, int x, int y ) { const char ESCAPE = ' 033 ' ; } i f ( key == ESCAPE ) e x i t ( 0 ) ; void main ( int argc, char * argv [ ] ) { g l u t I n i t (&argc, argv ) ; glutinitdisplaymode (GLUT_RGB) ; glutinitwindowsize ( Width, Height ) ; glutcreatewindow ( " Rect draw example (RGB) " ) ; glutdisplayfunc ( Display ) ; glutreshapefunc ( Reshape ) ; glutkeyboardfunc ( Keyboard ) ; glutmousefunc ( Mouse ) ; } glutmainloop ( ) ;

173 ィィィャ0208 2: ィケ ィエ02ィェィィ07 OPENGL ィィ ィョ05ィケィーィ ィー 08ィ ィ 06ィー ィ ィャィャ ィ ィィィャ 04ィ ィェ02ィェィィ07, ィ 09ィ ィィィャ ィコ06ィェィーィョ ィィィャ0208 2: ィケ ィエ02ィェィィ07 OpenGL ィ ィャィャィ ィェィ 04ィェィ ツ02ィェィ ィャ06ィェ09ィー08ィ 02ィィィィ ィャ ィィ ィエ02ィェィィ07 OpenGL ィェィ 0708ィィィャ ィー06ィヲ ィェ04, ィー0607ィエ02ィヲ ィィ04 ィー0608ィ, ィコ06ィェィョ09ィ ィィ 03ィ 08ィ. 02ィ ィイ02ィコィーィ ィャ ィェィ 04ィェィ ツィ 06ィー ィ 04ィェ0402 ィャィ ィー0208ィィィ ィェ ィィ09ィョィー09ィー09ィョ02ィー ィー06 ツ02 ツィェ04ィヲ ィィ09ィー06 ツィェィィィコ ィーィ ィ ィャィャィ ィケ ィエ02ィェィィ07 OpenGL. #include <s t d l i b. h> #include <GL/ g l u t. h> // 07ィ 08ィ ィャ02ィー0804 ィャィ ィー0208ィィィ 05ィ ィー0608ィ float mat1_dif [ ] = { 0. 8 f, 0. 8 f, 0. 0 f } ; float mat1_amb[]= {0.2 f, 0. 2 f, 0. 2 f } ; float mat1_spec [ ] = { 0. 6 f, 0. 6 f, 0. 6 f } ; float mat1_shininess =0.5 f *128; // 07ィ 08ィ ィャ02ィー0804 ィャィ ィー0208ィィィ 05ィ ィコ06ィェィョ09ィ float mat2_dif [ ] = { 0. 0 f, 0. 0 f, 0. 8 f } ; float mat2_amb[]= {0.2 f, 0. 2 f, 0. 2 f } ; float mat2_spec [ ] = { 0. 6 f, 0. 6 f, 0. 6 f } ;

<D1E0F3F8EAE8ED312E7670>

<D1E0F3F8EAE8ED312E7670> 13070208 621.9.048:629.78 090908 30.61 0351 04020202ィェ0402ィェィー04: ィコィ 00020108ィ ィー0201ィェ06050600ィィィィ ィャィ 03ィィィェ0609ィー080602ィェィィ07 00010607ィC00080006 (04ィ 09. ィコィ 0002010806ィヲ ィコィ ィェ01. ィー0201ィェ. ィェィ ィョィコ,

More information

Gender.pm6

Gender.pm6 13000601060506030405060002 0209040805020008010608 04020505060705080207 080302030408000606 070408090505080607 010205070208040506000301010407 0701060003040506060306 0600. 08. 00. 0102040508020102 010301020304010403

More information

Accounting Report

Accounting Report 1308ィェ09ィ 08ィケ/08020908ィ 05ィケ 2001 000407ィョ09ィコ 4.1 Accounting Report RUSSIAN EDITION 0609010601ィェ04ィヲ 0106ィコィョィャ02ィェィー 0706 ィョ ツ02ィーィョ 09 0106ィ 0409ィ 06ィエ02ィヲ 070806ィャ04030502ィェィェ0609ィーィィ 08 06ィャィィィー02ィー

More information

< FCEE2F7E8EDF1EAE8E95FCAF0E8ECE8EDE0EBFCEDEEE520EDE02E2E2E>

< FCEE2F7E8EDF1EAE8E95FCAF0E8ECE8EDE0EBFCEDEEE520EDE02E2E2E> 130808ィィィャィィィェィ 05ィケィェ0602 ィェィ 09ィィ05ィィ02 070806ィーィィ09 0302ィェィエィィィェ ィィ 0102ィー02ィヲ: ィャ020301ィョィェィ 080601ィェ0402 09ィーィ ィェ01ィ 08ィー04 070806ィーィィ09060102ィヲ09ィー09ィィ07 130808ィィィャィィィェィ 05ィケィェ0602 ィェィ 09ィィ05ィィ02

More information

Na2008_10

Na2008_10 "01ィ 08ィコ06ィーィィ ツ0209ィコィ 07" ィー0208ィャィィィェ06050600ィィ07: 0902ィャィ ィェィーィィ ツ0209ィコ0602 ィィ09090502010609ィ ィェィィ02 (ィェ02 ィー08ィ 01ィィ 02ィィ 06ィェ ィェ04ィヲ 070601 010601 09 ィィ04 ィョ ツ02 ィェィィィィ 05ィーィィ 06 0506 00ィィ ツ0209

More information

tom2.p65

tom2.p65 1308ィコィ 0102ィャィィ07 ィェィ ィョィコ 04020907ィョィ 05ィィィコィィ 06ィ ィーィ 0809ィーィ ィェ 06ィェ09ィーィィィーィョィー ィィ09ィー0608ィィィィ ィィィャ. 01.00ィ 080103ィ ィェィィ 08040903020902010608 0300040805060705080609 050603030307 000407ィョ09ィコ 2 05080201ィェ020902ィコ0609ィ

More information

Áeçuìÿííûé-1

Áeçuìÿííûé-1 13000804010307010607 06010506040700030106 050200040300030101020102 0003010302040003010608 04ィ ィ 06ィーィ 06ィエィ 07 0706 0804ィェ06 ツィェ04ィャ 04ィ ィコ06ィェィ ィャ 05ィコ06ィェ06ィャィィィコィ 0904040409ィ 02ィー ィコ 03ィィ04ィェィィ ィェ02

More information

I. 02ィ ィエィィ02 ィィ ィー ィーィィ ツ0209ィコィィ ィ ィコ02ィィ06ィェィェィ 07 ィコ ィィ07: ィケ07ィコ06ィェ0609 (06ィー09. 08

I. 02ィ ィエィィ02 ィィ ィー ィーィィ ツ0209ィコィィ ィ ィコ02ィィ06ィェィェィ 07 ィコ ィィ07: ィケ07ィコ06ィェ0609 (06ィー09. 08 1304070505080203 0103020104080806 チ0305080203 0209020305060002 00020508020005080607 010205070208040506000301010407 0701060003040506060306 ィィィャ. 00.00. 09020002010205020008 0601050606060706 010302010408080606

More information

Untitled-1

Untitled-1 13030502ィェィ 00ィ 08ィーィ ィェ0609ィ 000201ィィィ 05ィコ06ィェ06ィャィィィコィ 04ィ 08ィョィ 0203ィェ0401 09ィー08ィ ィェ 020607ィョィエ02ィェ06 00ィィィェィィ09ィー020809ィー0906ィャ 06ィ 08ィ 040609ィ ィェィィ07 04060909ィィィヲ09ィコ06ィヲ 0802010208ィ 02ィィィィ 09 ィコィ

More information

13

13 13 13 1301ィ 080601ィェィ 07 ィャ0201ィィ02ィィィェィ, ィェィ ィェィ 03 090400050701 0708020109ィーィ 09050702ィー 0906ィ 06ィヲ 0106090605ィケィェ06 01ィィィェィ ィャィィ ツィェィョ06 09ィー08ィョィコィーィョ08ィョ 09 090609ィーィ 0902 ィー08ィ 01ィィ02ィィ06ィェィェ06-ィ

More information

4_2009.p65

4_2009.p65 1300030506010608 0402050506070508020102 01070008010606080401020102 010807 チ01020102 0802010208 2009 4 (57) 0906050502ィー02ィェィケ 060401ィ 02ィー0907 09 1995 00. 0004010601ィィィー 4 08ィ 04ィ 09 000601 13000209ィーィェィィィコ

More information

VP:CorelVentura 7.0

VP:CorelVentura 7.0 132012 0601050606060706 06050602040606 0305060305060002050108010608 ィィ 06030901060806 ィィィャ. 05.06.00ィ 09ィィ050609ィ 01020206 チ010808 010807 チ010808 0802010803040301000608 0606ィャ 2 0306090907ィエィ 02ィー0907

More information

untitled

untitled 1306080002040301010808 050602060002050605 030601 06ィ ィエ02ィヲ 080201ィ ィコ02ィィ02ィヲ 09. 08. 09020102080405 ィィ 00. 08. 0108000809020008 000609ィコ09ィ 2007 1306ィ ィャ060302ィェィェィ 07 09ィー06ィィィャ0609ィーィケ. 07 ツ02ィ ィェィィィコ

More information

Est_na_perelome.pdf

Est_na_perelome.pdf 1304060909ィィィヲ09ィコィ 07 08ィコィ 0102ィャィィ07 01ィ ィョィコ 06ィェ09ィーィィィーィョィー 00ィィ0506090600ィィィィ 0605060306060808 0108 0303040309020003 08070905060704010409 0604080206000607 000609ィコ09ィ 2002 13070208 18 090908 87.8

More information

R03_LAVAMAT_54610_01_oS_5kg_sy_ZP.bk

R03_LAVAMAT_54610_01_oS_5kg_sy_ZP.bk 13LAVAMAT 54610 05ィーィィ08ィ 05ィケィェィ 07 ィャィ 03ィィィェィ -ィ 09ィー06ィャィ ィー 06ィェ09ィー08ィョィコ02ィィ07 0706 ィョ09ィーィ ィェ0609ィコ02 ィィ 05ィコ090705ィョィ ィーィ 02ィィィィ 130709ィ 03ィ 02ィャィ 07 0706ィコィョ07ィ ィー0205ィケィェィィ02ィ, ィョ09ィ 03ィ 02ィャ04ィヲ

More information

untitled

untitled 306006030400306-00080603000806060808 2007 05ィ 0608ィェィィィコ 08ィ ィ 06ィー ィョ ツィ 09ィーィェィィィコ0609 ィコ06ィェィコィョ0809ィ ィェィ ィョ ツィェ040 07080602ィコィー0609 0706 ィィィェ000608ィャィ 02ィィ06ィェィェ06ィャィョ 0706ィィ09ィコィョ 03ィコィ ィー0208ィィィェィ

More information

KITMIR2_04.vp

KITMIR2_04.vp 13 13070208 [327+339.5](510) 090908 66.5(508ィィィー)+66.59(508ィィィー) 0845 050601020803ィ ィェィィ02 0402ィコ06ィャ02ィェ010609ィ ィェ06 ィコ 07ィョィ 05ィィィコィ 02ィィィィ 07 ツ02ィェ04ィャ 09060902ィー06ィャ 060200 040801 04020202ィェ0402ィェィー04:

More information

Aksenov.vp

Aksenov.vp 13000608060204 0908050804030006 チ 08080503010200 (08 60-0502ィーィィ06 0906 01ィェ07 0806030102ィェィィ07) * 00. 09. 08ィコ0902ィェ0609 080601ィィ050907 20 ィィ06ィェ07 1947 00. 00 1970 00. 06ィェ 06ィコ06ィェ ツィィ05 0606ィャ09ィコィィィヲ

More information

ィコィィィェ ィコ060909ィコィィィヲ 03ィョ08ィェィ 05 ィャ020301ィョィェィ ィェ ィ 09ィ ィ 09ィー09ィョ02ィー 08ィ 0409ィィィーィィ06 ィャ020301ィョィ

ィコィィィェ ィコ060909ィコィィィヲ 03ィョ08ィェィ 05 ィャ020301ィョィェィ ィェ ィ 09ィ ィ 09ィー09ィョ02ィー 08ィ 0409ィィィーィィ06 ィャ020301ィョィ 13000609ィコ060909ィコィィィヲ 03ィョ08ィェィ 05 ィャ020301ィョィェィ 080601ィェ060006 0708ィ 09ィ Moscow Journal of International Law 01ィ ィョ ツィェ06-ィー02060802ィーィィ ツ0209ィコィィィヲ ィィ ィィィェ000608ィャィ 02ィィ06ィェィェ06-0708ィ ィコィーィィ ツ0209ィコィィィヲ

More information

МР153.pm6

МР153.pm6 130407040503 020902060106 チ0503 050800020508040802010203 0004-153 1 0209020603 0708080508010608 0001060008010603! 0303040302 06080503090708060800060307 0407040508 020908050806030905-0102 020501080802000506030505

More information

-15_Kam

-15_Kam 13060505090302020008010608 06 04080504080902060806, 00010301010603 06080803080604 000608ィー06ィェ 06. 08ィ ィャィケ02ィェ, 0105ィェ09ィィ 09. 0109ィ 0802 050604070806070408 0404010808 06 060101020008000606: 0209050204

More information

untitled

untitled 1306ィコc0702pィィィャ02ィェィーィ 05ィケィェィ 07 ィィ ィコ05ィィィェィィ ツ02cィコィ 07 00ィ pィャィ ィコ06050600ィィ07 2008 0606ィャ 71 01 1 05. 61 ィC 69 1 71 71 71 71 7 1 71 71 71 71 71 71 71 71 71 7 0304020909030004 06050302090505020008010608

More information

1307 チ チ チ01040

1307 チ チ チ01040 13000601060506030405060002 0209040805020008010608 06 0108070806 04020505060705080207 080302030408000606 07 チ03010403 05080306050806 02040902000508020102 01020507020804050600030101020102 070106000304050606030608

More information

ィ ィェ 0203ィ 07ィ ィー04ィヲ ィャ02ィェィー ィコ09ィ

ィ ィェ 0203ィ 07ィ ィー04ィヲ ィャ02ィェィー ィコ09ィ 13060606070905010808 0506040801060008 1 1305020203040408010603 08020902010808 040302080806020408 0705ィ ィェ 0203ィ 07ィ 080609 0307ィー04ィヲ 050502ィャ02ィェィー. 00000202010808 050608060508 080502ィコ09ィ ィェ0108 0203ィョィャィ

More information

untitled

untitled 13 13 130306090907ィエィ 02ィー0907 020400ィ ィェィ ィャ - 030208ィー09ィ ィャ ィィ 0002080607ィャ 00ィー060806ィヲ ィャィィ08060906ィヲ 0906ィヲィェ04 060401ィ ィー0205ィケ09ィコィィィヲ 0106ィャ ー01ィ ィー08ィ ア 13090908 63.3(2)722.78 (29=020400) 09

More information

untitled

untitled 131 02cィェ0609ィ ィェ 09 07ィェ09ィ p02 1932 00., 0006cィコ09ィ 07 ツ080201ィィィー0205ィケ: 020202 060401ィ ィー0205ィケ09ィー0906 ー06030506-0509 ア 0801080209 080201ィ ィコ02ィィィィ: 119991, 000609ィコ09ィ, 010503-1, 0902ィェィィィェ09ィコィィィヲ

More information

チ ィィ 09ィー08ィ ィェ ィィ ィー0907 ィ ィ ィーィェ04ィャ 05ィィ

チ ィィ 09ィー08ィ ィェ ィィ ィー0907 ィ ィ ィーィェ04ィャ 05ィィ 1306080201020006 チ0305080607 040704010809 000106 01 2 2004 197 040605ィケ 0804ィェ06 ツィェ0401 ィィィェ09ィーィィィーィョィー0609 09 0708060202090902 ィィィェィー020008ィ 02ィィィィ 04060909ィィィィ 09 ィャィィ080609ィョ06 05ィコ06ィェ06ィャィィィコィョ

More information

<443A5C4F6C65675CC8C8CCCA5CD1DAC5C7C4DB5CF1FAE5E7E42DD0F3F1F1E05CCCE0F2E5F0E8E0EBFB20D1FAE5E7E4E05C56656E C546F6D312E7670>

<443A5C4F6C65675CC8C8CCCA5CD1DAC5C7C4DB5CF1FAE5E7E42DD0F3F1F1E05CCCE0F2E5F0E8E0EBFB20D1FAE5E7E4E05C56656E C546F6D312E7670> 1304060909ィィィヲ09ィコィ 07 ィ ィコィ 0102ィャィィ07 ィェィ ィョィコ 06ィェ09ィーィィィーィョィー ィィ09ィー0608ィィィィ ィャィ ィー0208ィィィ 05ィケィェ06ィヲ ィコィョ05ィケィーィョ0804 0604070204 III (XIX) 0005030402050506070508020102 080409030209020106 チ030508020102

More information

Îáëîæêà1.pm6

Îáëîæêà1.pm6 1308. 00. 0302ィー080609 090602010302010408080608 05 0205010200080006 020904080104 0906020508030404 13080604060909 000609080709020006 チ 030306040200 ィC 0106ィコィー0608 0002060008ィ 00ィィ ツ0209ィコィィ01 ィェィ ィョィコ,

More information

ULANOV.qxd

ULANOV.qxd 13 130000ィ ィー0208ィィィコィィ 0802 ツィィ 0705ィ ィェ0609ィ 0109ィィ03ィョィー0907 ィコィョ01ィ ィャ02010502ィェィェ02ィヲ, ィェ02030205ィィ 06ィェ 06ィ 02ィエィ 02ィー. 000606ィ ィエ02, ィャ02010502ィェィェ0609ィーィケ 0902000601ィェ07 09ィーィ ィェ0609ィィィー0907 ィー02ィャ,

More information

TIT.p65

TIT.p65 1304060909ィィィヲ09ィコィ 07 ィ ィコィ 0102ィャィィ07 ィェィ ィョィコ 05ィィィ ィィ0809ィコ0602 06ィー01020502ィェィィ02 010700080106060804010403 0108070806 00 050609060406 01 2, 2010 00. 05020203040408010603 08 65-0903060607 030209030204

More information

BEJ pmd

BEJ pmd 130902050608ィョ0909ィコィィィヲ 05ィコ06ィェ06ィャィィ ツ0209ィコィィィヲ 03ィョ08ィェィ 05. 2016. 01 3. 05. 119ィC133. Belarusian Economic Journal. 2016 No 3. P. 119ィC133. 0506080606050606 チ0305080808 020003010808 チ0309020003 チ030508020102

More information

Èçâ_¹4(95)_2011_ñ1.pm6

Èçâ_¹4(95)_2011_ñ1.pm6 130604090209ィーィィ07 07080107. 050208ィィ07 1 01 4 (95) 130605000305060608 07040809050508020102 01020507020804050600030101020102 070106000304050606030608 020902030506000301010407 0502000306 04070401080908

More information

J1_1998

J1_1998 1304ィョ08ィェィ 05 090602ィィ06050600ィィィィ ィィ 090602ィィィ 05ィケィェ06ィヲ ィ ィェィー08060706050600ィィィィ. 1998. 0606ィャ I. 01 3 00. 08ィ ィヲ040208 04070505080603 080808 0003010501060105060002 00 0003010604080905010207 08050606

More information

Verstka_#14.FH10

Verstka_#14.FH10 133 (14)/2004 ィ 07080205ィケ 05020108 02030902 0601020408 0507060801060108 0201020105 050802040906 06 01080203040204 1304ィョ08ィェィ 05 ー0608020902010608 ィィ 0304080002 ア - ィェ02ィコ06ィャィャ0208 ツ0209ィコ0602 ィェ02000609ィョ01ィ

More information

1300ィィ ィ ィィ04ィ ィー0608 ィィ ィェィェ ィ ィ , 00ィー ィ ィェィィ ツ0209ィコィィ02 03ィィ01ィコ0609ィーィィ 00ィィ ィ ィィ04ィ ィー0608,

1300ィィ ィ ィィ04ィ ィー0608 ィィ ィェィェ ィ ィ , 00ィー ィ ィェィィ ツ0209ィコィィ02 03ィィ01ィコ0609ィーィィ 00ィィ ィ ィィ04ィ ィー0608, 13. 0302 0102ィヲ09ィー09ィィ02 04ィ ィコ0506 ツィ 02ィー0907 00ィー0608060800ィ ィェィィ ツ0209ィコィィ02 03ィィ01ィコ0609ィーィィ 00ィィ0108060006ィ ィィ04ィ ィー0608 06ィ 08ィ 040609ィ ィェィィィィ 09090704ィ ィェィェ060006, ィェ02 09ィャィ ツィィ09ィ 02ィャ060006

More information

Untitled-2

Untitled-2 130205080205080808 010204020205080808 050608010608 070104 01080607040806050602 050202020106 チ0305080607 07050307 020508020508020102 0701060304050606030608 03. 08. 0207010803 0203040308010605060403 0408050603010608

More information

R03_KB9820E_EU_Compact_R5.bk

R03_KB9820E_EU_Compact_R5.bk 13COMPETENCE KB9820E 00ィェ06000600ィョィェィコ02ィィ06ィェィ 05ィケィェ04ィヲ 0909ィー08ィ ィィ09ィ 02ィャ04ィヲ 01ィョ01060906ィヲ 03ィコィ 00 010507 0708ィィ0006ィー06090502ィェィィ07 07ィィィエ02090401 07080601ィョィコィー0609 ィェィ 07ィ 08ィョ 06ィェ09ィー08ィョィコ02ィィ07

More information

КАФЕДРА ТЕОРИИ ВЕРОЯТНОСТЕЙ

КАФЕДРА  ТЕОРИИ ВЕРОЯТНОСТЕЙ 1308080803020408 060302040606 000304020806010205060307 (2005 2009) 13050601020803ィ ィェィィ02 1 030802070601ィ 09ィ ィー0205ィィ ィィ 0906ィー08ィョ01ィェィィィコィィ 2 07 ツ02ィ ィェ06-070201ィ 000600ィィ ツ0209ィコィ 07 010207ィー0205ィケィェ0609ィーィケ

More information

Китай - надвигается война?

Китай - надвигается война? 1308.05. 08ィョィャィィィェ0609 08ィィィーィ ィヲ ィC ィェィ 0109ィィ00ィ 02ィー0907 0906ィヲィェィ? 05ィ ィェィコィー-0302ィー0208ィ ィョ0800 1000803 2005 1 13070208 94(470) 090908 63.2(2) 08 908 08 908 08.05. 08ィョィャィィィェ0609 08ィィィーィ ィヲ ィC ィェィ

More information

GIS_Nov_Kar

GIS_Nov_Kar 1309.00. 010609ィィィコ0609ィ, 06.00. 08ィ 0807ィコィィィェ 0002ィー0601ィィ ツ0209ィコ0602 08ィョィコ0609060109ィー0906 0706 09ィ 0608ィョ 07060502090401 01ィ ィェィェ0401, ィィ01 09090601ィョ 09 ィ ィ 0404 01ィ ィェィェ0401, 0708020109ィ 08ィィィー0205ィケィェ06ィヲ

More information

Libretto_New_RS

Libretto_New_RS 1304ィョィコ0609060109ィー0906 0706 05ィコ07ィョィ ィーィ 02ィィィィ 05060604080905010808 000801060108 CIS 04070505080607, 1 RO Rom09n00,13 SB 050403050806,25 050601020803ィ ィェィィ02 0709ィーィ ィェ0609ィコィ, 2-3 04ィ 0907ィ ィコ0609ィコィ

More information

2_2004_

2_2004_ 1301ィ ィョ ツィェ06-ィャ02ィー0601ィィ ツ0209ィコィィィヲ 03ィョ08ィェィ 05 01 2 (35) (ィ 07080205ィケ ィC ィィ06ィェィケ) 2004 07 チ0403020606030906: 00ィィィェィィ09ィー020809ィー0906 06ィ 08ィ 040609ィ ィェィィ07 ィィ ィェィ ィョィコィィ 04060909ィィィヲ09ィコ06ィヲ 0802010208ィ

More information

для типогр-часть1.p65

для типогр-часть1.p65 13030209060606 チ0305080203 000701080006 08ィェィ 05ィィィーィィィコィ 0906ィ 04ィーィィィヲ 09 0502090208ィェ06ィヲ 080008ィィィコ02 ィィ ィェィ 0905ィィ03ィェ02ィャ 000609ィー06ィコ02 030601 080201ィ ィコ02ィィ02ィヲ 050208000207 08ィョ0800ィィィェ07ィェィ 00020301ィョィェィ

More information

soderzhanie-05.indd

soderzhanie-05.indd 1303040300030508 チ010407 040704010809 0907020204030506000301010207 09060603040806070404 06 020902030506000301010207 0004050906 060401ィ 02ィー0907 09 07ィェ09ィ 0807 1925 00. 01 5 (1057) 00ィ ィヲ, 2013 00. 03000103010607

More information

ィ ィコ02ィィ02ィヲ ィャィィ ィ ィェ0609ィェ ィケ ィコ06ィヲ, ィ 09ィ ィー ィィ N 19, 00.02ィャ09ィコ;

ィ ィコ02ィィ02ィヲ ィャィィ ィ ィェ0609ィェ ィケ ィコ06ィヲ, ィ 09ィ ィー ィィ N 19, 00.02ィャ09ィコ; 1305020902060808 0404090808 00 ー05030606 ア 06ィェィー0208ィェ02ィー-ィー0201ィェ06050600ィィィィ 09 09080201ィェ02ィヲ 03ィコ060502 (0308ィ ィコィーィィ ツ0209ィコ0602 08ィョィコ0609060109ィー0906) 0306 ィャィ ィー0208ィィィ 05ィ ィャ ィコ06ィェィコィョ0809ィ

More information

Мир Евразии №1(2016)

Мир Евразии №1(2016) 130102040102-080906080705080607 010205070208040506000301010407 0701060003040506060306 000604 03000408050606 01ィ ィョ ツィェ04ィヲ 03ィョ08ィェィ 05. 060401ィ 02ィー0907 09 ィャィ 07 2008 00. 0004010601ィィィー 0601ィィィェ 08ィ

More information

MP-14.pmd

MP-14.pmd 132 00ィィ08 07020802090601ィ 01 1 (15) Union des traducteurs de Russie (UTR) Translators Union of Russia (UTR) 05060604 07020802090601 ツィィィコ0609 04060909ィィィィ (050304) 07 ツ0802030102ィェ 09 1991 000601ィョ チ0502ィェ

More information

OKO-LAVAMAT_88840_advanced.bk

OKO-LAVAMAT_88840_advanced.bk 1300KO-LAVAMAT 88840 update 06ィコ06050600ィィ ツィェィ 07 09ィーィィ08ィ 05ィケィェィ 07 ィャィ 03ィィィェィ -ィ 09ィー06ィャィ ィー 06ィェ09ィー08ィョィコ02ィィ07 0706 ィョ09ィーィ ィェ0609ィコ02 ィィ 05ィコ090705ィョィ ィーィ 02ィィィィ 131 0709ィ 03ィ 02ィャィ 07 0706ィコィョ07ィ

More information

Untitled-30

Untitled-30 0502ィコ02ィィ07 VI 060506020406 チ0305080607 0603080506060905 06 060408020600060201010407 080205060700 01080402020200 03000408050606 VI.1. 060408020600060201010407 080205060700 03000408050606 04ィョィコ06090601ィィィー0205ィケ

More information

3 A3 10

3 A3  10 03ィョ08ィェィ 05 0902ィー0208ィィィェィ 08ィィ07 ィィ ィコ0608ィャ0502ィェィィ02 00040205020406 0803ィ 090202ィー, ィェ02 ィェィ 01060107 0902ィ 02 0708ィィィャ02ィェ02ィェィィ07, 09ィー0607 ツィ 07 090601ィ 00ィェィィ00ィー ィィ05ィィ ィェィ 010605060102 04ィ ィャ020804ィ

More information

Оглавление.pmd

Оглавление.pmd 1306.03. 01060802ィェィコ0609 0209ィェ060904 ィ 09ィー06ィャィ ィーィィ04ィィ080609ィ ィェィェ060006 07080602ィコィーィィ080609ィ ィェィィ07 060401ィ ィェィィ02 ツ02ィー090208ィー0602, 0702080208ィ ィ 06ィーィ ィェィェ0602 ィィ 0106070605ィェ02ィェィェ0602 0402ィコ06ィャ02ィェ010609ィ

More information

Microsoft Word - Муравьев.doc

Microsoft Word - Муравьев.doc 132011 06080201020006 チ0305080607 040704010809 000106 237 02 08060909ィィィヲ09ィコ06ィヲ 05ィコ06ィェ06ィャィィ ツ0209ィコ06ィヲ ィェィ ィョィコ02 09ィコ090604ィケ 0708ィィ04ィャィョ 07ィョィ 05ィィィコィ 02ィィィヲ 08060909ィィィヲ09ィコィィ01 ィョ ツ02ィェ0401

More information

13000601060506030405060002 0209040805020008010608 06 0108070806 04020505060705080207 080302030408000606 00020901020104080205080607 010205070208040506000301010407 0701060003040506060306 0002ィェィー08 080200ィィ06ィェィ

More information

World Bank Document

World Bank Document 13Public Disclosure Authorized Public Disclosure Authorized Public Disclosure Authorized Public Disclosure Authorized 38520 0304030206050902000603 1 07030408000903010603 00 000405010307 0108020903 132

More information

25_rozdil.indd

25_rozdil.indd 1325 05ィーィ ィ ィィ05ィケィェィ 07 09ィー02ィェ06ィコィ 0801ィィ07 Satya Reddy Atmakuri, MD, Michael H. Gollob, MD ァレ Neal S. Kleiman, MD 0000030203010603 00 21 0902ィコ02 08ィ 0907080609ィー08ィ ィェ02ィェィェ0609ィーィケ ィィ0302ィャィィ ツ0209ィコ06ィヲ

More information

028265rs.p65

028265rs.p65 13WS 431 TX Cィーィィ08ィ 05ィケィェィ 07 ィャィ 03ィィィェィ 04ィョィコ0609060109ィー0906 0706 ィョ09ィーィ ィェ0609ィコ02 ィィ 05ィコ090705ィョィ ィーィ 02ィィィィ Washing machine Instructions for installation and use 040501ィェ000709ィヲ07 090705 ツィエィェ

More information

Mova_12.p65

Mova_12.p65 13000501050506030405060002 020500050606 05 0108070806 07080408040106 02010209ィケィコィィィヲ ィェィ 020606ィェィ 05ィケィェィィィヲ ィョィェ0609020809ィィィー02ィー 06ィャ. 05. 05. 0002 ツィェィィィコ0609ィ 00020008 01ィ ィョィコ060906-ィー02060802ィーィィ

More information

R03_LAVALOGIC_1820_LCD_5kg_BT_db.bk

R03_LAVALOGIC_1820_LCD_5kg_BT_db.bk 13LAVAMAT LAVALOGIC 1820 Cィーィィ08ィ 05ィケィェィ 07 ィャィ 03ィィィェィ -ィ 09ィー06ィャィ ィー 06ィェ09ィー08ィョィコ02ィィ07 0706 ィョ09ィーィ ィェ0609ィコ02 ィィ 05ィコ090705ィョィ ィーィ 02ィィィィ 130709ィ 03ィ 02ィャィ 07 0706ィコィョ07ィ ィー0205ィケィェィィ02ィ, ィョ09ィ

More information

059_1

059_1 13 13Cloe Madanes STRATEGIC FAMILY THERAPY Jossey-Bass Publishers San Francisso 130805ィョ 00ィ 01ィ ィェ0209 0506040806030106 チ0305080808 0503000307010808 06030408030608 03020802090601 09 ィ ィェ0005ィィィヲ09ィコ060006

More information

R03_OKO-LAVAMAT_LAVALOGIC_1810_LCD.bk

R03_OKO-LAVAMAT_LAVALOGIC_1810_LCD.bk 13LAVAMAT LAVALOGIC 1810 Cィーィィ08ィ 05ィケィェィ 07 ィャィ 03ィィィェィ -ィ 09ィー06ィャィ ィー 06ィェ09ィー08ィョィコ02ィィ07 0706 ィョ09ィーィ ィェ0609ィコ02 ィィ 05ィコ090705ィョィ ィーィ 02ィィィィ 130709ィ 03ィ 02ィャィ 07 0706ィコィョ07ィ ィー0205ィケィェィィ02ィ, ィョ09ィ

More information

772_a.p65

772_a.p65 13000501050506030405060002 020500050606 05 0108070806 07080408040106 ISSN 0453-8048 000505010608 090804080500050508020102 01080005020108090501020102 070105000304050606030607 06ィャ. 00.01. 08ィ 08ィ 0406ィェィ

More information

Ãëÿíåö.pm6

Ãëÿíåö.pm6 1300. 07. 01ィョ010609ィ 06. 02. 04ィ ィコィィ070609ィ 0402ィェ09ィコィィ02 000507ィェ0202090402 03ィョ08ィェィ 0504: 010806ィェ06ィー0607 090606ィ 08ィ 03ィ 02ィャ06ィヲ 070609090201ィェ0209ィェ0609ィーィィ 0006ィェ060008ィ 00ィィ07 03ィコィ ィー0208ィィィェィ

More information

Женские глянцевые журналы: хронотоп воображаемой повседневности

Женские глянцевые журналы: хронотоп воображаемой повседневности 1300. 07. 01ィョ010609ィ 06. 02. 04ィ ィコィィ070609ィ 0402ィェ09ィコィィ02 000507ィェ0202090402 03ィョ08ィェィ 0504: 010806ィェ06ィー0607 090606ィ 08ィ 03ィ 02ィャ06ィヲ 070609090201ィェ0209ィェ0609ィーィィ 0006ィェ060008ィ 00ィィ07 03ィコィ ィー0208ィィィェィ

More information

Maket.pmd

Maket.pmd 13050208090208 Kraftway Express Blade 04ィョィコ0609060109ィー0906 070605ィケ040609ィ ィー020507 000609ィコ09ィ, 2007 13Microsoft03, Windows03, Windows03 Server 0709050706ィー0907 04ィ 080200ィィ09ィー08ィィ080609ィ ィェィェ04ィャィィ

More information

ОГЛАВЛЕНИЕ

ОГЛАВЛЕНИЕ 130802010208ィ 05ィケィェ0602 000609ィョ01ィ 0809ィー0902ィェィェ0602 ィ 06010302ィーィェ0602 ィョ ツ0802030102ィェィィ02 ィェィ ィョィコィィ 010609ィョ01ィ 0809ィー0902ィェィェィ 07 07ィョィ 05ィィ ツィェィ 07 ィェィ ィョ ツィェ06-ィー0201ィェィィ ツ0209ィコィ 07 ィ ィィィ 05ィィ06ィー02ィコィ

More information

<50686F746F73686F705FD0E5ECE5E7EEE2F1EAE8E95F E7670>

<50686F746F73686F705FD0E5ECE5E7EEE2F1EAE8E95F E7670> 130005ィ 01ィィィャィィ08 0402ィャ0204060909ィコィィィヲ 05ィ ィャ06ィョ ツィィィー0205ィケ PHOTOSHOP CS 2 2006 13 13050601020803ィ ィェィィ02 0009020102ィェィィ02...6 0105ィ 09ィ 1. 02ィ ィエィィ02 0909020102ィェィィ07 06 0708060008ィ ィャィャ02...9 00ィィ0104

More information

Симпозиум-2007-пробный p65

Симпозиум-2007-пробный p65 130209020305060002 000205060208020003020200 040205050606 080805080105080203 020602030903010603 0402050506070508020102 060506020406 チ030508020102 0209020305060008 0601050606060706 060806080405080207 060100060809020303020606

More information

Ò_1.PM6

Ò_1.PM6 131 132 3 20 0502ィー 070609ィー09060902ィー09ィコ06ィヲ 04060909ィィィィ: ィコ08ィィ04ィィ09ィェ0402 07090502ィェィィ07 ィィ ィャ0201ィ ィェィィ04ィャ04 ィャ06010208ィェィィ04ィ 02ィィィィ 00ィ ィー0208ィィィ 0504 XIV 00090208060909ィィィヲ09ィコ06ィヲ ィェィ ィョ ツィェ06-0708ィ

More information

チ ツ02ィ ィェ ィ ィィ02 08ィェ ィィィコィー ィィ ツィ 05ィー ィ ィ ィャィャィィ080609ィ ィ

チ ツ02ィ ィェ ィ ィィ02 08ィェ ィィィコィー ィィ ツィ 05ィー ィ ィ ィャィャィィ080609ィ ィ 130906ィ 0602 ィィ09070605ィケ040609ィ ィェィィ02 01ィ ィェィェ060006 00ィ ィヲ05ィ 0604ィェィ ツィ 02ィー 09ィ 0302 09060005ィ 09ィィ02 09 ィョ09050609ィィ07ィャィィ 05ィィ0202ィェ04ィィィィ (09ィャ. 09050201. 09ィー08.) 0602ィコ09ィー 09 01ィ ィェィェ06ィャ 00ィ

More information

hydra main.pm6

hydra main.pm6 1305ィェィ ィコ06ィャィィィャ0907 09 08ィ 04ィェ0606ィ 08ィ 04ィィ02ィャ 03ィィ0906ィーィェ060006 ィャィィ08ィ 05ィコ0605ィケィコ06 ィェィ 0502ィャ0502 03ィィ0906ィーィェ0401? 080605ィィ ツ0209ィー0902ィェィェ06 060202ィェィィィーィケ 05ィー06 08ィ 04ィェ0606ィ 08ィ 04ィィ02

More information

Vest_2_2006.pmd

Vest_2_2006.pmd 13000209ィーィェィィィコ 020002 040801. 2006. 01 2 06.01.0604020808020008 08ィャ0208ィィィコィ ィェ09ィコィィ02 ィィ09090502010609ィ ィェィィ07 02ィ 05ィケィェ020006 000609ィー06ィコィ 04060909ィィィィ 04ィ 0909ィャィ ィー08ィィ09ィ 06ィー0907 0609ィェ0609ィェ0402

More information

Untitled-1

Untitled-1 03.05. 0308ィィ09ィ 050609ィ 06ィェ09ィーィィィーィョィー ィェ02ィヲ080601ィィ08ィョ0800ィィィィ, 08ィィ0209 080506 ツ02090402 09050609ィ : ィコ06ィャ07ィケ06ィー0208ィェィ 07 ィー06ィャ060008ィ 00ィィ07, ィェ02ィヲ080601ィィ08ィョ0800ィィ07, 0907ィィ08ィ 05ィケィェ04ィヲ

More information

katalog.p65

katalog.p65 1305020203040408010603 050601020803ィ ィェィィ02 010102 ィィ ィコィ ィコ 06000608ィャィィィーィケ 04ィ ィコィ 04...2 0609ィー0608ィィ07 0309ィェ000205ィケ09ィコ060006 0109ィィ0302ィェィィ07 09 030908ィ 04ィィィィ 1.1...3 0609ィー0608ィィ07 0309ィェ000205ィケ09ィコ060006

More information

Êîé Áýàôóò. Ðåâîëþöèÿ Quixtar.pmd

Êîé Áýàôóò. Ðåâîëþöèÿ Quixtar.pmd 13COY BAREFOOT THE QUIXTAR REVOLUTION DISCOVER THE NEW HIGH-TECH, HIGH-TOUCH WORLD OF MARKETING 1 132 09060909060206030808 MLM 13080207 090608080706 040300020907000608 QUIXTAR 0102000403 000405020802060309010209020106

More information

untitled

untitled 13 130006010607ィケ07ィェ0609ィ 01ィ ィーィ 05ィィ07 03090002ィェィケ0209ィェィ 05ィーィ 08 ツ02ィェィコ0609ィ 030502ィェィ 05ィーィ ィェィィ0905ィ 090609ィェィ 05ィィィェ010806ィャ 0904000608ィ ィェィィ07: 01ィィィ 00ィェ0609ィーィィィコィ ィィ 07080600ィィ05ィ ィコィーィィィコィ

More information

ィィ 0108ィョ00ィィ01 ィョ ツ02ィ ィェィィィコ0609, 08ィ 0408ィ ィ 06ィーィ ィェィェ0401 ィコ06ィャ07ィ ィェィィ02ィヲ 00ィ ィヲィコ ィー: 07 ツ02ィ ィェ ィコィー04 09 ィ

ィィ 0108ィョ00ィィ01 ィョ ツ02ィ ィェィィィコ0609, 08ィ 0408ィ ィ 06ィーィ ィェィェ0401 ィコ06ィャ07ィ ィェィィ02ィヲ 00ィ ィヲィコ ィー: 07 ツ02ィ ィェ ィコィー04 09 ィ 130206080600ィィ02 ィョ ツ02ィェィィィコィィ! 06ィー06 ィョ ツ02ィ ィェ0602 07060906ィ ィィ02 08ィ 0408ィ ィ 06ィーィ ィェ06 090902ィャィィ08ィェ06 ィィ04090209ィーィェ06ィヲ ィコ0608070608ィ 02ィィ02ィヲ 00ィ ィヲィコ0806090600ィー, ィャィィ08060904ィャ 05ィィ01020806ィャ

More information

rus-07-Minilap-text.qxp

rus-07-Minilap-text.qxp 050601020803ィ ィェィィ02: 09ィー08. 00ィィィェィィ05ィ 07ィ 080609ィコ0607ィィ07 02ィ 0608ィョ010609ィ ィェィィ02 06ィェ09ィー08ィョィャ02ィェィー04 02ィ 08ィ ィ 06ィーィコィ ィィ 09ィー0208ィィ05ィィ04ィ 02ィィ07 0009ィーィョ07ィィィー0205ィケィェ0602 0905060906...........................

More information

1300ィ ィー0208ィィィ ィ ィィィィ, ィィ09ィー0608ィィィィ ィィ 05ィーィェ060008ィ 00ィィィィ 06ィ 0908ィィィィ XV 0908ィィ09ィー0609 ィC ィャ020909ィィ07,

1300ィ ィー0208ィィィ ィ ィィィィ, ィィ09ィー0608ィィィィ ィィ 05ィーィェ060008ィ 00ィィィィ 06ィ 0908ィィィィ XV 0908ィィ09ィー0609 ィC ィャ020909ィィ07, 130908ィ 07ィョィェ0609 01.06. 03ィョィー02030209ィー09ィィ02 0706 080804ィャィョ 05ィーィィ0902ィェィ 010802050502ィーィ 01. 06. 0904080307010200 0307060301030506000603 0302 0804040007 05060600030108 0104030909030608 04ィィ09. 1.

More information

/ ィ ィェィコィー-0302ィー0208ィ ィョ ィィィー0208ィ ィーィョ08ィェ06-07ィョィ 05ィ

/ ィ ィェィコィー-0302ィー0208ィ ィョ ィィィー0208ィ ィーィョ08ィェ06-07ィョィ 05ィ 13 13050006010300 0508060704010608010008 01 2 / 050209010003 06 0506080905 01 418 05ィ ィェィコィー-0302ィー0208ィ ィョ0800 2002 00. 09ィィィー0208ィ ィーィョ08ィェ06-07ィョィ 05ィィ02ィィ09ィーィィ ツ0209ィコィィィヲ ィィ05050609ィー08ィィ080609ィ

More information

CH_0_RU.p65

CH_0_RU.p65 13080200030805 03060906ィ ィィ02 0706 06ィ 08ィ 040609ィ ィェィィ06 09 06ィ 05ィ 09ィーィィ 0708ィ 09 ツ0205060902ィコィ 09 ィョ ツィ 09ィーィィ02ィャ ィャ060506010203ィィ 03ィ ィー08ィィ02ィィ07 0908ィ ィェ010208 04ィョィィ 0106ィャ0209 060505ィィ 08ィィィェ

More information

J Dop

J Dop 1305020006080905010808 0302090606060808: 0804060606 チ0305080607 000501090802 01ィョ080609ィ 02. 01ィィ03ィェ0202 ィ 0205ィケ02 09 09060902ィー09ィコ06ィヲ ィコィョ05ィケィーィョ0802: 060906ィ 02ィェィェ0609ィーィィ 0708ィィ09ィ ィーィェ06ィヲ 0902ィエィィ

More information

RA11.qxd

RA11.qxd 1300ィィ01ィ 02ィーィケ0907 04 0906 ツィェ07 1993 08. 0111 (135) 05ィィ09ィー0607ィ 01 2004 0206ィャ060907 ツィェィィィヲ ィェィ ィョィコ060906-070607ィョ050708ィェィィィヲ 03ィョ08ィェィ 05 05070605ィケィェ02 09ィィ01ィ ィェィェ07 04 0106T 040305 07ィコ08ィ

More information

TOM-2.vp

TOM-2.vp 13050601020803ィ ィェィィ02 03080201ィィ09050609ィィ02 ィコ ツィ 09ィーィィ II................................................... 5 0108ィ 00ィィ ツ0209ィコィィィヲ ィィ05050609ィー08ィ ィーィィ09ィェ04ィヲ ィャィ ィー0208ィィィ 05 09 010207ィー0205ィケィェ0609ィーィィ

More information

untitled

untitled 0801060106 0204020108 03080703030408 0108 04070505080200 0805040803: 000805 ツィョィエィィ02 090600ィ 03 0004ィ 0301ィョィエィィ02 090600ィ 03 00000205ィィ ツィィ02 090600ィ 09 0708060706090201ィィ03 00 チ02ィャィョ 08ィ 01ィョ02ィー0907

More information

r-01.p65

r-01.p65 130003010604080905010808 08050608 06 080800080805 01 5(35), 2004 0003010604080905010808 08050608 06 080800080805 04ィョ08ィェィ 05 090602ィィィ 05ィケィェ06-070605ィィィーィィ ツ0209ィコィィ01 ィィ09090502010609ィ ィェィィィヲ 5(35)

More information

oblogka_№2(5)_2007_.cdr

oblogka_№2(5)_2007_.cdr 13ァェァ゚ァ爰レァ゚ァモァヨァ罘荅レァ隗レァレ ァ゚ァム ァウァヨァモァヨァ筴-ァゥァムァ皎ムァユァヨ ァイァ爰罘罘レァレ (ァウァゥァカァー) 040200ィィ06ィェ04 06ィー 0309ィコ0609ィ 0106 00ィョ08ィャィ ィェ09ィコィ ィィィェィー020008ィィ080609ィ ィェ04 09 05ィコ06ィェ06ィャィィ ツ0209ィコィョ06 03ィィ04ィェィケ 0906070802010205ィケィェ0401

More information

cee didelis

cee didelis 13 0306ィー0802ィ ィィィー0205ィィ ィィィェィイ02ィコ02ィィ06ィェィェ0401 ィェィ 08ィコ06ィーィィィコ0609, 0502 ツ02ィェィィ02 0006 チ/05030602 ィィ 07020809ィィ ツィェィ 07 ィャ0201ィィ02ィィィェ09ィコィ 07 0706ィャ06ィエィケ 09 09ィー08ィ ィェィ 01 0002ィェィー08ィ 05ィケィェ06ィヲ

More information

033722rs.p65

033722rs.p65 13M M ARGHERITA 05ィーィィ08ィ 05ィケィェィ 07 ィャィ 03ィィィェィ 09 09ィョ03ィコ06ィヲ 06ィェ09ィー08ィョィコ02ィィィィ 0706 ィョ09ィーィ ィェ0609ィコ02 ィィ ィィ09070605ィイ040609ィ ィェィィ06 Washer-dryer Instructions for installation and use 13CIS GB 05ィーィィ08ィ

More information

Fungi4.p65

Fungi4.p65 130109080008 4 0006080206020805060104, 00060802060208050608020504 06 02060408000903010608 01040609080006 13122 0709070201ィィ ィャ0201ィィ02ィィィェ09ィコ06ィヲ ィャィィィコ06050600ィィィィ 080806070809050102050605 060507 チ03010608

More information

13A ィ ィコィーィョィ 05ィケィェ ィ ィコ02ィィ ィーィ ィー 04ィ 0906ィ 06ィヲ 07ィ ィコィ ィエィ ィーィケ ィョィ 05ィィィコィ 02ィィィィ 09ィーィ ィーィケィィ

13A ィ ィコィーィョィ 05ィケィェ ィ ィコ02ィィ ィーィ ィー 04ィ 0906ィ 06ィヲ 07ィ ィコィ ィエィ ィーィケ ィョィ 05ィィィコィ 02ィィィィ 09ィーィ ィーィケィィ 130304030103020309050106 013(350) 19 ェ 25 07ィェ09ィ 07 020007090903060607 060107010704000606 0306ィ 05ィィ 01ィョィャィ ィーィケ 06ィ ィィィャ07ィィ ツィャ02ィェィー02? vitaemo@news2000.com.ua www.2000.net.ua > 030603ィ 05ィョィヲ09ィーィ,

More information

<4D F736F F D20E05FEFEEEBEEEDF1EAE8E920EEE1E7EEF05FF0E0F4EBECEBEC203132EF20E8E8E8E8E820F1EAEEEFF3F120E42E727466>

<4D F736F F D20E05FEFEEEBEEEDF1EAE8E920EEE1E7EEF05FF0E0F4EBECEBEC203132EF20E8E8E8E8E820F1EAEEEFF3F120E42E727466> 130503090505080209020508070506000301010808 0906020902010608, 2013, 01 1, 09. 3-14 02ィ 04060804, 070806ィ 0502ィャ04, ィィィー0600ィィ 070208 631.45:546.16 doi: 10.15389/agrobiology.2013.1.3rus 080602040602010203

More information

One Blood.p65

One Blood.p65 130206 0202010207 0804020006 09060909030705080607 030202090202 08 04080506050007 080301 090600 08080409 000609080102 020201 090806060301 0908ィィ09ィーィィィ ィェ09ィコィィィヲ ィェィ ィョ ツィェ06-ィ 070605060002ィーィィ ツ0209ィコィィィヲ

More information

RA2.qxd

RA2.qxd 1300ィィ01ィ 02ィーィケ0907 04 0906 ツィェ07 1993 08. 012 (126) 0506ィーィィィヲ 2004 0206ィャ060907 ツィェィィィヲ ィェィ ィョィコ060906-070607ィョ050708ィェィィィヲ 03ィョ08ィェィ 05 05070605ィケィェ02 09ィィ01ィ ィェィェ07 04 0106T 040305 07ィコ08ィ 07ィェィィ

More information

Jour_2006_2.p65

Jour_2006_2.p65 13030403050607030102050605 06 0209020305060002 01.05. 0406040609 03040604020208 030403050607030102050606 06 000309080106050004 0804060006010809060508000606 0209020305060008* 00 09ィーィ ィーィケ02 09020102ィー0907

More information

cover.qxd

cover.qxd 13 130609/0006 チ 0805ィィィェィィ ツ0209ィコ0602 08ィョィコ0609060109ィー0906 00ィー06080602 ィィ0401ィ ィェィィ02 WHO/HTM/TB/2004.329 020207ィ 08ィーィ ィャ02ィェィー 000209ィーィ ィェ0609ィィィーィケ ィーィョィ 0208ィコィョ05020403 020207ィ 08ィーィ ィャ02ィェィー

More information

1304ィ ィ 06ィーィ ィェ02ィェィ ツ ィェィィィィ ィィィヲ09ィコ06ィヲ 08ィコィ 0102ィャィィィィ 01ィ ィョィコ 08ィィ04ィィィコ06-ィー0201ィェィィ ツ0209ィコ06ィャ ィィィェ09ィーィィィ

1304ィ ィ 06ィーィ ィェ02ィェィ ツ ィェィィィィ ィィィヲ09ィコ06ィヲ 08ィコィ 0102ィャィィィィ 01ィ ィョィコ 08ィィ04ィィィコ06-ィー0201ィェィィ ツ0209ィコ06ィャ ィィィェ09ィーィィィ 1301ィ 0708ィ 09ィ 01 08ィョィコ0607ィィ09ィィ 05ィ 090205ィケ0209 080502ィコ09ィ ィェ0108 01ィィィコ0605ィ 0209ィィ ツ 0006010205ィィ080609ィ ィェィィ02 08ィ 0907080609ィー08ィ ィェ02ィェィィ07 09040906ィコ06 ツィ 09ィー06ィーィェ0401 090605ィェ 09 0705ィ 04ィャ02

More information

ィェ ィ ィェィィ080609ィ ィェィィィィ 0905ィョ03ィ 04, ィェ06 ィェ02 ィー060001ィ, ィコ060001ィ 0904 ィィィャ0202ィー ィコ06ィェィコ0802ィーィェ04ィャィィ 07ィ 02ィィ0

ィェ ィ ィェィィ080609ィ ィェィィィィ 0905ィョ03ィ 04, ィェ06 ィェ02 ィー060001ィ, ィコ060001ィ 0904 ィィィャ0202ィー ィコ06ィェィコ0802ィーィェ04ィャィィ 07ィ 02ィィ0 130802040700: 0308060208060506020902010608 01060502080403010606: 03050605 0906 050304050305010403 0202080805080603090505060008, 0304030205060800090807020603 06010603040305 020908 0809060106000605060200

More information

MG_ vp

MG_ vp 000201ィ ィェィィ04ィャ04 07060908020301ィ 06ィエ020006 0102ィヲ09ィー09ィィ07 0502ィコィ 0809ィー09 ィェィ 07050601 ィィ 04ィェィ ツ02ィェィィ02 00ィ 08ィャィ ィコ060002ィェ02ィーィィィコィィ 010507 ィ 02040607ィ 09ィェ0609ィーィィ 0502ィコィ 0809ィー09 ィョ ィ 020802ィャ02ィェィェ0401*

More information

untitled

untitled 1305060303010207 090709090306030105 ISSN 1684-8438 060902ィェィケィC 04ィィィャィ 2007 N23-24 13070208 574:581.5 05ィー0207ィェ06ィヲ ィ 06050502ィー02ィェィケ 060902ィェィケィC04ィィィャィ 2007 N 23ィC24 04ィ ィ 06 ツィィィヲ ィ 06050502ィー02ィェィケ

More information