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

Similar documents
<D1E0F3F8EAE8ED312E7670>

Gender.pm6

Accounting Report

< FCEE2F7E8EDF1EAE8E95FCAF0E8ECE8EDE0EBFCEDEEE520EDE02E2E2E>

Na2008_10

tom2.p65

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

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

Untitled-1

13

4_2009.p65

VP:CorelVentura 7.0

untitled

Est_na_perelome.pdf

R03_LAVAMAT_54610_01_oS_5kg_sy_ZP.bk

untitled

KITMIR2_04.vp

Aksenov.vp

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

МР153.pm6

-15_Kam

untitled

1307 チ チ チ01040

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

untitled

untitled

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

<443A5C4F6C65675CC8C8CCCA5CD1DAC5C7C4DB5CF1FAE5E7E42DD0F3F1F1E05CCCE0F2E5F0E8E0EBFB20D1FAE5E7E4E05C56656E C546F6D312E7670>

Îáëîæêà1.pm6

ULANOV.qxd

TIT.p65

BEJ pmd

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

J1_1998

Verstka_#14.FH10

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

Untitled-2

R03_KB9820E_EU_Compact_R5.bk

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

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

GIS_Nov_Kar

Libretto_New_RS

2_2004_

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

soderzhanie-05.indd

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

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

MP-14.pmd

OKO-LAVAMAT_88840_advanced.bk

Untitled-30

3 A3 10

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

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


World Bank Document

25_rozdil.indd

028265rs.p65

Mova_12.p65

R03_LAVALOGIC_1820_LCD_5kg_BT_db.bk

059_1

R03_OKO-LAVAMAT_LAVALOGIC_1810_LCD.bk

772_a.p65

Ãëÿíåö.pm6

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

Maket.pmd

ОГЛАВЛЕНИЕ

<50686F746F73686F705FD0E5ECE5E7EEE2F1EAE8E95F E7670>

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

Ò_1.PM6

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

hydra main.pm6

Vest_2_2006.pmd

Untitled-1

katalog.p65

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

untitled

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

rus-07-Minilap-text.qxp

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

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

CH_0_RU.p65

J Dop

RA11.qxd

TOM-2.vp

untitled

r-01.p65

oblogka_№2(5)_2007_.cdr

cee didelis

033722rs.p65

Fungi4.p65

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

<4D F736F F D20E05FEFEEEBEEEDF1EAE8E920EEE1E7EEF05FF0E0F4EBECEBEC203132EF20E8E8E8E8E820F1EAEEEFF3F120E42E727466>

One Blood.p65

RA2.qxd

Jour_2006_2.p65

cover.qxd

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

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

MG_ vp

untitled

Transcription:

1300020508020005080607 010205070208040506000301010407 0701060003040506060306 0600030106 00.00. 09020002010205020008 080808070905060306 0004 チ0605090606030905010207 00080603000806060806 06 0806090304010306060806 0908090204080602040608 080200030507060304010207 01040808060806 06 0007090506060003020608 07.00. 09ィ 07ィコ060909ィコィィィヲ, 08.00. 0600ィェィ ィー02ィェィコ06 0108 チ080905010407 08070405 OPENGL 03090801030608 050108010607 000609ィコ09ィ 2007

13070208 681.3.07 090908 32.973.26-018.2 0934 09ィ 07ィコ060909ィコィィィヲ 07.00., 0600ィェィ ィー02ィェィコ06 08.00. 01ィ ツィ 05ィケィェ04ィヲ ィコィョ0809 OpenGL. 00.: 050305ィ ィェ02ィーィ 05ィェィ ィェィィィヲ, 2007. 221c. ISBN 978-5-903242-02-3 01ィ 09ィー0607ィエィ 07 ィコィェィィ00ィ 0708020109ィーィ 09050702ィー 0906ィ 06ィヲ 0708ィ ィコィーィィ ツ0209ィコ0602 08ィョィコ0609060109ィー0906 0706 08ィ ィ 06ィー02 09 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ06ィヲ OpenGL. 04ィョィコ0609060109ィー0906 08ィ 0408ィ ィ 06ィーィ ィェ06 09 ィョ ツ02ィー06ィャ 060704ィーィ ツィー02ィェィィ07 ィコィョ0809ィ 060806ィャ07ィケ06ィー0208ィェィ 07 0008ィ 00ィィィコィ 07 ィェィ 00ィ ィコィョ05ィケィー02ィー02 0000ィィ08 000107 ィィィャ. 00.00. 0906ィャ06ィェ06090609ィ. 08ィェィィ00ィ 09ィコ0506 ツィ 02ィー 09 0902ィ 07 0607ィィ09ィ ィェィィ02 ィ ィ 0406090401 090604ィャ0603ィェ0609ィー02ィヲ OpenGL ィィ 0708ィィ02ィャ04 08ィ ィ 06ィー04 09 ィ ィィィ 05ィィ06ィー02ィコ06ィヲ, 09060708060904 0607ィーィィィャィィ04ィ 02ィィィィ 0708ィィ05060302ィェィィィヲ ィィ ィィ09070605ィケ040609ィ ィェィィ07 OpenGL 09 08ィ 0405ィィ ツィェ0401 09080201ィ 01 0708060008ィ ィャィャィィ080609ィ ィェィィ07. 08ィェィィ00ィ 09ィェィ ィ 0302ィェィ 090607080609ィ ィャィィ ィィ 0708ィ ィコィーィィ ツ0209ィコィィィャィィ 04ィ 01ィ ィェィィ07ィャィィ. 04ィョィコ0609060109ィー0906 08ィ 0909 ツィィィーィ ィェ06 ィェィ ツィィィーィ ィー020502ィヲ, 04ィェィ ィコ06ィャ0401 09 070404ィコィ ィャィィ 0708060008ィ ィャィャィィ080609ィ ィェィィ07 05/C++ ィィ ィィィャ0206ィエィィ01 0708020109ィーィ 090502ィェィィ02 06 ィ ィ 0406090401 ィ 05000608ィィィーィャィ 01 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ. 0402ィコ06ィャ02ィェ01ィョ02ィー0907 09ィーィョ0102ィェィーィ ィャ ィャィ ィー02ィャィ ィーィィ ツ0209ィコィィ01 ィィ 0708ィィィコ05ィ 01ィェ0401 09070202ィィィ 05ィケィェ0609ィー02ィヲ, ィ 0907ィィ08ィ ィェィーィ ィャ, ィェィ ィョ ツィェ04ィャ 0906ィー08ィョ01ィェィィィコィ ィャ ィィ 090902ィャ 030205ィ 06ィエィィィャ ィィ04ィョ- ツィィィーィケ OpenGL 09 0903ィ ィー0402 090806ィコィィ. 060401ィ ィェィィ02 0706010006ィー06090502ィェ06 09 08ィ ィャィコィ 01 06ィ 08ィ 040609ィ ィー0205ィケィェ06ィヲ 0708060008ィ ィャィャ04 06080608ィャィィ080609ィ ィェィィ02 09ィィ09ィー02ィャ04 ィィィェィェ0609ィ 02ィィ06ィェィェ060006 06ィ 08ィ 040609ィ ィェィィ07 09 00010707. 04020202ィェ0402ィェィー04: 01ィィィコィィィェ 03.00., 070806000209090608, 0106ィコィー0608 00ィィ04.-ィャィ ィー. ィェィ ィョィコ, 00-ィー 0000ィィ08 000107 080804050609 08.05., ィコィ ィェ01ィィ01ィ ィー 00ィィ04.-ィャィ ィー. ィェィ ィョィコ, 00-ィー 0000ィィ08 000107 ISBN 978-5-903242-02-3 08 09ィ 07ィコ060909ィコィィィヲ 07.00., 0600ィェィ ィー02ィェィコ06 08.00. 08 020202 050305ィ ィェ02ィーィ 05ィェィ ィェィィィヲ, 2007

13020005ィ 090502ィェィィ02 03080201ィィ09050609ィィ02......................... 7 0009020102ィェィィ02........................... 11 I 0209ィェ060904 OpenGL 15 1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909 ィィ OpenGL 17 1.1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909................. 17 1.2. 010206ィャ02ィー08ィィ ツ0209ィコィィ02 ィャ06010205ィィ................ 19 1.3. 08ィェィィィャィ 02ィィ07........................ 20 1.4. 00ィ ィー0208ィィィ 0504....................... 21 1.5. 02090902ィエ02ィェィィ02....................... 22 1.6. 00ィィ08ィーィョィ 05ィケィェィ 07 ィコィ ィャ0208ィ................. 22 1.7. 0805000608ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ................ 23 2. 0009020102ィェィィ02 09 OpenGL 25 2.1. 0209ィェ0609ィェ0402 090604ィャ0603ィェ0609ィーィィ................ 25 2.2. 06ィェィー02080002ィヲ09 OpenGL.................. 26 2.3. 080801ィィィー02ィコィーィョ08ィ OpenGL................. 28 2.4. 05ィィィェィーィ ィコ09ィィ09 ィコ06ィャィ ィェ01................... 30 2.5. 0308ィィィャ0208 0708ィィ05060302ィェィィ07................. 31 2.6. 0806ィェィー080605ィケィェ0402 09060708060904................ 36 3

134 020005ィ 090502ィェィィ02 3. 04ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 39 3.1. 03080602020909 06ィ ィェ06090502ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07.......... 39 3.2. 00020803ィィィェ04 ィィ 0708ィィィャィィィーィィ0904................ 41 3.3. 02070208ィ ィー0608ィェ0402 09ィコ06ィ ィコィィ glbegin / glend........ 43 3.4. 02ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ.................. 47 3.5. 00ィ 0909ィィ0904 09020803ィィィェ.................... 49 3.6. 0806ィェィー080605ィケィェ0402 09060708060904................ 51 4. 03080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 55 4.1. 04ィ ィ 06ィーィ 09 ィャィ ィー08ィィ02ィ ィャィィ.................. 56 4.2. 0006010205ィケィェ06-09ィィ0106090402 07080206ィ 08ィ 040609ィ ィェィィ07......... 58 4.3. 03080602ィコ02ィィィィ........................ 60 4.4. 02ィ 05ィ 09ィーィケ 0904090601ィ.................... 63 4.5. 0806ィェィー080605ィケィェ0402 09060708060904................ 64 5. 00ィ ィー0208ィィィ 0504 ィィ 06090902ィエ02ィェィィ02 65 5.1. 0006010205ィケ 06090902ィエ02ィェィィ07................... 65 5.2. 05070202ィィ00ィィィコィ 02ィィ07 ィャィ ィー0208ィィィ 050609.............. 67 5.3. 0207ィィ09ィ ィェィィ02 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ............. 69 5.4. 05060401ィ ィェィィ02 05000002ィコィーィ ィーィョィャィ ィェィ.............. 73 5.5. 0806ィェィー080605ィケィェ0402 09060708060904................ 74 6. 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 77 6.1. 0306010006ィー0609ィコィ ィー02ィコ09ィーィョ0804................. 77 6.2. 01ィ 05060302ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー04.......... 81 6.3. 0602ィコ09ィーィョ08ィェ0402 ィコ06060801ィィィェィ ィー04............... 84 6.4. 0806ィェィー080605ィケィェ0402 09060708060904................ 87 7. 02070208ィ 02ィィィィ 09 07ィィィコ09020507ィャィィ 89 7.1. 05ィャ0203ィィ09ィ ィェィィ02 ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ 0708060408ィ ツィェ0609ィーィケ..... 90 7.2. 09ィョ000208-ィェィ ィコ0607ィィィー0205ィケ................... 93 7.3. 09ィョ000208 ィャィ 09ィコィィ...................... 94 7.4. 070708ィ 090502ィェィィ02 08ィ 09ィー0208ィィ04ィ 02ィィ02ィヲ.............. 96 7.5. 0806ィェィー080605ィケィェ0402 09060708060904................ 98

13020005ィ 090502ィェィィ02 5 II 0308ィィ02ィャ04 08ィ ィ 06ィー04 09 OpenGL 99 8. 0108ィ 00ィィ ツ0209ィコィィ02 ィ 05000608ィィィーィャ04 ィェィ 0609ィェ060902 OpenGL 101 8.1. 0709ィー08ィ ィェ02ィェィィ02 09ィーィョ0702ィェ ツィ ィー0609ィーィィ.............. 101 8.2. 030609ィー080602ィェィィ02 ィー02ィェ02ィヲ................... 103 8.3. 050208ィコィ 05ィケィェ0402 06ィー08ィ 0302ィェィィ07................ 109 8.4. 0806ィェィー080605ィケィェ0402 09060708060904................ 113 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ 115 9.1. 020800ィ ィェィィ04ィ 02ィィ07 0708ィィ05060302ィェィィ07.............. 115 9.2. 0207ィーィィィャィィ04ィ 02ィィ07 09040406090609 OpenGL........... 120 9.3. 0806ィェィー080605ィケィェ0402 09060708060904................ 128 III 05060401ィ ィェィィ02 0708ィィ05060302ィェィィィヲ 09 OpenGL 131 10.OpenGL-0708ィィ05060302ィェィィ07 09 0706ィャ06ィエィケ06 GLUT 133 10.1. 05ィー08ィョィコィーィョ08ィ GLUT-0708ィィ05060302ィェィィ07............ 133 10.2. GLUT 09 0908020102 Microsoft Visual C++ 6.0...... 137 10.3. GLUT 09 0908020102 Microsoft Visual C++ 2005..... 139 10.4. GLUT 09 0908020102 Borland C++ Builder 6....... 140 10.5. GLUT 09 0908020102 Borland C++ Builder 2006...... 141 11.0609070605ィケ040609ィ ィェィィ02 OpenGL 09 MFC ィィ VCL 145 11.1. 0806ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ................. 146 11.2. 0709ィーィ ィェ0609ィコィ 000608ィャィ ィーィ 07ィィィコ09020502ィヲ............ 147 11.3. 0806ィェィー02ィコ09ィー 08ィィ090609ィ ィェィィ07 (render context)........ 148 11.4. 0805ィ 0909 GLRC...................... 149 11.5. 0609070605ィケ040609ィ ィェィィ02 OpenGL c MFC........... 150 11.6. 0609070605ィケ040609ィ ィェィィ02 OpenGL c VCL............ 153 12.OpenGL 09.NET 157 12.1. GLUT 09 0908020102 Microsoft Visual C# 2005...... 157 12.2. 0609070605ィケ040609ィ ィェィィ02 OpenGL 09 WindowsForms...... 160

136 020005ィ 090502ィェィィ02 IV 0308ィィ05060302ィェィィ07 163 08. 0308ィィィャィィィーィィ0904 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT 165 09. 0202ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ0402 0708060008ィ ィャィャ04 169 09.1. 0308ィィィャ0208 1: 03080609ィー0602 GLUT-0708ィィ05060302ィェィィ02....... 169 09.2. 0308ィィィャ0208 2: 0006010205ィケ 06090902ィエ02ィェィィ07 OpenGL....... 173 09.3. 05ィ 0008ィョ04ィコィ BMP 00ィ ィヲ05ィ................. 178 09.4. 0308ィィィャ0208 3: 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 ィィ ィ ィェィィィャィ 02ィィ07...... 186 09.5. 0805ィ 0909 010507 08ィ ィ 06ィー04 09 OpenGL 09 Win32........ 195 00. 0308ィィィャ020804 0708ィ ィコィーィィ ツ0209ィコィィ01 04ィ 01ィ ィェィィィヲ 201 00.1. Cornell Box....................... 201 00.2. 00ィィ08ィーィョィ 05ィケィェ0402 ツィ 0904................... 204 00.3. 06ィェィー0208ィ ィコィーィィ09ィェ04ィヲ 05ィ ィェ0103ィ 00ィー.............. 206 09ィィィー0208ィ ィーィョ08ィ 215 03080201ィャ02ィーィェ04ィヲ ィョィコィ 04ィ ィー0205ィケ 217

1303080201ィィ09050609ィィ02 0806ィャ07ィケ06ィー0208ィェィ 07 (ィャィ 03ィィィェィェィ 07) 0008ィ 00ィィィコィ 06 ツ02ィェィケ ィャ06050601ィ 07 01ィィ0902ィィ0705ィィィェィ. 030607090502ィェィィ02 ィャィ 03ィィィェィェ06ィヲ 0008ィ 00ィィィコィィ ィコィ ィコ ィェィ ィョ ツィェ06-ィィ09090502010609ィ ィー0205ィケ09ィコ060006 ィェィ 0708ィ 090502ィェィィ07 06ィ 04 ツィェ06 090907040409ィ 06ィー 09 ィィィャ02ィェ02ィャ 08ィヲ0902ィェィ 05ィ 0402080502ィェ01ィ (Ivan Sutherland), ィコ06ィー060804ィヲ 09 1963 00. 0607ィョィ 05ィィィコ0609ィ 05 09ィーィ ィーィケ06 09 080204ィョ05ィケィーィ ィーィ ィャィィ 09090602ィヲ 01ィィ09090208ィーィ 02ィィ06ィェィェ06ィヲ 08ィ ィ 06ィー04. 00 1967 00. ィ 0405ィ 06ィ 08ィ 040609ィ ィェィ 07080600020909ィィ06ィェィ 05ィケィェィ 07 0008ィョ0707ィ ACM SIGGRAPH. 00 08ィ ィェィェィィィヲ 070208ィィ0601 08ィ 0409ィィィーィィ07 ィャィ 03ィィィェィェ06ィヲ 0008ィ 00ィィィコィィ ィ 09090602ィィィ 02ィィ07 SIGGRAPH 08ィ 0409ィィ09ィ 05ィ 09ィケ ィコィ ィコ ィェィ ィョ ツィェ06-ィー0201ィェィィ ツ0209ィコィ 07 060800ィ ィェィィ04ィ 02ィィ07. 00 1983 00. ィ 0405 09000608ィャィィ080609ィ ィェ 0806ィャィィィー02ィー SIGGRAPH 0706 06ィ 08ィ 040609ィ ィェィィ06 010507 09060902080302ィェ09ィー090609ィ ィェィィ07 06ィ ィョ ツ02ィェィィ07 ィャィ 03ィィィェィェ06ィヲ 0008ィ 00ィィィコ02 ィィ ィィ09070605ィケ040609ィ ィェィィ07 0202 09 ィョ ツ02ィ ィェ06ィャ 0708060202090902. 0004 09ィーィ 05ィィ 0909ィィ0102ィー020507ィャィィ 0108ィ ィャィ ィーィィ ツ0209ィコィィ01 ィィ04ィャ02ィェ02ィェィィィヲ, ィコ06ィー06080402 070806ィィ04060305ィィ 09 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコ02 09 1990-02 00060104. 030905ィィ 09 ィコ06ィェ0202 80-01 0008ィ 00ィィ ツ0209ィコィィ02 08ィ ィ 06 ツィィ02 09ィーィ ィェ02ィィィィ 09ィー06ィィ05ィィ ィ 0204ィョィャィェ06 010608060006 ィィ 08ィ ィ 06ィーィ ィーィケ 09 ィェィィィャィィ ィャ060005ィィ ィー0605ィケィコ06 09 06 ツ02ィェィケ ィ 0600ィ ィー0401 060800ィ ィェィィ04ィ 02ィィ0701 (ィコィ ィコ 0708ィ 09ィィ0506 ィィ04 000308), ィー06 09 ィコ06ィェ0202 1990-01 0008ィ 00ィィ ツ0209ィコィィ02 09ィーィ ィェ02ィィィィ 09 09070605ィェ02 ィョ0106090502ィー090608ィィィー0205ィケィェ04ィャィィ 090604ィャ0603ィェ0609ィー07ィャィィ 04ィ 1000 USD 09ィーィ 05ィィ 010609ィーィョ07ィェ04 ィョィェィィ09020809ィィィー02ィーィ ィャ ィィ 01ィ 0302 06ィー010205ィケィェ04ィャ 09ィーィョ0102ィェィーィ ィャ. 030905ィィ 09 1980-02 ィィ09070605ィケ040609ィ 05ィ 09ィケ 070802ィィィャィョィエ0209ィー0902ィェィェ06 0902ィコィー0608ィェィ 07 0008ィ 00ィィィコィ, ィー06 09 ィコ06ィェ0202 1990-01 08ィ 09ィー080609ィ 07 070605ィェ06020902ィーィェィ 07 0008ィ 00ィィィコィ 0706 ツィーィィ 070605ィェ0609ィーィケ06 0904ィー0209ィェィィ05ィ 0902ィコィー0608ィェィョ06. 06080201ィャ0208ィェィ 07 0008ィ 00ィィィコィ 09ィーィ 05ィ 09ィー0605ィケ 0302 08ィ 0907080609ィー08ィ ィェ02ィェィェ06ィヲ, ィコィ ィコ 0109ィョ01ィャ0208ィェィ 07, 070609ィコ0605ィケィコィョ 07060709ィィ05ィィ09ィケ ィィ ィ 0409ィー0806 09060902080302ィェ09ィー09ィョ06ィー0907 09ィィ0102060705ィ ィー04 09 0008ィ 00ィィ ツ0209ィコィィィャィィ ィョ09ィコ0608ィィ- 7

138 020005ィ 090502ィェィィ02 ィー020507ィャィィ ィィ z-ィ ィョ00020806ィャ. 03ィ 08ィ 05050205ィケィェ06 09 ィィ04ィャ02ィェ02ィェィィ07ィャィィ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ 0707ィ 08ィ ィーィョ0804 070806ィィ09010601ィィ05ィィ 0005ィョィ 06ィコィィ02 ィャ02ィーィ ィャ060800060404 09 0708060008ィ ィャィャィェ06ィャ 06ィ 02090702 ツ02ィェィィィィ. 0009050201 04ィ 03ィィ0806ィコィィィャ 08ィ 0907080609ィー08ィ ィェ02ィェィィ02ィャ 09 1970-02 00060104 0008ィ 00ィィ ツ0209ィコィィ01 ィ ィィィ 05ィィ06ィー02ィコ (09 0609ィェ0609ィェ06ィャ 0902ィコィー0608ィェ0401, 09 ィ 0605ィケ03ィィィェ09ィー0902 09090602ィャ 000608ィー08ィ ィェィェ0401) 09 1980-02 00060104 0706ィー0802ィ 0609ィ 050609ィケ ィェ0209ィコ0605ィケィコ06 05ィーィ 070609 09ィーィ ィェ01ィ 08ィーィィ04ィ 02ィィィィ 0008ィ 00ィィ ツ0209ィコ060006 06ィ 02090702 ツ02ィェィィ07 (Core System, PHIGS, GKS), ツィー06ィ 04 ィコ 0902080201ィィィェ02 1990-01 0708ィィィヲィーィィ ィコ 02ィーィコ0804ィー06ィヲ 0108ィ 00ィィ ツ0209ィコ06ィヲ 09ィィィ 05ィィ06ィー02ィコ02 (OpenGL). 00 ィェィ 09ィー0607ィエ0202 090802ィャ07 ィャィェ0600ィィ02 00ィョィェィコ02ィィィィ 05ィー06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ 0802ィ 05ィィ040609ィ ィェ04 ィ 0707ィ 08ィ ィーィェ06. 000902 05ィーィィ 0708060202090904 ィェ02 ィャ060005ィィ ィェ02 09ィコィ 04ィ ィーィケ0907 ィェィ 070802070601ィ 09ィ ィェィィィィ ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ 09 ィョィェィィ09020809ィィィー02ィーィ 01. 0201ィェィ ィコ06, 01ィ 0302 09 050108 0106 ィコ06ィェ02ィ 1970-01 0006010609 ィャィ 03ィィィェィェィ 07 0008ィ 00ィィィコィ 0609ィーィ 09ィ 05ィ 09ィケ ィェ0206ィ 04 ツィェ04ィャ 07080201ィャ02ィー06ィャ 09080201ィィ ィョィェィィ09020809ィィィー02ィー09ィコィィ01 ィコィョ08090609. 00 ィョ ツ02ィ ィェ0401 0705ィ ィェィ 01 ACM 1978 00. ィャィ 03ィィィェィェィ 07 0008ィ 00ィィィコィ 06ィー09ィョィー09ィー090609ィ 05ィ. 00 1980-02 00060104 ィィ 09 0702080906ィヲ 0706050609ィィィェ02 1990-01 020205ィケ06 ィコィョ0809ィ ィ 040506 ィィ04ィョ ツ02ィェィィ02 ィィ 0708060008ィ ィャィャィィ080609ィ ィェィィ02 ィ ィ 0406090401 ィ 05000608ィィィーィャ0609 0008ィ 00ィィィコィィ (08ィィ090609ィ ィェィィ02 070807ィャ06ィヲ ィィ ィコ08ィィ0906ィヲ, ィコ05ィィ0707ィィ080609ィ ィェィィ02, 03ィー08ィィ010609ィコィ ィィ05ィィ 08ィ 09ィー0208ィィ04ィ 02ィィ07 ィャィェ060006ィョ000605ィケィェィィィコィ, 0601ィェ06080601ィェ0402 ィコ06060801ィィィェィ ィー04 ィィ ィ 0000ィィィェィェ0402 07080206ィ 08ィ 040609ィ ィェィィ07, 09ィィ0106090402 07080206ィ 08ィ 040609ィ ィェィィ07) [1, 2]. 0602070208ィケ, 0708ィィ ィェィ 05ィィ ツィィィィ ィィィェィー02080002ィヲ09ィ 0708ィィィコ05ィ 01ィェ060006 0708060008ィ ィャィャィィ080609ィ ィェィィ07 (API) 09040906ィコ060006 ィョ080609ィェ07, ィコ060001ィ 050502ィャ02ィェィーィ 08ィェ0402 00ィョィェィコ02ィィィィ ィィィャ0206ィー0907 09 ィ ィィィ 05ィィ06ィー02ィコ02 OpenGL ィィ 04ィ ツィ 09ィーィョ06 0802ィ 05ィィ04ィョ06ィー0907 ィ 0707ィ 08ィ ィーィェ06, 0708ィィ03050609ィケ 0702080209ィャ06ィー0802ィーィケ ィコ06ィェ02020702ィィ06 ィコィョ0809ィ. 00 09ィ ィャ06ィャ 01020502, 04ィ ツ02ィャ ィョ ツィィィーィケ0907 ィョィャィェ0603ィ ィーィケ 09ィー0605ィ ィィィコ06ィャ, 020905ィィ ィョ ィコィ 0301060006 09 08ィョィコィ 01 ィコィ 05ィケィコィョ0507ィー0608. 03060709ィィ05ィ 09ィケ 090604ィャ0603ィェ0609ィーィケ 09ィコ0506 ツィィィーィケ 09 ィコィョ0809 ィ 06050202 09050603ィェ0402 ィィ ィ 06050202 0906090802ィャ02ィェィェ0402 08ィ 0401020504 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ, ィーィ ィコィィ02 ィコィ ィコ ィー02ィコ09ィーィョ08ィィ080609ィ ィェィィ02, ィ ィェィィィャィ 02ィィ07. 06ィャ02ィェィェ06 09 090606ィー0902ィー09ィー09ィィィィ 09 05ィー06ィヲ 06ィ ィエ02ィャィィ08060906ィヲ ィー02ィェ0102ィェ02ィィ02ィヲ 050906050602ィィ06ィェィィ080609ィ 05 ィコィョ0809 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ ィェィ 00ィ ィコィョ05ィケィー02ィー02 0000ィィ08 000107 (09 1999 00. ィィィェィー0208ィェ02ィー-09020809ィィ06 ィコィョ0809ィ ィャ0603ィェ06 ィェィ ィヲィーィィ ィェィ 09ィ ィヲィー02 http://courses.graphicon.ru). 05050201ィョ07 0708ィィィェ02ィィ07ィョ "ィョ ツィィ09ィケ, 010205ィ 07"(learning-by-doing), ィャ04, ィコ0806ィャ02 ィー08ィ 01ィィ02ィィ06ィェィェ0401 0502ィコ02ィィィヲ, 09ィコ0506 ツィ 02ィャ 09 ィコィョ0809 0904070605ィェ02ィェィィ02 5-6 ィェ02ィ 0605ィケ-

13020005ィ 090502ィェィィ02 9 03ィィ01 07080602ィコィー0609, ィコィ 030104ィヲ 07080601060503ィィィー0205ィケィェ0609ィーィケ06 010902 ィェ02010205ィィ. (0308ィィィャ020804 ィーィ ィコィィ01 04ィ 01ィ ィェィィィヲ 0904 ィェィ ィヲ0102ィー02 09 05ィー06ィヲ ィコィェィィ0002.) 01ィ 09ィー0607ィエィ 07 ィコィェィィ00ィ 0708ィィ0409ィ ィェィ 0706ィャ06 ツィケ 09ィーィョ0102ィェィーィ ィャ 09 0904070605ィェ02ィェィィィィ 05ィーィィ01 07080602ィコィー0609. 00 06ィー05ィィ ツィィ02 06ィー 0108ィョ00ィィ01 090708ィ 0906 ツィェ0401 07ィョィ 05ィィィコィ 02ィィィヲ 0706 OpenGL, 09 ィコィェィィ0002 0006090608ィィィーィケ0907 ィェ02 ィー0605ィケィコ06 06 ィー06ィャ, ツィー06 ィィィャ0202ィー0907 09 ィ ィィィ 05ィィ06ィー02ィコ02, ィェ06 ィィ 06 ィー06ィャ, ィコィ ィコ 05ィーィィィャィィ 0908020109ィー09ィ ィャィィ 05000002ィコィーィィ09ィェ06 070605ィケ040609ィ ィーィケ0907. 01ィ 0708ィィィャ0208, ィコィ ィコ 09ィィ04ィョィ 05ィィ04ィィ080609ィ ィーィケ 040208ィコィ 05ィケィェ0402 06ィ ィイ02ィコィー04, ィコィ ィコ 070609ィー0806ィィィーィケ ィー02ィェィィ. 0006010205ィィ08ィョ07 0802ィ 05ィケィェィョ06 08ィ ィ 06 ツィョ06 09080201ィョ, ィャ04 ィョ ツィィィャ 09ィーィョ0102ィェィー0609 09ィ ィャ0609ィー0607ィー0205ィケィェ06ィヲ 08ィ ィ 06ィー02. 00 05ィーィィ01 ィョ09050609ィィ0701 07060906ィ ィィ02 0706 ィィ09070605ィケ040609ィ ィェィィ06 06ィーィコ0804ィー06ィヲ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ ィィ0008ィ 02ィー 09ィ 03ィェィョ06 080605ィケ. 0809ィー060804 ィ 05ィ 000601ィ 08ィェ04 03. 080609ィーィィィコ060906ィヲ ィィ 08. 08ィ 03ィーィ ィェ060906ィヲ 04ィ 0706ィャ06ィエィケ 09 0706010006ィー0609ィコ02 ィー02ィコ09ィーィ ィィ ィィ05050609ィー08ィ 02ィィィヲ. 07.00. 09ィ 07ィコ060909ィコィィィヲ 0807080205ィケ 2007 000601ィ

13

130009020102ィェィィ02 000902, ツィー06 ィャ04 09ィィ01ィィィャ ィェィ 05ィコ08ィ ィェ02 ィコ06ィャ07ィケ06ィー0208ィェ060006 ィャ06ィェィィィー0608ィ, 0709050702ィー0907 080204ィョ05ィケィーィ ィー06ィャ 08ィ ィ 06ィー04 ィ 05000608ィィィーィャ0609 09ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィィヲ. 06ィーィィ ィ 05000608ィィィーィャ04 080203ィ 06ィー ィーィ ィコィィ02 04ィ 01ィ ツィィ, ィコィ ィコ 09ィィ04ィョィ 05ィィ04ィ 02ィィ07 ィー02ィコ09ィーィ 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ 04ィ 01ィ ィェィェ060006 ィェィ ィ 0608 0308ィィ00ィー0609, 06ィー06ィ 08ィ 0302ィェィィ02 ィョィコィ 04ィ ィー020507 ィコィョ08090608ィ, 08ィィ090609ィ ィェィィ02 09090706ィャ0600ィ ィー0205ィケィェ0401 050502ィャ02ィェィー0609 0008ィ 00ィィ ツ0209ィコ060006 ィィィェィー02080002ィヲ09ィ, 09ィィ04ィョィ 05ィィ04ィ 02ィィ06 ィィ0406ィ 08ィ 0302ィェィィィヲ. 080806ィャ02 05ィー060006, ィ 05000608ィィィーィャ04 09ィィィェィー0204ィ 080203ィ 06ィー 04ィ 01ィ ツィィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィー080201ィャ0208ィェ0401 01ィ ィェィェ0401, ィェィ 0708ィィィャ0208, 09 020205ィケ06 09060401ィ ィェィィ07 ィィィェィー0208ィ ィコィーィィ09ィェ06ィヲ 0006ィー060802ィ 05ィィ09ィーィィ ツィェ06ィヲ ィ ィェィィィャィ 02ィィィィ, 05ィィィ 06 010507 ィェィ 00050701ィェ060006 0708020109ィーィ 090502ィェィィ07 080204ィョ05ィケィーィ ィー0609 ィコィ ィコィィ01-05ィィィ 06 0904 ツィィ090502ィェィィィヲ. 020507 06ィ 050200 ツ02ィェィィ07 0904070605ィェ02ィェィィ07 0708060008ィ ィャィャィィ09ィーィ ィャィィ ィーィ ィコィィ01 04ィ 01ィ ツ 02ィエ02 09 80-01 000601ィ 01 20-0006 0902ィコィ 09ィーィ 05ィィ 070607090507ィーィケ0907 0708060008ィ ィャィャィェ0402 ィィィェ09ィー08ィョィャ02ィェィーィ 08ィィィィ (ィ ィィィ 05ィィ06ィー02ィコィィ), 090601020803ィ ィエィィ02 09 0902ィ 02 ィェィ ィ 060804 ィ ィ 0406090401 ィ 05000608ィィィーィャ0609 (ィーィ ィコィィ01, ィコィ ィコ 09ィィ04ィョィ 05ィィ04ィ 02ィィ07 07080609ィー0401 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609), ツィー06 070604090605ィィ0506 07020802ィヲィーィィ ィェィ ィ 06050202 09040906ィコィィィヲ ィョ08060902ィェィケ ィ ィ 09ィー08ィ ィコ02ィィィィ 0708ィィ 08020302ィェィィィィ 0708ィィィコ05ィ 01ィェ0401 04ィ 01ィ ツ. 00 ィェィ 09ィー0607ィエ0202 090802ィャ07 0708060008ィ ィャィャィィ080609ィ ィェィィ02 0008ィ 00ィィ ツ0209ィコィィ01 ィ 05000608ィィィーィャ0609 ィェ02ィャ040905ィィィャ06 ィ 0204 ィィ09070605ィケ040609ィ ィェィィ07 09070202ィィィ 05ィケィェ0401 0708060008ィ ィャィャィェ0401 ィィィェ09ィー08ィョィャ02ィェィーィ 08ィィ0209, ィーィ ィコ0302 ィェィ 040409ィ 02ィャ0401 0708ィィィコ05ィ 01ィェ04ィャィィ 0708060008ィ ィャィャィェ04ィャィィ ィィィェィー02080002ィヲ09ィ ィャィィ (API Application Programming Interface). OpenGL 0709050702ィー0907 0601ィェィィィャ ィィ04 09ィ ィャ0401 070607ィョ050708ィェ0401 0708ィィィコ05ィ 01ィェ0401 0708060008ィ ィャィャィェ0401 ィィィェィー02080002ィヲ090609 010507 08ィ 0408ィ ィ 06ィーィコィィ 0708ィィ05060302ィェィィィヲ 09 06ィ 05ィ 09ィーィィ 0109ィョ01ィャ0208ィェ06ィヲ ィィ ィー080201ィャ0208ィェ06ィヲ 0008ィ 00ィィィコィィ. 11

1312 020005ィ 090502ィェィィ02 05ィーィ ィェ01ィ 08ィー OpenGL (Open Graphics Library 06ィーィコ0804ィーィ 07 0008ィ 00ィィ ツ0209ィコィ 07 ィ ィィィ 05ィィ06ィー02ィコィ ) ィ 0405 08ィ 0408ィ ィ 06ィーィ ィェ ィィ ィョィー090208030102ィェ 09 1992 000601ィョ 090201ィョィエィィィャィィ 00ィィ08ィャィ ィャィィ 09 06ィ 05ィ 09ィーィィ 08ィ 0408ィ ィ 06ィーィコィィ 0708060008ィ ィャィャィェ060006 06ィ 02090702 ツ02ィェィィ07 ィコィ ィコ 05000002ィコィーィィ09ィェ04ィヲ ィ 0707ィ 08ィ ィーィェ06-ィェ0204ィ 09ィィ09ィィィャ04ィヲ ィィィェィー02080002ィヲ09, 0708ィィ000601ィェ04ィヲ 010507 0802ィ 05ィィ04ィ 02ィィィィ ィェィ 08ィ 0405ィィ ツィェ0401 0705ィ ィー000608ィャィ 01. 0209ィェ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ィコ060506 120 08ィ 0405ィィ ツィェ0401 ィコ06ィャィ ィェ01, ィコ06ィー06080402 0708060008ィ ィャィャィィ09ィー ィィ09070605ィケ04ィョ02ィー 010507 04ィ 01ィ ィェィィ07 06ィ ィイ02ィコィー0609 ィィ 06070208ィ 02ィィィヲ, ィェ0206ィ 010601ィィィャ0401 010507 ィェィ 07ィィ09ィ ィェィィ07 ィィィェィー0208ィ ィコィーィィ09ィェ0401 0008ィ 00ィィ ツ0209ィコィィ01 0708ィィ05060302ィェィィィヲ. 01ィ 0902000601ィェ0703ィェィィィヲ 0102ィェィケ 0008ィ 00ィィ ツ0209ィコィ 07 09ィィ09ィー02ィャィ OpenGL 07060101020803ィィ09ィ 02ィー0907 ィ 0605ィケ03ィィィェ09ィー0906ィャ 070806ィィ04090601ィィィー020502ィヲ ィ 0707ィ 08ィ ィーィェ0401 ィィ 0708060008ィ ィャィャィェ0401 0705ィ ィー000608ィャ. 06ィーィ 09ィィ09ィー02ィャィ 010609ィーィョ07ィェィ ィー02ィャ, ィコィー06 08ィ ィ 06ィーィ 02ィー 09 0908020102 Windows, 070605ィケ040609ィ ィー020507ィャ ィコ06ィャ07ィケ06ィー02080609 Apple. 050906ィ 0601ィェ06 08ィ 0907080609ィー08ィ ィェ0702ィャ0402 ィコ060104 09ィィ09ィー02ィャ04 Mesa (07ィ ィコ02ィー API ィェィ ィ ィ 0402 OpenGL) ィャ0603ィェ06 ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ 09 ィ 0605ィケ03ィィィェ09ィー0902 06070208ィ 02ィィ06ィェィェ0401 09ィィ09ィー02ィャ, 09 ィー06ィャ ツィィ090502 09 Linux. 09ィ 08ィ ィコィー0208ィェ04ィャィィ 060906ィ 02ィェィェ0609ィー07ィャィィ OpenGL, ィコ06ィー06080402 06ィ 02090702 ツィィ05ィィ 08ィ 0907080609ィー08ィ ィェ02ィェィィ02 ィィ 08ィ 0409ィィィーィィ02 05ィー060006 0008ィ 00ィィ ツ0209ィコ060006 09ィーィ ィェ01ィ 08ィーィ, 0709050706ィー0907: 0キ3 05ィーィ ィ ィィ05ィケィェ0609ィーィケ. 0206070605ィェ02ィェィィ07 ィィ ィィ04ィャ02ィェ02ィェィィ07 09 09ィーィ ィェ01ィ 08ィー02 0802ィ 05ィィ04ィョ06ィー0907 ィーィ ィコィィィャ 06ィ 08ィ 0406ィャ, ツィー06ィ 04 09060108ィ ィェィィィーィケ 090609ィャ0209ィーィィィャ0609ィーィケ 09 08ィ 0408ィ ィ 06ィーィ ィェィェ04ィャ 08ィ ィェ0202 0708060008ィ ィャィャィェ04ィャ 06ィ 02090702 ツ02ィェィィ02ィャ. 0キ3 01ィ 010203ィェ0609ィーィケ ィィ 07020802ィェ0609ィィィャ0609ィーィケ. 0308ィィ05060302ィェィィ07, ィィ09070605ィケ04ィョ06ィエィィ02 OpenGL, 00ィ 08ィ ィェィーィィ08ィョ06ィー 0601ィィィェィ ィコ060904ィヲ 09ィィ04ィョィ 05ィケィェ04ィヲ 080204ィョ05ィケィーィ ィー 09ィェ02 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー ィーィィ07ィ ィィ09070605ィケ04ィョ02ィャ06ィヲ 06070208ィ 02ィィ06ィェィェ06ィヲ 09ィィ09ィー02ィャ04 ィィ 060800ィ ィェィィ04ィ 02ィィィィ 06ィー06ィ 08ィ 0302ィェィィ07 ィィィェ000608ィャィ 02ィィィィ. 080806ィャ02 ィー060006, 05ィーィィ 0708ィィ05060302ィェィィ07 ィャ0600ィョィー 0904070605ィェ07ィーィケ0907 ィコィ ィコ ィェィ 0702080906ィェィ 05ィケィェ0401 ィコ06ィャ07ィケ06ィー0208ィ 01, ィーィ ィコ ィィ ィェィ 08ィ ィ 06 ツィィ01 09ィーィ ィェ02ィィ0701 ィィ 09ィョ070208ィコ06ィャ07ィケ06ィー0208ィ 01.

13020005ィ 090502ィェィィ02 13 0キ3 090200ィコ0609ィーィケ 0708ィィィャ02ィェ02ィェィィ07. 05ィーィ ィェ01ィ 08ィー OpenGL ィィィャ0202ィー 07080601ィョィャィ ィェィェィョ06 09ィー08ィョィコィーィョ08ィョ ィィ ィィィェィーィョィィィーィィ09ィェ06 0706ィェ07ィーィェ04ィヲ ィィィェィー02080002ィヲ09, ツィー06 0706040906050702ィー 09 ィャ02ィェィケ03ィィィャィィ 04ィ ィー08ィ ィーィ ィャィィ 09060401ィ 09ィ ィーィケ 05000002ィコィーィィ09ィェ0402 0708ィィ05060302ィェィィ07, 090601020803ィ ィエィィ02 ィャ02ィェィケ0302 09ィー0806ィコ ィコ0601ィ, ツ02ィャ 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ 0108ィョ00ィィ01 0008ィ 00ィィ ツ0209ィコィィ01 ィ ィィィ 05ィィ06ィー02ィコ. 010206ィ 010601ィィィャ0402 00ィョィェィコ02ィィィィ 010507 06ィ 02090702 ツ02ィェィィ07 090609ィャ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ィィ05060302ィェィィィヲ. 01ィ 05ィィ ツィィ02 0106080603020006 ィ ィ 040609060006 07ィ ィコ02ィーィ 010507 08ィ ィ 06ィー04 09 ィー080201ィャ0208ィェ04ィャィィ 0708ィィ05060302ィェィィ07ィャィィ ィョ070806ィエィ 02ィー 0706ィェィィィャィ ィェィィ02 09ィーィョ0102ィェィーィ ィャィィ ィコ0506 ツ02090401 ィー02ィャ ィコィョ0809ィ ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ ィャ06010205ィィ080609ィ ィェィィ02 ィー080201ィャ0208ィェ0401 06ィ ィイ02ィコィー0609, 04ィ ィコ08ィ 03ィィ09ィ ィェィィ02, ィー02ィコ09ィーィョ08ィィ080609ィ ィェィィ02, ィ ィェィィィャィ 02ィィ06 ィィ ィー.01. 01ィィ0806ィコィィ02 00ィョィェィコ02ィィ06ィェィ 05ィケィェ0402 090604ィャ0603ィェ0609ィーィィ OpenGL 0905ィョ03ィ ィー 0106080603ィィィャ 00ィョィェ01ィ ィャ02ィェィー06ィャ 010507 ィィ0405060302ィェィィ07 ィー02060802ィーィィ ツ0209ィコィィ01 ィィ 0708ィ ィコィーィィ ツ0209ィコィィ01 ィ 090702ィコィー0609 07080201ィャ02ィーィ. 08ィェィィ00ィ 090609ィー06ィィィー ィィ04 ィー080201 ツィ 09ィー02ィヲ ィィ 0109ィョ01 0708ィィ05060302ィェィィィヲ. 03020809ィ 07 ツィ 09ィーィケ 0706090907ィエ02ィェィ ィェ0207060908020109ィー0902ィェィェ06 0607ィィ09ィ ィェィィ06 08ィ ィ 06ィー04 09 ィ ィィィ 05ィィ06ィー02ィコ06ィヲ, 0609ィェ0609ィェ04ィャ ィコ06ィャィ ィェ01ィ ィャ ィィ 07020802ィャ02ィェィェ04ィャ. 0006 09ィー060806ィヲ ツィ 09ィーィィ 08ィ 0909ィャィ ィー08ィィ09ィ 06ィー0907 0708ィィィェ02ィィ0704 0802ィ 05ィィ04ィ 02ィィィィ ィ 06050202 09050603ィェ0401 ィ 05000608ィィィーィャ0609 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ 09 0706ィャ06ィエィケ06 0908020109ィー09 OpenGL. 00 ィー0802ィーィケ02ィヲ ツィ 09ィーィィ 0708ィィ090601ィィィー0907 0607ィィ09ィ ィェィィ02 ィェィ 09ィー0806ィヲィコィィ 08ィ ィ 06ィー04 09 OpenGL 09 08ィ 0405ィィ ツィェ0401 ィィィェィー020008ィィ080609ィ ィェィェ0401 09080201ィ 01 0708060008ィ ィャィャィィ080609ィ ィェィィ07 ィィ 09060401ィ ィェィィ02 0708ィィ05060302ィェィィィヲ, 0708ィィィャ02ィェ0706ィエィィ01 OpenGL 010507 09ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィィヲ. 00 0708ィィ05060302ィェィィ0701 ィャ0603ィェ06 ィェィ ィヲィーィィ 0102ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ0402 0708060008ィ ィャィャ04 ィェィ OpenGL ィィ 0708ィィィャ020804 0708ィ ィコィーィィ ツ0209ィコィィ01 04ィ 01ィ ィェィィィヲ 010507 09ィ ィャ06ィコ06ィェィー08060507. 00 07060906ィ ィィィィ 08ィ 0909ィャィ ィー08ィィ09ィ 02ィー0907 09ィーィ ィェ01ィ 08ィー OpenGL 1.2.

13

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

13

130105ィ 09ィ 1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909 ィィ OpenGL 030802030102 ツ02ィャ 07020802ィヲィーィィ ィコ 0607ィィ09ィ ィェィィ06 00ィョィェィコ02ィィィヲ OpenGL, ィェ0206ィ 010601ィィィャ06 0706ィェ07ィーィケ 0202 ィャ0209ィー06 09 0708060202090902 000608ィャィィ080609ィ ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 ィェィ 05ィコ08ィ ィェ02, 06070802010205ィィィーィケ 06ィ 05ィ 09ィーィケ, 04ィ 01ィ ツィィ ィコ06ィー060806ィヲ ィャ0603ィェ06 080203ィ ィーィケ 09 0706ィャ06ィエィケ06 ィ ィィィ 05ィィ06ィー02ィコィィ. 1.1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909 0608ィ 01ィィ02ィィ06ィェィェ06ィヲ 04ィ 01ィ ツ02ィヲ ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ 0709050702ィー0907 09ィィィェィー0204 ィィ0406ィ 08ィ 0302ィェィィィヲ 06ィ ィイ02ィコィー0609 0802ィ 05ィケィェ060006 ィャィィ08ィ (ィコィ ィコ 09ィョィエ0209ィー09ィョ06ィエィィ01, ィーィ ィコ ィィ 090606ィ 08ィ 03ィ 02ィャ0401). 020507 ィー060006, ツィー06ィ 04 09010205ィ ィーィケ ィーィ ィコ06ィヲ 09ィィィェィー0204 090604ィャ0603ィェ04ィャ, ィェィ 0901060102 ィ 05000608ィィィーィャィ ィェ0206ィ 010601ィィィャ04 09050201ィョ06ィエィィ02 01ィ ィェィェ0402: 010206ィャ02ィー08ィィ ツ0209ィコィィ02 ィャ06010205ィィ 04ィ 01ィ 06ィー 000608ィャィョ ィィ 09ィェィョィー0802ィェィェ0606 09ィー08ィョィコィーィョ08ィョ 06ィ ィイ02ィコィーィ, 06ィ 04 ツィェ06 09 ィー080201ィャ0208ィェ06ィャ 0209ィコ05ィィ01060906ィャ 07080609ィー08ィ ィェ09ィー0902. 0308ィィィャ020804 07080609ィー0401 ィャ0601020502ィヲ: 0キ3 09000208ィ, 04ィ 01ィ ィェィェィ 07 09 0706ィャ06ィエィケ06 070605060302ィェィィ07 0202ィェィー08ィ ィィ 08ィ 01ィィィョ09ィ ; 17

1318 0105ィ 09ィ 1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909 ィィ OPENGL 0キ3 ィコィョィ, 04ィ 01ィ ィェィェ04ィヲ ツ02080204 070605060302ィェィィ02 0202ィェィー08ィ ィィ 0105ィィィェ04 0802ィ 08ィ. 08ィェィィィャィ 02ィィ07 0905ィョ03ィィィー 010507 04ィ 01ィ ィェィィ07 ィャ06010205ィィ 0109ィィ0302ィェィィ07, ィィ04ィャ02ィェ02ィェィィ07 000608ィャ04 ィィ05ィィ ィャィ ィー0208ィィィ 05ィ 06ィ ィイ02ィコィーィ 09 ィー02 ツ02ィェィィ02ィャ 090802ィャ02ィェィィ. 01ィ 0708ィィィャ0208, 070806010605ィケィェ0602 07020802ィャ02ィエ02ィェィィ02 06ィ ィイ02ィコィーィ 09010605ィケ 0609ィィ x 0906 09ィコ06080609ィーィケ06 s ィャ/c ィャ060302ィー ィ 04ィーィケ 04ィ 01ィ ィェ06 09 0706ィャ06ィエィケ06 000608ィャィョ0504: x(t) = st. 00ィ ィー0208ィィィ 0504 ィィ ィー02ィコ09ィーィョ0804 060708020102050706ィー, ィコィ ィコ 070609020801ィェ0609ィーィケ 06ィ ィイ02ィコィーィ 0904ィ ィィィャ060102ィヲ09ィー09ィョ02ィー 0906 090902ィー06ィャ. 00ィ ィー0208ィィィ 0504 ィェ0206ィ 010601ィィィャ04 010507 070605ィョ ツ02ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 06ィ ィイ02ィコィーィ, 09 ィィ01 0706ィャ06ィエィケ06 0904 ツィィ09050702ィー0907 ィコ0605ィィ ツ0209ィー0906 06ィー08ィ 0302ィェィェ060006 090902ィーィ, 070607ィ 01ィ 06ィエ020006 09 060005ィ 0407 09ィィ08ィーィョィ 05ィケィェ060006 ィェィ ィ 050601ィ ィー020507. 03080609ィー02ィヲ03ィ 07 ィャ06010205ィケ ィャィ ィー0208ィィィ 05ィ 020902ィー 06ィ ィイ02ィコィーィ. 02090902ィエ02ィェィィ02 04ィ 01ィ 02ィー 08ィ 09070605060302ィェィィ02 ィィ 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィィ ィィ09ィー06 ツィェィィィコ0609 090902ィーィ, ツィー06 09 09060906ィコィョ07ィェ0609ィーィィ 09 ィャィ ィー0208ィィィ 0506ィャ 0706040906050702ィー 090409 ツィィィーィ ィーィケ 020902ィー ィコィ 030106ィヲ ィー06 ツィコィィ 06ィ ィイ02ィコィーィ, ィィ0406ィ 08ィ 0302ィェィィ02 ィコ06ィー0608060006 ィー0802ィ ィョ02ィー0907 070609ィー0806ィィィーィケ. 0308ィィィャ0208 ィャ06010205ィィ 06090902ィエ02ィェィィ07: 090605ィェ0202, 04ィ 01ィ 09ィ 02ィャ0602 ィェィ 0708ィ 090502ィェィィ02ィャ ィィ ィャ06ィエィェ0609ィーィケ06 ィィ0405ィョ ツ02ィェィィ07. 00ィィ08ィーィョィ 05ィケィェィ 07 ィコィ ィャ0208ィ 060708020102050702ィー, ィコィ ィコ ィー080201ィャ0208ィェ0402 01ィ ィェィェ0402 ィ ィョ01ィョィー 06ィー06ィ 08ィ 03ィ ィーィケ0907 (0708060202ィィ080609ィ ィーィケ0907) ィェィ 0109ィョ01ィャ0208ィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02. 05ィ ィャ02ィーィィィャ, ツィー06 010507 04ィ 01ィ ツ, ィェ02 ィー0802ィ ィョ06ィエィィ01 0802ィ 05ィィ09ィーィィ ツィェ0609ィーィィ 070605ィョ ツィ 02ィャ060006 ィィ0406ィ 08ィ 0302ィェィィ07 (ィェィ 0708ィィィャ0208, ィェィ ィョ ツィェィ 07 09ィィ04ィョィ 05ィィ04ィ 02ィィ07), ィャィ ィー0208ィィィ 0504 ィャ0600ィョィー 09090601ィィィーィケ0907 ィコ 07080609ィー02ィヲ03ィィィャ 000608ィャィ ィャ, ィェィ 0708ィィィャ0208, ィコ 08ィ 04ィェ04ィャ 020902ィーィ ィャ 06ィ ィイ02ィコィー0609, ィ 06090902ィエ02ィェィィ02 06ィー09ィョィー09ィー090609ィ ィーィケ. 02ィ 050202 09 01020506 0909ィーィョ07ィ 02ィー ィ 05000608ィィィーィャ 09ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィィヲ, 09 0607ィィ090409ィ 02ィャ06ィャ ツィ 09ィーィェ06ィャ 0905ィョ ツィ 02 ィェィ 040409ィ 02ィャ04ィヲ 0708060202090906ィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ (rendering). 06ィャ0207 ィェィ 0901060102 ィェィ ィ 0608 ィャ0601020502ィヲ, ィ 05000608ィィィーィャ 0106050302ィェ 070609ィー0806ィィィーィケ 090606ィー0902ィー09ィー09ィョ06ィエ0202 ィィ0406ィ 08ィ 0302ィェィィ02 ィェィ 05ィコ08ィ ィェ02 ィャ06ィェィィィー0608ィ. 0207ィィ09ィ ィェィェィ 07 090102ィャィ 0008ィ 00ィィ ツ0209ィコ06ィヲ 06ィ 08ィ ィ 06ィーィコィィ 06ィー 070605ィョ ツ02ィェィィ07 000206ィャ02ィー08ィィ ツ0209ィコ06ィヲ ィャ06010205ィィ 06ィ ィイ02ィコィーィ 0106 09ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィ07 ィェィ 05ィコ08ィ ィェ02 ィェィ 040409ィ 02ィー0907 0008ィ 00ィィ ツ0209ィコィィィャ 0708060202090906ィャ.

131.2. 010206ィャ02ィー08ィィ ツ0209ィコィィ02 ィャ06010205ィィ 19 0209ィーィ ィェ0609ィィィャ0907 ィ 06050202 0706010806ィ ィェ06 ィェィ ィー06ィャ, ィコィ ィコィョ06 0706ィャ06ィエィケ OpenGL 06ィコィ 040409ィ 02ィー 09 0802ィ 05ィィ04ィ 02ィィィィ 0008ィ 00ィィ ツ0209ィコ060006 07080602020909ィ. 04ィィ09. 1.1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909 ィィ ィャ0209ィー06 OpenGL 09 ィェ02ィャ. 1.2. 010206ィャ02ィー08ィィ ツ0209ィコィィ02 ィャ06010205ィィ 00 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコ02 ィィ09070605ィケ04ィョ02ィー0907 ィ 0605ィケ030602 ィコ0605ィィ ツ0209ィー0906 08ィ 04ィェ0606ィ 08ィ 04ィェ0401 ィャ0601020502ィヲ 010507 0607ィィ09ィ ィェィィ07 000608ィャ04. 0308ィィ ツィィィェ06ィヲ 05ィー060006 0709050702ィー0907 06 ツ0209ィィ01ィェィ 07 ィェ02090604ィャ0603ィェ0609ィーィケ 070605ィェ0609ィーィケ06 0602ィィ00080609ィ ィーィケ 0802ィ 05ィケィェ04ィヲ 06ィ ィイ02ィコィー. 050502010609ィ ィー0205ィケィェ06, ィェ0206ィ 010601ィィィャ06 0904ィ ィィ08ィ ィーィケ ィー02 060906ィ 02ィェィェ0609ィーィィ 06ィ ィイ02ィコィーィ, ィコ06ィー06080402 09ィ 03ィェ04 010507 ィコ06ィェィコ0802ィーィェ06ィヲ 04ィ 01ィ ツィィ ィィ 04ィ 01ィ ィェィェ060006 ィコ05ィ 0909ィ 06ィ ィイ02ィコィー0609. 00 ツィ 09ィーィェ0609ィーィィ, ィャ06010205ィィ ィャ0603ィェ06 0706010205ィィィーィケ ィェィ 06ィ ィイ02ィャィェ0402 ィィ 0008ィ ィェィィ ツィェ0402. 02ィ ィイ02ィャィェ0402 ィャ06010205ィィ 0706040906050706ィー 0607ィィ09ィ ィーィケ 09ィェィョィー0802ィェィェ0609ィーィケ 06ィ ィイ02ィコィーィ, ィ 0008ィ ィェィィ ツィェ0402 000206ィャ02ィー08ィィ ツ0209ィコィィ02 090906ィヲ09ィー09ィ 070609020801ィェ0609ィーィィ. 0308ィィィャ0208 06ィ ィイ02ィャィェ06ィヲ ィャ06010205ィィ 0706ィコィ 04ィ ィェ ィェィ 08ィィ09ィョィェィコ02 1.2. 00 ィェィ 09ィー0607ィエ0202 090802ィャ07 ィェィ ィィィ 0605ィケ03ィョ06 070607ィョ050708ィェ0609ィーィケ 04ィ 09060209ィ 05ィィ 0008ィ ィェィィ ツィェ0402 ィャ06010205ィィ, 070605ィョ ツィ 02ィャ0402 09 0706ィャ06ィエィケ06 0506ィコィ 05ィケィェ06ィヲ ィコィョ0906 ツィェ0605ィィィェ02ィヲィェ06ィヲ ィ 07070806ィコ09ィィィャィ 02ィィィィ 070609020801ィェ0609ィーィィ. 06ィ ィコィ 07 ィャ06010205ィケ 0708020109ィーィ 09050702ィー 0906ィ 06ィヲ ィェィ ィ 0608 09090704ィ ィェィェ0401 ツ02080204 06ィ ィエィィ02 09020803ィィィェ04 ィャィェ060006ィョ000605ィケィェィィィコ0609 (070605ィィ0006ィェ0609), 070605ィー06ィャィョ 05ィーィィ ィャ06010205ィィ 02ィエ02 ィェィ 040409ィ 02ィー 070605ィィ0006ィェィ 05ィケ-

1320 0105ィ 09ィ 1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909 ィィ OPENGL 04ィィ09. 1.2. 02ィ ィイ02ィャィェィ 07 (0906ィコ090205ィケィェィ 07) ィャ06010205ィケ ィー0608ィ ィェ04ィャィィ. 0308ィィ ツィィィェィ 070607ィョ050708ィェ0609ィーィィ 070605ィィ0006ィェィ 05ィケィェ0401 ィャ0601020502ィヲ ィコ080602ィー0907 09 ィィ01 ツ0802040904 ツィ ィヲィェ06ィヲ 00ィィィ ィコ0609ィーィィ ィィ 07080609ィー06ィー02, ツィー06 070604090605ィィ0506 07060101020803ィ ィーィケ 06070208ィ 02ィィィィ 09 ィーィ ィコィィィャィィ ィャ0601020507ィャィィ 09 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ 0707ィ 08ィ ィーィョ0802. 0308ィィィャ0208 0008ィ ィェィィ ツィェ06ィヲ ィャ06010205ィィ 0708ィィ09020102ィェ ィェィ 08ィィ09ィョィェィコ02 1.3. 0209ィェ0609ィェ04ィャ ィーィィ0706ィャ 000206ィャ02ィー08ィィ ツ0209ィコィィ01 ィャ0601020502ィヲ, 07060101020803ィィ09ィ 02ィャ04ィャ OpenGL, 0709050706ィー0907 ィコィ ィコ 08ィ 04 0008ィ ィェィィ ツィェ0402 070605ィィ0006ィェィ 05ィケィェ0402 ィャ06010205ィィ. 02ィーィャ02ィーィィィャ, ツィー06 0708ィィ 05ィー06ィャ ィ ィィィ 05ィィ06ィー02ィコィ ィェ02 090601020803ィィィー ィコィ ィコィィ01-05ィィィ 06 0908020109ィー09 07060101020803ィコィィ 0108ィ ィェ02ィェィィ07 01ィ ィェィェ0401 ィェィ 09ィェ0203ィェィィ01 ィェ0609ィィィー02050701. 06ィ ィコ0302 09 ィ ィィィ 05ィィ06ィー02ィコ02 ィェ02ィー 0908020109ィー09 010507 06ィ 08ィ ィ 06ィーィコィィ ィィ 080201ィ ィコィーィィ080609ィ ィェィィ07 ィャ0601020502ィヲ 0201ィィィェ09ィー0902ィェィェ06ィヲ 04ィ 01ィ ツ02ィヲ OpenGL 0709050702ィー0907 0802ィ 05ィィ04ィ 02ィィ07 ィ 05000608ィィィーィャ0609 05ィコ08ィ ィェィィ04ィ 02ィィィィ ィー080201ィャ0208ィェ0401 ィャ0601020502ィヲ. 0906050202 0706010806ィ ィェ06 08ィ ィ 06ィーィ 09 ィャ0601020507ィャィィ 0607ィィ09ィ ィェィ 09 0005ィ 0902 3. 1.3. 08ィェィィィャィ 02ィィ07 08ィェィィィャィ 02ィィ07 09 ィェィ 09ィー0607ィエ0202 090802ィャ07 09 0609ィェ0609ィェ06ィャ 04ィ 01ィ 02ィー0907 0908ィョ ツィェィョ06 (09 07ィ ィコ02ィーィ 01 ィコ06ィャ07ィケ06ィー0208ィェ060006 ィャ06010205ィィ080609ィ ィェィィ07), 05ィィィ 06 09 0706ィャ06ィエィケ06 ィョ09ィー0806ィヲ09ィー09 09ィコィ ィェィィ080609ィ ィェィィ07 0109ィィ0302ィェィィ07 (motion capture), 0706040906050706ィエィィ01 0602ィィ00080609ィ ィーィケ 07020802ィャ02ィエ02ィェィィ02 06ィ ィイ02ィコィー0609 (ィェィ 0708ィィィャ0208 ツ0205060902ィコィ ) ィィ05ィィ ィィ01 ツィ 09ィー02ィヲ (0109ィィ0302ィェィィ07 08ィョィコ, ィェ0600, ィーィョ050609ィィィエィ ). OpenGL 090601020803ィィィー ィ 0707ィ 08ィ ィー 05ィィィェ02ィヲィェ0401 07080206ィ 08ィ 040609ィ ィェィィィヲ, ィコ06ィー060804ィヲ ィィ09070605ィケ04ィョ02ィー0907 09 ィー06ィャ ツィィ090502 010507 04ィ 01ィ ィェィィ07 07080609ィー06ィヲ ィ ィェィィィャィ 02ィィィィ

131.4. 00ィ ィー0208ィィィ 0504 21 04ィィ09. 1.3. 0108ィ ィェィィ ツィェィ 07 070605ィィ0006ィェィ 05ィケィェィ 07 ィャ06010205ィケ (070609060806ィー, 07020802ィェ0609, ィャィ 0903ィーィ ィ ィィ080609ィ ィェィィ02). 0906050202 09050603ィェ0402 ィー0201ィェ06050600ィィィィ ィャ06010205ィィ080609ィ ィェィィ07 ィィ04ィャ02ィェ02ィェィィ07 000608ィャ04 ィィ 070605060302ィェィィ07 06ィ ィイ02ィコィー0609 (ィェィ 0708ィィィャ0208, ィェィ 0609ィェ060902 ィコ08ィィ090401) ィャ0600ィョィー ィ 04ィーィケ 0802ィ 05ィィ040609ィ ィェ04 0607060902080107 ィ ィィィ 05ィィ06ィー02ィコィィ. 1.4. 00ィ ィー0208ィィィ 0504 0209ィェ0609ィェ04ィャィィ ィコ08ィィィー0208ィィ07ィャィィ 0904ィ 0608ィ ィー06ィヲ ィィ05ィィ ィィィェ06ィヲ ィャ06010205ィィ ィャィ ィー0208ィィィ 05ィ 010507 070609020801ィェ0609ィーィィ 06ィ ィイ02ィコィーィ 0709050706ィー0907 ィー0802ィ 0609ィ ィェィィ07 0706 0802ィ 05ィィ09ィーィィ ツィェ0609ィーィィ 070605ィョ ツィ 02ィャ060006 ィィ0406ィ 08ィ 0302ィェィィ07 ィィ 09ィコ06080609ィーィィ 08ィ ィ 06ィー04 ィ 05000608ィィィーィャィ 05ィコ08ィ ィェィィ04ィ 02ィィィィ. 0006010205ィケ 06090902ィエ02ィェィィ07 0708ィィィャ02ィェ0702ィー0907 010507 ィコィ 0301060006 07ィィィコ09020507 070605ィョ ツィ 02ィャ060006 ィィ0406ィ 08ィ 0302ィェィィ07, 070605ィー06ィャィョ 010507 04ィ 01ィ ツ, ィー0802ィ ィョ06ィエィィ01 ィィィェィー0208ィ ィコィーィィ09ィェ060006 0904ィ ィィィャ060102ィヲ09ィー09ィィ07 0708060008ィ ィャィャ04 09 070605ィケ040609ィ ィー020502ィャ, 06ィ 04 ツィェ06 0904ィ ィィ08ィ 06ィー0907 07080609ィー0402 ィャ06010205ィィ. OpenGL ィィ04ィェィ ツィ 05ィケィェ06 08ィ 0408ィ ィ ィ ィー0409ィ 05ィ 09ィケ ィコィ ィコ ィ ィィィ 05ィィ06ィー02ィコィ 010507 0708060008ィ ィャィャィィ080609ィ ィェィィ07 ィィィェィー0208ィ ィコィーィィ09ィェ0401 0008ィ 00ィィ ツ0209ィコィィ01 0708ィィ05060302ィェィィィヲ, 09

1322 0105ィ 09ィ 1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909 ィィ OPENGL ィェ02ィヲ 0909ィー080602ィェィ 0601ィェィ ィィ04 09ィ ィャ0401 07080609ィー0401 ィャ0601020502ィヲ ィャィ ィー0208ィィィ 05ィ ィャ06010205ィケ 0806ィェ00ィ. 06ィ ィコ0302 OpenGL 07060101020803ィィ09ィ 02ィー ィェィ 05060302ィェィィ02 ィー02ィコ09ィーィョ08. 00 09060906ィコィョ07ィェ0609ィーィィ 05ィー06 0706040906050702ィー 0106ィ ィィ09ィ ィーィケ0907 010609ィーィ ィー06 ツィェ06 0802ィ 05ィィ09ィーィィ ツィェ06ィヲ 0702080201ィ ツィィ 090906ィヲ09ィー09 0607080609ィー040107 ィャィ ィー0208ィィィ 050609 ィーィィ07ィ 0705ィ 09ィーィィィコィ, 0102080209ィ ィィ ィー.07. 0306010806ィ ィェ06 090607080609 0708060008ィ ィャィャィィ080609ィ ィェィィ07 ィャィ ィー0208ィィィ 050609 09 OpenGL 08ィ 0909ィャィ ィー08ィィ09ィ 02ィー0907 09 0005ィ 0902 5. 1.5. 02090902ィエ02ィェィィ02 0006010205ィケ 06090902ィエ02ィェィィ07 ィェ0206ィー010205ィィィャィ 06ィー ィャ06010205ィィ ィャィ ィー0208ィィィ 05ィ, 070605ィー06ィャィョ 0708ィィィェ02ィィ0704 0202 0904ィ 0608ィ 060708020102050706ィー0907 ィー02ィャィィ 0302 ィー0802ィ 0609ィ ィェィィ07ィャィィ. 00 0802ィ 05ィケィェ06ィャ ィャィィ0802 ィャ04 09ィーィ 05ィコィィ09ィ 02ィャ0907 09 ィコ08ィ ィヲィェ02 09050603ィェ04ィャィィ 010507 ィャ06010205ィィ080609ィ ィェィィ07 ィョ09050609ィィ07ィャィィ 06090902ィエ02ィェィィ07 070806ィー070302ィェィェ04ィャィィ ィィ09ィー06 ツィェィィィコィ ィャィィ 090902ィーィ (ィェ02ィ 06, 0506ィャィィィェ02090202ィェィーィェ0402 05ィ ィャ0704), 09ィー0608ィィ ツィェ04ィャ 06090902ィエ02ィェィィ02ィャ (06090902ィエ02ィェィィ02ィャ 06ィー 06ィー08ィ 03ィ 06ィエィィ01 070609020801ィェ0609ィー02ィヲ) ィィ ィー.07. 05ィーィ ィェ01ィ 08ィー OpenGL 07060101020803ィィ09ィ 02ィー ィー06 ツ02 ツィェ0402 ィィ 07ィ 08ィ 05050205ィケィェ0402 ィィ09ィー06 ツィェィィィコィィ 090902ィーィ, 020902ィー (ィャ06ィエィェ0609ィーィケ) ィコ06ィー06080401 04ィ 01ィ 02ィー0907 09 020902ィー060906ィヲ 09ィィ09ィー02ィャ02 RGB (Red-Green-Blue). 0102 07060101020803ィィ09ィ 06ィー0907 070806ィー070302ィェィェ0402 ィィ09ィー06 ツィェィィィコィィ, 090702ィコィー08ィ 05ィケィェ0602 04ィ 01ィ ィェィィ02 ィャ06ィエィェ0609ィーィィ ィィ09ィー06 ツィェィィィコ0609, 09ィー0608ィィ ツィェ0602 06090902ィエ02ィェィィ02. 0201ィェィ ィコ06 09ィョィエ0209ィー09ィョ06ィー ィ 05000608ィィィーィャィィ ツ0209ィコィィ02 0708ィィ02ィャ04, 0706040906050706ィエィィ02 ィャ06010205ィィ080609ィ ィーィケ ィィ 05ィーィィ 05000002ィコィー04 09 0706ィャ06ィエィケ06 090604ィャ0603ィェ0609ィー02ィヲ OpenGL. 080806ィャ02 05ィー060006, 0909020001ィ 090604ィャ0603ィェ06 ィィ09070605ィケ040609ィ ィーィケ ィコィ ツ0209ィー0902ィェィェ0402 ィ 05000608ィィィーィャ04 010507 07080609 ツ02ィーィ 06090902ィエ02ィェィィ07 ィィ 0702080201ィ 09ィ ィーィケ OpenGL ィョ0302 0904 ツィィ090502ィェィェ0402 020902ィーィ ィー06 ツ02ィコ, ツィー06 0706040906050702ィー 04ィ 0102ィヲ09ィー090609ィ ィーィケ ィ 0707ィ 08ィ ィーィェ0402 090604ィャ0603ィェ0609ィーィィ 010507 06ィ 08ィ ィ 06ィーィコィィ 000206ィャ02ィー08ィィィィ. 1.6. 00ィィ08ィーィョィ 05ィケィェィ 07 ィコィ ィャ0208ィ 03ィ 08ィ ィャ02ィー0804 09ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィャ020804 060708020102050706ィー 0907060906ィ 06ィー06ィ 08ィ 0302ィェィィ07 ィー080201ィャ0208ィェ0401 06ィ ィイ02ィコィー0609 09 ィィ01 0109ィョ01ィャ0208ィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02. 05ィョィエ0209ィー09ィョ02ィー 010609ィーィ ィー06 ツィェ06 ィ 0605ィケ030602 ィコ0605ィィ ツ0209ィー0906 08ィ 04ィェ0606ィ 08ィ 04ィェ0401 ィャ0601020502ィヲ ィコィ ィャ0208, 08ィ 0405ィィ ツィ 06ィエィィ020907 090906ィヲ09ィー09ィ ィャィィ 07080602ィコ02ィィィィ ィィ ィョ ツ02ィー06ィャ 01ィ -

131.7. 0805000608ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ 23 08ィ ィコィー0208ィィ09ィーィィィコ 0802ィ 05ィケィェ0401 0607ィーィィ ツ0209ィコィィ01 09ィィ09ィー02ィャ (0006ィー06ィコィ ィャ0208, ツ0205060902- ツ0209ィコ060006 0005ィ 04ィ ). 00 OpenGL 07060101020803ィィ09ィ 02ィー0907 010609ィーィ ィー06 ツィェ06 03ィィ0806ィコィィィヲ ィコ05ィ 0909 ィャ0601020502ィヲ ィコィ ィャ0208, 0607ィィ090409ィ 02ィャ04ィヲ 05ィィィェ02ィヲィェ04ィャ 07080206ィ 08ィ 040609ィ ィェィィ02ィャ 09 0601ィェ06080601ィェ0401 ィコ06060801ィィィェィ ィーィ 01 [15]. 06ィー06ィー ィコ05ィ 0909 060008ィ ィェィィ ツ02ィェ ィャ06010205ィィ080609ィ ィェィィ02ィャ ィコィ ィャ0208 09 ィ 0209ィコ06ィェ02 ツィェ06 ィャィ 0504ィャ 08ィ 04ィャ020806ィャ 01ィィィ 0008ィ 00ィャ04 (ィェ02ィー 090604ィャ0603ィェ0609ィーィィ 0702080201ィ ツィィ 0005ィョィ ィィィェ04 080204ィコ0609ィーィィ) ィィ 05ィィィェ02ィヲィェ04ィャィィ 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィ ィャィィ 07080602ィコ02ィィィィ (ィェ02ィー 090604ィャ0603ィェ0609ィーィィ ィャ06010205ィィ080609ィ ィェィィ07 ィェ0205ィィィェ02ィヲィェ0401 ィィ09ィコィ 0302ィェィィィヲ). 1.7. 0805000608ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ 05ィ 090802ィャ07 08ィ 0409ィィィーィィ07 ィコ06ィャ07ィケ06ィー0208ィェ06ィヲ 0008ィ 00ィィィコィィ ィ 040506 09060401ィ ィェ06 ィャィェ06030209ィー0906 ィ 05000608ィィィーィャ0609 05ィコ08ィ ィェィィ04ィ 02ィィィィ, 06ィ 05ィ 01ィ 06ィエィィ01 08ィ 0405ィィ ツィェ04ィャィィ 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィ ィャィィ 0706 09ィー020702ィェィィ 0802ィ 05ィィ09ィーィィ ツィェ0609ィーィィ ィィ0406ィ 08ィ 0302ィェィィ07 ィィ 09ィコ06080609ィーィィ 08ィ ィ 06ィー04. 00 ィェィ 09ィー0607ィエ0202 090802ィャ07 0609ィェ0609ィェ04ィャィィ 0709050706ィー0907 0109ィ 0906 ィャィェ060006ィャ 070806ィーィィ09060706050603ィェ0401 ィェィ 0708ィ 090502ィェィィ07 ィー08ィ 0909ィィ080609ィコィ 05ィョ ツ02ィヲ ィィ 08ィ 09ィー0208ィィ04ィ 02ィィ07. 0805000608ィィィーィャ04 ィー08ィ 0909ィィ080609ィコィィ 05ィョ ツ02ィヲ 0609ィェ0609ィ ィェ04 ィェィ 07080609050203ィィ09ィ ィェィィィィ (ィー08ィ 0909ィィ080609ィコ02) 08ィ 0907080609ィー08ィ ィェ02ィェィィ07 090902ィー060906ィヲ 05ィェ020800ィィィィ 06ィー ィィ09ィー06 ツィェィィィコ0609 090902ィーィ 0106 070607ィ 01ィ ィェィィ07 ィェィ 0902ィー ツィ ィーィコィョ 0005ィ 04ィ 09ィィ08ィーィョィ 05ィケィェ060006 ィェィ ィ 050601ィ ィー020507 (080204ィョ05ィケィーィィ08ィョ06ィエ0202 ィィ0406ィ 08ィ 0302ィェィィ02). 0608ィ 0909ィィ080609ィコィ 05ィョ ツ02ィヲ ィィ 09ィャ0203ィェ0402 ィ 05000608ィィィーィャ04 09 0609ィェ0609ィェ06ィャ ィィ09070605ィケ04ィョ06ィー0907 010507 070605ィョ ツ02ィェィィ07 0006ィー060802ィ 05ィィ09ィーィィ ツィェ0401 ィィ0406ィ 08ィ 0302ィェィィィヲ. 00 09ィィ05ィョ ィ 05000608ィィィーィャィィ ツ0209ィコ06ィヲ 09050603ィェ0609ィーィィ ィェィ 01ィ ィェィェ04ィヲ ィャ06ィャ02ィェィー 05ィーィィ ィ 05000608ィィィーィャ04 ィェ02 070605ィョ ツィィ05ィィ 08ィ 0907080609ィー08ィ ィェ02ィェィィ07 09 04ィ 01ィ ツィ 01 ィィィェィー0208ィ ィコィーィィ09ィェ060006 09ィィィェィー0204ィ ィィ0406ィ 08ィ 0302ィェィィィヲ, 000102 09 0609ィェ0609ィェ06ィャ ィィ09070605ィケ04ィョ06ィー0907 07060101060104 ィェィ 0609ィェ060902 08ィ 09ィー0208ィィ04ィ 02ィィィィ. 0805000608ィィィーィャ04 08ィ 09ィー0208ィィ04ィ 02ィィィィ 09ィー080607ィー ィィ0406ィ 08ィ 0302ィェィィ02 09 0706ィャ06ィエィケ06 07080206ィ 08ィ 040609ィ ィェィィ07 000206ィャ02ィー08ィィ ツ0209ィコ06ィヲ ィャ06010205ィィ ィーィ ィコィィィャ 0907060906ィ 06ィャ, ツィー06ィ 04 ィィィャィィィーィィ080609ィ ィーィケ 07ィ 08ィ ィャ02ィー0804 ィィ09070605ィケ04ィョ02ィャ06ィヲ ィャ06010205ィィ ィコィ ィャ020804. 06.02. 010507 ィコィ 030106ィヲ ィー06 ツィコィィ (x, y, z) ィャ06010205ィィ 0904070605ィェ0702ィー0907 07080206ィ 08ィ 040609ィ ィェィィ02 T (06ィ 04 ツィェ06 05ィィィェ02ィヲィェ0602), ィーィ ィコ0602, ツィー06 (x s, y s ) = T (x, y, z), 000102 (x s, y s ) ィコ06060801ィィィェィ ィー04 090708060202ィィ080609ィ ィェィェ06ィヲ ィー06 ツィコィィ ィェィ 05ィコ08ィ ィェ02. 00 0905ィョ ツィ 02 070605ィィ-

1324 0105ィ 09ィ 1. 0108ィ 00ィィ ツ0209ィコィィィヲ 07080602020909 ィィ OPENGL 0006ィェィ 05ィケィェ06ィヲ ィャ06010205ィィ 07080206ィ 08ィ 040609ィ ィェィィ02 0904070605ィェ0702ィー0907 010507 ィコィ 030106ィヲ 09020803ィィィェ04 070605ィィ0006ィェィ, 0706090502 ツ020006 070605ィョ ツィ 02ィャィ 07 07080602ィコ02ィィ07 07020802090601ィィィー0907 09 08ィ 09ィー08 ィェィ 080204ィョ05ィケィーィィ08ィョ06ィエ02ィヲ ィコィ 08ィーィィィェィコ02. 02090902ィエ02ィェィィ02 0904 ツィィ09050702ィー0907 06ィー010205ィケィェ06 06ィー 07080206ィ 08ィ 040609ィ ィェィィィヲ, 06ィ 04 ツィェ06 09 0706ィャ06ィエィケ06 010609ィーィ ィー06 ツィェ06 07080609ィー06ィヲ ィャ06010205ィィ. OpenGL 0609ィェ0609ィ ィェィ ィェィ 05ィコ08ィ ィェィィ04ィ 02ィィィィ 09 0706ィャ06ィエィケ06 08ィ 09ィー0208ィィ04ィ 02ィィィィ. 0208ィィ02ィェィーィィ080609ィ ィェィェ0609ィーィケ ィェィ 070605ィィ0006ィェィ 05ィケィェ0402 ィャ06010205ィィ 09ィコィョ0702 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ 05ィィィェ02ィヲィェ06ィヲ ィャ06010205ィィ ィコィ ィャ020804 0706040906050702ィー 0607ィィ09ィ ィーィケ 090209ィケ ィ 05000608ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ 09 ィー0208ィャィィィェィ 01 ィ 050002ィ 0804 ィャィ ィー08ィィ02 ィィ 0902ィコィー06080609 4-0006 0706080701ィコィ 09 0209ィコ05ィィ01060906ィャ 07080609ィー08ィ ィェ09ィー0902. 00 09090606 06 ツ02080201ィケ, 05ィー06 070604090605ィィ0506 07020802ィェ0209ィーィィ ィ 0605ィケ03ィョ06 ツィ 09ィーィケ 06070208ィ 02ィィィヲ ィ 05000608ィィィーィャィ ィェィ 09070202ィィィ 05ィィ04ィィ080609ィ ィェィェ0402 0008ィ 00ィィ ツ0209ィコィィ02 07080602020909060804 (09 ィェィ 09ィー0607ィエ0202 090802ィャ07 09ィーィ 0903ィィ02 09ィーィ ィェ01ィ 08ィー06ィャ). 06ィ ィコィィィャ 06ィ 08ィ 0406ィャ, ィ 05000608ィィィーィャ 05ィコ08ィ ィェィィ04ィ 02ィィィィ OpenGL 0608ィィ02ィェィーィィ080609ィ ィェ ィェィ ィィィェィー0208ィ ィコィーィィ09ィェ0402 0708ィィ05060302ィェィィ07 09 010609ィーィ ィー06 ツィェ06 060008ィ ィェィィ ツ02ィェィェ06ィヲ 07060101020803ィコ06ィヲ ィャ0601020502ィヲ ィャィ ィー0208ィィィ 050609 ィィ 06090902ィエ02ィェィィ07. 0201ィェィ ィコ06, 09 09ィィ05ィョ 07080609ィー06ィー04 ィィ 00ィィィ ィコ0609ィーィィ 09ィーィ ィェ01ィ 08ィーィ ィ ィィィ 05ィィ06ィー02ィコィィ, 09 0706ィャ06ィエィケ06 0202 ィ ィ 0406090401 00ィョィェィコ02ィィィヲ 090604ィャ0603ィェ06 0802ィ 05ィィ040609ィ ィーィケ 03ィィ0806ィコィィィヲ 090702ィコィー08 08ィ 0405ィィ ツィェ0401 ィャ0601020502ィヲ 09070506ィーィケ 0106 00ィィ04ィィ ツ0209ィコィィ-ィー06 ツィェ0401, 0609ィーィ 09ィ 0709ィケ 09 08ィ ィャィコィ 01 ィー0802ィ 0609ィ ィェィィィヲ ィコ ィィィェィー0208ィ ィコィーィィ09ィェ04ィャ 0708ィィ05060302ィェィィ07ィャ (0906 ィャィェ060006ィャ 04ィ 09 ツ02ィー 03ィィ0806ィコ06ィヲ ィ 0707ィ 08ィ ィーィェ06ィヲ 07060101020803ィコィィ OpenGL).

130105ィ 09ィ 2. 0009020102ィェィィ02 09 OpenGL 2.1. 0209ィェ0609ィェ0402 090604ィャ0603ィェ0609ィーィィ 0207ィィ090409ィ ィーィケ 090604ィャ0603ィェ0609ィーィィ OpenGL ィャ04 ィ ィョ0102ィャ ツ02080204 00ィョィェィコ02ィィィィ 020006 ィ ィィィ 05ィィ06ィー02ィコィィ. 000902 00ィョィェィコ02ィィィィ ィャ0603ィェ06 08ィ 04010205ィィィーィケ ィェィ 0707ィーィケ ィコィ ィー02000608ィィィヲ: 0キ3 08ィョィェィコ02ィィィィ 0607ィィ09ィ ィェィィ07 0708ィィィャィィィーィィ090609 060708020102050706ィー 06ィ ィイ02ィコィー04 ィェィィ03ィェ020006 ィョ080609ィェ07 ィィ0208ィ 0801ィィィィ (0708ィィィャィィィーィィ0904), ィコ06ィー06080402 0907060906ィ ィェィ 06ィー06ィ 08ィ 03ィ ィーィケ 0008ィ 00ィィ ツ0209ィコィ 07 07060109ィィ09ィー02ィャィ. 00 OpenGL 09 ィコィ ツ0209ィー0902 0708ィィィャィィィーィィ090609 090409ィーィョ07ィ 06ィー ィー06 ツィコィィ, 05ィィィェィィィィ, ィャィェ060006ィョ000605ィケィェィィィコィィ ィィ ィー.01. 0キ3 08ィョィェィコ02ィィィィ 0607ィィ09ィ ィェィィ07 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ 0905ィョ03ィ ィー 010507 0607ィィ09ィ ィェィィ07 070605060302ィェィィ07 ィィ 07ィ 08ィ ィャ02ィー080609 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ, 08ィ 09070605060302ィェィェ0401 09 ィー080201ィャ0208ィェ06ィヲ 090202ィェ02. 0キ3 08ィョィェィコ02ィィィィ 04ィ 01ィ ィェィィ07 ィ ィー08ィィィ ィョィー0609. 05 0706ィャ06ィエィケ06 04ィ 01ィ ィェィィ07 ィ ィー08ィィィ ィョィー0609 0708060008ィ ィャィャィィ09ィー 060708020102050702ィー, ィコィ ィコ ィ ィョ01ィョィー 09040005070102ィーィケ ィェィ 05ィコ08ィ ィェ02 06ィー06ィ 08ィ 03ィ 02ィャ0402 06ィ ィイ02ィコィー04. 0208ィョ00ィィィャィィ 09050609ィ ィャィィ, 020905ィィ 09 0706ィャ06ィエィケ06 0708ィィィャィィィーィィ090609 060708020102050702ィー0907, ツィー06 07060709ィィィー0907 ィェィ 05ィコ08ィ ィェ02, ィー06 ィ ィー08ィィィ ィョィー04 060708020102050706ィー 0907060906ィ 0904090601ィ ィェィ 05ィコ08ィ ィェ. 25

1326 0105ィ 09ィ 2. 0009020102ィェィィ02 09 OPENGL 00 ィコィ ツ0209ィー0902 ィ ィー08ィィィ ィョィー0609 OpenGL 0706040906050702ィー 04ィ 01ィ 09ィ ィーィケ 020902ィー, 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィィ ィャィ ィー0208ィィィ 05ィ, ィー02ィコ09ィーィョ0804, 07ィ 08ィ ィャ02ィー0804 06090902ィエ02ィェィィ07. 0キ3 08ィョィェィコ02ィィィィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ 0706040906050706ィー 04ィ 01ィ ィーィケ 070605060302ィェィィ02 ィェィ ィ 050601ィ ィー020507 09 09ィィ08ィーィョィ 05ィケィェ06ィャ 07080609ィー08ィ ィェ09ィー0902, 07ィ 08ィ ィャ02ィー0804 06ィ ィイ02ィコィーィィ09ィ ィコィ ィャ020804. 05ィェィ 07 05ィーィィ 07ィ 08ィ ィャ02ィー0804, 09ィィ09ィー02ィャィ 09ィャ060302ィー ィェ02 ィー0605ィケィコ06 0708ィ 09ィィ05ィケィェ06 070609ィー0806ィィィーィケ ィィ0406ィ 08ィ 0302ィェィィ02, ィェ06 ィィ 06ィー0902 ツィケ 06ィ ィイ02ィコィー04, 06ィコィ 04ィ 0903ィィ020907 09ィェ02 07060507 040802ィェィィ07. 0キ3 01ィ ィ 0608 00ィョィェィコ02ィィィヲ 000206ィャ02ィー08ィィ ツ0209ィコィィ01 07080206ィ 08ィ 040609ィ ィェィィィヲ 0706040906050702ィー 0708060008ィ ィャィャィィ09ィーィョ 0904070605ィェ07ィーィケ 08ィ 0405ィィ ツィェ0402 07080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 070609060806ィー, 07020802ィェ0609, ィャィ 0903ィーィ ィ ィィ080609ィ ィェィィ02. 0308ィィ 05ィー06ィャ OpenGL ィャ060302ィー 0904070605ィェ07ィーィケ 0106070605ィェィィィー0205ィケィェ0402 06070208ィ 02ィィィィ, ィーィ ィコィィ02 ィコィ ィコ ィィ09070605ィケ040609ィ ィェィィ02 090705ィ ィヲィェ0609 010507 070609ィー080602ィェィィ07 05ィィィェィィィヲ ィィ 070609020801ィェ0609ィー02ィヲ, ィョ01ィ 0502ィェィィ02 ィェ0209ィィ01ィィィャ0401 0008ィ 00ィャ02ィェィー0609 ィィ0406ィ 08ィ 0302ィェィィィヲ, 08ィ ィ 06ィーィ 09 ィィ0406ィ 08ィ 0302ィェィィ07ィャィィ ィェィ ィョ080609ィェ02 07ィィィコ09020502ィヲ ィィ ィー.01. 2.2. 06ィェィー02080002ィヲ09 OpenGL OpenGL 090609ィー06ィィィー ィィ04 ィェィ ィ 0608ィ ィ ィィィ 05ィィ06ィー02ィコ. 000902 ィ ィ 0406090402 00ィョィェィコ02ィィィィ 0108ィ ィェ07ィー0907 09 0609ィェ0609ィェ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ02, 010507 06ィ 0604ィェィ ツ02ィェィィ07 ィコ06ィー060806ィヲ 09 01ィ 05ィケィェ02ィヲ0302ィャ ィャ04 ィ ィョ0102ィャ ィィ09070605ィケ040609ィ ィーィケ ィ ィ ィ 080209ィィィ ィーィョ08ィョ GL. 0306ィャィィィャ06 0609ィェ0609ィェ06ィヲ, OpenGL 09ィコ0506 ツィ 02ィー 09 0902ィ 07 ィェ0209ィコ0605ィケィコ06 0106070605ィェィィィー0205ィケィェ0401 ィ ィィィ 05ィィ06ィー02ィコ. 03020809ィ 07 ィィ04 ィェィィ01 ィ ィィィ 05ィィ06ィー02ィコィ ィョィーィィ05ィィィー GL(GLU GL Utility). 000902 00ィョィェィコ02ィィィィ 05ィー06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ 0607080201020502ィェ04 ツ02080204 ィ ィ 0406090402 00ィョィェィコ02ィィィィ GL. 00 090609ィーィ 09 GLU 09060305ィ 0802ィ 05ィィ04ィ 02ィィ07 ィ 06050202 09050603ィェ0401 00ィョィェィコ02ィィィヲ, ィーィ ィコィィ01 ィコィ ィコ ィェィ ィ 0608 070607ィョ050708ィェ0401 000206ィャ02ィー08ィィ ツ0209ィコィィ01 0708ィィィャィィィーィィ090609 (ィコィョィ, 03ィ 08, 02ィィ05ィィィェ0108, 01ィィ09ィコ), 00ィョィェィコ02ィィィィ 070609ィー080602ィェィィ07 090705ィ ィヲィェ0609, 0802ィ 05ィィ04ィ 02ィィ07 0106070605ィェィィィー0205ィケィェ0401 06070208ィ 02ィィィヲ ィェィ 01 ィャィ ィー08ィィ02ィ ィャィィ ィィ ィー.07. OpenGL ィェ02 09ィコ0506 ツィ 02ィー 09 0902ィ 07 ィェィィィコィ ィコィィ01 09070202ィィィ 05ィケィェ0401 ィコ06ィャィ ィェ01 010507 08ィ ィ 06ィー04 09 06ィコィェィ ィャィィ ィィ05ィィ 09090601ィ ィィィェ000608ィャィ 02ィィィィ 06ィー 070605ィケ040609ィ ィー020507. 030605ィー06ィャィョ ィ 0405ィィ 09060401ィ ィェ04 09070202ィィィ 05ィケィェ0402 07020802ィェ0609ィィィャ0402 ィ ィィィ 05ィィ06ィー02ィコィィ

132.2. 06ィェィー02080002ィヲ09 OPENGL 27 04ィィ09. 2.1. 020800ィ ィェィィ04ィ 02ィィ07 ィ ィィィ 05ィィ06ィー02ィコィィ OpenGL 010507 06ィ 02090702 ツ02ィェィィ07 ツィ 09ィー06 ィィ09070605ィケ04ィョ02ィャ0401 00ィョィェィコ02ィィィヲ 0904ィ ィィィャ060102ィヲ09ィー09ィィ07 09 070605ィケ040609ィ ィー020502ィャ ィィ 010507 06ィー06ィ 08ィ 0302ィェィィ07 ィィィェ000608ィャィ 02ィィィィ 09 0706ィャ06ィエィケ06 06ィコ06ィェィェ06ィヲ 07060109ィィ09ィー02ィャ04. 01ィ ィィィ 06050202 070607ィョ050708ィェ06ィヲ 0709050702ィー0907 ィ ィィィ 05ィィ06ィー02ィコィ GLUT (GL Utility Toolkit). 080608ィャィ 05ィケィェ06 GLUT ィェ02 09010601ィィィー 09 OpenGL, ィェ06 de facto 09ィコ0506 ツィ 02ィー0907 0706 ツィーィィ 0906 090902 020006 01ィィ09ィー08ィィィ ィョィーィィ0904 ィィ ィィィャ0202ィー 0802ィ 05ィィ04ィ 02ィィィィ 010507 08ィ 0405ィィ ツィェ0401 0705ィ ィー000608ィャ. GLUT 070802010609ィーィ 09050702ィー ィー0605ィケィコ06 ィャィィィェィィィャィ 05ィケィェ06 ィェ0206ィ 010601ィィィャ04ィヲ ィェィ ィ 0608 00ィョィェィコ02ィィィヲ 010507 09060401ィ ィェィィ07 OpenGL0708ィィ05060302ィェィィ07. 08ィョィェィコ02ィィ06ィェィ 05ィケィェ06 ィ ィェィ 050600ィィ ツィェィ 07 ィ ィィィ 05ィィ06ィー02ィコィ GLX ィャ02ィェ0202 070607ィョ050708ィェィ. 00 01ィ 05ィケィェ02ィヲ0302ィャ 09 05ィー06ィヲ ィコィェィィ0002 09 ィコィ ツ0209ィー0902 0609ィェ0609ィェ06ィヲ ィ ィョ0102ィー 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ0907 GLUT. 080806ィャ02 ィー060006, 00ィョィェィコ02ィィィィ, 09070202ィィ00ィィ ツィェ0402 010507 ィコ06ィェィコ0802ィーィェ06ィヲ 06ィコ06ィェィェ06ィヲ 07060109ィィ09ィー02ィャ04, 06ィ 04 ツィェ06 0901060107ィー 09 0202 0708ィィィコ05ィ 01ィェ06ィヲ 0708060008ィ ィャィャィェ04ィヲ ィィィェィー02080002ィヲ09. 06ィ ィコ, 00ィョィェィコ02ィィィィ, 07060101020803ィィ09ィ 06ィエィィ02 0904070605ィェ02ィェィィ02 OpenGL, 0209ィーィケ 09 090609ィーィ 0902 Win32 API ィィ X Window. 01ィ 08ィィ09ィョィェィコ02 2.1 090102ィャィ ィーィィ ツ0209ィコィィ 0708020109ィーィ 090502ィェィ 060800ィ ィェィィ04ィ 02ィィ07 09ィィ09ィー02ィャ04 ィ ィィィ 05ィィ06ィー02ィコ 09 09020809ィィィィ, 08ィ ィ 06ィーィ 06ィエ02ィヲ 070601 ィョ0708ィ 090502ィェィィ02ィャ 09ィィ09ィー02ィャ04 Windows. 08ィェィ 050600ィィ ツィェィ 07 060800ィ ィェィィ04ィ 02ィィ07 ィィ09070605ィケ04ィョ02ィー0907 ィィ 09 0108ィョ00ィィ01 09020809ィィ0701 OpenGL.

1328 0105ィ 09ィ 2. 0009020102ィェィィ02 09 OPENGL 2.3. 080801ィィィー02ィコィーィョ08ィ OpenGL 08ィョィェィコ02ィィィィ OpenGL 0802ィ 05ィィ040609ィ ィェ04 09 ィャ06010205ィィ ィコ05ィィ02ィェィー-090208090208. 0308ィィ05060302ィェィィ02 090409ィーィョ07ィ 02ィー 09 080605ィィ ィコ05ィィ02ィェィーィ 06ィェ06 090408ィ ィ ィ ィー0409ィ 02ィー ィコ06ィャィ ィェ0104, ィ 090208090208 OpenGL ィィィェィー0208070802ィーィィ08ィョ02ィー ィィ 0904070605ィェ0702ィー ィィ01. 05ィ ィャ 090208090208 ィャ060302ィー ィェィ 010601ィィィーィケ0907 ィコィ ィコ ィェィ ィー06ィャ 0302 ィコ06ィャ07ィケ06ィー020802, ィェィ ィコ06ィー060806ィャ ィェィ 010601ィィィー0907 ィコ05ィィ02ィェィー (ィェィ 0708ィィィャ0208, 09 09ィィ0102 01ィィィェィ ィャィィ ツ0209ィコィィ 04ィ 0008ィョ03ィ 02ィャ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ DLL), ィーィ ィコ ィィ ィェィ 0108ィョ0006ィャ (0708ィィ 05ィー06ィャ ィャ060302ィー ィ 04ィーィケ ィィ09070605ィケ040609ィ ィェ 09070202ィィィ 05ィケィェ04ィヲ 070806ィー06ィコ0605 0702080201ィ ツィィ 01ィ ィェィェ0401 ィャ020301ィョ ィャィ 03ィィィェィ ィャィィ). GL 06ィ 08ィ ィ ィ ィー0409ィ 02ィー ィィ 08ィィ09ィョ02ィー 09 ィ ィョ00020802 ィコィ 0108ィ 0008ィ 00ィィ ツ0209ィコィィ02 0708ィィィャィィィーィィ0904 09 ィョ ツ02ィー06ィャ ィェ02ィコ06ィー0608060006 ツィィ0905ィ 0904ィ 08ィ ィェィェ0401 080203ィィィャ0609. 08ィ 030104ィヲ 0708ィィィャィィィーィィ09 05ィー06 ィー06 ツィコィ, 06ィー08020406ィコ, ィャィェ060006ィョ000605ィケィェィィィコ ィィ ィー.01. 08ィ 030104ィヲ 080203ィィィャ ィャ060302ィー ィ 04ィーィケ ィィ04ィャ02ィェ02ィェ ィェ0204ィ 09ィィ09ィィィャ06 06ィー 0108ィョ00ィィ01. 0207080201020502ィェィィ02 0708ィィィャィィィーィィ090609, 0904ィ 0608 080203ィィィャ0609 ィィ 0108ィョ00ィィ02 06070208ィ 02ィィィィ 0607ィィ090409ィ 06ィー0907 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ01 09 000608ィャ02 09040406090609 00ィョィェィコ02ィィィヲ 0708ィィィコ05ィ 01ィェ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ. 0308ィィィャィィィーィィ0904 060708020102050706ィー0907 ィェィ ィ 060806ィャ ィィ04 0601ィェ06ィヲ ィィ05ィィ ィ 06050202 09020803ィィィェ (vertex). 00020803ィィィェィ 060708020102050702ィー ィー06 ツィコィョ, ィコ06ィェ0202 06ィー080204ィコィ ィィ05ィィ ィョ000605 ィャィェ060006ィョ000605ィケィェィィィコィ. 05 ィコィ 030106ィヲ 09020803ィィィェ06ィヲ ィ 09090602ィィィィ08ィョ06ィー0907 ィェ02ィコ06ィー06080402 01ィ ィェィェ0402 (ィコ06060801ィィィェィ ィー04, 020902ィー, ィェ0608ィャィ 05ィケ, ィー02ィコ09ィーィョ08ィェ0402 ィコ06060801ィィィェィ ィー04 ィィ ィー.01.), ィェィ 040409ィ 02ィャ0402 ィ ィー08ィィィ ィョィーィ ィャィィ. 00 070601ィ 09050706ィエ02ィャ ィ 0605ィケ03ィィィェ09ィー0902 0905ィョ- ツィ 0209 ィコィ 0301ィ 07 09020803ィィィェィ 06ィ 08ィ ィ ィ ィー0409ィ 02ィー0907 ィェ0204ィ 09ィィ09ィィィャ06 06ィー 0108ィョ00ィィ01. 05 ィー06 ツィコィィ 040802ィェィィ07 ィ 0801ィィィー02ィコィーィョ0804, 0008ィ 00ィィ ツ0209ィコィ 07 09ィィ09ィー02ィャィ OpenGL 0709050702ィー0907 ィコ06ィェ0902ィヲ020806ィャ, 090609ィー0607ィエィィィャ ィィ04 ィェ0209ィコ0605ィケィコィィ01 0706090502010609ィ ィー0205ィケィェ0401 05ィーィ 070609 06ィ 08ィ ィ 06ィーィコィィ 0008ィ 00ィィ ツ0209ィコィィ01 01ィ ィェィェ0401. 0806ィャィ ィェ0104 OpenGL 0909020001ィ 06ィ 08ィ ィ ィ ィー0409ィ 06ィー0907 09 ィー06ィャ 0706080701ィコ02, 09 ィコ06ィー060806ィャ 06ィェィィ 070609ィーィョ07ィ 06ィー, 0106ィー07 ィャ0600ィョィー 070806ィィ09010601ィィィーィケ 04ィ 01020803ィコィィ 0702080201 ィー02ィャ, ィコィ ィコ 0708060709ィィィー0907 05000002ィコィー 06ィー ィィ01 0904070605ィェ02ィェィィ07. 00 ィ 0605ィケ03ィィィェ09ィー0902 0905ィョ ツィ 0209 OpenGL 070802010609ィーィ 09050702ィー ィェ0207060908020109ィー0902ィェィェ04ィヲ ィィィェィー02080002ィヲ09, ィー.02. 0607080201020502ィェィィ02 06ィ ィイ02ィコィーィ 0904040409ィ 02ィー 020006 09ィィ04ィョィ 05ィィ04ィ 02ィィ06 09 ィ ィョ00020802 ィコィ 0108ィ. 05 ィー06 ツィコィィ 040802ィェィィ07 08ィ 0408ィ ィ 06ィー ツィィィコ0609, OpenGL 05ィー06 ィェィ ィ 0608 ィコ06ィャィ ィェ01,

132.3. 080801ィィィー02ィコィーィョ08ィ OPENGL 29 ィコ06ィー06080402 ィョ0708ィ 09050706ィー ィィ09070605ィケ040609ィ ィェィィ02ィャ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ 0707ィ 08ィ ィーィョ0804. 030905ィィ ィ 0707ィ 08ィ ィーィョ08ィ 090609ィー06ィィィー ィー0605ィケィコ06 ィィ04 ィ 01080209ィョ02ィャ060006 ィ ィョ000208ィ ィコィ 0108ィ, ィー060001ィ OpenGL 0106050302ィェ ィ 04ィーィケ 0802ィ 05ィィ040609ィ ィェ 070605ィェ0609ィーィケ06 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ 080209ィョ08090609 0202ィェィー08ィ 05ィケィェ060006 070806020209090608ィ. 02ィ 04 ツィェ06 0008ィ 00ィィ ツ0209ィコィ 07 ィ 0707ィ 08ィ ィーィョ08ィ 070802010609ィーィ 09050702ィー 08ィ 0405ィィ ツィェ0402 ィョ080609ィェィィ ィョ09ィコ060802ィェィィ07: 06ィー ィ 0707ィ 08ィ ィーィェ06ィヲ 0802ィ 05ィィ04ィ 02ィィィィ 0904090601ィ 05ィィィェィィィヲ ィィ ィャィェ060006ィョ000605ィケィェィィィコ0609 0106 ィィ0406ィエ0802ィェィェ0401 0008ィ 00ィィ ツ0209ィコィィ01 0708060202090906080609 09 07060101020803ィコ06ィヲ 08ィ 0405ィィ ツィェ0401 06070208ィ 02ィィィヲ ィェィ 01 000206ィャ02ィー08ィィ ツ0209ィコィィィャィィ 01ィ ィェィェ04ィャィィ. 04ィィ09. 2.2. 08ィョィェィコ02ィィ06ィェィィ080609ィ ィェィィ02 ィコ06ィェ0902ィヲ0208ィ OpenGL OpenGL 0709050702ィー0907 070806090506ィヲィコ06ィヲ ィャ020301ィョ ィ 0707ィ 08ィ ィーィョ0806ィヲ ィィ 070605ィケ040609ィ ィー0205ィケ09ィコィィィャ ィョ080609ィェ02ィャ, ツィー06 0706040906050702ィー 070802010609ィーィ 090507ィーィケ 0201ィィィェ04ィヲ ィィィェィー02080002ィヲ09 ィェィ 08ィ 04ィェ0401 0705ィ ィー000608ィャィ 01, ィィ09070605ィケ04ィョ07 090604ィャ0603ィェ0609ィーィィ ィ 0707ィ 08ィ ィーィェ06ィヲ 07060101020803ィコィィ. 080806ィャ02 ィー060006, OpenGL ィャ0603ィェ06 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ ィコィ ィコ ィコ06ィェ02 ツィェ04ィヲ ィ 09-

1330 0105ィ 09ィ 2. 0009020102ィェィィ02 09 OPENGL ィー06ィャィ ィー, 090609ィー0607ィェィィ02 ィコ06ィー0608060006 060708020102050702ィー0907 ィャィェ06030209ィー0906ィャ 04ィェィ ツ02ィェィィィヲ 09070202ィィィ 05ィケィェ0401 07020802ィャ02ィェィェ0401, 04ィェィ ツ02ィェィィ07ィャィィ ィー02ィコィョィエ02ィヲ ィェ0608ィャィ 05ィィ, 020902ィーィ, ィコ06060801ィィィェィ ィー ィー02ィコ09ィーィョ0804 ィィ 0108ィョ00ィィ01 ィ ィー08ィィィ ィョィー0609 ィィ 0708ィィ04ィェィ ィコ0609. 000907 05ィーィ ィィィェ000608ィャィ 02ィィ07 ィ ィョ0102ィー ィィ09070605ィケ040609ィ ィェィ 0708ィィ 070609ィーィョ070502ィェィィィィ 09 0008ィ 00ィィ ツ0209ィコィョ06 09ィィ09ィー02ィャィョ ィコ06060801ィィィェィ ィー 09020803ィィィェ04 010507 070609ィー080602ィェィィ07 00ィィ00ィョ0804, 09 ィコ06ィー0608ィョ06 06ィェィ 09010601ィィィー. 05ィャ02ィェィ 090609ィー0607ィェィィィヲ 070806ィィ09010601ィィィー 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ01, ィコ06ィー06080402 06000608ィャ050706ィー0907 ィコィ ィコ 090404060904 00ィョィェィコ02ィィィヲ. 2.4. 05ィィィェィーィ ィコ09ィィ09 ィコ06ィャィ ィェ01 0207080201020502ィェィィ07 ィコ06ィャィ ィェ01 GL ィェィ 01060107ィー0907 09 00ィ ィヲ0502 gl.h, 010507 09ィコ0506- ツ02ィェィィ07 ィコ06ィー0608060006 ィェィョ03ィェ06 ィェィ 07ィィ09ィ ィーィケ #include <g l / g l. h> 020507 08ィ ィ 06ィー04 09 ィ ィィィ 05ィィ06ィー02ィコ06ィヲ GLU ィェィョ03ィェ06 ィ ィェィ 050600ィィ ツィェ06 070601ィコ0506- ツィィィーィケ 00ィ ィヲ05 glu.h. 00020809ィィィィ 05ィーィィ01 ィ ィィィ 05ィィ06ィー02ィコ, ィコィ ィコ 0708ィ 09ィィ0506, 09ィコ0506- ツィ 06ィー0907 09 01ィィ09ィー08ィィィ ィョィーィィ0904 09ィィ09ィー02ィャ 0708060008ィ ィャィャィィ080609ィ ィェィィ07, ィェィ 0708ィィィャ0208, Microsoft Visual C++ ィィ05ィィ Borland C++ Builder. 00 06ィー05ィィ ツィィ02 06ィー 09ィーィ ィェ01ィ 08ィーィェ0401 ィ ィィィ 05ィィ06ィー02ィコ, 07ィ ィコ02ィー GLUT ィェィョ03ィェ06 ィィィェ09ィーィ 0505ィィ080609ィ ィーィケ ィィ 070601ィコ0506 ツィ ィーィケ 06ィー010205ィケィェ06. 0306010806ィ ィェィ 07 ィィィェ000608ィャィ 02ィィ07 06 ィェィ 09ィー0806ィヲィコ02 09080201 0708060008ィ ィャィャィィ080609ィ ィェィィ07 010507 08ィ ィ 06ィー04 09 OpenGL 0708ィィ09020102ィェィ 09 チィ 09ィーィィ III. 000902 ィコ06ィャィ ィェ0104 (070806020201ィョ0804 ィィ 00ィョィェィコ02ィィィィ) ィ ィィィ 05ィィ06ィー02ィコィィ GL ィェィ ツィィィェィ 06ィー0907 09 07080200ィィィコ09ィ gl, 090902 ィコ06ィェ09ィーィ ィェィー04 09 07080200ィィィコ09ィ GL_. 050606ィー0902ィー09ィー09ィョ06ィエィィ02 ィコ06ィャィ ィェ0104 ィィ ィコ06ィェ09ィーィ ィェィー04 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT ィ ィェィ 050600ィィ ツィェ06 ィィィャ0206ィー 07080200ィィィコ0904 glu (GLU_) ィィ glut (GLUT_) 080806ィャ02 ィー060006, 09 ィィィャ02ィェィ ィコ06ィャィ ィェ01 0901060107ィー 09ィョ0000ィィィコ0904, ィェ0209ィョィエィィ02 ィィィェ000608ィャィ 02ィィ06 06 ツィィ090502 ィィ ィーィィ0702 0702080201ィ 09ィ 02ィャ0401 07ィ 08ィ ィャ02ィー080609. 00 OpenGL 070605ィェ0602 ィィィャ07 ィコ06ィャィ ィェ0104 ィィィャ0202ィー 09ィィ01: type glcommand_name [ 1 2 3 4 ] [ b s i f d ub us ui ] [ v ] ( type1 arg1,..., typen argn ) 06ィャ07 090609ィー06ィィィー ィィ04 ィェ0209ィコ0605ィケィコィィ01 ツィ 09ィー02ィヲ:

132.5. 0308ィィィャ0208 0708ィィ05060302ィェィィ07 31 gl ィィィャ07 ィ ィィィ 05ィィ06ィー02ィコィィ, 09 ィコ06ィー060806ィヲ 0607ィィ09ィ ィェィ 05ィーィ 00ィョィェィコ02ィィ07: 010507 ィ ィ 0406090401 00ィョィェィコ02ィィィヲ OpenGL, 00ィョィェィコ02ィィィヲ ィィ04 ィ ィィィ 05ィィ06ィー02ィコ GL, GLU, GLUT, GLAUX 05ィー06 gl, glu, glut, aux 090606ィー0902ィー09ィー0902ィェィェ06; Command_name ィィィャ07 ィコ06ィャィ ィェ0104 (070806020201ィョ0804 ィィ05ィィ 00ィョィェィコ02ィィィィ); [1 2 3 4 ] ツィィ090506 ィ 0800ィョィャ02ィェィー0609 ィコ06ィャィ ィェ0104; [b s i f d ub us ui ] ィーィィ07 ィ 0800ィョィャ02ィェィーィ : 09ィィィャ090605 b GLbyte (ィ ィェィ 050600 char 09 05/05++), 09ィィィャ090605 i GLint (ィ ィェィ 050600 int), 09ィィィャ090605 f GLoat (ィ ィェィ 050600 oat) ィィ ィーィ ィコ 01ィ 050202. 030605ィェ04ィヲ 0907ィィ0906ィコ ィーィィ070609 ィィ ィィ01 0607ィィ09ィ ィェィィ02 ィャ0603ィェ06 070609ィャ06ィー0802ィーィケ 09 00ィ ィヲ0502 gl.h; [v ] ィェィ 05ィィ ツィィ02 05ィー060006 09ィィィャ090605ィ 0706ィコィ 040409ィ 02ィー, ツィー06 09 ィコィ ツ0209ィー0902 07ィ 08ィ ィャ02ィー080609 00ィョィェィコ02ィィィィ ィィ09070605ィケ04ィョ02ィー0907 ィョィコィ 04ィ ィー0205ィケ ィェィ ィャィ 0909ィィ09 04ィェィ ツ02ィェィィィヲ. 05ィィィャ09060504 09 ィコ09ィ 0108ィ ィーィェ0401 09ィコ06ィ ィコィ 01 09 ィェ02ィコ06ィー06080401 ィェィ 0409ィ ィェィィ0701 ィェ02 ィィ09070605ィケ04ィョ06ィー0907. 01ィ 0708ィィィャ0208, ィコ06ィャィ ィェ01ィ glvertex2i() 0607ィィ09ィ ィェィ 09 ィ ィィィ 05ィィ06ィー02ィコ02 GL ィィ ィィ09070605ィケ04ィョ02ィー 09 ィコィ ツ0209ィー0902 07ィ 08ィ ィャ02ィー080609 0109ィ 0202050401 ツィィ0905ィ, ィ ィコ06ィャィ ィェ01ィ glcolor3fv() ィィ09070605ィケ04ィョ02ィー 09 ィコィ ツ0209ィー0902 07ィ 08ィ ィャ02ィー08ィ ィョィコィ 04ィ ィー0205ィケ ィェィ ィャィ 0909ィィ09 ィィ04 ィー080201 0902ィエ0209ィー0902ィェィェ0401 ツィィ090205. 0609070605ィケ040609ィ ィェィィ07 ィェ0209ィコ0605ィケィコィィ01 09ィ 08ィィィ ィェィー0609 ィコィ 030106ィヲ ィコ06ィャィ ィェ0104 ィャ0603ィェ06 ツィ 09ィーィィ ツィェ06 ィィ04ィ 0203ィ ィーィケ, 0708ィィィャ02ィェ0707 070208020008ィョ04ィコィョ 00ィョィェィコ02ィィィヲ 070404ィコィ C++. 0106 ィィィェィー02080002ィヲ09 OpenGL ィェ02 08ィ 0909 ツィィィーィ ィェ ィェィ ィコ06ィェィコ0802ィーィェ04ィヲ 070404ィコ 0708060008ィ ィャィャィィ080609ィ ィェィィ07, ィィ, 090502010609ィ ィー0205ィケィェ06, 0106050302ィェ ィ 04ィーィケ ィャィ ィコ09ィィィャィ 05ィケィェ06 ィョィェィィ09020809ィ 0502ィェ. 2.5. 0308ィィィャ0208 0708ィィ05060302ィェィィ07 06ィィ07ィィ ツィェィ 07 0708060008ィ ィャィャィ, ィィ09070605ィケ04ィョ06ィエィ 07 OpenGL, ィェィ ツィィィェィ 02ィー0907 09 0607080201020502ィェィィ07 06ィコィェィ, 09 ィコ06ィー060806ィャ ィ ィョ0102ィー 070806ィィ09010601ィィィーィケ 06ィー06ィ 08ィ 0302ィェィィ02. 05ィ ィー02ィャ 09060401ィ 02ィー0907 ィコ06ィェィー02ィコ09ィー (ィコ05ィィ02ィェィー) OpenGL ィィ ィ 09090602ィィィィ08ィョ02ィー0907 09 05ィーィィィャ 06ィコィェ06ィャ. 02ィ 050202 0708060008ィ ィャィャィィ09ィー ィャ060302ィー 090906ィ 0601ィェ06 ィィ09070605ィケ040609ィ ィーィケ ィコ06ィャィ ィェ0104 OpenGL API.

1332 0105ィ 09ィ 2. 0009020102ィェィィ02 09 OPENGL 01ィィ0302 0708ィィ09020102ィェ ィー02ィコ09ィー ィェ02ィ 0605ィケ0306ィヲ 0708060008ィ ィャィャ04, ィェィ 07ィィ09ィ ィェィェ06ィヲ 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ ィ ィィィ 05ィィ06ィー02ィコィィ GLUT 0909060206ィ 08ィ 04ィェ04ィヲ ィ ィェィ 050600 ィコ05ィ 0909ィィ ツ0209ィコ060006 0708ィィィャ0208ィ 06Hello, World!07. 000902, ツィー06 010205ィ 02ィー 05ィーィ 0708060008ィ ィャィャィ 08ィィ09ィョ02ィー 09 0202ィェィー0802 06ィコィェィ ィコ08ィ 09ィェ04ィヲ ィコ09ィ 0108ィ ィー. 0602ィャ ィェ02 ィャ02ィェ0202, 01ィ 0302 ィェィ 05ィー06ィャ 07080609ィー06ィャ 0708ィィィャ020802 ィャ0603ィェ06 0706ィェ07ィーィケ 0708ィィィェ02ィィ0704 0708060008ィ ィャィャィィ080609ィ ィェィィ07 09 0706ィャ06ィエィケ06 OpenGL. 0308060008ィ ィャィャィ 2.1. 03080609ィー02ィヲ03ィィィヲ 0708ィィィャ0208 OpenGL. #include <s t d l i b. h> // 070601ィコ0506 ツィ 02ィャ ィ ィィィ 05ィィ06ィー02ィコィョ GLUT #include <g l / g l u t. h> // ィェィ ツィ 05ィケィェィ 07 03ィィ08ィィィェィ ィィ 09040906ィーィ 06ィコィェィ GLint Width = 512, Height = 512; // 08ィ 04ィャ0208 ィコィョィ ィ const int CubeSize = 2 0 0; // 05ィーィ 00ィョィェィコ02ィィ07 ィョ0708ィ 09050702ィー 090902ィャ 090409060106ィャ ィェィ 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 ) ;

132.5. 0308ィィィャ0208 0708ィィ05060302ィェィィ07 33 glend ( ) ; } g l F i n i s h ( ) ; // 08ィョィェィコ02ィィ07 0904040409ィ 02ィー0907 0708ィィ ィィ04ィャ02ィェ02ィェィィィィ 08ィ 04ィャ02080609 06ィコィェィ void Reshape ( GLint w, GLint h) { Width = w; Height = h ; /* ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィャ 08ィ 04ィャ020804 06ィ 05ィ 09ィーィィ 06ィー06ィ 08ィ 0302ィェィィ07 */ glviewport (0, 0, w, h ) ; /* 0608ィー060008ィ 00ィィ ツ0209ィコィ 07 07080602ィコ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ィー 090606ィ ィエ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ィィィコ05 0708ィィ05060302ィェィィ07 void main ( int argc, char * argv [ ] ) { g l u t I n i t (&argc, argv ) ;

1334 0105ィ 09ィ 2. 0009020102ィェィィ02 09 OPENGL glutinitdisplaymode (GLUT_RGB) ; glutinitwindowsize ( Width, Height ) ; glutcreatewindow ( "Red square example" ) ; glutdisplayfunc ( Display ) ; glutreshapefunc ( Reshape ) ; glutkeyboardfunc ( Keyboard ) ; } glutmainloop ( ) ; 04ィィ09. 2.3. 040204ィョ05ィケィーィ ィー 08ィ ィ 06ィー04 0708060008ィ ィャィャ04 2.1. 010209ィャ06ィー0807 ィェィ ィャィ 0504ィヲ 08ィ 04ィャ0208, 05ィー06 070605ィェ0609ィーィケ06 04ィ 0902080302ィェィェィ 07 0708060008ィ ィャィャィ, ィコ06ィー0608ィ 07 01060503ィェィ ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ0907 ィィ 08ィ ィ 06ィーィ ィーィケ ィェィ 0506ィ 06ィヲ 09ィィ09ィー02ィャ02, 07060101020803ィィ09ィ 06ィエ02ィヲ OpenGL ィィ GLUT. 09ィィィ 05ィィ06ィー02ィコィ GLUT 07060101020803ィィ09ィ 02ィー 0904ィ ィィィャ060102ィヲ09ィー09ィィ02 09 070605ィケ040609ィ ィー020502ィャ 09 0706ィャ06ィエィケ06 ィーィ ィコ ィェィ 040409ィ 02ィャ0401 00ィョィェィコ02ィィィヲ c 06ィ 08ィ ィーィェ04ィャ 090404060906ィャ (callback function). 030905ィィ 070605ィケ040609ィ ィー0205ィケ 07060109ィィィェィョ05 ィャ0403ィケ, ィェィ 03ィ 05 ィェィ ィコィェ0607ィコィョ ィコ05ィ 09ィィィ ィーィョ0804 ィィ05ィィ ィィ04ィャ02ィェィィ05 08ィ 04ィャ020804 06ィコィェィ, 070806ィィ09010601ィィィー 0906ィ 04ィーィィ02 ィィ 0904040409ィ 02ィー0907 090606ィー0902ィー09ィー09ィョ06ィエィ 07 00ィョィェィコ02ィィ07 070605ィケ040609ィ ィー020507 06ィ 08ィ ィ 06ィー ツィィィコ 0906ィ 04ィーィィィヲ (00ィョィェィコ02ィィ07 09 06ィ 08ィ ィーィェ04ィャ 090404060906ィャ). 04ィ 0909ィャ06ィー08ィィィャ ィ 06050202 0706010806ィ ィェ06 00ィョィェィコ02ィィ06 main 01ィ ィェィェ060006 0708ィィィャ0208ィ.

132.5. 0308ィィィャ0208 0708ィィ05060302ィェィィ07 35 02ィェィ 090609ィー06ィィィー ィィ04 ィー080201 ツィ 09ィー02ィヲ: ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ 06ィコィェィ, 09 ィコ06ィー060806ィャ ィ ィョ0102ィー 08ィィ090609ィ ィーィケ OpenGL, ィェィ 09ィー0806ィヲィコィィ 00ィョィェィコ02ィィィヲ c 06ィ 08ィ ィーィェ04ィャ 090404060906ィャ ィィ 0005ィ 09ィェ060006 02ィィィコ05ィ 06ィ 08ィ ィ 06ィーィコィィ 0906ィ 04ィーィィィヲ. 06ィェィィ02ィィィ 05ィィ04ィ 02ィィ07 06ィコィェィ 090609ィー06ィィィー ィィ04 ィェィ 09ィー0806ィヲィコィィ 090606ィー0902ィー09ィー09ィョ06ィエィィ01 ィ ィョ0002080609 ィコィ 0108ィ, ィェィ ツィ 05ィケィェ060006 070605060302ィェィィ07 ィィ 08ィ 04ィャ02080609 06ィコィェィ, ィ ィーィ ィコ0302 04ィ 0006050609ィコィ 06ィコィェィ. 08ィョィェィコ02ィィ07 glutinit (&argc, argv) 070806ィィ04090601ィィィー ィェィ ツィ 05ィケィェィョ06 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ06 09ィ ィャ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ GLUT. 0806ィャィ ィェ01ィ glutinitdisplaymode(glut_rgb) ィィィェィィ02ィィィ 05ィィ04ィィ08ィョ02ィー ィ ィョ000208 ィコィ 0108ィ ィィ ィェィ 09ィー08ィ ィィ09ィ 02ィー 070605ィェ06020902ィーィェ04ィヲ (ィェ0207ィ 05ィィィー08060904ィヲ) 080203ィィィャ RGB. glutinitwindowsize(width, Height) ィィ09070605ィケ04ィョ02ィー0907 010507 04ィ 01ィ ィェィィ07 ィェィ - ツィ 05ィケィェ0401 08ィ 04ィャ02080609 06ィコィェィ. 01ィ ィコ06ィェ0202, glutcreatewindow("red square example") 04ィ 01ィ 02ィー 04ィ 000605060906ィコ 06ィコィェィ ィィ 09ィィ04ィョィ 05ィィ04ィィ08ィョ02ィー 09ィ ィャ06 06ィコィェ06 ィェィ 05ィコ08ィ ィェ02. 05ィ ィー02ィャ ィコ06ィャィ ィェ0104 glutdisplayfunc ( Display ) ; glutreshapefunc ( Reshape ) ; glutkeyboardfunc ( Keyboard ) ; 080200ィィ09ィー08ィィ08ィョ06ィー 00ィョィェィコ02ィィィィ Display(), Reshape() ィィ Keyboard() ィコィ ィコ 00ィョィェィコ02ィィィィ, ィコ06ィー06080402 ィ ィョ01ィョィー 09040409ィ ィェ04, 090606ィー0902ィー09ィー0902ィェィェ06, 0708ィィ 0702080208ィィ090609ィコ02 06ィコィェィ, ィィ04ィャ02ィェ02ィェィィィィ 08ィ 04ィャ02080609 06ィコィェィ, ィェィ 03ィ ィーィィィィ ィコ05ィ 09ィィ03ィィ ィェィ ィコ05ィ 09ィィィ ィーィョ0802. 0806ィェィー080605ィケ 09090201 0906ィ 04ィーィィィヲ ィィ 0904040609 ィェィョ03ィェ0401 00ィョィェィコ02ィィィヲ 070806ィィ09010601ィィィー 09ィェィョィー08ィィ ィ 0209ィコ06ィェ02 ツィェ060006 02ィィィコ05ィ 09 00ィョィェィコ02ィィィィ glutmainloop(). 05ィ ィャ02ィーィィィャ, ツィー06 ィ ィィィ 05ィィ06ィー02ィコィ GLUT ィェ02 09010601ィィィー 09 090609ィーィ 09 OpenGL, ィ 0709050702ィー0907 05ィィ03ィケ 07020802ィェ0609ィィィャ06ィヲ 070806090506ィヲィコ06ィヲ ィャ020301ィョ OpenGL ィィ 06ィコ06ィェィェ06ィヲ 07060109ィィ09ィー02ィャ06ィヲ, 070802010609ィーィ 09050707 ィャィィィェィィィャィ 05ィケィェ04ィヲ ィィィェィー02080002ィヲ09. OpenGL-0708ィィ05060302ィェィィ02 010507 ィコ06ィェィコ0802ィーィェ06ィヲ 0705ィ ィー000608ィャ04 ィャ060302ィー ィ 04ィーィケ ィェィ 07ィィ09ィ ィェ06 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ 09070202ィィ00ィィ ツ0209ィコィィ01 010507 0705ィ ィー000608ィャ04 API (Win32, X Window ィィ ィー.01.), ィコ06ィー06080402 ィコィ ィコ 0708ィ 09ィィ0506 070802010609ィーィ 09050706ィー ィ 06050202 03ィィ0806ィコィィ02 090604ィャ0603ィェ0609ィーィィ. 0906050202 0706010806ィ ィェ06 08ィ ィ 06ィーィ 09 ィ ィィィ 05ィィ06ィー02ィコ06ィヲ GLUT 0607ィィ09ィ ィェィ 09 0005ィ 0902 10.

1336 0105ィ 09ィ 2. 0009020102ィェィィ02 09 OPENGL 000902 090404060904 ィコ06ィャィ ィェ01 OpenGL 070806ィィ0901060107ィー 09 06ィ 08ィ ィ 06ィー ツィィィコィ 01 0906ィ 04ィーィィィヲ. 0906050202 0706010806ィ ィェ06 06ィェィィ ィ ィョ01ィョィー 08ィ 0909ィャ06ィー0802ィェ04 09 09050201ィョ06ィエィィ01 0005ィ 09ィ 01. 0502ィヲ ツィ 09 06ィ 08ィ ィーィィィャ 09ィェィィィャィ ィェィィ02 ィェィ 00ィョィェィコ02ィィ06 Display, 09 ィコ06ィー060806ィヲ 09060908020106ィー06 ツ02ィェ ィコ0601, ィェ0207060908020109ィー0902ィェィェ06 06ィー0902 ツィ 06ィエィィィヲ 04ィ 08ィィ090609ィ ィェィィ02 ィェィ 05ィコ08ィ ィェ02. 05050201ィョ06ィエィ 07 0706090502010609ィ ィー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 ィィ 0904090601ィィィー ィェィ 05ィコ08ィ ィェ ィコ09ィ 0108ィ ィー, 04ィ 01ィ 09ィ 07 ィコ06060801ィィィェィ ィー04 ツ02ィー04080201 ィョ000506090401 09020803ィィィェ ィィ 020902ィー. 00 0708ィィ05060302ィェィィィィ 09 0708ィィ09020102ィェ 02ィエ02 0601ィィィェ 0708ィィィャ0208 ィェ0209050603ィェ06ィヲ 0708060008ィ ィャィャ04, 0708ィィ ィェィ 03ィ ィーィィィィ ィコィェ0607ィコィョ ィャ0403ィィ 08ィィ09ィョ06ィエ02ィヲ ィェィ 05ィコ08ィ ィェ02 08ィ 04ィェ06020902ィーィェ0402 0905ィョ ツィ ィヲィェ0402 070807ィャ06ィョ000605ィケィェィィィコィィ. 2.6. 0806ィェィー080605ィケィェ0402 09060708060904 1) 00 ツ02ィャ, 0706 09ィ 0302ィャィョ ィャィェ02ィェィィ06, 04ィ ィコ0506 ツィ 02ィー0907 ィェ0206ィ 010601ィィィャ0609ィーィケ 09060401ィ ィェィィ07 09ィーィ ィェ01ィ 08ィーィェ06ィヲ 0008ィ 00ィィ ツ0209ィコ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ? 2) 0808ィ ィーィコ06 0607ィィ03ィィィー02 ィ 0801ィィィー02ィコィーィョ08ィョ ィ ィィィ 05ィィ06ィー02ィコ OpenGL ィィ 060800ィ ィェィィ04ィ 02ィィ06 ィコ06ィェ0902ィヲ0208ィ. 3) 00 ツ02ィャ 04ィ ィコ0506 ツィ 06ィー0907 00ィョィェィコ02ィィィィ ィ ィィィ 05ィィ06ィー02ィコ, 07060106ィ ィェ0401 GLUT ィィ05ィィ GLX? 0306 ツ02ィャィョ 06ィェィィ 000608ィャィ 05ィケィェ06 ィェ02 0901060107ィー 09 OpenGL? 4) 01ィ 040609ィィィー02 ィコィ ィー02000608ィィィィ ィコ06ィャィ ィェ01 (00ィョィェィコ02ィィィヲ) ィ ィィィ 05ィィ06ィー02ィコィィ.

132.6. 0806ィェィー080605ィケィェ0402 09060708060904 37 5) 0306 ツ02ィャィョ 060800ィ ィェィィ04ィ 02ィィ06 OpenGL ツィ 09ィー06 0908ィ 09ィェィィ09ィ 06ィー 09 ィコ06ィェ02 ツィェ04ィャ ィ 09ィー06ィャィ ィー06ィャ? 6) 05ィ ツ02ィャ ィェィョ03ィェ04 08ィ 0405ィィ ツィェ0402 09ィ 08ィィィ ィェィー04 ィコ06ィャィ ィェ01 OpenGL, 06ィー05ィィ- ツィ 06ィエィィ020907 ィー0605ィケィコ06 ィーィィ07ィ ィャィィ 07ィ 08ィ ィャ02ィー080609? 7) チィー06 ィャ0603ィェ06 09ィコィ 04ィ ィーィケ 06 ィコ0605ィィ ツ0209ィー0902 ィィ ィーィィ0702 07ィ 08ィ ィャ02ィー080609 ィコ06ィャィ ィェ0104 glcolor4ub()? glvertex3fv()?

13

130105ィ 09ィ 3. 04ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 3.1. 03080602020909 06ィ ィェ06090502ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 08ィ ィコ 0708ィ 09ィィ0506, 04ィ 01ィ ツ02ィヲ 0708060008ィ ィャィャ04, ィィ09070605ィケ04ィョ06ィエ02ィヲ OpenGL, 0709050702ィー0907 06ィ 08ィ ィ 06ィーィコィ ィー080201ィャ0208ィェ06ィヲ 090202ィェ04 ィィ ィィィェィー0208ィ ィコィーィィ09ィェ0602 06ィー06ィ 08ィ 0302ィェィィ02 09 ィ ィョ00020802 ィコィ 0108ィ. 050202ィェィ 090609ィー06ィィィー ィィ04 ィェィ ィ 0608ィ ィー080201ィャ0208ィェ0401 06ィ ィイ02ィコィー0609, ィィ09ィー06 ツィェィィィコ0609 090902ィーィ ィィ 09ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィャ020804, 060708020102050706ィエ02ィヲ ィー02ィコィョィエ0202 070605060302ィェィィ02 ィェィ ィ 050601ィ ィー020507. 02ィ 04 ツィェ06 0708ィィ05060302ィェィィ02 OpenGL 09 ィ 0209ィコ06ィェ02 ツィェ06ィャ 02ィィィコ0502 0904040409ィ 02ィー 00ィョィェィコ02ィィ06 06ィ ィェ06090502ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 09 06ィコィェ02. 00 05ィー06ィヲ 00ィョィェィコ02ィィィィ ィィ 09060908020106ィー06 ツ02ィェ04 090404060904 0609ィェ0609ィェ0401 ィコ06ィャィ ィェ01 OpenGL. 030905ィィ ィィ09070605ィケ04ィョ02ィー0907 ィ ィィィ 05ィィ06ィー02ィコィ GLUT, ィー06 05ィー06 ィ ィョ0102ィー 00ィョィェィコ02ィィ07 09 06ィ 08ィ ィーィェ04ィャ 090404060906ィャ, 04ィ 080200ィィ09ィー08ィィ080609ィ ィェィェィ 07 09 0706ィャ06ィエィケ06 0904040609ィ glutdisplayfunc(). GLUT 0904040409ィ 02ィー 05ィーィョ 00ィョィェィコ02ィィ06, ィコ060001ィ 06070208ィ 02ィィ06ィェィェィ 07 09ィィ09ィー02ィャィ ィィィェ000608ィャィィ08ィョ02ィー 0708ィィ05060302ィェィィ02 06 ィー06ィャ, ツィー06 090601020803ィィィャ0602 06ィコィェィ ィェ0206ィ 010601ィィィャ06 0702080208ィィ090609ィ ィーィケ (ィェィ 0708ィィィャ0208, 020905ィィ 06ィコィェ06 ィ 040506 07020802ィコ0804ィー06 0108ィョ00ィィィャ). 05060401ィ 09ィ 02ィャ0602 ィィ0406ィ 08ィ 0302ィェィィ02 ィャ060302ィー ィ 04ィーィケ ィコィ ィコ 09ィーィ ィーィィ ツィェ04ィャ, ィーィ ィコ ィィ ィ ィェィィィャィィ080609ィ ィェィェ04ィャ, ィー.02. 04ィ 09ィィ0902ィーィケ 06ィー ィコィ ィコィィ01-05ィィィ 06 07ィ 08ィ ィャ02ィー080609, ィィ04ィャ02ィェ0706ィエィィ010907 0906 090802ィャ02ィェ02ィャ. 00 05ィー06ィャ 0905ィョ ツィ 02 05ィョ ツ0302 0904040409ィ ィーィケ 00ィョィェィコ- 39

1340 0105ィ 09ィ 3. 04ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 02ィィ06 06ィ ィェ06090502ィェィィ07 09ィ ィャ0609ィー0607ィー0205ィケィェ06. 01ィ 0708ィィィャ0208, 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 glutpostredisplay(). 05ィ ィ 06050202 0706010806ィ ィェ06ィヲ ィィィェ000608ィャィ 02ィィ02ィヲ ィャ0603ィェ06 06ィ 08ィ ィーィィィーィケ0907 ィコ 0005ィ 0902 10. 0308ィィ09ィーィョ07ィィィャ, ィェィ ィコ06ィェ0202, ィコ ィー06ィャィョ, ツ02ィャ 04ィ ィェィィィャィ 02ィー0907 ィーィィ07ィィ ツィェィ 07 00ィョィェィコ02ィィ07 06ィ ィェ06090502ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07. 08ィ ィコ 0708ィ 09ィィ0506, 06ィェィ 090609ィー06ィィィー ィィ04 ィー080201 03ィ 000609: 0キ3 06 ツィィ09ィーィコィ ィ ィョ0002080609 OpenGL; 0キ3 ィョ09ィーィ ィェ0609ィコィ 070605060302ィェィィ07 ィェィ ィ 050601ィ ィー020507; 0キ3 07080206ィ 08ィ 040609ィ ィェィィ02 ィィ 08ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609. 02 ツィィ09ィーィコィ ィ ィョ0002080609 070806ィィ04090601ィィィー0907 09 0706ィャ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ィー 020902ィー, ィコ06ィー060804ィャ ィ ィョ0102ィー 04ィ 070605ィェ02ィェ ィ ィョ000208 ィコィ 0108ィ. 030208090402 ィー08ィィ 07ィ 08ィ ィャ02ィー08ィ ィコ06ィャィ ィェ0104 04ィ 01ィ 06ィー R,G ィィ B ィコ06ィャ0706ィェ02ィェィー04 020902ィーィ ィィ 01060503ィェ04 0708ィィィェィ 01050203ィ ィーィケ 06ィー080204ィコィョ [0, 1]. チ02ィー090208ィー04ィヲ 07ィ 08ィ ィャ02ィー08 04ィ 01ィ 02ィー ィーィ ィコ ィェィ 040409ィ 02ィャィョ06 ィ 05ィケ00ィ ィコ06ィャ0706ィェ02ィェィーィョ (09ィャ. 07. 7.1). 08ィ ィコ 0708ィ 09ィィ0506, 06ィェ 08ィ 0902ィェ 1. 0306 ィョィャ0605 ツィ ィェィィ06 020902ィー ツ0208ィェ04ィヲ (0,0,0,1). 0806ィャィ ィェ01ィ glclear 06 ツィィィエィ 02ィー ィ ィョ00020804, ィ 07ィ 08ィ ィャ02ィー08 buf 060708020102050702ィー ィコ06ィャィ ィィィェィ 02ィィ06 ィコ06ィェ09ィーィ ィェィー, 090606ィー0902ィー09ィー09ィョ06ィエィョ06 ィ ィョ000208ィ ィャ, ィコ06ィー06080402 ィェィョ03ィェ06 06 ツィィ09ィーィィィーィケ (09ィャ. 0005ィ 09ィョ 7). 06ィィ07ィィ ツィェィ 07 0708060008ィ ィャィャィ 0904040409ィ 02ィー ィコ06ィャィ ィェ01ィョ g l C l e a r (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT) 010507 06 ツィィ09ィーィコィィ ィ ィョ0002080609 020902ィーィ ィィ 0005ィョィ ィィィェ04. 0709ィーィ ィェ0609ィコィ 070605060302ィェィィ07 ィェィ ィ 050601ィ ィー020507 ィィ 07080206ィ 08ィ 040609ィ ィェィィ07 ィー080201ィャ0208ィェ0401 06ィ ィイ02ィコィー0609 (070609060806ィー, 090109ィィ00 ィィ ィー.01.) ィコ06ィェィー080605ィィ08ィョ06ィー0907 09 0706ィャ06ィエィケ06 04ィ 01ィ ィェィィ07 ィャィ ィー08ィィ02 07080206ィ 08ィ 040609ィ ィェィィ07. 03080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 ィィ ィェィ 09ィー0806ィヲィコィ 070605060302ィェィィ07 09ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィャ020804 0607ィィ09ィ ィェ04 09 0005ィ 0902 4.

133.2. 00020803ィィィェ04 ィィ 0708ィィィャィィィーィィ0904 41 0502ィヲ ツィ 09 09060908020106ィー06 ツィィィャ0907 ィェィ ィー06ィャ, ィコィ ィコ 0702080201ィ ィーィケ 09 OpenGL 0607ィィ09ィ ィェィィ07 06ィ ィイ02ィコィー0609, ィェィ 01060107ィエィィ010907 09 090202ィェ02. 08ィ 030104ィヲ 06ィ ィイ02ィコィー 0709050702ィー0907 ィェィ ィ 060806ィャ 0708ィィィャィィィーィィ090609 OpenGL. 3.2. 00020803ィィィェ04 ィィ 0708ィィィャィィィーィィ0904 00 OpenGL 09020803ィィィェィ (vertex) 0709050702ィー0907 ィ ィー06ィャィ 08ィェ04ィャ 0008ィ 00ィィ ツ0209ィコィィィャ 0708ィィィャィィィーィィ0906ィャ ィィ 060708020102050702ィー ィー06 ツィコィョ, ィコ06ィェ0202 06ィー080204ィコィ, ィョ000605 ィャィェ060006ィョ000605ィケィェィィィコィ ィィ ィー.01. 000902 0609ィーィ 05ィケィェ0402 0708ィィィャィィィーィィ0904 000608ィャィィ08ィョ06ィー0907 09 0706ィャ06ィエィケ06 04ィ 01ィ ィェィィ07 09020803ィィィェ, 0901060107ィエィィ01 09 01ィ ィェィェ04ィヲ 0708ィィィャィィィーィィ09. 01ィ 0708ィィィャ0208, 06ィー08020406ィコ 060708020102050702ィー0907 0109ィョィャ07 09020803ィィィェィ ィャィィ, 0709050706ィエィィィャィィ0907 ィコ06ィェ02ィ ィャィィ 06ィー080204ィコィ. 05 ィコィ 030106ィヲ 09020803ィィィェ06ィヲ ィ 09090602ィィィィ08ィョ06ィー0907 0202 ィ ィー08ィィィ ィョィー04. 00 ツィィ090506 0609ィェ0609ィェ0401 ィ ィー08ィィィ ィョィー0609 0901060107ィー 070605060302ィェィィ02 09020803ィィィェ04 09 07080609ィー08ィ ィェ09ィー0902, 020902ィー 09020803ィィィェ04 ィィ 0902ィコィー0608 ィェ0608ィャィ 05ィィ. 3.2.1. 030605060302ィェィィ02 09020803ィィィェ04 09 07080609ィー08ィ ィェ09ィー0902 030605060302ィェィィ02 09020803ィィィェ04 060708020102050706ィー0907 04ィ 01ィ ィェィィ02ィャ 0202 ィコ06060801ィィィェィ ィー 09 0109ィョ01-, ィー080201-, ィィ05ィィ ツ02ィー04080201ィャ0208ィェ06ィャ 07080609ィー08ィ ィェ09ィー0902 (0601ィェ06080601ィェ0402 ィコ06060801ィィィェィ ィー04). 06ィー06 0802ィ 05ィィ04ィョ02ィー0907 09 0706ィャ06ィエィケ06 ィェ0209ィコ0605ィケィコィィ01 09ィ 08ィィィ ィェィー0609 ィコ06ィャィ ィェ0104 glvertex: void glvertex [ 2 3 4 ] [ s i f d ] ( type coords ) void glvertex [ 2 3 4 ] [ s i f d ] v ( type * coords ) 08ィ 0301ィ 07 ィコ06ィャィ ィェ01ィ 04ィ 01ィ 02ィー ツ02ィー040802 ィコ06060801ィィィェィ ィー04 09020803ィィィェ04: x, y, z, w. 0806ィャィ ィェ01ィ glvertex2* 070605ィョ ツィ 02ィー 04ィェィ ツ02ィェィィ07 x ィィ y. 0806060801ィィィェィ ィーィ z 09 ィーィ ィコ06ィャ 0905ィョ ツィ 02 ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー0907 0706 ィョィャ0605 ツィ ィェィィ06 08ィ 09ィェ06ィヲ 0, ィコ06060801ィィィェィ ィーィ w 08ィ 09ィェ06ィヲ 1. glvertex3* 070605ィョ ツィ 02ィー ィコ06060801ィィィェィ ィー04 x, y, z ィィ 04ィ ィェ0609ィィィー 09 ィコ06060801ィィィェィ ィーィョ w 04ィェィ ツ02ィェィィ02 1. glvertex4* 0706040906050702ィー 04ィ 01ィ ィーィケ 090902 ツ02ィー040802 ィコ06060801ィィィェィ ィー04. 020507 ィ 09090602ィィィ 02ィィィィ 09 09020803ィィィェィ ィャィィ 020902ィー0609, ィェ0608ィャィ 0502ィヲ ィィ ィー02ィコ09ィーィョ08ィェ0401 ィコ06060801ィィィェィ ィー ィィ09070605ィケ04ィョ06ィー0907 ィー02ィコィョィエィィ02 04ィェィ ツ02ィェィィ07 090606ィー0902ィー09ィー09ィョ06ィエィィ01 01ィ ィェィェ0401, ツィー06 06ィー0902 ツィ 02ィー 060800ィ ィェィィ04ィ 02ィィィィ OpenGL ィコィ ィコ ィコ06ィェ02 ツィェ060006

1342 0105ィ 09ィ 3. 04ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 ィ 09ィー06ィャィ ィーィ. 06ィーィィ 04ィェィ ツ02ィェィィ07 ィャ0600ィョィー ィ 04ィーィケ ィィ04ィャ02ィェ02ィェ04 09 0506ィ 06ィヲ ィャ06ィャ02ィェィー 09 0706ィャ06ィエィケ06 0904040609ィ 090606ィー0902ィー09ィー09ィョ06ィエィィ01 ィコ06ィャィ ィェ01. 3.2.2. 000902ィー 09020803ィィィェ04 020507 04ィ 01ィ ィェィィ07 ィー02ィコィョィエ020006 020902ィーィ 09020803ィィィェ04 ィィ09070605ィケ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 ) 030208090402 ィー08ィィ 07ィ 08ィ ィャ02ィー08ィ 04ィ 01ィ 06ィー R, G, B ィコ06ィャ0706ィェ02ィェィー04 020902ィーィ, ィ 070609050201ィェィィィヲ 07ィ 08ィ ィャ02ィー08 060708020102050702ィー ィコ06050000ィィ02ィィ02ィェィー ィェ020708060408ィ ツィェ0609ィーィィ (ィーィ ィコ ィェィ 040409ィ 02ィャィ 07 ィ 05ィケ00ィ -ィコ06ィャ0706ィェ02ィェィーィ ). 030905ィィ 09 ィェィ 0409ィ ィェィィィィ ィコ06ィャィ ィェ0104 ィョィコィ 04ィ ィェ ィーィィ07 06f07 (oat), ィー06 04ィェィ ツ02ィェィィ07 09090201 07ィ 08ィ ィャ02ィー080609 01060503ィェ04 0708ィィィェィ 01050203ィ ィーィケ 06ィー080204ィコィョ [0,1], 0708ィィ 05ィー06ィャ 0706 ィョィャ0605 ツィ ィェィィ06 04ィェィ ツ02ィェィィ02 ィ 05ィケ00ィ -ィコ06ィャ0706ィェ02ィェィー04 ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー0907 08ィ 09ィェ04ィャ 1.0, ツィー06 090606ィー0902ィー09ィー09ィョ02ィー 070605ィェ06ィヲ ィェ020708060408ィ ツィェ0609ィーィィ. 06ィィ07 06ub07 (unsigned byte) 07060108ィ 04ィョィャ0209ィ 02ィー, ツィー06 04ィェィ ツ02ィェィィ07 01060503ィェ04 050203ィ ィーィケ 09 06ィー080204ィコ02 [0,255]. 00020803ィィィェィ ィャ ィャ0603ィェ06 ィェィ 04ィェィ ツィ ィーィケ 08ィ 0405ィィ ツィェ0402 020902ィーィ, ィィ, 020905ィィ 09ィコ0506- ツ02ィェ 090606ィー0902ィー09ィー09ィョ06ィエィィィヲ 080203ィィィャ, ィー06 ィ ィョ0102ィー 070806090601ィィィーィケ0907 05ィィィェ02ィヲィェィ 07 ィィィェィー02080706050702ィィ07 020902ィー0609 0706 070609020801ィェ0609ィーィィ 0708ィィィャィィィーィィ09ィ. 020507 ィョ0708ィ 090502ィェィィ07 080203ィィィャ06ィャ ィィィェィー02080706050702ィィィィ ィィ09070605ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void glshademodel (GLenum mode) 0904040609 ィコ06ィー060806ィヲ 09 07ィ 08ィ ィャ02ィー0806ィャ GL_SMOOTH 09ィコ0506 ツィ 02ィー ィィィェィー02080706050702ィィ06 (ィョ09ィーィ ィェ0609ィコィ 0706 ィョィャ0605 ツィ ィェィィ06), ィ 09 GL_FLAT 06ィーィコ0506 ツィ 02ィー. 3.2.3. 010608ィャィ 05ィケ 02070802010205ィィィーィケ ィェ0608ィャィ 05ィケ 09 09020803ィィィェ02 ィャ0603ィェ06, ィィ09070605ィケ04ィョ07 ィコ06ィャィ ィェ0104 void glnormal3 [ b s i f d ] ( type coords ) void glnormal3 [ b s i f d ] v ( type coords )

133.3. 02070208ィ ィー0608ィェ0402 09ィコ06ィ ィコィィ GLBEGIN / GLEND 43 020507 0708ィ 09ィィ05ィケィェ060006 08ィ 09 ツ02ィーィ 06090902ィエ02ィェィィ07 ィェ0206ィ 010601ィィィャ06, ツィー06ィ 04 0902ィコィー0608 ィェ0608ィャィ 05ィィ ィィィャ0205 0201ィィィェィィ ツィェィョ06 0105ィィィェィョ. 00 OpenGL 09ィョィエ0209ィー09ィョ02ィー 09070202ィィィ 05ィケィェ04ィヲ 080203ィィィャ, 0708ィィ ィコ06ィー060806ィャ 04ィ 01ィ 09ィ 02ィャ0402 ィェ0608ィャィ 05ィィ ィ ィョ01ィョィー ィェ0608ィャィィ080609ィ ィーィケ0907 ィ 09ィー06ィャィ ィーィィ ツ0209ィコィィ. 030006 ィャ0603ィェ06 09ィコ0506 ツィィィーィケ ィコ06ィャィ ィェ0106ィヲ glenable(gl_normalize). 040203ィィィャ ィ 09ィー06ィャィ ィーィィ ツ0209ィコ06ィヲ ィェ0608ィャィ 05ィィ04ィ 02ィィィィ 0106050302ィェ ィ 04ィーィケ 09ィコ0506 ツ02ィェ, 020905ィィ 0708ィィ05060302ィェィィ02 ィィ09070605ィケ04ィョ02ィー ィャ06010205ィケィェ0402 07080206ィ 08ィ 040609ィ ィェィィ07 08ィ 09ィー070302ィェィィ07/0903ィ ィーィィ07, ィーィ ィコ ィコィ ィコ 09 05ィー06ィャ 0905ィョ ツィ 02 0105ィィィェィ ィェ0608ィャィ 0502ィヲ ィィ04ィャ02ィェ0702ィー0907 0708ィィ ィョィャィェ060302ィェィィィィ ィェィ ィャ06010205ィケィェ06-09ィィ010609ィョ06 ィャィ ィー08ィィ02ィョ. 0201ィェィ ィコ06 0708ィィィャ02ィェ02ィェィィ02 05ィー060006 080203ィィィャィ ィョィャ02ィェィケ03ィ 02ィー 09ィコ06080609ィーィケ 08ィ ィ 06ィー04 ィャ0201ィ ィェィィ04ィャィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ OpenGL, ィーィ ィコ ィコィ ィコ ィェ0608ィャィ 05ィィ04ィ 02ィィ07 0902ィコィー06080609 ィィィャ0202ィー 04ィ ィャ02ィーィェィョ06 0904 ツィィ0905ィィィー0205ィケィェィョ06 09050603ィェ0609ィーィケ (090407ィーィィ02 ィコ09ィ 0108ィ ィーィェ060006 ィコ0608ィェ07). 030605ィー06ィャィョ 05ィョ ツ0302 0908ィ 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) 070806ィィ0409060107ィー 09ィコ0506 ツ02ィェィィ02 ィィ 06ィーィコ0506 ツ02ィェィィ02 ィー060006 ィィ05ィィ ィィィェ060006 080203ィィィャィ 08ィ ィ 06ィー04 ィコ06ィェ0902ィヲ0208ィ OpenGL. 06ィーィィ ィコ06ィャィ ィェ0104 0708ィィィャ02ィェ0706ィー0907 010609ィーィ ィー06 ツィェ06 ツィ 09ィー06, ィィ ィィ01 090604ィャ0603ィェ0402 07ィ 08ィ ィャ02ィー0804 ィ ィョ01ィョィー 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ0907 09 ィコィ 030106ィャ ィコ06ィェィコ0802ィーィェ06ィャ 0905ィョ ツィ 02. 3.3. 02070208ィ ィー0608ィェ0402 09ィコ06ィ ィコィィ glbegin / glend 0004 08ィ 0909ィャ06ィー080205ィィ 04ィ 01ィ ィェィィ02 ィ ィー08ィィィ ィョィー0609 0601ィェ06ィヲ 09020803ィィィェ04. 0201ィェィ ィコ06 ツィー06ィ 04 04ィ 01ィ ィーィケ ィ ィー08ィィィ ィョィー04 0008ィ 00ィィ ツ0209ィコ060006 0708ィィィャィィィーィィ09ィ, 0601ィェィィ01 ィコ06060801ィィィェィ ィー 09020803ィィィェ ィェ02010609ィーィ ィー06 ツィェ06. 06ィーィィ 09020803ィィィェ04 ィェィ 0106 06ィ ィイ0201ィィィェィィィーィケ 09 0601ィェ06 0202050602, 06070802010205ィィ09 ィェ0206ィ 010601ィィィャ0402 090906ィヲ09ィー09ィ. 020507 05ィー060006 09 OpenGL ィィ09070605ィケ04ィョ06ィー0907 ィーィ ィコ ィェィ 040409ィ 02ィャ0402 06070208ィ ィー0608ィェ0402 09ィコ06ィ ィコィィ, 0709050706ィエィィ020907 0904040609ィ ィャィィ 09070202ィィィ 05ィケィェ0401 ィコ06ィャィ ィェ01 OpenGL. 0207080201020502ィェィィ02 0708ィィィャィィィーィィ09ィ ィィ05ィィ 0706090502010609ィ ィー0205ィケィェ0609ィーィィ 0708ィィィャィィィーィィ090609 070806ィィ09010601ィィィー ィャ020301ィョ 0904040609ィ ィャィィ ィコ06ィャィ ィェ01

1344 0105ィ 09ィ 3. 04ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 void glbegin (GLenum mode) void glend ( void ) 03ィ 08ィ ィャ02ィー08 mode 060708020102050702ィー ィーィィ07 0708ィィィャィィィーィィ09ィ, ィコ06ィー060804ィヲ 04ィ 01ィ 02ィー0907 09ィェィョィー08ィィ ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_POINTS ィコィ 0301ィ 07 09020803ィィィェィ 04ィ 01ィ 02ィー ィコ06060801ィィィェィ ィー04 ィェ02ィコ06ィー060806ィヲ ィー06 ツィコィィ. GL_LINES ィコィ 0301ィ 07 06ィー010205ィケィェィ 07 07ィ 08ィ 09020803ィィィェ 060708020102050702ィー 06ィー08020406ィコ; 020905ィィ 04ィ 01ィ ィェ06 ィェ02 ツ02ィーィェ0602 ツィィ090506 09020803ィィィェ, ィー06 070609050201ィェ0707 09020803ィィィェィ ィィ00ィェ0608ィィ08ィョ02ィー0907. GL_LINE_STRIP ィコィ 0301ィ 07 09050201ィョ06ィエィ 07 09020803ィィィェィ 04ィ 01ィ 02ィー 06ィー08020406ィコ 09ィャ0209ィー02 09 070802010401ィョィエ02ィヲ. GL_LINE_LOOP 06ィー05ィィ ツィィ02 06ィー 070802010401ィョィエ020006 0708ィィィャィィィーィィ09ィ ィー0605ィケィコ06 09 ィー06ィャ, ツィー06 070609050201ィェィィィヲ 06ィー08020406ィコ 060708020102050702ィー0907 070609050201ィェ02ィヲ ィィ 0702080906ィヲ 09020803ィィィェ06ィヲ, 06ィ 08ィ 04ィョ07 04ィ ィャィコィェィョィーィョ06 0506ィャィ ィェィョ06. GL_TRIANGLES ィコィ 03010402 06ィー010205ィケィェ0402 ィー08ィィ 09020803ィィィェ04 060708020102050706ィー ィー0802ィョ000605ィケィェィィィコ; 020905ィィ 04ィ 01ィ ィェ06 ィェ02 ィコ08ィ ィーィェ0602 ィー0802ィャ ツィィ090506 09020803ィィィェ, ィー06 070609050201ィェィィ02 09020803ィィィェ04 ィィ00ィェ0608ィィ08ィョ06ィー0907. GL_TRIANGLE_STRIP ィコィ 0301ィ 07 09050201ィョ06ィエィ 07 09020803ィィィェィ 04ィ 01ィ 02ィー ィー0802ィョ000605ィケィェィィィコ 09ィャ0209ィー02 09 0109ィョィャ07 070802010401ィョィエィィィャィィ. GL_TRIANGLE_FAN ィー0802ィョ000605ィケィェィィィコィィ 04ィ 01ィ 06ィー0907 0702080906ィヲ 09020803ィィィェ06ィヲ ィィ ィコィ 030106ィヲ 09050201ィョ06ィエ02ィヲ 07ィ 0806ィヲ 09020803ィィィェ (07ィ 0804 ィェ02 070208020902ィコィ 06ィー0907). GL_QUADS ィコィ 0301ィ 07 06ィー010205ィケィェィ 07 ツ02ィー090208ィコィ 09020803ィィィェ 060708020102050702ィー ツ02ィー04080201ィョ000605ィケィェィィィコ; 020905ィィ 04ィ 01ィ ィェ06 ィェ02 ィコ08ィ ィーィェ0602 ツ02ィー040802ィャ ツィィ090506 09020803ィィィェ, ィー06 070609050201ィェィィ02 09020803ィィィェ04 ィィ00ィェ0608ィィ08ィョ06ィー0907. GL_QUAD_STRIP ツ02ィー04080201ィョ000605ィケィェィィィコ 09 ィェ06ィャ020806ィャ n 060708020102050702ィー0907 09020803ィィィェィ ィャィィ 09 ィェ06ィャ0208ィ ィャィィ 2n 6モ1 1, 2n, 2n + 2, 2n + 1. GL_POLYGON 0706090502010609ィ ィー0205ィケィェ06 04ィ 01ィ 06ィー0907 09020803ィィィェ04 090407ィョィコ05060006 ィャィェ060006ィョ000605ィケィェィィィコィ.

133.3. 02070208ィ ィー0608ィェ0402 09ィコ06ィ ィコィィ GLBEGIN / GLEND 45 01ィ 0708ィィィャ0208, ツィー06ィ 04 ィェィ 08ィィ090609ィ ィーィケ ィー0802ィョ000605ィケィェィィィコ 09 08ィ 04ィェ04ィャィィ 020902ィーィ ィャィィ 09 09020803ィィィェィ 01, 010609ィーィ ィー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 ) ; /* 04020502ィェ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 ィーィィ0704 0708ィィィャィィィーィィ090609 ィィィャ0206ィー 08ィ 0405ィィ ツィェィョ06 09ィコ06080609ィーィケ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィェィ 08ィ 04ィェ0401 0705ィ ィー000608ィャィ 01. 020507 ィョ090205ィィ ツ02ィェィィ07 070806ィィ04090601ィィィー0205ィケィェ0609ィーィィ 070802010706 ツィーィィィー0205ィケィェ0202 ィィ09070605ィケ040609ィ ィーィケ 0708ィィィャィィィーィィ0904, ィー0802ィ ィョ06ィエィィ02 ィャ02ィェィケ030202 ィコ0605ィィ ツ0209ィー0906 ィィィェ000608ィャィ 02ィィィィ 010507 0702080201ィ ツィィ ィェィ 090208090208, ィーィ ィコィィ02 ィコィ ィコ GL_TRIANGLE_STRIP, GL_QUAD_STRIP, GL_TRIAGLE_FAN. 080806ィャ02 04ィ 01ィ ィェィィ07 09ィ ィャィィ01 ィャィェ060006ィョ000605ィケィェィィィコ0609, ィャ0603ィェ06 06070802010205ィィィーィケ ィャ02ィー0601 ィィ01 06ィー06ィ 08ィ 0302ィェィィ07 ィェィ 05ィコ08ィ ィェ02. 0201ィェィ ィコ06 09ィェィ ツィ 05ィ ィェィ 0106 06070802010205ィィィーィケ 0706ィェ07ィーィィ02 05ィィ0202090401 ィィ 06ィ 08ィ ィーィェ0401 0008ィ ィェ02ィヲ. 030601 0008ィ ィェィケ06 0706ィェィィィャィ 02ィー0907 0601ィェィ ィィ04 09ィー060806ィェ ィャィェ060006ィョ000605ィケィェィィィコィ, ィィ 0706 ィョィャ0605 ツィ ィェィィ06 05ィィ02020906ィヲ 09 ツィィィーィ 02ィー0907 ィーィ 09ィー060806ィェィ, 09020803ィィィェ04 ィコ06ィー060806ィヲ 06ィ 01060107ィー0907 070806ィーィィ09 ツィ 09060906ィヲ 09ィー080205ィコィィ. 01ィ 0708ィ 090502ィェィィ02 06ィ 010601ィ 09020803ィィィェ 05ィィ0202090401 0008ィ ィェ02ィヲ ィャ0603ィェ06 ィィ04ィャ02ィェィィィーィケ 090404060906ィャ ィコ06ィャィ ィェ0104 void glfrontface (GLenum mode) 0906 04ィェィ ツ02ィェィィ02ィャ 07ィ 08ィ ィャ02ィー08ィ mode 08ィ 09ィェ04ィャ GL_CW (clockwise), ィ 090208ィェィョィーィケ 04ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06 ィャ0603ィェ06, ィョィコィ 04ィ 09 GL_CCW (counterclockwise). チィー06ィ 04 ィィ04ィャ02ィェィィィーィケ ィャ02ィー0601 06ィー06ィ 08ィ 0302ィェィィ07 ィャィェ060006ィョ000605ィケィェィィィコィ ィィ09070605ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void glpolygonmode (GLenum f a c e, Glenum mode)

1346 0105ィ 09ィ 3. 04ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 03ィ 08ィ ィャ02ィー08 mode 060708020102050702ィー ィコィ ィコ ィ ィョ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ィーィケ0907 05ィーィ ィコ06ィャィ ィェ01ィ ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_FRONT 010507 05ィィ0202090401 0008ィ ィェ02ィヲ; GL_BACK 010507 06ィ 08ィ ィーィェ0401 0008ィ ィェ02ィヲ; GL_FRONT_AND_BACK 010507 09090201 0008ィ ィェ02ィヲ. 03ィ 08ィ ィャ02ィー08 mode ィャ060302ィー ィ 04ィーィケ 08ィ 0902ィェ: GL_POINT 06ィー06ィ 08ィ 0302ィェィィ02 ィー0605ィケィコ06 09020803ィィィェ ィャィェ060006ィョ000605ィケィェィィィコ0609; GL_LINE ィャィェ060006ィョ000605ィケィェィィィコィィ ィ ィョ01ィョィー 0708020109ィーィ 090507ィーィケ0907 ィェィ ィ 060806ィャ 06ィー080204ィコ0609; GL_FILL ィャィェ060006ィョ000605ィケィェィィィコィィ ィ ィョ01ィョィー 04ィ ィコ08ィ 03ィィ09ィ ィーィケ0907 ィー02ィコィョィエィィィャ 020902ィー06ィャ 09 ィョ ツ02ィー06ィャ 06090902ィエ02ィェィィ07, ィィ 05ィー06ィー 080203ィィィャ ィョ09ィーィ ィェ06090502ィェ 0706 ィョィャ0605 ツィ ィェィィ06. 06ィ ィコ0302 ィャ0603ィェ06 ィョィコィ 040409ィ ィーィケ ィコィ ィコ06ィヲ ィーィィ07 0008ィ ィェ02ィヲ 06ィー06ィ 08ィ 03ィ ィーィケ ィェィ 05ィコ08ィ ィェ02. 020507 05ィー060006 09ィェィ ツィ 05ィ ィェィ 0106 ィョ09ィーィ ィェ0609ィィィーィケ 090606ィー0902ィー09ィー09ィョ06ィエィィィヲ 080203ィィィャ 090404060906ィャ ィコ06ィャィ ィェ0104 glenable (GL_CULL_FACE), ィ 04ィ ィー02ィャ 0904ィ 08ィ ィーィケ ィーィィ07 06ィー06ィ 08ィ 03ィ 02ィャ0401 0008ィ ィェ02ィヲ 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 void glcullface (GLenum mode) 0004040609 09 07ィ 08ィ ィャ02ィー0806ィャ GL_FRONT 0708ィィ090601ィィィー ィコ ィョ01ィ 0502ィェィィ06 ィィ04 ィィ0406ィ 08ィ 0302ィェィィ07 09090201 05ィィ0202090401 0008ィ ィェ02ィヲ, ィ 09 07ィ 08ィ ィャ02ィー0806ィャ GL_BACK 06ィ 08ィ ィーィェ0401 (ィョ09ィーィ ィェ0609ィコィ 0706 ィョィャ0605 ツィ ィェィィ06). 080806ィャ02 08ィ 0909ィャ06ィー0802ィェィェ0401 09ィーィ ィェ01ィ 08ィーィェ0401 0708ィィィャィィィーィィ090609 09 ィ ィィィ 05ィィ06ィー02ィコィ 01 GLU ィィ GLUT 0607ィィ09ィ ィェ04 ィ 06050202 09050603ィェ0402 00ィィ00ィョ0804, ィーィ ィコィィ02 ィコィ ィコ 09000208ィ, 02ィィ05ィィィェ0108, 01ィィ09ィコ (09 GLU) ィィ 09000208ィ, ィコィョィ, ィコ06ィェィョ09, ィー0608, ィー02ィー08ィ 050108, 01060102ィコィ 050108, ィィィコ0609ィ 050108, 06ィコィーィ 050108 ィィ ツィ ィヲィェィィィコ (09 GLUT). 0809ィー06ィャィ ィーィィ ツ0209ィコ0602 ィェィ 05060302ィェィィ02 ィー02ィコ09ィーィョ0804 07080201ィョ09ィャ06ィー0802ィェ06 ィー0605ィケィコ06 010507 00ィィ00ィョ08 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ GLU (09060401ィ ィェィィ02 ィー02ィコ09ィーィョ08 09 OpenGL ィ ィョ0102ィー 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ0907 09 0005ィ 0902 6).

133.4. 02ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ 47 01ィ 0708ィィィャ0208, ツィー06ィ 04 ィェィ 08ィィ090609ィ ィーィケ 09000208ィョ ィィ05ィィ 02ィィ05ィィィェ0108, ィェィ 0106 09ィェィ ツィ 05ィ 09060401ィ ィーィケ 06ィ ィイ02ィコィー 09070202ィィィ 05ィケィェ060006 ィーィィ07ィ GLUquadricObj 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 GLUquadricObj * glunewquadric ( void ) ; ィ 04ィ ィー02ィャ 09040409ィ ィーィケ 090606ィー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 ) 000102 07ィ 08ィ ィャ02ィー08 slices 04ィ 01ィ 02ィー ィコ0605ィィ ツ0209ィー0906 08ィ 04ィ ィィ02ィェィィィヲ 0906ィコ08ィョ00 0609ィィ z, ィ stacks 09010605ィケ 0609ィィ z. 0906050202 0706010806ィ ィェィョ06 ィィィェ000608ィャィ 02ィィ06 06ィ 05ィーィィ01 ィィ 0108ィョ00ィィ01 ィコ06ィャィ ィェ01ィ 01 070609ィー080602ィェィィ07 0708ィィィャィィィーィィ090609 ィャ0603ィェ06 ィェィ ィヲィーィィ 09 0708ィィ05060302ィェィィィィ 08. 3.4. 02ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ 030905ィィ ィャ04 ィェ0209ィコ0605ィケィコ06 08ィ 04 06ィ 08ィ ィエィ 02ィャ0907 ィコ 0601ィェ06ィヲ ィィ ィー06ィヲ 0302 0008ィョ070702 ィコ06ィャィ ィェ01, ィー06 ィィ01 ィャ0603ィェ06 06ィ ィイ0201ィィィェィィィーィケ 09 ィーィ ィコ ィェィ 040409ィ 02ィャ04ィヲ 01ィィ09070502ィヲィェ04ィヲ 0907ィィ0906ィコ (display list) ィィ 0904040409ィ ィーィケ 020006 0708ィィ ィェ0206ィ 010601ィィィャ0609ィーィィ. 020507 ィー060006, ツィー06ィ 04 09060401ィ ィーィケ ィェ060904ィヲ 01ィィ09070502ィヲィェ04ィヲ 0907ィィ0906ィコ, ィェィ 0106 0706ィャ0209ィーィィィーィケ 090902 ィコ06ィャィ ィェ0104, ィコ06ィー06080402 01060503ィェ04 09 ィェ020006 0906ィヲィーィィ, ィャ020301ィョ 09050201ィョ06ィエィィィャィィ 06070208ィ ィー0608ィェ04ィャィィ 09ィコ06ィ ィコィ ィャィィ: void glnewlist ( GLuint l i s t, GLenum mode) void glendlist ( )

1348 0105ィ 09ィ 3. 04ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 020507 08ィ 0405ィィ ツ02ィェィィ07 0907ィィ09ィコ0609 ィィ09070605ィケ04ィョ06ィー0907 0202050402 0706050603ィィィー0205ィケィェ0402 ツィィ0905ィ, 04ィ 01ィ 09ィ 02ィャ0402 0708ィィ 09060401ィ ィェィィィィ 0907ィィ09ィコィ 04ィェィ ツ02ィェィィ02ィャ 07ィ 08ィ ィャ02ィー08ィ list. 03ィ 08ィ ィャ02ィー08 mode 060708020102050702ィー 080203ィィィャ 06ィ 08ィ ィ 06ィーィコィィ ィコ06ィャィ ィェ01, 0901060107ィエィィ01 09 0907ィィ0906ィコ: GL_COMPILE ィコ06ィャィ ィェ0104 04ィ 07ィィ090409ィ 06ィー0907 09 0907ィィ0906ィコ ィ 0204 0904070605ィェ02ィェィィ07; GL_COMPILE_AND_EXECUTE ィコ06ィャィ ィェ0104 0904070605ィェ0706ィー0907, ィ 04ィ ィー02ィャ 04ィ 07ィィ090409ィ 06ィー0907 09 0907ィィ0906ィコ. 0306090502 ィー060006, ィコィ ィコ 0907ィィ0906ィコ 09060401ィ ィェ, 020006 ィャ0603ィェ06 09040409ィ ィーィケ ィコ06ィャィ ィェ0106ィヲ void g l C a l l L i s t ( GLuint l i s t ) ィョィコィ 04ィ 09 09 07ィ 08ィ ィャ02ィー0802 list ィィ0102ィェィーィィ00ィィィコィ ィー0608 ィェィョ03ィェ060006 0907ィィ09ィコィ. チィー06ィ 04 09040409ィ ィーィケ 0908ィ 04ィョ ィェ0209ィコ0605ィケィコ06 0907ィィ09ィコ0609, ィャ0603ィェ06 090609070605ィケ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 ) 0904040409ィ 06ィエ02ィヲ n 0907ィィ09ィコ0609 09 ィィ0102ィェィーィィ00ィィィコィ ィー0608ィ ィャィィ ィィ04 ィャィ 0909ィィ09ィ lists, ィーィィ07 050502ィャ02ィェィー0609 ィコ06ィー0608060006 ィョィコィ 040409ィ 02ィー0907 09 07ィ 08ィ ィャ02ィー0802 type. 06ィー06 ィャ0600ィョィー ィ 04ィーィケ ィーィィ0704 GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_INT, GL_UNSIGNED_INT ィィ ィェ02ィコ06ィー06080402 0108ィョ00ィィ02. 020507 ィョ01ィ 0502ィェィィ07 0907ィィ09ィコ0609 ィィ09070605ィケ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ィ 050702ィー 0907ィィ09ィコィィ 09 ィィ0102ィェィーィィ00ィィィコィ ィー0608ィ ィャィィ ID ィィ04 01ィィィ 07ィ 0406ィェィ list ワ ID ワ list + range 6モ1 1. 0308ィィィャ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 ( 1 0. 0 f, 1. 0 f, 1. 0 f ) ; g l V e r t e x 3 f ( 1 0. 0 f, 10.0 f, 1. 0 f ) ;

133.5. 00ィ 0909ィィ0904 09020803ィィィェ 49 glend ( ) ; glendlist ( )... g l C a l l L i s t ( 1 ) ; 02ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ 09 0607ィーィィィャィ 05ィケィェ06ィャ (09ィコ06ィャ07ィィ05ィィ080609ィ ィェィェ06ィャ) 09ィィ0102 0108ィ ィェ07ィー0907 09 07ィ ィャ07ィーィィ 090208090208ィ, ツィー06 0706040906050702ィー 08ィィ090609ィ ィーィケ 0708ィィィャィィィーィィ0904 09 ィーィ ィコ06ィヲ 000608ィャ02 ィャィ ィコ09ィィィャィ 05ィケィェ06 ィ 0409ィー0806. 00 ィー06 0302 090802ィャ07 ィ 0605ィケ03ィィ02 06ィ ィイ02ィャ04 01ィ ィェィェ0401 04ィ ィェィィィャィ 06ィー ィャィェ060006 07ィ ィャ07ィーィィ, ツィー06 090502 ツ02ィー, 09 09090606 06 ツ02080201ィケ, 07ィ 0102ィェィィ02 070806ィィ04090601ィィィー0205ィケィェ0609ィーィィ. 06ィ ィコィィ02 ィ 0605ィケ03ィィ02 06ィ ィイ02ィャ04 (ィ 0605ィケ0302 ィェ0209ィコ0605ィケィコィィ01 01020907ィーィコ0609 ィー040907 ツ 0708ィィィャィィィーィィ090609) 05ィョ ツ0302 08ィィ090609ィ ィーィケ 09 0706ィャ06ィエィケ06 ィャィ 0909ィィ090609 09020803ィィィェ. 3.5. 00ィ 0909ィィ0904 09020803ィィィェ 030905ィィ 09020803ィィィェ ィャィェ060006, ィー06, ツィー06ィ 04 ィェ02 0904040409ィ ィーィケ 010507 ィコィ 030106ィヲ ィコ06ィャィ ィェ01ィョ glvertex, ィョ0106ィ ィェ06 06ィ ィイ0201ィィィェ07ィーィケ 09020803ィィィェ04 09 ィャィ 0909ィィ0904, ィィ09070605ィケ04ィョ07 ィコ06ィャィ ィェ01ィョ void glvertexpointer ( GLint s i z e, GLenum type, GLsizei s t r i d e, void * ptr ) ィコ06ィー0608ィ 07 060708020102050702ィー 0907060906ィ 0108ィ ィェ02ィェィィ07 ィィ ィコ06060801ィィィェィ ィー04 09020803ィィィェ. 0308ィィ 05ィー06ィャ size 060708020102050702ィー ツィィ090506 ィコ06060801ィィィェィ ィー 09020803ィィィェ04 (ィャ060302ィー ィ 04ィーィケ 08ィ 0902ィェ 2, 3, 4), type 060708020102050702ィー ィーィィ07 01ィ ィェィェ0401 (ィャ060302ィー ィ 04ィーィケ 08ィ 0902ィェ GL_SHORT, GL_INT, GL_FLOAT, GL_DOUBLE). 06ィェ060001ィ ィョ0106ィ ィェ06 0108ィ ィェィィィーィケ 09 0601ィェ06ィャ ィャィ 0909ィィ0902 0108ィョ00ィィ02 ィ ィー08ィィィ ィョィー04 09020803ィィィェ04, ィー060001ィ 07ィ 08ィ ィャ02ィー08 stride 04ィ 01ィ 02ィー 09ィャ02ィエ02ィェィィ02 06ィー ィコ06060801ィィィェィ ィー 0601ィェ06ィヲ 09020803ィィィェ04 0106 ィコ06060801ィィィェィ ィー 09050201ィョ06ィエ02ィヲ; 020905ィィ stride 08ィ 0902ィェ ィェィョ0506, 05ィー06 04ィェィ ツィィィー, ツィー06 ィコ06060801ィィィェィ ィー04 08ィ 09070605060302ィェ04 0706090502010609ィ ィー0205ィケィェ06. 00 07ィ 08ィ ィャ02ィー0802 ptr ィョィコィ 040409ィ 02ィー0907 ィ 01080209, 000102 ィェィ 01060107ィー0907 01ィ ィェィェ0402. 08ィェィ 050600ィィ ツィェ06 ィャ0603ィェ06 06070802010205ィィィーィケ ィャィ 0909ィィ09 ィェ0608ィャィ 0502ィヲ, 020902ィー0609 ィィ ィェ02ィコ06ィー06080401 0108ィョ00ィィ01 ィ ィー08ィィィ ィョィー0609 09020803ィィィェ04, ィィ09070605ィケ04ィョ07 ィコ06ィャィ ィェ0104 void glnormalpointer ( GLenum type, GLsizei s t r i d e,

1350 0105ィ 09ィ 3. 04ィィ090609ィ ィェィィ02 000206ィャ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 ) 020507 ィー060006, ツィー06ィ 04 05ィーィィ ィャィ 0909ィィ0904 ィャ0603ィェ06 ィ 040506 ィィ09070605ィケ040609ィ ィーィケ 09 01ィ 05ィケィェ02ィヲ0302ィャ, ィェィ 0106 09040409ィ ィーィケ ィコ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 090606ィー0902ィー09ィー0902ィェィェ06. 0306090502 06ィコ06ィェ ツィ ィェィィ07 08ィ ィ 06ィー04 09 ィャィ 0909ィィ0906ィャ 030205ィ ィー0205ィケィェ06 09040409ィ ィーィケ ィコ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 ) 09 090606ィー0902ィー09ィー09ィョ06ィエィィィャ 04ィェィ ツ02ィェィィ02ィャ 07ィ 08ィ ィャ02ィー08ィ array. 020507 06ィー06ィ 08ィ 0302ィェィィ07 090601020803ィィィャ060006 ィャィ 0909ィィ090609 ィィ09070605ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void glarrayelement ( GLint index ) ィコ06ィー0608ィ 07 0702080201ィ 02ィー OpenGL ィ ィー08ィィィ ィョィー04 09020803ィィィェ04, ィィ09070605ィケ04ィョ07 050502ィャ02ィェィー04 ィャィ 0909ィィ09ィ 09 ィェ06ィャ020806ィャ index. 06ィー06 ィ ィェィ 050600ィィ ツィェ06 0706090502010609ィ ィー0205ィケィェ06ィャィョ 0708ィィィャ02ィェ02ィェィィ06 ィコ06ィャィ ィェ01 09ィィ01ィ glcolor, glnormal, glvertex c 090606ィー0902ィー09ィー09ィョ06ィエィィィャィィ 07ィ 08ィ ィャ02ィー08ィ ィャィィ. 0201ィェィ ィコ06 09ィャ0209ィー06 ィェ0202 06ィ 04 ツィェ06 0904040409ィ 02ィー0907 ィコ06ィャィ ィェ01ィ void gldrawarrays (GLenum mode, GLint f i r s t, GLsizei count ) 08ィィ09ィョ06ィエィ 07 count 0708ィィィャィィィーィィ090609, 060708020102050702ィャ0401 07ィ 08ィ ィャ02ィー0806ィャ mode, ィィ09070605ィケ04ィョ07 050502ィャ02ィェィー04 ィィ04 ィャィ 0909ィィ090609 09 ィィィェ0102ィコ09ィ ィャィィ 06ィー first 0106 first + count 6モ1 1. 06ィー06 05ィコ09ィィ09ィ 0502ィェィーィェ06 0904040609ィョ 0706090502010609ィ ィー0205ィケィェ0609ィーィィ ィコ06ィャィ ィェ01 glarrayelement() 09 090606ィー0902ィー09ィー09ィョ06ィエィィィャィィ ィィィェ0102ィコ09ィ ィャィィ. 00 0905ィョ ツィ 02, 020905ィィ 0601ィェィ 09020803ィィィェィ 09010601ィィィー 09 ィェ0209ィコ0605ィケィコ06 0708ィィィャィィィーィィ090609, 09ィャ0209ィー06 01ィョィ 05ィィ080609ィ ィェィィ07 0202 ィコ06060801ィィィェィ ィー 09 ィャィ 0909ィィ0902 ィョ0106ィ ィェ06 ィィ09070605ィケ040609ィ ィーィケ 0202 ィィィェ0102ィコ09. 020507 05ィー060006 ィェィ 0106 09040409ィ ィーィケ ィコ06ィャィ ィェ01ィョ

133.6. 0806ィェィー080605ィケィェ0402 09060708060904 51 void gldrawelements (GLenum mode, G L s i z e i count, GLenum type, void * i n d i c e s ) 000102 indices 05ィー06 ィャィ 0909ィィ09 ィェ06ィャ02080609 09020803ィィィェ, ィコ06ィー06080402 ィェィ 0106 ィィ09070605ィケ040609ィ ィーィケ 010507 070609ィー080602ィェィィ07 0708ィィィャィィィーィィ090609, type 060708020102050702ィー ィーィィ07 050502ィャ02ィェィー0609 05ィー060006 ィャィ 0909ィィ09ィ : GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, GL_UNSIGNED_INT, ィ count 04ィ 01ィ 02ィー ィィ01 ィコ0605ィィ ツ0209ィー0906. 00ィ 03ィェ06 06ィーィャ02ィーィィィーィケ, ツィー06 ィィ09070605ィケ040609ィ ィェィィ02 ィャィ 0909ィィ090609 09020803ィィィェ 0706040906050702ィー 0607ィーィィィャィィ04ィィ080609ィ ィーィケ 0702080201ィ ツィョ 01ィ ィェィェ0401 ィェィ 090208090208 OpenGL, ィィ, ィコィ ィコ 0905020109ィー09ィィ02, 0706090409ィィィーィケ 09ィコ06080609ィーィケ 08ィィ090609ィ ィェィィ07 ィー080201ィャ0208ィェ06ィヲ 090202ィェ04. 06ィ ィコ06ィヲ ィャ02ィー0601 0607080201020502ィェィィ07 0708ィィィャィィィーィィ090609 0709050702ィー0907 0601ィェィィィャ ィィ04 09ィ ィャ0401 ィ 0409ィー080401 ィィ 010608060306 070601010601ィィィー 010507 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィ 0605ィケ03ィィ01 06ィ ィイ02ィャ0609 01ィ ィェィェ0401. 3.6. 0806ィェィー080605ィケィェ0402 09060708060904 1) チィー06 ィーィ ィコ0602 00ィョィェィコ02ィィ07 06ィ 08ィ ィーィェ060006 0904040609ィ ィィ ィコィ ィコ 00ィョィェィコ02ィィィィ 06ィ 08ィ ィーィェ060006 0904040609ィ ィャ0600ィョィー ィ 04ィーィケ ィィ09070605ィケ040609ィ ィェ04 010507 08ィ ィ 06ィー04 09 OpenGL? 2) 020507 ツ020006 ィェィョ03ィェィ 00ィョィェィコ02ィィ07 06ィ ィェ06090502ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07 ィィ ツィー06 06ィェィ 010205ィ 02ィー? 3) チィー06 ィーィ ィコ0602 0708ィィィャィィィーィィ09 09 OpenGL? 4) チィー06 ィーィ ィコ0602 ィ ィー08ィィィ ィョィー? 03020802 ツィィ0905ィィィー02 ィィ04090209ィーィェ0402 09ィ ィャ ィ ィー08ィィィ ィョィー04 09020803ィィィェ 09 OpenGL. 5) チィー06 09 OpenGL 0709050702ィー0907 ィ ィー06ィャィ 08ィェ04ィャ 0708ィィィャィィィーィィ0906ィャ? 08ィ ィコィィ02 ィーィィ0704 0708ィィィャィィィーィィ090609 0904 04ィェィ 02ィー02? 6) 020507 ツ020006 09 OpenGL ィィ09070605ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 glenable ィィ gldisable?

1352 0105ィ 09ィ 3. 04ィィ090609ィ ィェィィ02 000206ィャ02ィー08ィィ ツ0209ィコィィ01 06ィ ィイ02ィコィー0609 7) チィー06 ィーィ ィコ0602 06070208ィ ィー0608ィェ0402 09ィコ06ィ ィコィィ ィィ 010507 ツ020006 06ィェィィ ィィ09070605ィケ04ィョ06ィー0907 09 OpenGL? 8) チィー06 ィーィ ィコ0602 01ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ? 08ィ ィコ 06070802010205ィィィーィケ 0907ィィ0906ィコ ィィ ィコィ ィコ 09040409ィ ィーィケ 020006 06ィー06ィ 08ィ 0302ィェィィ02? 9) 03060709ィェィィィー02 060800ィ ィェィィ04ィ 02ィィ06 08ィ ィ 06ィー04 09 ィャィ 0909ィィ09ィ ィャィィ 09020803ィィィェ ィィ ィィ01 06ィー05ィィ ツィィ02 06ィー 01ィィ09070502ィヲィェ0401 0907ィィ09ィコ0609. 10) 03060709ィェィィィー02 08ィ ィ 06ィーィョ ィコ06ィャィ ィェ0104 gldrawelements().

133.6. 0806ィェィー080605ィケィェ0402 09060708060904 53 04ィィ09. 3.1. 0308ィィィャィィィーィィ0904 OpenGL.

13

130105ィ 09ィ 4. 03080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 00 OpenGL ィィ09070605ィケ04ィョ06ィー0907 ィコィ ィコ 0609ィェ0609ィェ0402 ィー08ィィ 09ィィ09ィー02ィャ04 ィコ06060801ィィィェィ ィー: 0502090609ィー060806ィェィェ0707, 0708ィ 090609ィー060806ィェィェ0707 ィィ 06ィコ06ィェィェィ 07. 030208090402 010902 09ィィ09ィー02ィャ04 0709050706ィー0907 ィー080201ィャ0208ィェ04ィャィィ ィィ 06ィー05ィィ ツィ 06ィー0907 0108ィョ00 06ィー 0108ィョ00ィ ィェィ 0708ィ 090502ィェィィ02ィャ 0609ィィ z: 09 0708ィ 090609ィー060806ィェィェ02ィヲ 06ィェィ ィェィ 0708ィ 090502ィェィ ィェィ ィェィ ィ 050601ィ ィー020507, 09 0502090609ィー060806ィェィェ02ィヲ 09 0005ィョィ ィィィェィョ 05ィコ08ィ ィェィ. 0209ィケ x ィェィ 0708ィ 090502ィェィ 090708ィ 0906 06ィーィェ0609ィィィー0205ィケィェ06 ィェィ ィ 050601ィ ィー020507, 0609ィケ y 0909020801. 0902090609ィー060806ィェィェ0707 09ィィ09ィー02ィャィ ィィ09070605ィケ04ィョ02ィー0907 010507 04ィ 01ィ ィェィィ07 04ィェィ ツ02ィェィィィヲ 07ィ 08ィ ィャ02ィー08ィ ィャ ィコ06ィャィ ィェ0104 gluperspective(), glortho(), ィコ06ィー06080402 ィ ィョ01ィョィー 08ィ 0909ィャ06ィー0802ィェ04 09 07ィョィェィコィー02 4.3. 0308ィ 090609ィー060806ィェィェ0707 09ィィ09ィー02ィャィ ィコ06060801ィィィェィ ィー ィィ09070605ィケ04ィョ02ィー0907 0906 09090201 0609ィーィ 05ィケィェ0401 0905ィョ ツィ 0701. 02ィー06ィ 08ィ 0302ィェィィ02 ィー080201ィャ0208ィェ06ィヲ ィィィェ000608ィャィ 02ィィィィ 070806ィィ09010601ィィィー 09 0109ィョ01ィャ0208ィェィョ06 06ィコ06ィェィェィョ06 09ィィ09ィー02ィャィョ ィコ06060801ィィィェィ ィー. 05ィー08060006 000609060807, OpenGL 0706040906050702ィー 07ィョィー02ィャ ィャィ ィェィィ07ィョ050702ィィィヲ 09 ィャィ ィー08ィィ02ィ ィャィィ ィャ06010205ィィ080609ィ ィーィケ ィコィ ィコ 0708ィ 09ィョ06, ィーィ ィコ ィィ 050209ィョ06 09ィィ09ィー02ィャィョ ィコ06060801ィィィェィ ィー. 0106 ィェィ 01ィ ィェィェ06ィャ 05ィーィ 0702 05ィョ ツ0302 0706ィヲィーィィ 07080609ィー04ィャ 07ィョィー02ィャ ィィ 04ィ 0706ィャィェィィィーィケ: 0609ィェ0609ィェ06ィヲ 09ィィ09ィー02ィャ06ィヲ ィコ06060801ィィィェィ ィー OpenGL 0709050702ィー0907 0708ィ 090609ィー060806ィェィェ0707 09ィィ09ィー02ィャィ. 55

1356 0105ィ 09ィ 4. 03080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 (ィ ) (ィ ) (09) 04ィィ09. 4.1. 05ィィ09ィー02ィャ04 ィコ06060801ィィィェィ ィー 09 OpenGL. (ィ ) 0708ィ 090609ィー060806ィェィェ0707, (ィ ) 0502090609ィー060806ィェィェ0707, (09) 06ィコ06ィェィェィ 07. 4.1. 04ィ ィ 06ィーィ 09 ィャィ ィー08ィィ02ィ ィャィィ 020507 04ィ 01ィ ィェィィ07 08ィ 0405ィィ ツィェ0401 07080206ィ 08ィ 040609ィ ィェィィィヲ 06ィ ィイ02ィコィー0609 090202ィェ04 09 OpenGL ィィ09070605ィケ04ィョ06ィー0907 06070208ィ 02ィィィィ ィェィ 01 ィャィ ィー08ィィ02ィ ィャィィ, 0708ィィ 05ィー06ィャ 08ィ 0405ィィ ツィ 06ィー ィー08ィィ ィーィィ07ィ ィャィ ィー08ィィ02: ィャ06010205ィケィェ06-09ィィ010609ィ 07, ィャィ ィー08ィィ02ィ 07080602ィコ02ィィィヲ ィィ ィャィ ィー08ィィ02ィ ィー02ィコ09ィーィョ0804. 000902 06ィェィィ ィィィャ0206ィー 08ィ 04ィャ0208 4004. 00ィィ010609ィ 07 ィャィ ィー08ィィ02ィ 060708020102050702ィー 07080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィーィ 09 ィャィィ0806090401 ィコ06060801ィィィェィ ィーィ 01, ィーィ ィコィィ02 ィコィ ィコ 07ィ 08ィ 05050205ィケィェ04ィヲ 07020802ィェ0609, ィィ04ィャ02ィェ02ィェィィ02 ィャィ 0903ィーィ ィ ィ ィィ 070609060806ィー. 00ィ ィー08ィィ02ィ 07080602ィコ02ィィィヲ 060708020102050702ィー, ィコィ ィコ ィ ィョ01ィョィー 0708060202ィィ080609ィ ィーィケ0907 ィー080201ィャ0208ィェ0402 06ィ ィイ02ィコィー04 ィェィ 07050609ィコ0609ィーィケ 05ィコ08ィ ィェィ (09 06ィコ06ィェィェ0402 ィコ06060801ィィィェィ ィー04), ィ ィャィ ィー08ィィ02ィ ィー02ィコ09ィーィョ0804 060708020102050702ィー ィェィ 05060302ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー. 07ィャィェ060302ィェィィ02 ィコ06060801ィィィェィ ィー ィェィ ィャィ ィー08ィィ0204 070806ィィ09010601ィィィー 09 ィャ06ィャ02ィェィー 0904040609ィ 090606ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィコ06ィャィ ィェ0104 OpenGL, 060708020102050706ィエ02ィヲ ィコ06060801ィィィェィ ィーィョ (ィコィ ィコ 0708ィ 09ィィ0506, 05ィー06 ィコ06ィャィ ィェ01ィ glvertex.) 020507 ィー060006 ツィー06ィ 04 0904ィ 08ィ ィーィケ, ィコィ ィコィョ06 ィャィ ィー08ィィ02ィョ ィェィ 0106 ィィ04ィャ02ィェィィィーィケ, ィィ09070605ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ : void glmatrixmode (GLenum mode) 0904040609 ィコ06ィー060806ィヲ 0906 04ィェィ ツ02ィェィィ02ィャ 07ィ 08ィ ィャ02ィー08ィ mode, 08ィ 09ィェ04ィャ GL_MODELVIEW, GL_PROJECTION ィィ05ィィ GL_TEXTURE, 09ィコ0506- ツィ 02ィー 080203ィィィャ 08ィ ィ 06ィー04 09 ィャ06010205ィケィェ06-09ィィ01060906ィヲ ィャィ ィー08ィィ0202ィヲ, ィャィ ィー08ィィ0202ィヲ 07080602ィコ02ィィィヲ, ィィ05ィィ ィャィ ィー08ィィ0202ィヲ ィー02ィコ09ィーィョ0804 090606ィー0902ィー09ィー0902ィェィェ06. 020507 0904040609ィ ィコ06ィャィ ィェ01, 04ィ 01ィ 06ィエィィ01 ィャィ ィー08ィィ0204 ィー060006 ィィ05ィィ ィィィェ060006 ィーィィ07ィ, ィェ0206ィ 010601ィィィャ06

134.1. 04ィ ィ 06ィーィ 09 ィャィ ィー08ィィ02ィ ィャィィ 57 09ィェィ ツィ 05ィ ィョ09ィーィ ィェ0609ィィィーィケ 090606ィー0902ィー09ィー09ィョ06ィエィィィヲ 080203ィィィャ. 020507 0607080201020502ィェィィ07 050502ィャ02ィェィー0609 ィャィ ィー08ィィ0204 ィー02ィコィョィエ020006 ィーィィ07ィ 0904040409ィ 02ィー0907 ィコ06ィャィ ィェ01ィ void glloadmatrix [ f d ] ( GLtype *m) 000102 m ィョィコィ 040409ィ 02ィー ィェィ ィャィ 0909ィィ09 ィィ04 16 050502ィャ02ィェィー0609 ィーィィ07ィ oat ィィ05ィィ double 09 090606ィー0902ィー09ィー09ィィィィ 09 ィェィ 0409ィ ィェィィ02ィャ ィコ06ィャィ ィェ0104, 0708ィィ 05ィー06ィャ 09ィェィ ツィ 05ィ 09 ィェ02ィャ 0106050302ィェ ィ 04ィーィケ 04ィ 07ィィ09ィ ィェ 0702080904ィヲ 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ィ ィェィ 0706 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ィ 010601ィィィャ06 09060108ィ ィェィィィーィケ 090601020803ィィィャ0602 ィー02ィコィョィエ02ィヲ ィャィ ィー08ィィ0204 010507 01ィ 05ィケィェ02ィヲ03020006 ィィ09070605ィケ040609ィ ィェィィ07, 010507 ツ020006 0708ィィィャ02ィェ0706ィー0907 ィコ06ィャィ ィェ0104 void glpushmatrix ( void ) void glpopmatrix ( void ) 02ィェィィ 04ィ 07ィィ090409ィ 06ィー ィィ 09060909ィーィ ィェィ 0905ィィ09ィ 06ィー ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ ィィ04 09ィー02ィコィ, 0708ィィ ツ02ィャ 010507 ィコィ 0301060006 ィーィィ07ィ ィャィ ィー08ィィ02 09ィー02ィコ 090906ィヲ. 020507 ィャ06010205ィケィェ0609ィィ0106090401 ィャィ ィー08ィィ02 020006 0005ィョィ ィィィェィ 08ィ 09ィェィ ィコィ ィコ ィャィィィェィィィャィョィャ 32, 010507 0609ィーィ 05ィケィェ0401 ィコィ ィコ ィャィィィェィィィャィョィャ 2. 020507 ィョィャィェ060302ィェィィ07 ィー02ィコィョィエ02ィヲ ィャィ ィー08ィィ0204 ィェィ 0108ィョ00ィョ06 ィャィ ィー08ィィ02ィョ ィィ09070605ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ void glmultmatrix [ f d ] ( GLtype *m) 000102 07ィ 08ィ ィャ02ィー08 m 0106050302ィェ 04ィ 01ィ 09ィ ィーィケ ィャィ ィー08ィィ02ィョ 08ィ 04ィャ020806ィャ 4004. 030905ィィ 06ィ 0604ィェィ ツィィィーィケ ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ 04ィ M, 0702080201ィ 09ィ 02ィャィョ06 ィャィ ィー08ィィ02ィョ 04ィ T, ィー06 09 080204ィョ05ィケィーィ ィー02 0904070605ィェ02ィェィィ07 ィコ06ィャィ ィェ0104 glmultmatrix ィー02ィコィョィエ02ィヲ 09ィーィ ィェ0609ィィィー0907 ィャィ ィー08ィィ02ィ M 6モ5 T. 0201ィェィ ィコ06 06ィ 04 ツィェ06 010507 ィィ04ィャ02ィェ02ィェィィ07 ィャィ ィー08ィィ0204 ィー060006 ィィ05ィィ ィィィェ060006 ィーィィ07ィ ィョ0106ィ ィェ06 ィィ09070605ィケ040609ィ ィーィケ 09070202ィィィ 05ィケィェ0402 ィコ06ィャィ ィェ0104, ィコ06ィー06080402 0706 04ィェィ ツ02ィェィィ07ィャ 090906ィィ01 07ィ 08ィ ィャ02ィー080609 09060401ィ 06ィー ィェィョ03ィェィョ06 ィャィ ィー08ィィ02ィョ ィィ ィョィャィェ0603ィ 06ィー 0202 ィェィ ィー02ィコィョィエィョ06.

1358 0105ィ 09ィ 4. 03080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 00 02020506ィャ, 010507 06ィー06ィ 08ィ 0302ィェィィ07 ィー080201ィャ0208ィェ0401 06ィ ィイ02ィコィー0609 090202ィェ04 09 06ィコィェ06 0708ィィ05060302ィェィィ07 ィィ09070605ィケ04ィョ02ィー0907 0706090502010609ィ ィー0205ィケィェ0609ィーィケ, 0706ィコィ 04ィ ィェィェィ 07 ィェィ 08ィィ09ィョィェィコ02 4.2. 04ィィ09. 4.2. 03080206ィ 08ィ 040609ィ ィェィィ07 ィコ06060801ィィィェィ ィー 09 OpenGL 05ィ 0706ィャィェィィィー02: 090902 07080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 ィィ ィコィ ィャ020804 09 OpenGL 070806ィィ0409060107ィー0907 09 0706ィャ06ィエィケ06 ィョィャィェ060302ィェィィ07 0902ィコィー06080609 ィコ06060801ィィィェィ ィー ィェィ ィャィ ィー08ィィ0204. 0308ィィ ツ02ィャ ィョィャィェ060302ィェィィ02 070806ィィ09010601ィィィー ィェィ ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ 09 ィャ06ィャ02ィェィー 0607080201020502ィェィィ07 ィコ06060801ィィィェィ ィー04 ィコ06ィャィ ィェ0106ィヲ glvertex ィィ ィェ02ィコ06ィー060804ィャィィ 0108ィョ00ィィィャィィ. 4.2. 0006010205ィケィェ06-09ィィ0106090402 07080206ィ 08ィ 040609ィ ィェィィ07 08 ィャ06010205ィケィェ06-09ィィ01060904ィャ 07080206ィ 08ィ 040609ィ ィェィィ07ィャ ィ ィョ0102ィャ 06ィーィェ0609ィィィーィケ 07020802ィェ0609, 070609060806ィー ィィ ィィ04ィャ02ィェ02ィェィィ02 ィャィ 0903ィーィ ィ ィ 09010605ィケ ィコ06060801ィィィェィ ィーィェ0401 060902ィヲ. 020507 07080609020102ィェィィ07 05ィーィィ01 06070208ィ 02ィィィヲ 010609ィーィ ィー06 ツィェ06 ィョィャィェ0603ィィィーィケ ィェィ 090606ィー0902ィー09ィー09ィョ06ィエィョ06 ィャィ ィー08ィィ02ィョ ィコィ 0301ィョ06 09020803ィィィェィョ 06ィ ィイ02ィコィーィ ィィ 070605ィョ ツィィィーィケ ィィ04-

134.2. 0006010205ィケィェ06-09ィィ0106090402 07080206ィ 08ィ 040609ィ ィェィィ07 59 ィャ02ィェ02ィェィェ0402 ィコ06060801ィィィェィ ィー04 05ィー06ィヲ 09020803ィィィェ04: 69 x 62 69 62 x 60y 63 61z 64 = M 60y 63 61z64 1 1 000102 M ィャィ ィー08ィィ02ィ ィャ06010205ィケィェ06-09ィィ010609060006 07080206ィ 08ィ 040609ィ ィェィィ07. 030208090702ィコィーィィ09ィェ0602 07080206ィ 08ィ 040609ィ ィェィィ02 ィィ 0708060202ィィ080609ィ ィェィィ02 070806ィィ04090601ィィィー0907 ィ ィェィ 050600ィィ ツィェ06. 05ィ ィャィ ィャィ ィー08ィィ02ィ ィャ060302ィー ィ 04ィーィケ 09060401ィ ィェィ 09 0706ィャ06ィエィケ06 09050201ィョ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 070806ィィ04090601ィィィー 07020802ィェ0609 06ィ ィイ02ィコィーィ, 0708ィィィ ィ 09050707 ィコ ィコ06060801ィィィェィ ィーィ ィャ 020006 09020803ィィィェ 04ィェィ ツ02ィェィィ07 090906ィィ01 07ィ 08ィ ィャ02ィー080609. glrotate 070806ィィ04090601ィィィー 070609060806ィー 06ィ ィイ02ィコィーィ 070806ィーィィ09 ツィ 09060906ィヲ 09ィー080205ィコィィ ィェィ ィョ000605 angle (ィィ04ィャ02080702ィー0907 09 0008ィ 01ィョ09ィ 01) 0906ィコ08ィョ00 0902ィコィー0608ィ (x,y,z). glscale 070806ィィ04090601ィィィー ィャィ 0903ィーィ ィ ィィ080609ィ ィェィィ02 06ィ ィイ02ィコィーィ (0903ィ ィーィィ02 ィィ05ィィ 08ィ 09ィー070302ィェィィ02) 09010605ィケ 0902ィコィー0608ィ (x,y,z), ィョィャィェ0603ィ 07 090606ィー0902ィー09ィー09ィョ06ィエィィ02 ィコ06060801ィィィェィ ィー04 020006 09020803ィィィェ ィェィ 04ィェィ ツ02ィェィィ07 090906ィィ01 07ィ 08ィ ィャ02ィー080609. 000902 05ィーィィ 07080206ィ 08ィ 040609ィ ィェィィ07 ィィ04ィャ02ィェ0706ィー ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ, ィ 0706ィー06ィャィョ 0708ィィィャ02ィェ0706ィー0907 ィコ 0708ィィィャィィィーィィ09ィ ィャ, ィコ06ィー06080402 060708020102050706ィー0907 0706040302. 00 0905ィョ ツィ 02, 020905ィィ ィェィ 0106, ィェィ 0708ィィィャ0208, 0706090208ィェィョィーィケ 0601ィィィェ 06ィ ィイ02ィコィー 090202ィェ04, ィ 0108ィョ0006ィヲ 0609ィーィ 09ィィィーィケ ィェ0207060109ィィ03ィェ04ィャ, ィョ0106ィ ィェ06 09ィェィ ツィ 05ィ 09060108ィ ィェィィィーィケ ィー02ィコィョィエィョ06 09ィィ010609ィョ06 ィャィ ィー08ィィ02ィョ 09 09ィー02ィコ02 ィコ06ィャィ ィェ0106ィヲ glpushmatrix, 04ィ ィー02ィャ 09040409ィ ィーィケ glrotate 09 ィェィョ03ィェ04ィャィィ 07ィ 08ィ ィャ02ィー08ィ ィャィィ, 0607ィィ09ィ ィーィケ 0708ィィィャィィィーィィ0904, ィィ04 ィコ06ィー06080401 090609ィー06ィィィー 05ィー06ィー 06ィ ィイ02ィコィー, ィ 04ィ ィー02ィャ 09060909ィーィ ィェ0609ィィィーィケ ィー02ィコィョィエィョ06 ィャィ ィー08ィィ02ィョ ィコ06ィャィ ィェ0106ィヲ glpopmatrix. 080806ィャ02 ィィ04ィャ02ィェ02ィェィィ07 070605060302ィェィィ07 09ィ ィャ060006 06ィ ィイ02ィコィーィ, ツィ 09ィー06 ィ 0409ィ 02ィー ィェ0206ィ 010601ィィィャ06 ィィ04ィャ02ィェィィィーィケ 070605060302ィェィィ02 ィェィ ィ 050601ィ ィー020507, ツィー06 ィーィ ィコ0302 0708ィィ090601ィィィー ィコ ィィ04ィャ02ィェ02ィェィィ06 ィャ06010205ィケィェ06-09ィィ01060906ィヲ ィャィ ィー08ィィ0204. 06ィー06 ィャ0603ィェ06 09010205ィ ィーィケ 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104

1360 0105ィ 09ィ 4. 03080206ィ 08ィ 040609ィ ィェィィ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 ) 000102 ィー06 ツィコィ (eyex, eyey, eyez) 060708020102050702ィー ィー06 ツィコィョ ィェィ ィ 05060102ィェィィ07, (centx, centy, centz) 04ィ 01ィ 02ィー 0202ィェィー08 090202ィェ04, ィコ06ィー060804ィヲ ィ ィョ0102ィー 0708060202ィィ080609ィ ィーィケ0907 09 0202ィェィー08 06ィ 05ィ 09ィーィィ 0904090601ィ, ィ 0902ィコィー0608 (upx, upy, upz) 04ィ 01ィ 02ィー 0706050603ィィィー0205ィケィェ0602 ィェィ 0708ィ 090502ィェィィ02 0609ィィ y, 060708020102050707 070609060806ィー ィコィ ィャ020804. 030905ィィ, ィェィ 0708ィィィャ0208, ィコィ ィャ0208ィョ ィェ02 ィェィ 0106 0706090608ィ ツィィ09ィ ィーィケ, ィー06 04ィ 01ィ 02ィー0907 04ィェィ - ツ02ィェィィ02 (0, 1, 0), ィ 0906 04ィェィ ツ02ィェィィ02ィャ (0, 6モ11, 0) 090202ィェィ ィ ィョ0102ィー 07020802090208ィェィョィーィ. 05ィー08060006 000609060807, 05ィーィ ィコ06ィャィ ィェ01ィ 090609020803ィ 02ィー 07020802ィェ0609 ィィ 070609060806ィー 06ィ ィイ02ィコィー0609 090202ィェ04, ィェ06 09 ィーィ ィコ06ィャ 09ィィ0102 04ィ 01ィ 09ィ ィーィケ 07ィ 08ィ ィャ02ィー0804 ィ 0409ィ 02ィー ィョ0106ィ ィェ0202. 05050201ィョ02ィー 06ィーィャ02ィーィィィーィケ, ツィー06 0904040409ィ ィーィケ ィコ06ィャィ ィェ01ィョ glulookat() ィィィャ0202ィー 09ィャ040905 0702080201 0607080201020502ィェィィ02ィャ 07080206ィ 08ィ 040609ィ ィェィィィヲ 06ィ ィイ02ィコィー0609, ィコ060001ィ ィャ06010205ィケィェ06-09ィィ010609ィ 07 ィャィ ィー08ィィ02ィ 08ィ 09ィェィ 0201ィィィェィィ ツィェ06ィヲ. 05ィ 0706ィャィェィィィー02: ィャィ ィー08ィィ ツィェ0402 07080206ィ 08ィ 040609ィ ィェィィ07 09 OpenGL ィェィョ03ィェ06 04ィ 07ィィ090409ィ ィーィケ 09 06ィ 08ィ ィーィェ06ィャ 0706080701ィコ02. 01ィ 0708ィィィャ0208, 020905ィィ 0904 0106ィーィィィー02 09ィェィ ツィ 05ィ 0706090208ィェィョィーィケ 06ィ ィイ02ィコィー, ィ 04ィ ィー02ィャ 070208020109ィィィェィョィーィケ 020006, 09ィェィ ツィ 05ィ 0904040609ィィィー02 ィコ06ィャィ ィェ01ィョ gltranslate(), ィ ィー0605ィケィコ06 0706ィー06ィャ glrotate(). 0306090502 05ィー060006 0607080201020507ィヲィー02 09ィ ィャ 06ィ ィイ02ィコィー. 4.3. 03080602ィコ02ィィィィ 00 OpenGL 09ィョィエ0209ィー09ィョ06ィー 09ィーィ ィェ01ィ 08ィーィェ0402 ィコ06ィャィ ィェ0104 010507 04ィ 01ィ ィェィィ07 0608ィー060008ィ 00ィィ ツ0209ィコ06ィヲ (07ィ 08ィ 05050205ィケィェ06ィヲ) ィィ 070208090702ィコィーィィ09ィェ06ィヲ 07080602ィコ02ィィィヲ. 0302080904ィヲ ィーィィ07 07080602ィコ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 )

134.3. 03080602ィコ02ィィィィ 61 03020809ィ 07 ィコ06ィャィ ィェ01ィ 09060401ィ 02ィー ィャィ ィー08ィィ02ィョ 07080602ィコ02ィィィィ 09 ィョ0902 ツ02ィェィェ04ィヲ 06ィ ィイ02ィャ 09ィィ01ィィィャ0609ィーィィ (07ィ 08ィ 050502050207ィィ070201 09ィィ01ィィィャ0609ィーィィ) 09 0502090609ィー060806ィェィェ02ィヲ 09ィィ09ィー02ィャ02 ィコ06060801ィィィェィ ィー. 03ィ 08ィ ィャ02ィー0804 ィコ06ィャィ ィェ0104 04ィ 01ィ 06ィー ィー06 ツィコィィ (lef t, bottom, znear) ィィ (right, top, zf ar), ィコ06ィー06080402 06ィー0902 ツィ 06ィー 05020906ィャィョ ィェィィ03ィェ02ィャィョ ィィ 0708ィ 0906ィャィョ 09020801ィェ02ィャィョ ィョ0005ィ ィャ 06ィコィェィ 0904090601ィ. 03ィ 08ィ ィャ02ィー0804 near ィィ far 04ィ 01ィ 06ィー 08ィ 0909ィー0607ィェィィ02 0106 ィ 05ィィ03ィェ02ィヲ ィィ 01ィ 05ィケィェ02ィヲ 07050609ィコ0609ィー02ィヲ 06ィー0902 ツ02ィェィィ07 0706 ィョ01ィ 0502ィェィィ06 06ィー ィー06 ツィコィィ (0, 0, 0) ィィ ィャ0600ィョィー ィ 04ィーィケ 06ィー08ィィ02ィ ィー0205ィケィェ04ィャィィ. 04ィィ09. 4.3. 0208ィー060008ィ 00ィィ ツ0209ィコィ 07 07080602ィコ02ィィ07 0006 09ィー060806ィヲ ィコ06ィャィ ィェ0102, 09 06ィー05ィィ ツィィ02 06ィー 0702080906ィヲ, 04ィェィ ツ02ィェィィ07 near ィィ far ィョ09ィーィ ィェィ 0905ィィ09ィ 06ィー0907 08ィ 09ィェ04ィャィィ 6モ11 ィィ 1 090606ィー0902ィー09ィー0902ィェィェ06. 06ィー06 ィョ0106ィ ィェ06, 020905ィィ OpenGL ィィ09070605ィケ04ィョ02ィー0907 010507 08ィィ090609ィ ィェィィ07 0109ィョィャ0208ィェ0401 06ィ ィイ02ィコィー0609. 00 05ィー06ィャ 0905ィョ ツィ 02 070605060302ィェィィ02 09020803ィィィェ ィャ0603ィェ06 04ィ 01ィ 09ィ ィーィケ, ィィ09070605ィケ04ィョ07 ィコ06ィャィ ィェ0104 glvertex2. 030208090702ィコィーィィ09ィェィ 07 07080602ィコ02ィィ07 060708020102050702ィー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ィーィィ 09 0502090609ィー060806ィェィェ02ィヲ 09ィィ09ィー02ィャ02 ィコ06060801ィィィェィ ィー. 03ィ 08ィ ィャ02ィー08 angley 060708020102050702ィー ィョ000605 09ィィ01ィィィャ0609ィーィィ 09 0008ィ 01ィョ09ィ 01 0706 0609ィィ ィョ ィィ 0106050302ィェ ィェィ 010601ィィィーィケ0907 09 01ィィィ 07ィ 0406ィェ02 06ィー 0 0106 180.

1362 0105ィ 09ィ 4. 03080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 07000605 09ィィ01ィィィャ0609ィーィィ 09010605ィケ 0609ィィ x 04ィ 01ィ 02ィー0907 07ィ 08ィ ィャ02ィー0806ィャ aspect, ィコ06ィー060804ィヲ 06ィ 04 ツィェ06 04ィ 01ィ 02ィー0907 ィコィ ィコ 06ィーィェ060302ィェィィ02 09ィー060806ィェ 06ィ 05ィ 09ィーィィ 0904090601ィ (ィコィ ィコ 0708ィ 09ィィ0506, 08ィ 04ィャ02080609 06ィコィェィ ). 04ィィ09. 4.4. 030208090702ィコィーィィ09ィェィ 07 07080602ィコ02ィィ07 03ィ 08ィ ィャ02ィー0804 zfar ィィ znear 04ィ 01ィ 06ィー 08ィ 0909ィー0607ィェィィ02 06ィー ィェィ ィ 050601ィ ィー020507 0106 07050609ィコ0609ィー02ィヲ 06ィー0902 ツ02ィェィィ07 0706 0005ィョィ ィィィェ02 ィィ 01060503ィェ04 ィ 04ィーィケ 0706050603ィィィー0205ィケィェ04ィャィィ. チ02ィャ ィ 0605ィケ0302 06ィーィェ060302ィェィィ02 zfar/znear, ィー02ィャ 01ィョ0302 09 ィ ィョ00020802 0005ィョィ ィィィェ04 ィ ィョ01ィョィー 08ィ 0405ィィ ツィ ィーィケ0907 08ィ 09070605060302ィェィェ0402 08070106ィャ 070609020801ィェ0609ィーィィ, ィーィ ィコ ィコィ ィコ 0706 ィョィャ0605 ツィ ィェィィ06 09 ィェ020006 ィ ィョ0102ィー 04ィ 07ィィ090409ィ ィーィケ0907 060903ィ ィーィ 0707 0005ィョィ ィィィェィ 09 01ィィィ 07ィ 0406ィェ02 06ィー 0 0106 1. 030802030102 ツ02ィャ 04ィ 01ィ 09ィ ィーィケ ィャィ ィー08ィィ0204 07080602ィコ02ィィィヲ, ィェ02 04ィ ィ ィョ01ィケィー02 09ィコ0506 ツィィィーィケ 080203ィィィャ 08ィ ィ 06ィー04 09 ィェィョ03ィェ06ィヲ ィャィ ィー08ィィ0202ィヲ ィコ06ィャィ ィェ0106ィヲ glmatrixmode(gl_projection) ィィ 09ィ 080609ィィィーィケ ィー02ィコィョィエィョ06 09 0706ィャ06ィエィケ06 0904040609ィ glloadidentity(). 0308ィィィャ0208: /* 0608ィー060008ィ 00ィィ ツ0209ィコィ 07 07080602ィコ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 ) ;

134.4. 02ィ 05ィ 09ィーィケ 0904090601ィ 63 4.4. 02ィ 05ィ 09ィーィケ 0904090601ィ 0306090502 0708ィィィャ02ィェ02ィェィィ07 ィャィ ィー08ィィ0204 07080602ィコ02ィィィヲ ィェィ 09010601 09050201ィョ06ィエ020006 07080206ィ 08ィ 040609ィ ィェィィ07 070601ィ 06ィー0907 ィーィ ィコ ィェィ 040409ィ 02ィャ0402 ィョ0902 ツ02ィェィェ0402 (clipped) ィコ06060801ィィィェィ ィー04. 05ィ ィー02ィャ ィェィ 01060107ィー0907 ィェ0608ィャィ 05ィィ040609ィ ィェィェ0402 ィコ06060801ィィィェィ ィー04 09020803ィィィェ 0706 000608ィャィョ0502: 69 61 x n y n z n 62 69 62 x c /w c 64 = 61y c /w c 64 z c /w c 02ィ 05ィ 09ィーィケ 0904090601ィ 0708020109ィーィ 09050702ィー 0906ィ 06ィヲ 070807ィャ06ィョ000605ィケィェィィィコ 09 06ィコ06ィェィェ06ィヲ 09ィィ09ィー02ィャ02 ィコ06060801ィィィェィ ィー, 08ィ 04ィャ020804 ィコ06ィー0608060006 04ィ 01ィ 06ィー0907 ィコ06ィャィ ィェ0106ィヲ void glviewport ( GLint x, GLint y, GLint width, GLint height ) 05ィェィ ツ02ィェィィ07 09090201 07ィ 08ィ ィャ02ィー080609 04ィ 01ィ 06ィー0907 09 07ィィィコ090205ィ 01 ィィ 060708020102050706ィー 03ィィ08ィィィェィョ ィィ 09040906ィーィョ 06ィ 05ィ 09ィーィィ 0904090601ィ 09 ィコ06060801ィィィェィ ィーィ ィャィィ 050209060006 ィェィィ03ィェ020006 ィョ0005ィ (x,y) 09 06ィコ06ィェィェ06ィヲ 09ィィ09ィー02ィャ02 ィコ06060801ィィィェィ ィー. 04ィ 04ィャ020804 06ィコ06ィェィェ06ィヲ 09ィィ09ィー02ィャ04 ィコ06060801ィィィェィ ィー 060708020102050706ィー0907 ィー02ィコィョィエィィィャィィ 08ィ 04ィャ0208ィ ィャィィ 06ィコィェィ 0708ィィ05060302ィェィィ07, ィー06 ツィコィ (0,0) ィェィ 010601ィィィー0907 09 05020906ィャ ィェィィ03ィェ02ィャ ィョ0005ィョ 06ィコィェィ. 0609070605ィケ04ィョ07 07ィ 08ィ ィャ02ィー0804 ィコ06ィャィ ィェ0104 glviewport(), OpenGL 0904 ツィィ09050702ィー 06ィコ06ィェィェ0402 ィコ06060801ィィィェィ ィー04 0202ィェィー08ィ 06ィ 05ィ 09ィーィィ 0904090601ィ (ox,oy) 0706 000608ィャィョ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 ィコ06060801ィィィェィ ィー04 ィコィ 030106ィヲ 09020803ィィィェ04: 69 62 69 62 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ィャ 0202050402 0706050603ィィィー0205ィケィェ0402 090205ィィ ツィィィェ04 n ィィ f 04ィ 01ィ 06ィー ィャィィィェィィィャィ 05ィケィェィョ06 ィィ ィャィ ィコ09ィィィャィ 05ィケィェィョ06 0005ィョィ ィィィェィョ ィー06 ツィコィィ 09 06ィコィェ02 ィィ 0706 ィョィャ0605- ツィ ィェィィ06 08ィ 09ィェ04 0 ィィ 1 090606ィー0902ィー09ィー0902ィェィェ06. 0105ィョィ ィィィェィ ィコィ 030106ィヲ ィー06 ツィコィィ 04ィ 07ィィ090409ィ 02ィー0907 09 09070202ィィィ 05ィケィェ04ィヲ ィ ィョ000208 0005ィョィ ィィィェ04 (z-ィ ィョ000208), ィコ06ィー060804ィヲ

1364 0105ィ 09ィ 4. 03080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609 ィィ09070605ィケ04ィョ02ィー0907 010507 ィョ01ィ 0502ィェィィ07 ィェ0209ィィ01ィィィャ0401 05ィィィェィィィヲ ィィ 070609020801ィェ0609ィー02ィヲ. 0709ィーィ ィェ0609ィィィーィケ 04ィェィ ツ02ィェィィ07 n ィィ f ィャ0603ィェ06 090404060906ィャ 00ィョィェィコ02ィィィィ void gldepthrange ( GLclampd n, GLclampd f ) 0806ィャィ ィェ01ィ glviewport() 06ィ 04 ツィェ06 ィィ09070605ィケ04ィョ02ィー0907 09 00ィョィェィコ02ィィィィ, 04ィ 080200ィィ09ィー08ィィ080609ィ ィェィェ06ィヲ 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 glutreshapefunc(), ィコ06ィー0608ィ 07 0904040409ィ 02ィー0907, 020905ィィ 070605ィケ040609ィ ィー0205ィケ ィィ04ィャ02ィェ0702ィー 08ィ 04ィャ020804 06ィコィェィ 0708ィィ05060302ィェィィ07. 4.5. 0806ィェィー080605ィケィェ0402 09060708060904 1) 08ィ ィコィィ02 09ィィ09ィー02ィャ04 ィコ06060801ィィィェィ ィー ィィ09070605ィケ04ィョ06ィー0907 09 OpenGL? 2) 03020802 ツィィ0905ィィィー02 09ィィ0104 ィャィ ィー08ィィ ツィェ0401 07080206ィ 08ィ 040609ィ ィェィィィヲ 09 OpenGL. 08ィ ィコィィィャ 06ィ 08ィ 0406ィャ 09 OpenGL 070806ィィ0901060107ィー 07080206ィ 08ィ 040609ィ ィェィィ07 06ィ ィイ02ィコィー0609? 3) チィー06 ィーィ ィコ0602 ィャィ ィー08ィィ ツィェ04ィヲ 09ィー02ィコ? 4) 03020802 ツィィ0905ィィィー02 0907060906ィ 04 ィィ04ィャ02ィェ02ィェィィ07 070605060302ィェィィ07 ィェィ ィ 050601ィ ィー020507 09 OpenGL. 5) 08ィ ィコィ 07 0706090502010609ィ ィー0205ィケィェ0609ィーィケ 09040406090609 ィコ06ィャィ ィェ01 gltranslate(), glrotate() ィィ glscale () 090606ィー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ィャィ ィェ0104 010507 04ィ 01ィ ィェィィ07 07080602ィコ02ィィィヲ 0904 04ィェィ 02ィー02? 7) チィー06 ィーィ ィコ0602 09ィィ0106090402 ィコ06060801ィィィェィ ィー04? 010608ィャィ 05ィィ040609ィ ィェィェ0402 ィコ06060801ィィィェィ ィー04?

130105ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ 06090902ィエ02ィェィィ02 020507 09060401ィ ィェィィ07 0802ィ 05ィィ09ィーィィ ツィェ0401 ィィ0406ィ 08ィ 0302ィェィィィヲ ィェ0206ィ 010601ィィィャ06 06070802010205ィィィーィケ ィコィ ィコ 090906ィヲ09ィー09ィ 09ィ ィャ060006 06ィ ィイ02ィコィーィ, ィーィ ィコ ィィ 090906ィヲ09ィー09ィ 0908020104, 09 ィコ06ィー060806ィヲ 06ィェ ィェィ 010601ィィィー0907. 03020809ィ 07 0008ィョ0707ィ 090906ィヲ09ィー09 09ィコ0506 ツィ 02ィー 09 0902ィ 07 07ィ 08ィ ィャ02ィー0804 ィャィ ィー0208ィィィ 05ィ, ィィ04 ィコ06ィー0608060006 09010205ィ ィェ 06ィ ィイ02ィコィー, 0907060906ィ 04 ィェィ ィェ020902ィェィィ07 ィー02ィコ09ィーィョ0804 ィェィ 020006 070609020801ィェ0609ィーィケ, 09ィー020702ィェィケ 0708060408ィ ツィェ0609ィーィィ 06ィ ィイ02ィコィーィ. 0806 09ィー060806ィヲ 0008ィョ070702 ィャ0603ィェ06 06ィーィェ0209ィーィィ ィコ0605ィィ ツ0209ィー0906 ィィ 090906ィヲ09ィー09ィ ィィ09ィー06 ツィェィィィコ0609 090902ィーィ, ィョ08060902ィェィケ 0708060408ィ ツィェ0609ィーィィ 0908020104, ィ ィーィ ィコ0302 ィャ06010205ィケ 06090902ィエ02ィェィィ07. 000902 05ィーィィ 090906ィヲ09ィー09ィ ィャ0603ィェ06 04ィ 01ィ 09ィ ィーィケ, 0904040409ィ 07 090606ィー0902ィー09ィー09ィョ06ィエィィ02 ィコ06ィャィ ィェ0104 OpenGL. 5.1. 0006010205ィケ 06090902ィエ02ィェィィ07 00 OpenGL ィィ09070605ィケ04ィョ02ィー0907 ィャ06010205ィケ 06090902ィエ02ィェィィ07, 09 090606ィー0902ィー09ィー09ィィィィ 09 ィコ06ィー060806ィヲ 020902ィー ィー06 ツィコィィ 060708020102050702ィー0907 ィェ0209ィコ0605ィケィコィィィャィィ 00ィ ィコィー0608ィ ィャィィ: 090906ィヲ09ィー09ィ ィャィィ ィャィ ィー0208ィィィ 05ィ ィィ ィー02ィコ09ィーィョ0804, 090205ィィ ツィィィェ06ィヲ ィェ0608ィャィ 05ィィ 09 05ィー06ィヲ ィー06 ツィコ02, ィ ィーィ ィコ0302 070605060302ィェィィ02ィャ ィィ09ィー06 ツィェィィィコィ 090902ィーィ ィィ ィェィ ィ 050601ィ ィー020507. 020507 ィコ06080802ィコィーィェ060006 08ィ 09 ツ02ィーィ 06090902ィエ02ィェィェ0609ィーィィ 09 ィー06 ツィコ02 ィェィ 0106 ィィ09070605ィケ040609ィ ィーィケ 0201ィィィェィィ ツィェ0402 ィェ0608ィャィ 05ィィ, 0601ィェィ ィコ06 ィコ06ィャィ ィェ0104 ィーィィ07ィ glscale ィャ0600ィョィー ィィ04ィャ02ィェ07ィーィケ 0105ィィィェィョ ィェ0608ィャィ 0502ィヲ. チィー06ィ 04 05ィー06 ィョ ツィィィー0409ィ ィーィケ, ィィ09070605ィケ04ィョィヲィー02 ィョ0302 ィョ0706ィャィィィェィ 0903ィィィヲ0907 080203ィィィャ ィェ0608ィャィ 05ィィ04ィ 02ィィィィ 0902ィコィー06080609 ィェ0608ィャィ 0502ィヲ, ィコ06ィー060804ィヲ 65

1366 0105ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ 06090902ィエ02ィェィィ02 09ィコ0506 ツィ 02ィー0907 090404060906ィャ ィコ06ィャィ ィェ0104 glenable (GL_NORMALIZE) 020507 04ィ 01ィ ィェィィ07 000506ィ ィ 05ィケィェ0401 07ィ 08ィ ィャ02ィー080609 06090902ィエ02ィェィィ07 ィィ09070605ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 void gllightmodel [ i f ] (GLenum pname, GLenum param ) void gllightmodel [ i f ] v (GLenum pname, const GLtype * params ) 080800ィョィャ02ィェィー pname 060708020102050702ィー, ィコィ ィコ06ィヲ 07ィ 08ィ ィャ02ィー08 ィャ06010205ィィ 06090902ィエ02ィェィィ07 ィ ィョ0102ィー ィェィ 09ィー08ィ ィィ09ィ ィーィケ0907 ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_LIGHT_MODEL_LOCAL_VIEWER 07ィ 08ィ ィャ02ィー08 param 0106050302ィェ ィ 04ィーィケ ィ ィョ05020904ィャ ィィ 04ィ 01ィ 02ィー 070605060302ィェィィ02 ィェィ ィ 050601ィ ィー020507. 030905ィィ 06ィェ 08ィ 0902ィェ GL_FALSE, ィー06 ィェィ 0708ィ 090502ィェィィ02 06ィ 040608ィ 09 ツィィィーィ 02ィー0907 07ィ 08ィ 05050205ィケィェ04ィャ 0609ィィ 6モ1z 09ィェ02 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー 070605060302ィェィィ07 09 09ィィ01060904x ィコ06060801ィィィェィ ィーィ 01. 030905ィィ 0302 06ィェ 08ィ 0902ィェ GL_TRUE, ィー06 ィェィ ィ 050601ィ ィー0205ィケ ィェィ 010601ィィィー0907 09 ィェィ ツィ 0502 09ィィ01060906ィヲ 09ィィ09ィー02ィャ04 ィコ06060801ィィィェィ ィー. 06ィー06 ィャ060302ィー ィョ05ィョ ツ03ィィィーィケ ィコィ ツ0209ィー0906 06090902ィエ02ィェィィ07, ィェ06 ィョ09050603ィェ0702ィー 020006 08ィ 09 ツ02ィー. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: GL_FALSE. GL_LIGHT_MODEL_TWO_SIDE 07ィ 08ィ ィャ02ィー08 param 0106050302ィェ ィ 04ィーィケ ィ ィョ05020904ィャ ィィ ィョ0708ィ 09050702ィー 080203ィィィャ06ィャ 08ィ 09 ツ02ィーィ 06090902ィエ02ィェィェ0609ィーィィ ィコィ ィコ 010507 05ィィ0202090401, ィーィ ィコ ィィ 010507 06ィ 08ィ ィーィェ0401 0008ィ ィェ02ィヲ. 030905ィィ 06ィェ 08ィ 0902ィェ GL_FALSE, ィー06 06090902ィエ02ィェィェ0609ィーィケ 08ィ 0909 ツィィィー0409ィ 02ィー0907 ィー0605ィケィコ06 010507 05ィィ0202090401 0008ィ ィェ02ィヲ. 030905ィィ 0302 06ィェ 08ィ 0902ィェ GL_TRUE, 08ィ 09 ツ02ィー 070806090601ィィィー0907 ィィ 010507 06ィ 08ィ ィーィェ0401 0008ィ ィェ02ィヲ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: GL_FALSE. GL_LIGHT_MODE_AMBIENT 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 ツィィ0905ィ, ィコ06ィー06080402 060708020102050706ィー 020902ィー 0006ィェ0609060006 06090902ィエ02ィェィィ07 01ィ 0302 09 0905ィョ ツィ 02 06ィー09ィョィー09ィー09ィィ07 0607080201020502ィェィェ0401 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (0.2, 0.2, 0.2,1.0).

135.2. 05070202ィィ00ィィィコィ 02ィィ07 ィャィ ィー0208ィィィ 050609 67 5.2. 05070202ィィ00ィィィコィ 02ィィ07 ィャィ ィー0208ィィィ 050609 020507 04ィ 01ィ ィェィィ07 07ィ 08ィ ィャ02ィー080609 ィー02ィコィョィエ020006 ィャィ ィー0208ィィィ 05ィ ィィ09070605ィケ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 ィィ01 0706ィャ06ィエィケ06 ィャ0603ィェ06 06070802010205ィィィーィケ 08ィ 09090207ィェィェ04ィヲ, 01ィィ0000ィョ04ィェ04ィヲ ィィ 040208ィコィ 05ィケィェ04ィヲ 020902ィーィ ィャィ ィー0208ィィィ 05ィ, ィ ィーィ ィコ0302 09ィー020702ィェィケ 040208ィコィ 05ィケィェ060006 06ィー08ィ 0302ィェィィ07 ィィ ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィィ0405ィョ ツ02ィェィィ07 090902ィーィ, 020905ィィ 06ィ ィイ02ィコィー 0106050302ィェ 090902ィーィィィーィケ0907. 08ィ ィコ06ィヲ ィィィャ02ィェィェ06 07ィ 08ィ ィャ02ィー08 ィ ィョ0102ィー 0607080201020507ィーィケ0907 04ィェィ ツ02ィェィィ02ィャ param, 04ィ 09ィィ09ィィィー 06ィー 04ィェィ ツ02ィェィィ07 pname: GL_AMBIENT 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 04ィェィ ツ02ィェィィ07 020902ィー0609 RGBA, ィコ06ィー06080402 060708020102050706ィー 08ィ 09090207ィェィェ04ィヲ 020902ィー ィャィ ィー0208ィィィ 05ィ (020902ィー ィャィ ィー0208ィィィ 05ィ 09 ィー02ィェィィ). 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (0.2, 0.2, 0.2, 1.0). GL_DIFFUSE 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 04ィェィ ツ02ィェィィ07 020902ィー0609 RGBA, ィコ06ィー06080402 060708020102050706ィー 01ィィ0000ィョ04ィェ04ィヲ 020902ィー ィャィ ィー0208ィィィ 05ィ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (0.8, 0.8, 0.8, 1.0). GL_SPECULAR 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 04ィェィ ツ02ィェィィ07 020902ィー0609 RGBA, ィコ06ィー06080402 060708020102050706ィー 040208ィコィ 05ィケィェ04ィヲ 020902ィー ィャィ ィー0208ィィィ 05ィ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 0.0, 1.0). GL_SHININESS 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ 0601ィェ06 0202050602 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0602 04ィェィ ツ02ィェィィ02 09 01ィィィ 07ィ 0406ィェ02 06ィー 0 0106 128, ィコ06ィー06080602 060708020102050702ィー 09ィー020702ィェィケ 040208ィコィ 05ィケィェ060006 06ィー08ィ 0302ィェィィ07 ィャィ ィー0208ィィィ 05ィ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: 0.

1368 0105ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ 06090902ィエ02ィェィィ02 GL_EMISSION 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 04ィェィ ツ02ィェィィ07 020902ィー0609 RGBA, ィコ06ィー06080402 060708020102050706ィー ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィィ0405ィョ ツィ 02ィャ060006 090902ィーィ ィャィ ィー0208ィィィ 05ィ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 0.0, 1.0). GL_AMBIENT_AND_DIFFUSE 05ィコ09ィィ09ィ 0502ィェィーィェ06 0109ィョィャ 0904040609ィ ィャ ィコ06ィャィ ィェ0104 glmaterial() 0906 04ィェィ ツ02ィェィィ02ィャ pname GL_AMBIENT ィィ GL_DIFFUSE ィィ 0601ィィィェィ ィコ060904ィャィィ 04ィェィ ツ02ィェィィ07ィャィィ params. 0604 05ィー060006 09050201ィョ02ィー, ツィー06 0904040609 ィコ06ィャィ ィェ0104 glmaterial[ i f ]() 090604ィャ060302ィェ ィー0605ィケィコ06 010507 ィョ09ィーィ ィェ0609ィコィィ 09ィー020702ィェィィ 040208ィコィ 05ィケィェ060006 06ィー08ィ 0302ィェィィ07 ィャィ ィー0208ィィィ 05ィ (shininess). 0806ィャィ ィェ01ィ glmaterial[ i f ] v() ィィ09070605ィケ04ィョ02ィー0907 010507 04ィ 01ィ ィェィィ07 0609ィーィ 05ィケィェ0401 07ィ 08ィ ィャ02ィー080609. 03ィ 08ィ ィャ02ィー08 face 060708020102050702ィー ィーィィ07 0008ィ ィェ02ィヲ, 010507 ィコ06ィー06080401 04ィ 01ィ 02ィー0907 05ィー06ィー ィャィ ィー0208ィィィ 05 ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 04ィェィ ツ02ィェィィ07 GL_FRONT, GL_BACK ィィ05ィィ GL_FRONT_AND_BACK. 030905ィィ 09 090202ィェ02 ィャィ ィー0208ィィィ 0504 06ィ ィイ02ィコィー0609 08ィ 0405ィィ ツィ 06ィー0907 05ィィ03ィケ 0601ィェィィィャ 07ィ 08ィ ィャ02ィー0806ィャ, 0802ィコ06ィャ02ィェ01ィョ02ィー0907 09ィェィ ツィ 05ィ ィョ09ィーィ ィェ0609ィィィーィケ ィェィョ03ィェ04ィヲ 080203ィィィャ, 09040409ィ 09 glenable() c 07ィ 08ィ ィャ02ィー0806ィャ GL_COLOR_MATERIAL, ィ 04ィ ィー02ィャ ィィ09070605ィケ040609ィ ィーィケ ィコ06ィャィ ィェ01ィョ void g l C o l o r M a t e r i a l (GLenum face, GLenum pname) 000102 07ィ 08ィ ィャ02ィー08 face ィィィャ0202ィー ィ ィェィ 050600ィィ ツィェ04ィヲ 09ィャ040905, ィ 07ィ 08ィ ィャ02ィー08 pname ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 090902 07020802 ツィィ090502ィェィェ0402 04ィェィ ツ02ィェィィ07. 0306090502 05ィー060006 04ィェィ - ツ02ィェィィ07 0904ィ 08ィ ィェィェ060006 09 0706ィャ06ィエィケ06 pname 090906ィヲ09ィー09ィ ィャィ ィー0208ィィィ 05ィ 010507 ィコ06ィェィコ0802ィーィェ060006 06ィ ィイ02ィコィーィ (ィィ05ィィ 09020803ィィィェ04) ィョ09ィーィ ィェィ 0905ィィ09ィ 06ィー0907 090404060906ィャ ィコ06ィャィ ィェ0104 glcolor, ツィー06 0706040906050702ィー ィィ04ィ 0203ィ ィーィケ 09040406090609 ィ 06050202 080209ィョ08090602ィャィコ06ィヲ ィコ06ィャィ ィェ0104 glmaterial ィィ 0706090403ィ 02ィー 05000002ィコィーィィ09ィェ0609ィーィケ 0708060008ィ ィャィャ04. 0208ィョ00ィィ02 ィャ02ィー060104 0607ィーィィィャィィ04ィ 02ィィィィ 0708ィィ09020102ィェ04 09 0005ィ 0902 9. 0308ィィィャ0208 0607080201020502ィェィィ07 090906ィヲ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 } ;

135.3. 0207ィィ09ィ ィェィィ02 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ 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 ) ; 5.3. 0207ィィ09ィ ィェィィ02 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ 0207080201020502ィェィィ02 090906ィヲ09ィー09 ィャィ ィー0208ィィィ 05ィ 06ィ ィイ02ィコィーィ ィィィャ0202ィー 09ィャ040905, ィー0605ィケィコ06 020905ィィ 09 090202ィェ02 0209ィーィケ ィィ09ィー06 ツィェィィィコィィ 090902ィーィ. 06ィェィ ツ02 090902 06ィ ィイ02ィコィー04 ィ ィョ01ィョィー ツ0208ィェ04ィャィィ (ィィ05ィィ, 09ィー08060006 000609060807, ィィィャ02ィーィケ 020902ィー, 08ィ 09ィェ04ィヲ 08ィ 09090207ィェィェ06ィャィョ 020902ィーィョ ィャィ ィー0208ィィィ 05ィ, ィョィャィェ060302ィェィェ06ィャィョ ィェィ ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ 000506ィ ィ 05ィケィェ060006 0006ィェ0609060006 06090902ィエ02ィェィィ07, 09ィャ. ィコ06ィャィ ィェ01ィョ gllightmodel). 0206ィ ィ 09ィィィーィケ 09 090202ィェィョ ィィ09ィー06 ツィェィィィコ 090902ィーィ ィャ0603ィェ06 09 0706ィャ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ィェィ ツィェ06 060708020102050702ィー ィィ09ィー06 ツィェィィィコ 090902ィーィ. 02ィェ 0904ィ ィィ08ィ 02ィー0907 ィィ04 ィェィ ィ 0608ィ 09070202ィィィ 05ィケィェ0401 09ィィィャ090605ィィ ツ0209ィコィィ01 ィィィャ02ィェ 09ィィ01ィ GL_LIGHTi, 000102 i 01060503ィェ06 050203ィ ィーィケ 09 01ィィィ 07ィ 0406ィェ02 06ィー 0 0106 ィコ06ィェ09ィーィ ィェィー04 GL_MAX_LIGHT, ィコ06ィー0608ィ 07 06ィ 04 ツィェ06 ィェ02 070802090609010601ィィィー 090609ィケィャィィ. 03ィ 08ィ ィャ02ィー0804 pname ィィ params ィィィャ0206ィー 09ィャ040905, ィ ィェィ 050600ィィ ツィェ04ィヲ ィコ06ィャィ ィェ0102 glmaterial. 04ィ 0909ィャ06ィー08ィィィャ 04ィェィ ツ02ィェィィ07 07ィ 08ィ ィャ02ィー08ィ pname: GL_SPOT_EXPONENT 07ィ 08ィ ィャ02ィー08 param 0106050302ィェ 090601020803ィ ィーィケ 0202050602 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0602 ツィィ090506 06ィー 0 0106 128, 04ィ 01ィ 06ィエ0202

1370 0105ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ 06090902ィエ02ィェィィ02 08ィ 0907080201020502ィェィィ02 ィィィェィー02ィェ09ィィ09ィェ0609ィーィィ 090902ィーィ. 06ィー06ィー 07ィ 08ィ ィャ02ィー08 0607ィィ090409ィ 02ィー ィョ08060902ィェィケ 090006ィコィョ09ィィ080609ィ ィェィェ0609ィーィィ ィィ09ィー06 ツィェィィィコィ 090902ィーィ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: 0 (08ィ 09090207ィェィェ04ィヲ 090902ィー). GL_SPOT_CUTOFF 07ィ 08ィ ィャ02ィー08 param 0106050302ィェ 090601020803ィ ィーィケ 0202050602 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0602 ツィィ090506 ィャ020301ィョ 0 ィィ 90 ィィ05ィィ 08ィ 09ィェ0602 180, ィコ06ィー06080602 060708020102050702ィー ィャィ ィコ09ィィィャィ 05ィケィェ04ィヲ ィョ000605 08ィ 04ィ 080609ィ 090902ィーィ. 05ィェィ ツ02ィェィィ02 05ィー060006 07ィ 08ィ ィャ02ィー08ィ 0209ィーィケ 0706050609ィィィェィ ィョ0005ィ 09 09020803ィィィェ02 ィコ06ィェィョ090609ィィ01ィェ060006 090902ィー0609060006 0706ィー06ィコィ, 09060401ィ 09ィ 02ィャ060006 ィィ09ィー06 ツィェィィィコ06ィャ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: 180 (08ィ 09090207ィェィェ04ィヲ 090902ィー). GL_AMBIENT 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 04ィェィ ツ02ィェィィ07 020902ィー0609 RGBA, ィコ06ィー06080402 060708020102050706ィー 020902ィー 0006ィェ0609060006 06090902ィエ02ィェィィ07. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 0.0, 1.0). GL_DIFFUSE 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 04ィェィ ツ02ィェィィ07 020902ィー0609 RGBA, ィコ06ィー06080402 060708020102050706ィー 020902ィー 01ィィ0000ィョ04ィェ060006 06090902ィエ02ィェィィ07. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (1.0, 1.0, 1.0, 1.0) 010507 GL_LIGHT0 ィィ (0.0, 0.0, 0.0, 1.0) 010507 0609ィーィ 05ィケィェ0401. GL_SPECULAR 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 04ィェィ ツ02ィェィィ07 020902ィー0609 RGBA, ィコ06ィー06080402 060708020102050706ィー 020902ィー 040208ィコィ 05ィケィェ060006 06ィー08ィ 0302ィェィィ07. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (1.0, 1.0, 1.0, 1.0) 010507 GL_LIGHT0 ィィ (0.0, 0.0, 0.0, 1.0) 010507 0609ィーィ 05ィケィェ0401. GL_POSITION 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 090601020803ィ ィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 ツィィ0905ィ, ィコ06ィー06080402 060708020102050706ィー 070605060302ィェィィ02 ィィ09ィー06 ツィェィィィコィ 090902ィーィ. 030905ィィ 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 06090902ィエ02ィェィェ0609ィーィィ ィョ ツィィィー0409ィ 02ィー0907 ィー0605ィケィコ06 ィェィ 0708ィ 090502ィェィィ02 ィェィ ィー06 ツィコィョ (x, y, z), 09 070806ィーィィ09ィェ06ィャ 0905ィョ ツィ 02 09 ツィィィーィ 02ィー0907, ツィー06 ィィ09ィー06 ツィェィィィコ 08ィ 09070605060302ィェ 09 ィー06 ツィコ02 (x, y, z, w). 00 0702080906ィャ 0905ィョ ツィ 02 060905ィ ィ 0502ィェィィ07

135.3. 0207ィィ09ィ ィェィィ02 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ 71 090902ィーィ 0708ィィ ィョ01ィ 0502ィェィィィィ 06ィー ィィ09ィー06 ツィェィィィコィ ィェ02 070806ィィ09010601ィィィー, ィー.02. ィィ09ィー06 ツィェィィィコ 09 ツィィィーィ 02ィー0907 ィ 0209ィコ06ィェ02 ツィェ06 ィョ01ィ 0502ィェィェ04ィャ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 1.0, 0.0). GL_SPOT_DIRECTION 07ィ 08ィ ィャ02ィー08 params 0106050302ィェ 0108ィ ィェィィィーィケ ツ02ィー040802 0202050401 ィィ05ィィ 0902ィエ0209ィー0902ィェィェ0401 ツィィ0905ィ, ィコ06ィー06080402 060708020102050706ィー ィェィ 0708ィ 090502ィェィィ02 090902ィーィ. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: (0.0, 0.0, 6モ11.0, 1.0). 06ィーィ 01ィ 08ィ ィコィー0208ィィ09ィーィィィコィ ィィ09ィー06 ツィェィィィコィ ィィィャ0202ィー 09ィャ040905, 020905ィィ 04ィェィ ツ02ィェィィ02 GL_SPOT_CUTOFF 06ィー05ィィ ツィェ06 06ィー 180 (ィコ06ィー06080602, ィコ09ィーィ ィーィィ, 04ィ 01ィ ィェ06 0706 ィョィャ0605 ツィ ィェィィ06). GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION, GL_QUADRATIC_ATTENUATION 07ィ 08ィ ィャ02ィー08 params 04ィ 01ィ 02ィー 04ィェィ ツ02ィェィィ02 0601ィェ060006 ィィ04 ィー080201 ィコ06050000ィィ02ィィ02ィェィー0609, 060708020102050706ィエィィ01 060905ィ ィ 0502ィェィィ02 ィィィェィー02ィェ09ィィ09ィェ0609ィーィィ 090902ィーィ 0708ィィ ィョ01ィ 0502ィェィィィィ 06ィー ィィ09ィー06 ツィェィィィコィ. 020607ィョ09ィコィ 06ィー0907 ィー0605ィケィコ06 ィェ0206ィー08ィィ02ィ ィー0205ィケィェ0402 04ィェィ ツ02ィェィィ07. 030905ィィ ィィ09ィー06 ツィェィィィコ ィェ02 0709050702ィー0907 ィェィ 0708ィ 090502ィェィェ04ィャ (09ィャ. GL_POSITION), ィー06 060905ィ ィ 0502ィェィィ02 06ィ 08ィ ィーィェ06 07080607060802ィィ06ィェィ 05ィケィェ06 09ィョィャィャ02: attconstant + attlinear 6モ5 d + attquadratic 6モ5 d 2 000102 d 08ィ 0909ィー0607ィェィィ02 ィャ020301ィョ ィィ09ィー06 ツィェィィィコ06ィャ 090902ィーィ ィィ 06090902ィエィ 02ィャ06ィヲ ィィィャ 09020803ィィィェ06ィヲ; attconstant, attlinear ィィ attquadratic 08ィ 09ィェ04 07ィ 08ィ ィャ02ィー08ィ ィャ, 04ィ 01ィ ィェィェ04ィャ 09 0706ィャ06ィエィケ06 ィコ06ィェ09ィーィ ィェィー GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION ィィ GL_QUADRATIC_ATTENUATION 090606ィー0902ィー09ィー0902ィェィェ06. 0306 ィョィャ0605 ツィ ィェィィ06 05ィーィィ 07ィ 08ィ ィャ02ィー0804 04ィ 01ィ 06ィー0907 ィー0806ィヲィコ06ィヲ (1, 0, 0), ィィ 00ィ ィコィーィィ ツ0209ィコィィ 060905ィ ィ 0502ィェィィ07 ィェ02 070806ィィ09010601ィィィー.

1372 0105ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ 06090902ィエ02ィェィィ02 0308ィィ ィィ04ィャ02ィェ02ィェィィィィ 070605060302ィェィィ07 ィィ09ィー06 ツィェィィィコィ 090902ィーィ 09050201ィョ02ィー ィョ ツィィィー0409ィ ィーィケ 09050201ィョ06ィエィィィヲ 00ィ ィコィー: 09 OpenGL ィィ09ィー06 ツィェィィィコィィ 090902ィーィ 0709050706ィー0907 06ィ ィイ02ィコィーィ ィャィィ, 0906 ィャィェ060006ィャ ィーィ ィコィィィャィィ 0302, ィコィ ィコ ィャィェ060006ィョ000605ィケィェィィィコィィ ィィ ィー06 ツィコィィ. 01ィ ィェィィ01 08ィ 0907080609ィー08ィ ィェ0702ィー0907 0609ィェ0609ィェ0602 0708ィ 09ィィ0506 06ィ 08ィ ィ 06ィーィコィィ ィコ06060801ィィィェィ ィー 09 OpenGL 07ィ 08ィ ィャ02ィー0804, 0607ィィ090409ィ 06ィエ0202 070605060302ィェィィ02 09 07080609ィー08ィ ィェ09ィー0902, 07080206ィ 08ィ 04ィョ06ィー0907 ィー02ィコィョィエ02ィヲ ィャ06010205ィケィェ06-09ィィ01060906ィヲ ィャィ ィー08ィィ0202ィヲ 09 ィャ06ィャ02ィェィー 000608ィャィィ080609ィ ィェィィ07 06ィ ィイ02ィコィーィ, ィー.02. 09 ィャ06ィャ02ィェィー 0904040609ィ 090606ィー0902ィー09ィー09ィョ06ィエィィ01 ィコ06ィャィ ィェ01 OpenGL. 06ィ ィコィィィャ 06ィ 08ィ 0406ィャ, 000608ィャィィ08ィョ07 ィィ09ィー06 ツィェィィィコ 090902ィーィ 0601ィェ06090802ィャ02ィェィェ06 09 06ィ ィイ02ィコィー06ィャ 090202ィェ04 ィィ05ィィ ィコィ ィャ020806ィヲ, 020006 ィャ0603ィェ06 0708ィィ090704ィ ィーィケ ィコ 05ィー06ィャィョ 06ィ ィイ02ィコィーィョ. 0605ィィ, ィェィ 06ィ 060806ィー, 09000608ィャィィ080609ィ ィーィケ 09ィーィ 02ィィ06ィェィ 08ィェ04ィヲ ィィ09ィー06 ツィェィィィコ 090902ィーィ, ィコ06ィー060804ィヲ ィ ィョ0102ィー 0609ィーィ 09ィ ィーィケ0907 ィェィ ィャ0209ィー02, 0706ィコィ 0108ィョ00ィィ02 06ィ ィイ02ィコィー04 07020802ィャ02ィエィ 06ィー0907. 02ィ ィエ0202 0708ィ 09ィィ0506 ィーィ ィコ0602: e0905ィィ 070605060302ィェィィ02 ィィ09ィー06 ツィェィィィコィ 090902ィーィ 04ィ 01ィ 02ィー0907 ィコ06ィャィ ィェ0106ィヲ gllight 0702080201 0607080201020502ィェィィ02ィャ 070605060302ィェィィ07 09ィィ08ィーィョィ 05ィケィェ06ィヲ ィコィ ィャ020804 (ィェィ 0708ィィィャ0208, ィコ06ィャィ ィェ0106ィヲ gllookat()), ィー06 ィ ィョ0102ィー 09 ツィィィーィ ィーィケ0907, ツィー06 ィコ06060801ィィィェィ ィー04 (0, 0, 0) ィィ09ィー06 ツィェィィィコィ ィェィ 010601ィィィー0907 09 ィー06 ツィコ02 ィェィ ィ 05060102ィェィィ07 ィィ, 090502010609ィ ィー0205ィケィェ06, 070605060302ィェィィ02 ィィ09ィー06 ツィェィィィコィ 090902ィーィ 060708020102050702ィー0907 06ィーィェ0609ィィィー0205ィケィェ06 070605060302ィェィィ07 ィェィ ィ 050601ィ ィー020507. 030905ィィ 070605060302ィェィィ02 ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー0907 ィャ020301ィョ 0607080201020502ィェィィ02ィャ 070605060302ィェィィ07 ィコィ ィャ020804 ィィ 07080206ィ 08ィ 040609ィ ィェィィ07ィャィィ ィャ06010205ィケィェ06-09ィィ01060906ィヲ ィャィ ィー08ィィ0204 06ィ ィイ02ィコィーィ, ィー06 06ィェ06 00ィィィコ09ィィ08ィョ02ィー0907, ィー.02. 09 05ィー06ィャ 0905ィョ ツィ 02 070605060302ィェィィ02 ィィ09ィー06 ツィェィィィコィ 090902ィーィ 04ィ 01ィ 02ィー0907 09 ィャィィ0806090401 ィコ06060801ィィィェィ ィーィ 01. 020507 ィィ09070605ィケ040609ィ ィェィィ07 06090902ィエ02ィェィィ07 09ィェィ ツィ 05ィ ィェィ 0106 ィョ09ィーィ ィェ0609ィィィーィケ 090606ィー0902ィー09ィー09ィョ06ィエィィィヲ 080203ィィィャ 090404060906ィャ ィコ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, ツィー06 0708ィィ 0904ィコ0506 ツ02ィェィェ06ィャ 06090902ィエ02ィェィィィィ 020902ィー 09020803ィィィェ04 08ィ 0902ィェ ィー02ィコィョィエ02ィャィョ 020902ィーィョ, ィコ06ィー060804ィヲ 04ィ 01ィ 02ィー0907 ィコ06ィャィ ィェ01ィ ィャィィ glcolor. 0308ィィ 09ィコ0506 ツ02ィェィェ06ィャ 06090902ィエ02ィェィィィィ 020902ィー 09020803ィィィェ04 0904 ツィィ09050702ィー0907 ィィ0901060107 ィィ04 ィィィェ000608ィャィ 02ィィィィ 06 ィャィ ィー0208ィィィ 0502, ィェ0608ィャィ 050701 ィィ ィィ09ィー06 ツィェィィィコィ 01 090902ィーィ. 0308ィィ 0904ィコ0506 ツ02ィェィィィィ 06090902ィエ02ィェィィ07 09ィィ04ィョィ 05ィィ04ィ 02ィィ07 070806ィィ09010601ィィィー ィ 0409ィー080202, 0601ィェィ ィコ06 09 ィーィ ィコ06ィャ 0905ィョ ツィ 02 0708ィィ05060302ィェィィ02 01060503ィェ06 09ィ ィャ06 08ィ 0909 ツィィィー0409ィ ィーィケ 020902ィーィ 09020803ィィィェ.

135.4. 05060401ィ ィェィィ02 05000002ィコィーィ ィーィョィャィ ィェィ 73 0602ィコ09ィー 0708060008ィ ィャィャ04, 0102ィャ06ィェ09ィー08ィィ08ィョ06ィエ02ィヲ 0609ィェ0609ィェ0402 0708ィィィェ02ィィ0704 0607080201020502ィェィィ07 ィャィ ィー0208ィィィ 050609 ィィ ィィ09ィー06 ツィェィィィコ0609 090902ィーィ, 0708ィィ09020102ィェ 09 0708ィィ05060302ィェィィィィ 09. 5.4. 05060401ィ ィェィィ02 05000002ィコィーィ ィーィョィャィ ィェィ 00 04ィ 0902080302ィェィィ02 08ィ 0909ィャ06ィー08ィィィャ 0601ィェィョ ィィィェィー02080209ィェィョ06 ィィ ツィ 09ィー06 ィィ09070605ィケ04ィョ02ィャィョ06 090604ィャ0603ィェ0609ィーィケ OpenGL 09060401ィ ィェィィ02 05000002ィコィーィ ィーィョィャィ ィェィ. 090200ィコ0602 04ィ ィーィョィャィ ィェィィ09ィ ィェィィ02 090202ィェ04 09060401ィ 02ィー 0802ィ 05ィィ09ィーィィ ツィェ04ィヲ 05000002ィコィー, ィ ィィィェ060001ィ ィャ060302ィー ィィ 09ィコ0804ィーィケ ィェ02ィコ06ィー06080402 ィ 08ィー0200ィ ィコィー04, ィコ06ィー06080402 07060709050706ィー0907, ィコ060001ィ 09 090202ィェ02 0708ィィ09ィョィー09ィー09ィョ06ィー 06ィー01ィ 0502ィェィェ0402 06ィ ィイ02ィコィー04. 06ィョィャィ ィェ 09 OpenGL 0802ィ 05ィィ04ィョ02ィー0907 07ィョィー02ィャ ィィ04ィャ02ィェ02ィェィィ07 020902ィーィ 06ィ ィイ02ィコィー0609 09 090202ィェ02 09 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー ィィ01 0005ィョィ ィィィェ04, ィー.02. 08ィ 0909ィー0607ィェィィ07 0106 ィー06 ツィコィィ ィェィ ィ 05060102ィェィィ07. 0604ィャ02ィェ02ィェィィ02 020902ィーィ 070806ィィ09010601ィィィー 05ィィィ 06 010507 09020803ィィィェ 0708ィィィャィィィーィィ090609, 05ィィィ 06 010507 ィコィ 0301060006 07ィィィコ09020507 ィェィ 05ィーィ 0702 08ィ 09ィー0208ィィ04ィ 02ィィィィ 09 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー 0802ィ 05ィィ04ィ 02ィィィィ OpenGL. 06ィーィィィャ 0708060202090906ィャ ィャ0603ィェ06 ツィ 09ィーィィ ツィェ06 ィョ0708ィ 090507ィーィケ 09ィャ. 08ィ 04010205 7. 020507 09ィコ0506 ツ02ィェィィ07 05000002ィコィーィ 04ィ ィーィョィャィ ィェィィ09ィ ィェィィ07 ィェ0206ィ 010601ィィィャ06 09040409ィ ィーィケ ィコ06ィャィ ィェ01ィョ glenable(gl_fog). 0002ィー0601 0904 ツィィ090502ィェィィ07 ィィィェィー02ィェ09ィィ09ィェ0609ィーィィ ィーィョィャィ ィェィ 09 09020803ィィィェ02 ィャ0603ィェ06 06070802010205ィィィーィケ 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ01 void glfog [ i f ] (enum pname, T param ) void glfog [ i f ] v (enum pname, T params ) 080800ィョィャ02ィェィー pname ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_FOG_MODE ィ 0800ィョィャ02ィェィー param 060708020102050702ィー 000608ィャィョ05ィョ, 0706 ィコ06ィー060806ィヲ ィ ィョ0102ィー 0904 ツィィ090507ィーィケ0907 ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィーィョィャィ ィェィ 09 ィー06 ツィコ02. 00 05ィー06ィャ 0905ィョ ツィ 02 param ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_EXP ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ 04ィ 01ィ 02ィー0907 000608ィャィョ0506ィヲ f = e (6モ1d6モ5z) ; GL_EXP2 ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ 04ィ 01ィ 02ィー0907 000608ィャィョ0506ィヲ f = e 6モ1(d6モ5z)2 ;

1374 0105ィ 09ィ 5. 00ィ ィー0208ィィィ 0504 ィィ 06090902ィエ02ィェィィ02 GL_LINEAR ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ 0904 ツィィ09050702ィー0907 0706 000608ィャィョ0502 f = e 6モ1 z/e 6モ1 s, 000102 z 08ィ 0909ィー0607ィェィィ02 06ィー 09020803ィィィェ04, 09 ィコ06ィー060806ィヲ 0904- ツィィ09050702ィー0907 ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ ィーィョィャィ ィェィ, 0106 ィー06 ツィコィィ ィェィ ィ 05060102ィェィィ07. 0806050000ィィ02ィィ02ィェィー04 d, e, s 04ィ 01ィ 06ィー0907 09 0706ィャ06ィエィケ06 09050201ィョ06ィエィィ01 04ィェィ - ツ02ィェィィィヲ ィ 0800ィョィャ02ィェィーィ pname: GL_FOG_DENSITY param 060708020102050702ィー ィコ06050500ィィ02ィィ02ィェィー d GL_FOG_START param 060708020102050702ィー ィコ06050000ィィ02ィィ02ィェィー s GL_FOG_END param 060708020102050702ィー ィコ06050000ィィ02ィィ02ィェィー e. 000902ィー ィーィョィャィ ィェィ 04ィ 01ィ 02ィー0907 09 0706ィャ06ィエィケ06 ィ 0800ィョィャ02ィェィーィ pname, 08ィ 09ィェ060006 GL_FOG_COLOR. 00 05ィー06ィャ 0905ィョ ツィ 02 params ィョィコィ 04ィ ィー0205ィケ ィェィ ィャィ 0909ィィ09 ィィ04 4-01 ィコ06ィャ0706ィェ02ィェィー 020902ィーィ. 0308ィィ09020102ィャ 0708ィィィャ0208 ィィ09070605ィケ040609ィ ィェィィ07 05ィー060006 05000002ィコィーィ : GLfloat FogColor [ 4 ] = { 0. 5, 0. 5, 0. 5, 1 } ; glenable (GL_FOG) ; glfogi (GL_FOG_MODE,GL_LINEAR) ; glfogf (GL_FOG_START, 2 0. 0 ) ; glfogf (GL_FOG_END, 1 0 0. 0 ) ; glfogfv (GL_FOG_COLOR, FogColor ) ; 5.5. 0806ィェィー080605ィケィェ0402 09060708060904 1) 03060709ィェィィィー02 08ィ 04ィェィィ02ィョ ィャ020301ィョ 0506ィコィ 05ィケィェ04ィャィィ ィィ ィ 0209ィコ06ィェ02 ツィェ06 ィョ01ィ 0502ィェィェ04ィャィィ ィィ09ィー06 ツィェィィィコィ ィャィィ 090902ィーィ. 2) 020507 ツ020006 0905ィョ03ィィィー ィコ06ィャィ ィェ01ィ glcolormaterial? 3) 08ィ ィコ 04ィ 01ィ ィーィケ 070605060302ィェィィ02 ィィ09ィー06 ツィェィィィコィ 090902ィーィ ィーィ ィコィィィャ 06ィ 08ィ 0406ィャ, ツィー06ィ 04 06ィェ 0909020001ィ ィェィ 010601ィィ050907 09 ィー06 ツィコ02 070605060302ィェィィ07 ィェィ ィ 050601ィ ィー020507? 4) 08ィ ィコ 04ィ 01ィ ィーィケ 00ィィィコ09ィィ080609ィ ィェィェ0602 070605060302ィェィィ02 ィィ09ィー06 ツィェィィィコィ 090902ィーィ? 000603ィェ06 05ィィ 04ィ 01ィ 09ィ ィーィケ 070605060302ィェィィ02 ィィ09ィー06 ツィェィィィコィ 06ィーィェ0609ィィィー0205ィケィェ06 0506ィコィ 05ィケィェ0401 ィコ06060801ィィィェィ ィー 06ィ ィイ02ィコィーィ?

135.5. 0806ィェィー080605ィケィェ0402 09060708060904 75 5) 08ィ ィコ 04ィ 01ィ ィーィケ ィコ06ィェィョ09ィェ04ィヲ ィィ09ィー06 ツィェィィィコ 090902ィーィ? 6) 030905ィィ 09 090202ィェ02 09ィコ0506 ツ02ィェ06 06090902ィエ02ィェィィ02, ィェ06 ィェ02ィー ィィ09ィー06 ツィェィィィコ0609 090902ィーィ, ィコィ ィコ06ィヲ 020902ィー ィ ィョ01ィョィー ィィィャ02ィーィケ 06ィ ィイ02ィコィー04?

13

130105ィ 09ィ 6. 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 030601 ィー02ィコ09ィーィョ0806ィヲ ィ ィョ0102ィャ 0706ィェィィィャィ ィーィケ ィィ0406ィ 08ィ 0302ィェィィ02, ィコ06ィー06080602 ィェィ 0106 0607080201020502ィェィェ04ィャ 06ィ 08ィ 0406ィャ ィェィ ィェ0209ィーィィ ィェィ 06ィ ィイ02ィコィー, ィェィ 0708ィィィャ0208, 010507 0708ィィ01ィ ィェィィ07 ィィ05050604ィィィィ 080205ィケ0200ィェ0609ィーィィ 070609020801ィェ0609ィーィィ. 020507 08ィ ィ 06ィー04 09 ィー02ィコ09ィーィョ0806ィヲ 09050201ィョ02ィー 0904070605ィェィィィーィケ 09050201ィョ06ィエィョ06 0706090502010609ィ ィー0205ィケィェ0609ィーィケ 0102ィヲ09ィー09ィィィヲ: 0キ3 0904ィ 08ィ ィーィケ ィィ0406ィ 08ィ 0302ィェィィ02 ィィ 07080206ィ 08ィ 040609ィ ィーィケ 020006 ィコ ィェィョ03ィェ06ィャィョ 000608ィャィ ィーィョ; 0キ3 0702080201ィ ィーィケ ィィ0406ィ 08ィ 0302ィェィィ02 09 OpenGL; 0キ3 06070802010205ィィィーィケ, ィコィ ィコ ィー02ィコ09ィーィョ08ィ ィ ィョ0102ィー ィェィ ィェ0609ィィィーィケ0907 ィェィ 06ィ ィイ02ィコィー ィィ ィコィ ィコ 06ィェィ ィ ィョ0102ィー 09 ィェィィィャ 0904ィ ィィィャ060102ィヲ09ィー090609ィ ィーィケ; 0キ3 09090704ィ ィーィケ ィー02ィコ09ィーィョ08ィョ 09 06ィ ィイ02ィコィー06ィャ. 6.1. 0306010006ィー0609ィコィ ィー02ィコ09ィーィョ0804 020507 ィィ09070605ィケ040609ィ ィェィィ07 ィー02ィコ09ィーィョ0804 ィェ0206ィ 010601ィィィャ06 09ィェィ ツィ 05ィ 04ィ 0008ィョ04ィィィーィケ 09 07ィ ィャ07ィーィケ ィェィョ03ィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02 ィィ 0702080201ィ ィーィケ 020006 OpenGL. 77

1378 0105ィ 09ィ 6. 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 05 ツィィィー0409ィ ィェィィ02 0008ィ 00ィィ ツ0209ィコィィ01 01ィ ィェィェ0401 ィィ04 00ィ ィヲ05ィ ィィ ィィ01 07080206ィ 08ィ 040609ィ ィェィィ02 ィャ0603ィェ06 070806090601ィィィーィケ 0908ィョ ツィェィョ06. 00 0708ィィ05060302ィェィィィィ 09 0708ィィ09020102ィェ ィィ09010601ィェ04ィヲ ィー02ィコ09ィー 00ィョィェィコ02ィィィィ 010507 04ィ 0008ィョ04ィコィィ ィィ0406ィ 08ィ 0302ィェィィ07 ィィ04 00ィ ィヲ05ィ 09 000608ィャィ ィー02 BMP. 000603ィェ06 ィーィ ィコ0302 090609070605ィケ040609ィ ィーィケ0907 00ィョィェィコ02ィィ02ィヲ, 0901060107ィエ02ィヲ 09 090609ィーィ 09 ィ ィィィ 05ィィ06ィー02ィコィィ GLAUX (010507 0202 ィィ09070605ィケ040609ィ ィェィィ07 ィェィ 0106 0106070605ィェィィィー0205ィケィェ06 070601ィコ0506 ツィィィーィケ glaux.lib), ィコ06ィー0608ィ 07 09ィ ィャィ 070806090601ィィィー ィェ0206ィ 010601ィィィャ0402 06070208ィ 02ィィィィ. 06ィー06 00ィョィェィコ02ィィ07 AUX_RGBImageRec* auxdibimageload ( const char * f i l e ) 000102 le ィェィ 0409ィ ィェィィ02 00ィ ィヲ05ィ 09 08ィ 0903ィィ0802ィェィィ02ィャ *.bmp ィィ05ィィ *.dib. 08ィョィェィコ02ィィ07 0906040908ィ ィエィ 02ィー ィョィコィ 04ィ ィー0205ィケ ィェィ 06ィ 05ィ 09ィーィケ 07ィ ィャ07ィーィィ, 000102 0108ィ ィェ07ィー0907 07080206ィ 08ィ 040609ィ ィェィェ0402 01ィ ィェィェ0402. 0308ィィ 09060401ィ ィェィィィィ 06ィ 08ィ 04ィ ィー02ィコ09ィーィョ0804 09 07ィ ィャ07ィーィィ 09050201ィョ02ィー ィョ ツィィィー0409ィ ィーィケ ィョィコィ 040409ィ 02ィャ0402 ィー0802ィ 0609ィ ィェィィ07. 0006-070208090401, 08ィ 04ィャ020804 ィー02ィコ09ィーィョ0804, ィコィ ィコ 0706 000608ィィ0406ィェィーィ 05ィィ, ィーィ ィコ ィィ 0706 090208ィーィィィコィ 05ィィ 01060503ィェ04 0708020109ィーィ 090507ィーィケ 0906ィ 06ィヲ 09ィー020702ィェィィ 010906ィヲィコィィ. 06ィー06 ィー0802ィ 0609ィ ィェィィ02 ィェィ ィコ05ィ 010409ィ 02ィー0907 010507 ィコ06ィャ07ィ ィコィーィェ060006 08ィ 04ィャ02ィエ02ィェィィ07 ィー02ィコ09ィーィョ0804 09 ィー02ィコ09ィーィョ08ィェ06ィヲ 07ィ ィャ07ィーィィ ィィ 0907060906ィ 09ィー09ィョ02ィー 0202 05000002ィコィーィィ09ィェ06ィャィョ ィィ09070605ィケ040609ィ ィェィィ06. 04ィ ィ 06ィーィ ィーィケ ィー0605ィケィコ06 09 ィーィ ィコィィィャィィ ィー02ィコ09ィーィョ08ィ ィャィィ ィコ06ィェ02 ツィェ06 ィェ02ィョ0106ィ ィェ06, 070605ィー06ィャィョ 0706090502 04ィ 0008ィョ04ィコィィ ィィ01 ィェィ 0106 07080206ィ 08ィ 040609ィ ィーィケ. 0604ィャ02ィェ02ィェィィ02 08ィ 04ィャ02080609 ィー02ィコ09ィーィョ0804 ィャ0603ィェ06 070806090209ィーィィ 09 0706ィャ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ィー0902 04ィェィ ツ02ィェィィ07 07ィ 08ィ ィャ02ィー08ィ format 06ィ 04 ツィェ06 ィィ09070605ィケ04ィョ02ィー0907 04ィェィ ツ02ィェィィ02 GL_RGB ィィ05ィィ GL_RGBA, 060708020102050706ィエ0202 000608ィャィ ィー 0108ィ ィェ02ィェィィ07 ィィィェ000608ィャィ 02ィィィィ. 03ィ 08ィ ィャ02ィー0804 widthin, heightin, widhtout, heightout 060708020102050706ィー 08ィ 04ィャ020804 09010601ィェ060006 ィィ 0904010601ィェ060006 ィィ0406ィ 08ィ 0302ィェィィィヲ, ィ 09 0706ィャ06ィエィケ06 typein ィィ typeout 04ィ 01ィ 02ィー0907 ィーィィ07 050502ィャ02ィェィー0609 ィャィ 0909ィィ090609, 08ィ 090706-

136.1. 0306010006ィー0609ィコィ ィー02ィコ09ィーィョ0804 79 05060302ィェィェ0401 0706 ィ 01080209ィ ィャ datain ィィ dataout. 08ィ ィコ ィィ 06ィ 04 ツィェ06, 05ィー06 ィャ060302ィー ィ 04ィーィケ ィーィィ07 GL_UNSIGNED_BYTE, GL_SHORT, GL_INT ィィ ィー.01. 040204ィョ05ィケィーィ ィー 09090602ィヲ 08ィ ィ 06ィー04 00ィョィェィコ02ィィ07 04ィ ィェ0609ィィィー 09 06ィ 05ィ 09ィーィケ 07ィ ィャ07ィーィィ, ィェィ ィコ06ィー0608ィョ06 ィョィコィ 040409ィ 02ィー 07ィ 08ィ ィャ02ィー08 dataout. 0006-09ィー06080401, ィェィ 0106 07080201ィョ09ィャ06ィー0802ィーィケ 0905ィョ ツィ ィヲ, ィコ060001ィ 06ィ ィイ02ィコィー 0706090502 08ィ 09ィー0208ィィ04ィ 02ィィィィ 06ィコィ 040409ィ 02ィー0907 0706 08ィ 04ィャ0208ィ ィャ 04ィェィ ツィィィー0205ィケィェ06 ィャ02ィェィケ0302 ィェィ ィェ0609ィィィャ06ィヲ ィェィ ィェ020006 ィー02ィコ09ィーィョ0804. チ02ィャ ィャ02ィェィケ0302 06ィ ィイ02ィコィー, ィー02ィャ ィャ02ィェィケ0302 01060503ィェィ ィ 04ィーィケ ィェィ ィェ0609ィィィャィ 07 ィェィ ィェ020006 ィー02ィコ09ィーィョ08ィ ィィ 070605ィー06ィャィョ 09090601ィィィー0907 0706ィェ07ィーィィ02 ィョ080609ィェ02ィヲ 0102ィーィ 05ィィ04ィ 02ィィィィ ィー02ィコ09ィーィョ0804 (mipmap). 08ィ 030104ィヲ ィョ08060902ィェィケ 0102ィーィ 05ィィ04ィ 02ィィィィ 04ィ 01ィ 02ィー ィェ02ィコ06ィー06080602 ィィ0406ィ 08ィ 0302ィェィィ02, ィコ06ィー06080602 0709050702ィー0907, ィコィ ィコ 0708ィ 09ィィ0506, ィョィャ02ィェィケ0302ィェィェ06ィヲ 09 0109ィ 08ィ 04ィ ィコ0607ィィ02ィヲ 0608ィィ00ィィィェィ 05ィ. 06ィ ィコ06ィヲ 070601010601 0706040906050702ィー ィョ05ィョ ツ03ィィィーィケ ィコィ ツ0209ィー0906 ィェィ ィェ020902ィェィィ07 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー. 01ィ 0708ィィィャ0208, 010507 ィィ0406ィ 08ィ 0302ィェィィ07 08ィ 04ィャ020806ィャ 2 m チ 2 n ィャ0603ィェ06 070609ィー0806ィィィーィケ max(m, n) + 1 ィョィャ02ィェィケ0302ィェィェ0401 ィィ0406ィ 08ィ 0302ィェィィィヲ, 090606ィー0902ィー09ィー09ィョ06ィエィィ01 08ィ 0405ィィ ツィェ04ィャ ィョ080609ィェ07ィャ 0102ィーィ 05ィィ04ィ 02ィィィィ. 06ィーィィ 0109ィ 05ィーィ 07ィ 09060401ィ ィェィィ07 06ィ 08ィ 04ィ ィー02ィコ09ィーィョ0804 0906 09ィェィョィー0802ィェィェ02ィヲ 07ィ ィャ07ィーィィ OpenGL ィャ0603ィェ06 070806090209ィーィィ 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 void glubuild2dmipmaps (GLenum target, GLint components, GLint width, GLint height, GLenum format, GLenum type, const void * data ) 000102 07ィ 08ィ ィャ02ィー08 target 0106050302ィェ ィ 04ィーィケ 08ィ 0902ィェ GL_TEXTURE_2D. 03ィ 08ィ ィャ02ィー08 components 060708020102050702ィー ィコ0605ィィ ツ0209ィー0906 020902ィー06090401 ィコ06ィャ0706ィェ02ィェィー ィー02ィコ09ィーィョ0804 ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 0609ィェ0609ィェ0402 04ィェィ ツ02ィェィィ07: GL_LUMINANCE 0601ィェィ ィコ06ィャ0706ィェ02ィェィーィ 0708ィコ0609ィーィケ (ィー02ィコ09ィーィョ08ィ ィ ィョ0102ィー ィャ06ィェ06010806ィャィェ06ィヲ); GL_RGB ィコ08ィ 09ィェ04ィヲ, 09ィィィェィィィヲ, 04020502ィェ04ィヲ; GL_RGBA ィコ08ィ 09ィェ04ィヲ, 09ィィィェィィィヲ, 04020502ィェ04ィヲ, ィ 05ィケ00ィ (09ィャ. 07. 7.1). 03ィ 08ィ ィャ02ィー0804 width, height, data 060708020102050706ィー 08ィ 04ィャ020804 ィィ 08ィ 09070605060302ィェィィ02 ィー02ィコ09ィーィョ0804 090606ィー0902ィー09ィー0902ィェィェ06, ィ format ィィ type ィィィャ0206ィー ィ ィェィ 050600ィィ ツィェ04ィヲ 09ィャ040905, ツィー06 ィィ 09 ィコ06ィャィ ィェ0102 gluscaleimage().

1380 0105ィ 09ィ 6. 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 0306090502 0904070605ィェ02ィェィィ07 05ィー06ィヲ ィコ06ィャィ ィェ0104 ィー02ィコ09ィーィョ08ィ ィコ0607ィィ08ィョ02ィー0907 0906 09ィェィョィー0802ィェィェ0606 07ィ ィャ07ィーィケ OpenGL, ィィ 070605ィー06ィャィョ 07ィ ィャ07ィーィケ, 04ィ ィェィィィャィ 02ィャィョ06 ィィ09010601ィェ04ィャ ィィ0406ィ 08ィ 0302ィェィィ02ィャ, ィャ0603ィェ06 06090906ィ 0601ィィィーィケ. 00 OpenGL 010607ィョ09ィコィ 02ィー0907 ィィ09070605ィケ040609ィ ィェィィ02 0601ィェ06ィャ0208ィェ0401 ィー02ィコ09ィーィョ08, ィー06 0209ィーィケ 08ィ 04ィャ0208ィ 1 チ N, 0601ィェィ ィコ06 05ィー06 0909020001ィ ィェィ 0106 ィョィコィ 040409ィ ィーィケ, 04ィ 01ィ 09ィ 07 09 ィコィ ツ0209ィー0902 04ィェィ ツ02ィェィィ07 target ィコ06ィェ09ィーィ ィェィーィョ GL_TEXTURE_1D. 0201ィェ06ィャ0208ィェ0402 ィー02ィコ09ィーィョ0804 ィィ09070605ィケ04ィョ06ィー0907 010609ィーィ ィー06 ツィェ06 080201ィコ06, 070605ィー06ィャィョ ィェ02 ィ ィョ0102ィャ 0609ィーィ ィェィ 0905ィィ09ィ ィーィケ0907 ィェィ 05ィー06ィャ 0706010806ィ ィェ06. 0308ィィ ィィ09070605ィケ040609ィ ィェィィィィ 09 090202ィェ02 ィェ0209ィコ0605ィケィコィィ01 ィー02ィコ09ィーィョ08, 09 OpenGL 0708ィィィャ02ィェ0702ィー0907 070601010601, ィェィ 0706ィャィィィェィ 06ィエィィィヲ 09060401ィ ィェィィ02 0907ィィ09ィコ0609 ィィ0406ィ 08ィ 0302ィェィィィヲ (ィーィ ィコ ィェィ 040409ィ 02ィャ0402 ィー02ィコ09ィーィョ08ィェ0402 06ィ ィイ02ィコィー04). 05ィェィ ツィ 05ィ 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 void glgentextures ( GLsizei n, GLuint * t e x t u r e s ) ィェィ 0106 09060401ィ ィーィケ n ィィ0102ィェィーィィ00ィィィコィ ィー06080609 ィー02ィコ09ィーィョ08, ィコ06ィー06080402 ィ ィョ01ィョィー 04ィ 07ィィ09ィ ィェ04 09 ィャィ 0909ィィ09 textures. 0302080201 ィェィ ツィ 0506ィャ 0607080201020502ィェィィ07 090906ィヲ09ィー09 06 ツ02080201ィェ06ィヲ ィー02ィコ09ィーィョ0804 09050201ィョ02ィー 09010205ィ ィーィケ 0202 ィー02ィコィョィエ02ィヲ (060708ィィ090704ィ ィーィケ07 ィー02ィコ09ィーィョ08ィョ), 09040409ィ 09 ィコ06ィャィ ィェ01ィョ void glbindtexture (GLenum target, GLuint t e x t u r e ) 000102 target ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 04ィェィ ツ02ィェィィ07 GL_TEXTURE_1D ィィ05ィィ GL_TEXTURE_2D, ィ 07ィ 08ィ ィャ02ィー08 texture 0106050302ィェ ィ 04ィーィケ 08ィ 0902ィェ ィィ0102ィェィーィィ00ィィィコィ ィー0608ィョ ィー06ィヲ ィー02ィコ09ィーィョ0804, ィコ ィコ06ィー060806ィヲ ィ ィョ01ィョィー 06ィーィェ0609ィィィーィケ0907 070609050201ィョ06ィエィィ02 ィコ06ィャィ ィェ0104. 020507 ィー060006, ツィー06ィ 04 09 0708060202090902 08ィィ090609ィ ィェィィ07 09010205ィ ィーィケ ィー02ィコィョィエ02ィヲ ィー02ィコ09ィーィョ08ィョ 09 ィェ02ィコ06ィー060804ィャ ィィ0102ィェィーィィ00ィィィコィ ィー060806ィャ, 010609ィーィ ィー06 ツィェ06 060707ィーィケ 09040409ィ ィーィケ ィコ06ィャィ ィェ01ィョ glbindtexture() c 090606ィー0902ィー09ィー09ィョ06ィエィィィャ 04ィェィ - ツ02ィェィィ02ィャ target ィィ texture. 06ィ ィコィィィャ 06ィ 08ィ 0406ィャ, ィコ06ィャィ ィェ01ィ glbindtexture() 09ィコ0506 ツィ 02ィー 080203ィィィャ 09060401ィ ィェィィ07 ィー02ィコ09ィーィョ0804 09 ィィ0102ィェィーィィ00ィィィコィ ィー060806ィャ texture, 020905ィィ ィーィ ィコィ 07 ィー02ィコ09ィーィョ08ィ 02ィエ02 ィェ02 09060401ィ ィェィ, 05ィィィ 06 080203ィィィャ 0202 ィィ09070605ィケ040609ィ ィェィィ07, ィー06 0209ィーィケ 010205ィ 02ィー 05ィーィョ ィー02ィコ09ィーィョ08ィョ ィー02ィコィョィエ02ィヲ. 06ィ ィコ ィコィ ィコ ィェ02 090907ィコィ 07 ィ 0707ィ 08ィ ィーィョ08ィ ィャ060302ィー 06070208ィィ080609ィ ィーィケ ィー02ィコ09ィーィョ08ィ ィャィィ ィ 0605ィケ03060006 08ィ 04ィャ0208ィ, 02020502090606ィ 08ィ 04ィェ06 060008ィ ィェィィ ツィィィーィケ 08ィ 04ィャ020804 ィー02ィコ09ィーィョ0804 0106 256 チ256 ィィ05ィィ 512 チ512 07ィィィコ09020502ィヲ. 02ィーィャ02ィーィィィャ, ツィー06 ィィ09070605ィケ040609ィ ィェィィ02 ィェ02ィ 0605ィケ03ィィ01 ィー02ィコ09ィーィョ08 0706090403ィ 02ィー 05000002ィコィーィィ09ィェ0609ィーィケ 0708060008ィ ィャィャ04.

136.2. 01ィ 05060302ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー04 81 6.2. 01ィ 05060302ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー04 0308ィィ ィェィ 05060302ィェィィィィ ィー02ィコ09ィーィョ0804, ィコィ ィコ ィョ0302 ィョ0706ィャィィィェィ 050609ィケ, ィェィ 0106 ィョ ツィィィー0409ィ ィーィケ 0905ィョ ツィ ィヲ, ィコ060001ィ 08ィ 04ィャ020804 ィー02ィコ09ィーィョ0804 06ィー05ィィ ツィ 06ィー0907 06ィー 06ィコ06ィェィェ0401 08ィ 04ィャ02080609 06ィ ィイ02ィコィーィ, ィェィ ィコ06ィー060804ィヲ 06ィェィ ィェィ ィコ05ィ 010409ィ 02ィー0907. 0308ィィ 05ィー06ィャ 090604ィャ0603ィェ06 ィコィ ィコ 08ィ 09ィー070302ィェィィ02, ィーィ ィコ ィィ 0903ィ ィーィィ02 ィィ0406ィ 08ィ 0302ィェィィ07, ィィ ィー06, ィコィ ィコ ィ ィョ01ィョィー 070806090601ィィィーィケ0907 05ィーィィ 07080206ィ 08ィ 040609ィ ィェィィ07, ィャ060302ィー 090208ィケ0204ィェ06 07060905ィィ07ィーィケ ィェィ ィコィ ツ0209ィー0906 070609ィー080602ィェィェ060006 ィィ0406ィ 08ィ 0302ィェィィ07. 020507 0607080201020502ィェィィ07 070605060302ィェィィ07 ィー06 ツィコィィ ィェィ ィー02ィコ09ィーィョ0802 ィィ09070605ィケ04ィョ02ィー0907 07ィ 08ィ ィャ02ィー08ィィ ツ0209ィコィ 07 09ィィ09ィー02ィャィ ィコ06060801ィィィェィ ィー (s, t), 0708ィィ ツ02ィャ 04ィェィ ツ02ィェィィ07 s ィィ t ィェィ 01060107ィー0907 09 06ィー080204ィコ02 [0, 1] (09ィャ. 08ィィ09ィョィェ06ィコ 6.1) 04ィィ09. 6.1. 0602ィコ09ィーィョ08ィェ0402 ィコ06060801ィィィェィ ィー04 020507 ィィ04ィャ02ィェ02ィェィィ07 08ィ 0405ィィ ツィェ0401 07ィ 08ィ ィャ02ィー080609 ィー02ィコ09ィーィョ0804 0708ィィィャ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 060708020102050702ィー, ィコィ ィコ0602 090906ィヲ09ィー0906 ィ ィョ0102ィャ ィャ02ィェ07ィーィケ, ィ 09 0706ィャ06ィエィケ06 param ィィ05ィィ params ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー0907 ィェ06090602 04ィェィ - ツ02ィェィィ02. 000604ィャ0603ィェ0402 04ィェィ ツ02ィェィィ07 pname: GL_TEXTURE_MIN_FILTER 07ィ 08ィ ィャ02ィー08 param 060708020102-

1382 0105ィ 09ィ 6. 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 050702ィー 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 ィ ィョ0102ィー ィィ09070605ィケ040609ィ ィーィケ0907 010507 0903ィ ィーィィ07 ィー02ィコ09ィーィョ0804. 0308ィィ 04ィェィ ツ02ィェィィィィ GL_NEAREST ィ ィョ0102ィー ィィ09070605ィケ040609ィ ィーィケ0907 0601ィィィェ (ィ 05ィィ03ィ ィヲ03ィィィヲ), ィ 0708ィィ 04ィェィ ツ02ィェィィィィ GL_LINEAR ツ02ィー040802 ィ 05ィィ03ィ ィヲ03ィィ01 050502ィャ02ィェィーィ ィー02ィコ09ィーィョ0804. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: GL_LINEAR. GL_TEXTURE_MAG_FILTER 07ィ 08ィ ィャ02ィー08 param 060708020102050702ィー 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 ィ ィョ0102ィー ィィ09070605ィケ040609ィ ィーィケ0907 010507 ィョ090205ィィ ツ02ィェィィ07 (08ィ 09ィー070302ィェィィ07) ィー02ィコ09ィーィョ0804. 0308ィィ 04ィェィ ツ02ィェィィィィ GL_NEAREST ィ ィョ0102ィー ィィ09070605ィケ040609ィ ィーィケ0907 0601ィィィェ (ィ 05ィィ03ィ ィヲ03ィィィヲ), ィ 0708ィィ 04ィェィ ツ02ィェィィィィ GL_LINEAR ツ02ィー040802 ィ 05ィィ03ィ ィヲ03ィィ01 050502ィャ02ィェィーィ ィー02ィコ09ィーィョ0804. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: GL_LINEAR. GL_TEXTURE_WRAP_S 07ィ 08ィ ィャ02ィー08 param ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー 04ィェィ ツ02ィェィィ02 ィコ06060801ィィィェィ ィー04 s, 020905ィィ 06ィェ06 ィェ02 09010601ィィィー 09 06ィー08020406ィコ [0, 1]. 0308ィィ 04ィェィ ツ02ィェィィィィ GL_REPEAT 020205ィ 07 ツィ 09ィーィケ s 06ィーィ 08ィ 090409ィ 02ィー0907, ィィ 09 080204ィョ05ィケィーィ ィー02 ィィ0406ィ 08ィ 0302ィェィィ02 08ィ 04ィャィェ0603ィ 02ィー0907 0706 070609020801ィェ0609ィーィィ. 0308ィィ 04ィェィ ツ02ィェィィィィ GL_CLAMP ィィ09070605ィケ04ィョ06ィー0907 ィコ08ィ 02090402 04ィェィ ツ02ィェィィ07 (0 ィィ05ィィ 1), ツィー06 ィョ0106ィ ィェ06 ィィ09070605ィケ040609ィ ィーィケ, 020905ィィ ィェィ 06ィ ィイ02ィコィー ィェィ ィコ05ィ 010409ィ 02ィー0907 0601ィィィェ 06ィ 08ィ 04. 05ィェィ ツ02ィェィィ02 0706 ィョィャ0605 ツィ ィェィィ06: GL_REPEAT. GL_TEXTURE_WRAP_T ィ ィェィ 050600ィィ ツィェ06 070802010401ィョィエ02ィャィョ 04ィェィ - ツ02ィェィィ06, ィー0605ィケィコ06 010507 ィコ06060801ィィィェィ ィー04 t. 0609070605ィケ040609ィ ィェィィ02 080203ィィィャィ GL_NEAREST 0706090403ィ 02ィー 09ィコ06080609ィーィケ ィェィ 05060302ィェィィ07 ィー02ィコ09ィーィョ0804, 0601ィェィ ィコ06 0708ィィ 05ィー06ィャ 09ィェィィ03ィ 02ィー0907 ィコィ ツ0209ィー0906, ィーィ ィコ ィコィ ィコ, 09 06ィー05ィィ ツィィ02 06ィー GL_LINEAR, ィィィェィー02080706050702ィィ07 ィェ02 070806ィィ04090601ィィィー0907. 020507 ィー060006 ツィー06ィ 04 06070802010205ィィィーィケ, ィコィ ィコ ィー02ィコ09ィーィョ08ィ ィ ィョ0102ィー 0904ィ ィィィャ060102ィヲ09ィー090609ィ ィーィケ 09 ィャィ ィー0208ィィィ 0506ィャ, ィィ04 ィコ06ィー0608060006 09010205ィ ィェ 06ィ ィイ02ィコィー, ィィ09070605ィケ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 )

136.2. 01ィ 05060302ィェィィ02 ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー04 83 03ィ 08ィ ィャ02ィー08 target 0106050302ィェ ィ 04ィーィケ 08ィ 0902ィェ GL_TEXTURE_ENV, ィ 09 ィコィ ツ0209ィー0902 pname 08ィ 0909ィャ06ィー08ィィィャ ィー0605ィケィコ06 0601ィェ06 04ィェィ ツ02ィェィィ02 GL_TEXTURE_ENV_MODE, ィコ06ィー06080602 0708ィィィャ02ィェ0702ィー0907 ィェィ ィィィ 06050202 ツィ 09ィー06. 01ィ ィィィ 06050202 ツィ 09ィー06 ィィ09070605ィケ04ィョ02ィャ0402 04ィェィ ツ02ィェィィ07 07ィ 08ィ ィャ02ィー08ィ param: GL_MODULATE ィコ06ィェ02 ツィェ04ィヲ 020902ィー ィェィ 010601ィィィー0907 ィコィ ィコ 070806ィィ0409020102ィェィィ02 020902ィーィ ィー06 ツィコィィ ィェィ 070609020801ィェ0609ィーィィ ィィ 020902ィーィ 090606ィー0902ィー09ィー09ィョ06ィエ02ィヲ 02ィヲ ィー06 ツィコィィ ィェィ ィー02ィコ09ィーィョ0802. GL_REPLACE 09 ィコィ ツ0209ィー0902 ィコ06ィェ02 ツィェ060006 020902ィーィ ィィ09070605ィケ04ィョ02ィー0907 020902ィー ィー06 ツィコィィ ィェィ ィー02ィコ09ィーィョ0802. 05050201ィョ06ィエィィィヲ 0708ィィィャ0208 ィコ0601ィ 0102ィャ06ィェ09ィー08ィィ08ィョ02ィー 06ィ ィエィィィヲ 070601010601 ィコ 09060401ィ ィェィィ06 ィー02ィコ09ィーィョ08: /* ィェィョ03ィェ0602 ィェィ ィャ ィコ0605ィィ ツ0209ィー0906 ィー02ィコ09ィーィョ08 */ #define NUM_TEXTURES 10 /* ィィ0102ィェィーィィ00ィィィコィ ィー060804 ィー02ィコ09ィーィョ08 */ int TextureIDs [NUM_TEXTURES] ; /* 06ィ 08ィ 04 ィー02ィコ09ィーィョ0804 */ AUX_RGBImageRec * pimage ;... /* 1) 070605ィョ ツィ 02ィャ ィィ0102ィェィーィィ00ィィィコィ ィー060804 ィー02ィコ09ィーィョ08 */ glgentextures (NUM_TEXTURES, TextureIDs ) ; /* 2) 0904ィ ィィ08ィ 02ィャ ィー02ィコ09ィーィョ08ィョ 010507 ィャ0601ィィ00ィィィコィ 02ィィィィ 07ィ 08ィ ィャ02ィー080609 */ glbindtexture ( TextureIDs [ i ] ) ; /* 0<=i<NUM_TEXTURES*/ /* 3) 04ィ 0008ィョ03ィ 02ィャ ィー02ィコ09ィーィョ08ィョ. 04ィ 04ィャ020804 ィー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) 0702080201ィ 02ィャ ィー02ィコ09ィーィョ08ィョ OpenGL ィィ 04ィ 01ィ 02ィャ 07ィ 08ィ ィャ02ィー0804 */

1384 0105ィ 09ィ 6. 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 /* 090408ィ 09ィェィィ09ィ ィェィィ02 0706 ィ ィ ィヲィーィョ */ 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ィ 050702ィャ ィィ09010601ィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02. */ f r e e ( Texture ) ; } else Error ( ) ; 6.3. 0602ィコ09ィーィョ08ィェ0402 ィコ06060801ィィィェィ ィー04 0302080201 ィェィ ィェ020902ィェィィ02ィャ ィー02ィコ09ィーィョ0804 ィェィ 06ィ ィイ02ィコィー ィェ0206ィ 010601ィィィャ06 ィョ09ィーィ ィェ0609ィィィーィケ 090606ィー0902ィー09ィー09ィィ02 ィャ020301ィョ ィー06 ツィコィ ィャィィ ィェィ 070609020801ィェ0609ィーィィ 06ィ ィイ02ィコィーィ ィィ ィェィ 09ィ ィャ06ィヲ ィー02ィコ09ィーィョ0802. 05ィ 01ィ 09ィ ィーィケ 05ィー06 090606ィー0902ィー09ィー09ィィ02 ィャ0603ィェ06 0109ィョィャ07 ィャ02ィー0601ィ ィャィィ: 06ィー010205ィケィェ06 010507 ィコィ 030106ィヲ 09020803ィィィェ04 ィィ05ィィ 0908ィ 04ィョ 010507 09090201 09020803ィィィェ, 04ィ 01ィ 09

136.3. 0602ィコ09ィーィョ08ィェ0402 ィコ06060801ィィィェィ ィー04 85 07ィ 08ィ ィャ02ィー0804 09070202ィィィ 05ィケィェ06ィヲ 00ィョィェィコ02ィィィィ 06ィー06ィ 08ィ 0302ィェィィ07. 0302080904ィヲ ィャ02ィー0601 0802ィ 05ィィ04ィョ02ィー0907 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ01 void gltexcoord [ 1 2 3 4 ] [ s i f d ] ( type coord ) void gltexcoord [ 1 2 3 4 ] [ s i f d ] v ( type * coord ) チィ ィエ02 0909020006 ィィ09070605ィケ04ィョ06ィー0907 ィコ06ィャィ ィェ0104 gltexcoord2*(type s, type t), 04ィ 01ィ 06ィエィィ02 ィー02ィコィョィエィィ02 ィコ06060801ィィィェィ ィー04 ィー02ィコ09ィーィョ0804. 0306ィェ07ィーィィ02 ィー02ィコィョィエィィ01 ィコ06060801ィィィェィ ィー ィー02ィコ09ィーィョ0804 ィ ィェィ 050600ィィ ツィェ06 0706ィェ07ィーィィ07ィャ ィー02ィコィョィエ020006 020902ィーィ ィィ ィー02ィコィョィエ02ィヲ ィェ0608ィャィ 05ィィ ィィ 0709050702ィー0907 ィ ィー08ィィィ ィョィー06ィャ 09020803ィィィェ04. 0201ィェィ ィコ06 01ィ 0302 010507 ィコィョィ ィ ィェィ 0106030102ィェィィ02 090606ィー0902ィー09ィー09ィョ06ィエィィ01 ィコ06060801ィィィェィ ィー ィー02ィコ09ィーィョ0804 0709050702ィー0907 0106090605ィケィェ06 ィー08ィョ010602ィャィコィィィャ 04ィ ィェ07ィーィィ02ィャ, 070605ィー06ィャィョ 09 ィ ィィィ 05ィィ06ィー02ィコ02 GLU 0706ィャィィィャ06 ィコ06ィャィ ィェ01, 07080609060107ィエィィ01 070609ィー080602ィェィィ02 ィーィ ィコィィ01 0708ィィィャィィィーィィ090609 ィコィ ィコ 09000208ィ, 02ィィ05ィィィェ0108 ィィ 01ィィ09ィコ, 07080201ィョ09ィャ06ィー0802ィェ06 ィーィ ィコ0302 ィェィ 05060302ィェィィ02 ィェィ ィェィィ01 ィー02ィコ09ィーィョ08. 020507 05ィー060006 010609ィーィ ィー06 ツィェ06 09040409ィ ィーィケ ィコ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ィ 010409ィ ィーィケ0907 ィェィ 0708ィィィャィィィーィィ09. 00ィー060806ィヲ ィャ02ィー0601 0802ィ 05ィィ04ィョ02ィー0907 09 0706ィャ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 060708020102050702ィー 010507 ィコィ ィコ06ィヲ ィコ06060801ィィィェィ ィー04 04ィ 01ィ 02ィー0907 000608ィャィョ05ィ, ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 04ィェィ ツ02ィェィィ02 GL_S, GL_T; pname ィャ060302ィー ィ 04ィーィケ 08ィ 0902ィェ 0601ィェ06ィャィョ ィィ04 09050201ィョ06ィエィィ01 04ィェィ ツ02ィェィィィヲ: GL_TEXTURE_GEN_MODE 04ィ 01ィ 02ィー 00ィョィェィコ02ィィ06 010507 ィェィ 05060302ィェィィ07 ィー02ィコ09ィーィョ0804. 00 05ィー06ィャ 0905ィョ ツィ 02 ィ 0800ィョィャ02ィェィー param 0708ィィィェィィィャィ 02ィー 04ィェィ ツ02ィェィィ07: GL_OBJECT_LINEAR 04ィェィ ツ02ィェィィ02 090606ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィー02ィコ09ィーィョ08ィェ06ィヲ ィコ06060801ィィィェィ ィー04 060708020102050702ィー0907 08ィ 0909ィー0607ィェィィ02ィャ 0106

1386 0105ィ 09ィ 6. 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 07050609ィコ0609ィーィィ, 04ィ 01ィ 09ィ 02ィャ06ィヲ 09 0706ィャ06ィエィケ06 04ィェィ ツ02ィェィィ07 pname GL_OBJECT_PLANE (09ィャ. ィェィィ0302). 080608ィャィョ05ィ 090400050701ィィィー 09050201ィョ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 000102 g 090606ィー0902ィー09ィー09ィョ06ィエィ 07 ィー02ィコ09ィーィョ08ィェィ 07 ィコ06060801ィィィェィ ィーィ (s ィィ05ィィ p), x, y, z, w ィコ06060801ィィィェィ ィー04 090606ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィー06 ツィコィィ. x p, y p, z p, w p ィコ06050000ィィ02ィィ02ィェィー04 ィョ08ィ 09ィェ02ィェィィ07 07050609ィコ0609ィーィィ. 00 000608ィャィョ0502 ィィ09070605ィケ04ィョ06ィー0907 ィコ06060801ィィィェィ ィー04 06ィ ィイ02ィコィーィ. GL_EYE_LINEAR ィ ィェィ 050600ィィ ツィェ06 GL_OBJECT_LINEAR, ィー0605ィケィコ06 09 000608ィャィョ0502 ィィ09070605ィケ04ィョ06ィー0907 09ィィ0106090402 ィコ06060801ィィィェィ ィー04. 06.02. ィコ06060801ィィィェィ ィー04 ィー02ィコ09ィーィョ0804 06ィ ィイ02ィコィーィ 09 05ィー06ィャ 0905ィョ ツィ 02 04ィ 09ィィ0907ィー 06ィー 070605060302ィェィィ07 05ィー060006 06ィ ィイ02ィコィーィ. GL_SPHERE_MAP 0706040906050702ィー 05ィャィョ05ィィ080609ィ ィーィケ 06ィー08ィ 0302ィェィィ02 06ィー 070609020801ィェ0609ィーィィ 06ィ ィイ02ィコィーィ. 0602ィコ09ィーィョ08ィ ィコィ ィコ ィ 04 0606ィ 0608ィ ツィィ09ィ 02ィー090707 0906ィコ08ィョ00 06ィ ィイ02ィコィーィ. 020507 01ィ ィェィェ060006 ィャ02ィー0601ィ ィィ09070605ィケ04ィョ06ィー0907 09ィィ0106090402 ィコ06060801ィィィェィ ィー04 ィィ ィェ0206ィ 010601ィィィャ06 04ィ 01ィ ィェィィ02 ィェ0608ィャィ 0502ィヲ. GL_OBJECT_PLANE 0706040906050702ィー 04ィ 01ィ ィーィケ 07050609ィコ0609ィーィケ, 08ィ 0909ィー0607ィェィィ02 0106 ィコ06ィー060806ィヲ ィ ィョ0102ィー ィィ09070605ィケ040609ィ ィーィケ0907 0708ィィ 0002ィェ0208ィ 02ィィィィ ィコ06060801ィィィェィ ィー, 020905ィィ ィョ09ィーィ ィェ06090502ィェ 080203ィィィャ GL_OBJECT_LINEAR. 00 05ィー06ィャ 0905ィョ ツィ 02 07ィ 08ィ ィャ02ィー08 params 0709050702ィー0907 ィョィコィ 04ィ ィー020502ィャ ィェィ ィャィ 0909ィィ09 ィィ04 ツ02ィー04080201 ィコ06050000ィィ02ィィ02ィェィー0609 ィョ08ィ 09ィェ02ィェィィ07 07050609ィコ0609ィーィィ. GL_EYE_PLANE ィ ィェィ 050600ィィ ツィェ06 070802010401ィョィエ02ィャィョ 04ィェィ ツ02ィェィィ06. 0306040906050702ィー 04ィ 01ィ ィーィケ 07050609ィコ0609ィーィケ 010507 080203ィィィャィ GL_EYE_LINEAR. 020507 ィョ09ィーィ ィェ0609ィコィィ ィ 09ィー06ィャィ ィーィィ ツ0209ィコ060006 080203ィィィャィ 04ィ 01ィ ィェィィ07 ィー02ィコ09ィーィョ08ィェ0401 ィコ06060801ィィィェィ ィー ィェ0206ィ 010601ィィィャ06 09040409ィ ィーィケ ィコ06ィャィ ィェ01ィョ glenable 09 07ィ 08ィ ィャ02ィー0806ィャ GL_TEXTURE_GEN_S ィィ05ィィ GL_TEXTURE_GEN_P. 0308060008ィ ィャィャィ, ィィ09070605ィケ04ィョ06ィエィ 07 ィェィ 05060302ィェィィ02 ィー02ィコ09ィーィョ0804 ィィ ィ ィェィィィャィ 02ィィ06, 0708ィィ09020102ィェィ 09 0708ィィ05060302ィェィィィィ 09.

136.4. 0806ィェィー080605ィケィェ0402 09060708060904 87 6.4. 0806ィェィー080605ィケィェ0402 09060708060904 1) チィー06 ィーィ ィコ0602 ィー02ィコ09ィーィョ08ィ ィィ 010507 ツ020006 ィィ09070605ィケ04ィョ06ィー0907 ィー02ィコ09ィーィョ0804? 2) チィー06 ィーィ ィコ0602 ィー02ィコ09ィーィョ08ィェ0402 ィコ06060801ィィィェィ ィー04 ィィ ィコィ ィコ 04ィ 01ィ ィーィケ ィィ01 010507 06ィ ィイ02ィコィーィ? 3) 08ィ ィコ06ィヲ ィャ02ィー0601 0904ィ ィィィャ060102ィヲ09ィー09ィィ07 09 ィャィ ィー0208ィィィ 0506ィャ ィェィョ03ィェ06 ィィ09070605ィケ040609ィ ィーィケ, 020905ィィ ィー02ィコ09ィーィョ08ィ 0708020109ィーィ 09050702ィー 0906ィ 06ィヲ ィコィ 08ィーィィィェィョ, 09ィィ0907ィエィョ06 ィェィ 09ィー02ィェ02 (GL_MODULATE, GL_REPLACE)? 4) 03020802 ツィィ0905ィィィー02 ィィ04090209ィーィェ0402 09ィ ィャ ィャ02ィー060104 0002ィェ0208ィ 02ィィィィ ィー02ィコ09ィーィョ08ィェ0401 ィコ06060801ィィィェィ ィー 09 OpenGL. 5) 020507 ツ020006 ィィ09070605ィケ04ィョ06ィー0907 ィョ080609ィェィィ 0102ィーィ 05ィィ04ィ 02ィィィィ ィー02ィコ09ィーィョ0804 (mipmapping)? 6) チィー06 ィーィ ィコ0602 080203ィィィャ04 00ィィ05ィケィー08ィ 02ィィィィ ィー02ィコ09ィーィョ0804 ィィ ィコィ ィコ 04ィ 01ィ ィーィケ ィィ01 09 OpenGL?

13

130105ィ 09ィ 7. 02070208ィ 02ィィィィ 09 07ィィィコ09020507ィャィィ 0306090502 07080609020102ィェィィ07 09090201 06070208ィ 02ィィィヲ 0706 07080206ィ 08ィ 040609ィ ィェィィ06 ィコ06060801ィィィェィ ィー 09020803ィィィェ, 0904 ツィィ090502ィェィィ07 020902ィーィ ィィ ィー.07., OpenGL 07020802010601ィィィー ィコ 05ィーィ 07ィョ 08ィ 09ィー0208ィィ04ィ 02ィィィィ, ィェィ ィコ06ィー060806ィャ 070806ィィ09010601ィィィー 08ィ 09ィー0208ィィ04ィ 02ィィ07 09090201 0708ィィィャィィィーィィ090609, ィェィ 05060302ィェィィ02 ィー02ィコ09ィーィョ0804, ィェィ 05060302ィェィィ02 05000002ィコィーィ ィーィョィャィ ィェィ. 020507 ィコィ 0301060006 0708ィィィャィィィーィィ09ィ 080204ィョ05ィケィーィ ィー06ィャ 05ィー060006 07080602020909ィ 0709050702ィー0907 04ィ ィェィィィャィ 02ィャィ 07 ィィィャ 09 ィ ィョ00020802 ィコィ 0108ィ 06ィ 05ィ 09ィーィケ, ィコィ 030106ィャィョ 07ィィィコ09020506 05ィー06ィヲ 06ィ 05ィ 09ィーィィ 0708ィィ07ィィ090409ィ 02ィー0907 020902ィー ィィ 04ィェィ ツ02ィェィィ02 0005ィョィ ィィィェ04. OpenGL ィィ09070605ィケ04ィョ02ィー 05ィーィョ ィィィェ000608ィャィ 02ィィ06, ツィー06ィ 04 04ィ 07ィィ09ィ ィーィケ 06ィ ィェ06090502ィェィェ0402 01ィ ィェィェ0402 09 ィ ィョ000208 ィコィ 0108ィ. 020507 05ィー060006 OpenGL ィィィャ0202ィー ィェ02 ィー0605ィケィコ06 06ィー010205ィケィェ04ィヲ ィコ06ィェ0902ィヲ0208 06ィ 08ィ ィ 06ィーィコィィ 07ィィィコ09020502ィヲ, ィェ06 ィィ ィェ0209ィコ0605ィケィコ06 0106070605ィェィィィー0205ィケィェ0401 ィ ィョ0002080609 08ィ 0405ィィ ツィェ060006 ィェィ 04ィェィ ツ02ィェィィ07. 06ィー06 0706040906050702ィー 0708060008ィ ィャィャィィ09ィーィョ 00ィィィ ィコ06 ィコ06ィェィー080605ィィ080609ィ ィーィケ 07080602020909 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ ィェィ 09ィ ィャ06ィャ ィェィィ04ィコ06ィャ ィョ080609ィェ02. 0108ィ 00ィィ ツ0209ィコィ 07 ィ ィィィ 05ィィ06ィー02ィコィ OpenGL 07060101020803ィィ09ィ 02ィー 08ィ ィ 06ィーィョ 0906 09050201ィョ06ィエィィィャィィ ィ ィョ000208ィ ィャィィ: 0キ3 ィェ0209ィコ0605ィケィコ06 ィ ィョ0002080609 020902ィーィ ; 0キ3 ィ ィョ000208 0005ィョィ ィィィェ04; 0キ3 ィ ィョ000208-ィェィ ィコ0607ィィィー0205ィケ (ィ ィコィコィョィャィョ0507ィー0608); 89

1390 0105ィ 09ィ 7. 02070208ィ 02ィィィィ 09 07ィィィコ09020507ィャィィ 0キ3 ィ ィョ000208 ィャィ 09ィコィィ. 0108ィョ0707ィ ィ ィョ0002080609 020902ィーィ 09ィコ0506 ツィ 02ィー ィ ィョ000208 ィコィ 0108ィ, ィェ06 ィーィ ィコィィ01 ィ ィョ0002080609 ィャ060302ィー ィ 04ィーィケ ィェ0209ィコ0605ィケィコ06. 0308ィィ ィィ09070605ィケ040609ィ ィェィィィィ 010906ィヲィェ06ィヲ ィ ィョ000208ィィ04ィ 02ィィィィ 000609060807ィー 06 08ィ ィ 06 ツ02ィャ (front) ィィ 0006ィェ060906ィャ (back) ィ ィョ000208ィ 01. 08ィ ィコ 0708ィ 09ィィ0506, 09 0006ィェ060906ィャ ィ ィョ00020802 0708060008ィ ィャィャィ 09060401ィ 02ィー ィィ0406ィ 08ィ 0302ィェィィ02, ィコ06ィー06080602 04ィ ィー02ィャ 08ィ 0406ィャ ィコ0607ィィ08ィョ02ィー0907 09 08ィ ィ 06 ツィィィヲ ィ ィョ000208. 01ィ 05ィコ08ィ ィェ02 ィャ060302ィー 07060709ィィィーィケ0907 ィィィェ000608ィャィ 02ィィ07 ィー0605ィケィコ06 ィィ04 ィ ィョ0002080609 020902ィーィ. 09ィョ000208 0005ィョィ ィィィェ04 ィィ09070605ィケ04ィョ02ィー0907 010507 ィョ01ィ 0502ィェィィ07 ィェ0209ィィ01ィィィャ0401 070609020801ィェ0609ィー02ィヲ ィィ 070807ィャィ 07 08ィ ィ 06ィーィ 09 ィェィィィャ ィー0802ィ ィョ02ィー0907 ィコ08ィ ィヲィェ02 080201ィコ06. 09ィョ000208-ィェィ ィコ0607ィィィー0205ィケ ィャ0603ィェ06 0708ィィィャ02ィェ07ィーィケ 010507 08ィ 0405ィィ ツィェ0401 06070208ィ 02ィィィヲ. 0906050202 0706010806ィ ィェ06 08ィ ィ 06ィーィ 09 ィェィィィャ 0607ィィ09ィ ィェィ 09 08ィ 0401020502 7.2. 09ィョ000208 ィャィ 09ィコィィ ィィ09070605ィケ04ィョ02ィー0907 010507 000608ィャィィ080609ィ ィェィィ07 07ィィィコ090205ィケィェ0401 ィャィ 0906ィコ (ィー08ィ 00ィ 0802ィー0609), 0905ィョ03ィ ィエィィ01 010507 0904080204ィ ィェィィ07 ィィ04 06ィ ィエ020006 ィャィ 0909ィィ09ィ ィー0201 07ィィィコ09020502ィヲ, ィコ06ィー06080402 09050201ィョ02ィー 0904090209ィーィィ ィェィ 05ィコ08ィ ィェ. 09ィョ000208 ィャィ 09ィコィィ ィィ 08ィ ィ 06ィーィ 09 ィェィィィャ ィ 06050202 0706010806ィ ィェ06 08ィ 0909ィャ06ィー0802ィェ04 09 08ィ 04010205ィ 01 7.3, 8.2 ィィ 8.3. 7.1. 05ィャ0203ィィ09ィ ィェィィ02 ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ 0708060408ィ ツィェ0609ィーィケ 04ィ 04ィェ0606ィ 08ィ 04ィェ0402 0708060408ィ ツィェ0402 06ィ ィイ02ィコィー04 09ィー02ィコ05ィ, 0708060408ィ ツィェィ 07 070609ィョ01ィ ィィ ィー.01. ツィ 09ィー06 0909ィー0802 ツィ 06ィー0907 09 0802ィ 05ィケィェ0609ィーィィ, 070605ィー06ィャィョ 09ィ 03ィェ06 ィョィャ02ィーィケ 09060401ィ 09ィ ィーィケ ィーィ ィコィィ02 06ィ ィイ02ィコィー04 09 ィィィェィー0208ィ ィコィーィィ09ィェ06ィヲ 0008ィ 00ィィィコ02. OpenGL 070802010609ィーィ 09050702ィー 0708060008ィ ィャィャィィ09ィーィョ ィャ0201ィ ィェィィ04ィャ 08ィ ィ 06ィー04 09 070605ィョ0708060408ィ ツィェ04ィャィィ 06ィ ィイ02ィコィーィ ィャィィ, ィコ06ィー060804ィヲ ィィ ィ ィョ0102ィー ィコ08ィ ィーィコ06 0607ィィ09ィ ィェ 09 05ィー06ィャ 08ィ 0401020502. 0308060408ィ ツィェ0609ィーィケ 0802ィ 05ィィ04ィョ02ィー0907 09 0706ィャ06ィエィケ06 09070202ィィィ 05ィケィェ060006 080203ィィィャィ 09ィャ0203ィィ09ィ ィェィィ07 020902ィー0609 (blending). 0805000608ィィィーィャ 09ィャ0203ィィ09ィ ィェィィ07 ィコ06ィャィ ィィィェィィ08ィョ02ィー 020902ィーィ ィーィ ィコ ィェィ 040409ィ 02ィャ0401 0901060107ィエィィ01 07ィィィコ09020502ィヲ (ィー.02. 06ィコィ ィェ01ィィ01ィ ィー060907 ィェィ 0706ィャ02ィエ02ィェィィ02 09 ィ ィョ000208 ィコィ 0108ィ ) 09 020902ィーィ ィャィィ 090606ィー0902ィー09ィー09ィョ06ィエィィ01 07ィィィコ09020502ィヲ, ィョ0302 0108ィ ィェ07ィエィィ010907 09 ィ ィョ00020802. 020507 09ィャ0203ィィ09ィ ィェィィ07 ィィ09070605ィケ04ィョ02ィー0907 ツ02ィー090208ィーィ 07 ィコ06ィャ0706ィェ02ィェィーィ 020902ィーィ ィ 05ィケ00ィ -ィコ06ィャ0706ィェ02ィェィーィ,

137.1. 05ィャ0203ィィ09ィ ィェィィ02 ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ 0708060408ィ ツィェ0609ィーィケ 91 070605ィー06ィャィョ 05ィー06ィー 080203ィィィャ ィェィ 040409ィ 06ィー 02ィエ02 ィ 05ィケ00ィ -09ィャ0203ィィ09ィ ィェィィ02ィャ. 0308060008ィ ィャィャィ ィャ060302ィー ィョ0708ィ 090507ィーィケ ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ06 ィ 05ィケ00ィ -ィコ06ィャ0706ィェ02ィェィー04 ィー06 ツィェ06 ィーィ ィコ 0302, ィコィ ィコ ィィ ィィィェィー02ィェ09ィィ09ィェ0609ィーィケ06 0609ィェ0609ィェ0401 020902ィー0609, ィー.02. 04ィ 01ィ 09ィ ィーィケ 04ィェィ ツ02ィェィィ02 ィィィェィー02ィェ09ィィ09ィェ0609ィーィィ 010507 ィコィ 0301060006 07ィィィコ09020507 ィィ05ィィ ィコィ 030106ィヲ 09020803ィィィェ04 0708ィィィャィィィーィィ09ィ. 040203ィィィャ 09ィコ0506 ツィ 02ィー0907 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 glenable(gl_blend). 02070802010205ィィィーィケ 07ィ 08ィ ィャ02ィー0804 09ィャ0203ィィ09ィ ィェィィ07 ィャ0603ィェ06 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104: void glblendfunc (enum src,enum dst ) 03ィ 08ィ ィャ02ィー08 src 060708020102050702ィー ィコィ ィコ 070605ィョ ツィィィーィケ ィコ06050000ィィ02ィィ02ィェィー k 1 ィィ09010601ィェ060006 020902ィーィ 07ィィィコ09020507, a dst 04ィ 01ィ 02ィー 0907060906ィ 070605ィョ ツ02ィェィィ07 ィコ06050000ィィ02ィィ02ィェィーィ k 2 010507 020902ィーィ 09 ィ ィョ00020802 ィコィ 0108ィ. 020507 070605ィョ ツ02ィェィィ07 080204ィョ05ィケィーィィ08ィョ06ィエ020006 020902ィーィ ィィ09070605ィケ04ィョ02ィー0907 09050201ィョ06ィエィ 07 000608ィャィョ05ィ : res = c src 6モ5 k 1 + c dst 6モ5 k 2, 000102 c src 020902ィー ィィ09010601ィェ060006 07ィィィコ09020507, c dst 020902ィー 07ィィィコ09020507 09 ィ ィョ00020802 ィコィ 0108ィ (res, k 1, k 1, c src, c dst ツ02ィー04080201ィコ06ィャ0706ィェ02ィェィーィェ0402 RGBA-0902ィコィー060804). 0308ィィ09020102ィャ ィェィ ィィィ 06050202 ツィ 09ィー06 ィィ09070605ィケ04ィョ02ィャ0402 04ィェィ ツ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 )

1392 0105ィ 09ィ 7. 02070208ィ 02ィィィィ 09 07ィィィコ09020507ィャィィ 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: 070802010706050603ィィィャ, ィャ04 0106ィーィィィャ 0802ィ 05ィィ040609ィ ィーィケ 0904090601 0708060408ィ ツィェ0401 06ィ ィイ02ィコィー0609. 0806050000ィィ02ィィ02ィェィー 0708060408ィ ツィェ0609ィーィィ 04ィ 01ィ 02ィー0907 ィ 05ィケ00ィ ィコ06ィャ0706ィェ02ィェィー06ィヲ 020902ィーィ. 03ィョ09ィーィケ 1 ィェ020708060408ィ ツィェ04ィヲ 06ィ ィイ02ィコィー; 0 ィ ィ 09060506ィーィェ06 0708060408ィ ツィェ04ィヲ, ィー.02. ィェ0209ィィ01ィィィャ04ィヲ. 020507 0802ィ 05ィィ04ィ 02ィィィィ 0905ィョ03ィィィー 09050201ィョ06ィエィィィヲ ィコ0601: glenable (GL_BLEND) ; glblendfunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) ; 01ィ 0708ィィィャ0208, 070605ィョ0708060408ィ ツィェ04ィヲ ィー0802ィョ000605ィケィェィィィコ ィャ0603ィェ06 04ィ 01ィ ィーィケ 09050201ィョ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 ( ) ; 030905ィィ 09 090202ィェ02 0209ィーィケ ィェ0209ィコ0605ィケィコ06 0708060408ィ ツィェ0401 06ィ ィイ02ィコィー0609, ィコ06ィー06080402 ィャ0600ィョィー 07020802ィコ080409ィ ィーィケ 0108ィョ00 0108ィョ00ィ, ィコ06080802ィコィーィェ04ィヲ 0904090601 ィャ0603ィェ06 00ィ 08ィ ィェィーィィ080609ィ ィーィケ ィー0605ィケィコ06 09 0905ィョ ツィ 02 0904070605ィェ02ィェィィ07 09050201ィョ06ィエィィ01 ィョ09050609ィィィヲ: 0キ3 090902 0708060408ィ ツィェ0402 06ィ ィイ02ィコィー04 090409060107ィー0907 0706090502 ィェ020708060408ィ ツィェ0401; 0キ3 0708ィィ 090409060102 06ィ ィイ02ィコィー04 09 0708060408ィ ツィェ0609ィーィケ06 01060503ィェ04 ィ 04ィーィケ ィョ070608070106 ツ02ィェ04 0706 ィョィャ02ィェィケ0302ィェィィ06 0005ィョィ ィィィェ04, ィー.02. 0904090601ィィィーィケ0907, ィェィ ツィィィェィ 07 09 ィェィ ィィィ 06050202 06ィー01ィ 0502ィェィェ0401 06ィー ィェィ ィ 050601ィ ィー020507. 00 OpenGL ィコ06ィャィ ィェ0104 06ィ 08ィ ィ ィ ィー0409ィ 06ィー0907 09 0706080701ィコ02 ィィ01 070609ィーィョ070502ィェィィ07, 070605ィー06ィャィョ 010507 0802ィ 05ィィ04ィ 02ィィィィ 07020802 ツィィ090502ィェィェ0401 ィー0802ィ 0609ィ ィェィィィヲ 010609ィーィ ィー06 ツィェ06 08ィ 0909ィーィ 09ィィィーィケ 09 090606ィー0902ィー09ィー09ィョ06ィエ02ィャ 0706080701ィコ02 090404060904 ィコ06ィャィ ィェ01 glvertex, ィェ06 ィィ 05ィー06 09 06ィ ィエ02ィャ 0905ィョ ツィ 02 ィェ02ィー08ィィ09ィィィ 05ィケィェ06.

137.2. 09ィョ000208-ィェィ ィコ0607ィィィー0205ィケ 93 7.2. 09ィョ000208-ィェィ ィコ0607ィィィー0205ィケ 09ィョ000208-ィェィ ィコ0607ィィィー0205ィケ (accumulation buer) 05ィー06 0601ィィィェ ィィ04 0106070605ィェィィィー0205ィケィェ0401 ィ ィョ0002080609 OpenGL. 00 ィェ02ィャ ィャ0603ィェ06 09060108ィ ィェ07ィーィケ 09ィィ04ィョィ 05ィィ04ィィ080609ィ ィェィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02, 0708ィィィャ02ィェ0707 0708ィィ 05ィー06ィャ 070607ィィィコ090205ィケィェ06 09070202ィィィ 05ィケィェ0402 06070208ィ 02ィィィィ. 09ィョ000208-ィェィ ィコ0607ィィィー0205ィケ 03ィィ0806ィコ06 ィィ09070605ィケ04ィョ02ィー0907 010507 09060401ィ ィェィィ07 08ィ 0405ィィ ツィェ0401 0907020205000002ィコィー0609. 060406ィ 08ィ 0302ィェィィ02 ィ 020802ィー0907 ィィ04 ィ ィョ000208ィ, 0904ィ 08ィ ィェィェ060006 ィェィ ツィー02ィェィィ02 ィコ06ィャィ ィェ0106ィヲ void glreadbuffer (enum buf ) 080800ィョィャ02ィェィー buf 060708020102050702ィー ィ ィョ000208 010507 ツィー02ィェィィ07. 05ィェィ ツ02ィェィィ07 buf, 08ィ 09ィェ0402 GL_BACK, GL_FRONT, 060708020102050706ィー 090606ィー0902ィー09ィー09ィョ06ィエィィ02 ィ ィョ00020804 020902ィーィ 010507 ツィー02ィェィィ07. GL_BACK 04ィ 01ィ 02ィー 09 ィコィ ツ0209ィー0902 ィィ09ィー06 ツィェィィィコィ 07ィィィコ09020502ィヲ 09ィェ0205ィコ08ィ ィェィェ04ィヲ ィ ィョ000208; GL_FRONT ィー02ィコィョィエ0202 090601020803ィィィャ0602 06ィコィェィ 0904090601ィ. 0806ィャィ ィェ01ィ ィィィャ0202ィー 04ィェィ ツ02ィェィィ02, 020905ィィ ィィ09070605ィケ04ィョ02ィー0907 01ィョィ 05ィィ08ィョ06ィエィ 07 ィ ィョ000208ィィ04ィ 02ィィ07. 00 070806ィーィィ09ィェ06ィャ 0905ィョ ツィ 02 ィィ09070605ィケ04ィョ02ィー0907 ィー0605ィケィコ06 0601ィィィェ ィ ィョ000208, 090606ィー0902ィー09ィー09ィョ06ィエィィィヲ 06ィコィェィョ 0904090601ィ (09ィー08060006 000609060807, OpenGL ィィィャ0202ィー ィェィ ィ 0608 0106070605ィェィィィー0205ィケィェ0401 ィ ィョ0002080609, ィィ09070605ィケ04ィョ02ィャ0401, 09 ツィ 09ィーィェ0609ィーィィ, 010507 08ィ ィ 06ィー04 0906 09ィー02080206ィィ0406ィ 08ィ 0302ィェィィ07ィャィィ, ィェ06 04010209ィケ ィャ04 ィィ01 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ ィェ02 ィ ィョ0102ィャ). 09ィョ000208-ィェィ ィコ0607ィィィー0205ィケ 0709050702ィー0907 0106070605ィェィィィー0205ィケィェ04ィャ ィ ィョ00020806ィャ 020902ィーィ. 02ィェ ィェ02 ィィ09070605ィケ04ィョ02ィー0907 ィェ0207060908020109ィー0902ィェィェ06 010507 0904090601ィ 06ィ 08ィ 040609, ィェ06 06ィェィィ 0106ィ ィ 09050706ィー0907 09 ィェ020006 0706090502 0904090601ィ 09 0601ィィィェ ィィ04 ィ ィョ0002080609 020902ィーィ. 0308ィィィャ02ィェ0707 08ィ 0405ィィ ツィェ0402 06070208ィ 02ィィィィ, 0607ィィ09ィ ィェィェ0402 ィェィィ0302, ィャ0603ィェ06 0706ィェ02ィャィェ0600ィョ 06ィェィ ィコィ 0705ィィ09ィ ィーィケ07 ィィ0406ィ 08ィ 0302ィェィィ02 09 ィ ィョ00020802. 05ィ ィー02ィャ 070605ィョ ツ02ィェィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02 07020802ィェ0609ィィィー0907 ィィ04 ィ ィョ000208ィ -ィェィ ィコ0607ィィィー020507 09 0601ィィィェ ィィ04 ィ ィョ0002080609 020902ィーィ, 0904ィ 08ィ ィェィェ04ィヲ ィェィ 04ィ 07ィィ09ィケ ィコ06ィャィ ィェ0106ィヲ void gldrawbuffer (enum buf ) 05ィェィ ツ02ィェィィ02 buf ィ ィェィ 050600ィィ ツィェ06 04ィェィ ツ02ィェィィ06 090606ィー0902ィー09ィー09ィョ06ィエ020006 ィ 0800ィョィャ02ィェィーィ 09 ィコ06ィャィ ィェ0102 glreadbuer. 000902 06070208ィ 02ィィィィ 09 ィ ィョ00020806ィャ-ィェィ ィコ0607ィィィー020502ィャ ィコ06ィェィー080605ィィ08ィョ06ィー0907 ィコ06ィャィ ィェ0106ィヲ

1394 0105ィ 09ィ 7. 02070208ィ 02ィィィィ 09 07ィィィコ09020507ィャィィ void glaccum (enum op, GLfloat value ) 080800ィョィャ02ィェィー op 04ィ 01ィ 02ィー 06070208ィ 02ィィ06 ィェィ 01 07ィィィコ09020507ィャィィ ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_LOAD 07ィィィコ090205ィケ ィ 020802ィー0907 ィィ04 ィ ィョ000208ィ, 0904ィ 08ィ ィェィェ060006 ィェィ ツィー02ィェィィ02, 020006 04ィェィ ツ02ィェィィ02 ィョィャィェ0603ィ 02ィー0907 ィェィ value ィィ 04ィ ィェ0609ィィィー0907 09 ィ ィョ000208ィェィ ィコ0607ィィィー0205ィケ; GL_ACCUM ィ ィェィ 050600ィィ ツィェ06 070802010401ィョィエ02ィャィョ, ィェ06 070605ィョ ツ02ィェィェ0602 0706090502 ィョィャィェ060302ィェィィ07 04ィェィ ツ02ィェィィ02 09ィコ05ィ 010409ィ 02ィー0907 09 ィョ0302 ィィィャ0206ィエィィィャ0907 09 ィ ィョ00020802; GL_MULT 05ィーィ 06070208ィ 02ィィ07 ィョィャィェ0603ィ 02ィー 04ィェィ ツ02ィェィィ02 ィコィ 0301060006 07ィィィコ09020507 09 ィ ィョ00020802 ィェィ ィコ06070502ィェィィ07 ィェィ value; GL_ADD ィ ィェィ 050600ィィ ツィェ06 070802010401ィョィエ02ィャィョ, ィー0605ィケィコ06 09ィャ0209ィー06 ィョィャィェ060302ィェィィ07 ィィ09070605ィケ04ィョ02ィー0907 0905060302ィェィィ02; GL_RETURN 060406ィ 08ィ 0302ィェィィ02 07020802ィェ0609ィィィー0907 ィィ04 ィ ィョ000208ィ ィェィ ィコ0607ィィィー020507 09 ィ ィョ000208, 0904ィ 08ィ ィェィェ04ィヲ 010507 04ィ 07ィィ09ィィ. 0302080201 05ィーィィィャ 04ィェィ ツ02ィェィィ02 ィコィ 0301060006 07ィィィコ09020507 ィョィャィェ0603ィ 02ィー0907 ィェィ value. 05050201ィョ02ィー 06ィーィャ02ィーィィィーィケ, ツィー06 010507 ィィ09070605ィケ040609ィ ィェィィ07 ィ ィョ000208ィ -ィェィ ィコ0607ィィィー020507 ィェ02ィー ィェ0206ィ 010601ィィィャ0609ィーィィ 0904040409ィ ィーィケ ィコィ ィコィィ02-05ィィィ 06 ィコ06ィャィ ィェ0104 glenable. 020609ィーィ ィー06 ツィェ06 ィィィェィィ02ィィィ 05ィィ04ィィ080609ィ ィーィケ ィー0605ィケィコ06 09ィ ィャ ィ ィョ000208. 0308ィィィャ0208 ィィ09070605ィケ040609ィ ィェィィ07 ィ ィョ000208ィ -ィェィ ィコ0607ィィィー020507 010507 ィョ09ィー08ィ ィェ02ィェィィ07 070600080203ィェ0609ィー02ィヲ 08ィ 09ィー0208ィィ04ィ 02ィィィィ (09ィーィョ0702ィェ ツィ ィー0609ィーィィ) 0708ィィ09020102ィェ 09 08ィ 0401020502 8.1. 7.3. 09ィョ000208 ィャィ 09ィコィィ 0308ィィ 090409060102 07ィィィコ09020502ィヲ 09 ィ ィョ000208 ィコィ 0108ィ ィィィェ060001ィ 090604ィェィィィコィ 02ィー ィェ0206ィ 010601ィィィャ0609ィーィケ 0904090601ィィィーィケ ィェ02 090902 07ィィィコ090205ィィ, ィ ィー0605ィケィコ06 ィェ02ィコ06ィー06080602 070601ィャィェ06030209ィー0906, ィー.02. ィェィ 050603ィィィーィケ ィー08ィ 00ィ 0802ィー (ィャィ 09ィコィョ) ィェィ ィィ0406ィ 08ィ 0302ィェィィ02. 020507 05ィー060006 OpenGL 070802010609ィーィ 09050702ィー ィーィ ィコ ィェィ 040409ィ 02ィャ04ィヲ ィ ィョ000208 ィャィ 09ィコィィ (stencil

137.3. 09ィョ000208 ィャィ 09ィコィィ 95 buer). 080806ィャ02 ィェィ 05060302ィェィィ07 ィャィ 09ィコィィ, 05ィー06ィー ィ ィョ000208 070802010609ィーィ 09050702ィー 02ィエ02 ィェ0209ィコ0605ィケィコ06 ィィィェィー02080209ィェ0401 090604ィャ0603ィェ0609ィー02ィヲ. 030802030102 ツ02ィャ 0706ィャ0209ィーィィィーィケ 07ィィィコ090205ィケ 09 ィ ィョ000208 ィコィ 0108ィ, ィャ0201ィ ィェィィ04ィャ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ OpenGL 0706040906050702ィー 0904070605ィェィィィーィケ 0908ィ 09ィェ02ィェィィ02 (ィー0209ィー) ィャ020301ィョ 04ィ 01ィ ィェィェ04ィャ 04ィェィ ツ02ィェィィ02ィャ ィィ 04ィェィ ツ02ィェィィ02ィャ 09 ィ ィョ00020802 ィャィ 09ィコィィ. 030905ィィ ィー0209ィー 070806010601ィィィー, 07ィィィコ090205ィケ 08ィィ09ィョ02ィー0907 09 ィ ィョ00020802 ィコィ 0108ィ. 000201ィ ィェィィ04ィャ 0908ィ 09ィェ02ィェィィ07 090209ィケィャィ 00ィィィ 06ィコ ィィ ィコ06ィェィー080605ィィ08ィョ02ィー0907 09050201ィョ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 ) 080800ィョィャ02ィェィー ref ィコ06ィャィ ィェ0104 glstencilfunc 04ィ 01ィ 02ィー 04ィェィ ツ02ィェィィ02 010507 0908ィ 09ィェ02ィェィィ07. 02ィェ 0106050302ィェ 0708ィィィェィィィャィ ィーィケ 04ィェィ ツ02ィェィィ02 06ィー 0 0106 2s 6モ1 1, 000102 s ツィィ090506 ィ ィィィー ィェィ ィー06 ツィコィョ 09 ィ ィョ00020802 ィャィ 09ィコィィ. 05 0706ィャ06ィエィケ06 ィ 0800ィョィャ02ィェィーィ func 04ィ 01ィ 02ィー0907 00ィョィェィコ02ィィ07 0908ィ 09ィェ02ィェィィ07. 02ィェ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_NEVER ィー0209ィー ィェィィィコ060001ィ ィェ02 070806010601ィィィー, ィー.02. 0909020001ィ 0906040908ィ ィエィ 02ィー false; GL_ALWAYS ィー0209ィー 070806010601ィィィー 0909020001ィ ; GL_LESS, GL_LEQUAL, GL_EQUAL GL_GEQUAL, GL_GREATE, GL_NOTEQUAL ィー0209ィー 070806010601ィィィー 09 0905ィョ ツィ 02, 020905ィィ ref 090606ィー0902ィー09ィー0902ィェィェ06 ィャ02ィェィケ0302 04ィェィ ツ02ィェィィ07 09 ィ ィョ00020802 ィャィ 09ィコィィ, ィャ02ィェィケ0302 05ィィィ 06 08ィ 0902ィェ, 08ィ 0902ィェ, ィ 0605ィケ0302, ィ 0605ィケ0302 05ィィィ 06 08ィ 0902ィェ, ィィ05ィィ ィェ02 08ィ 0902ィェ. 080800ィョィャ02ィェィー mask 04ィ 01ィ 02ィー ィャィ 09ィコィョ 010507 04ィェィ ツ02ィェィィィヲ. 06.02. 09 ィィィー060002 010507 05ィー060006 ィー0209ィーィ 070605ィョ ツィ 02ィャ 09050201ィョ06ィエィョ06 000608ィャィョ05ィョ: ((ref AND mask) op (svalue AND mask)). 0806ィャィ ィェ01ィ glstencilop 07080201ィェィ 04ィェィ ツ02ィェィ 010507 0607080201020502ィェィィ07 0102ィヲ09ィー09ィィィヲ ィェィ 01 07ィィィコ09020502ィャ ィ ィョ000208ィ ィャィ 09ィコィィ 09 0905ィョ ツィ 02 0706050603ィィィー0205ィケィェ060006 ィィ05ィィ 06ィー08ィィ02ィ ィー0205ィケィェ060006 080204ィョ05ィケィーィ ィーィ ィー0209ィーィ.

1396 0105ィ 09ィ 7. 02070208ィ 02ィィィィ 09 07ィィィコ09020507ィャィィ 080800ィョィャ02ィェィー sfail 04ィ 01ィ 02ィー 0102ィヲ09ィー09ィィ02 09 0905ィョ ツィ 02 06ィー08ィィ02ィ ィー0205ィケィェ060006 080204ィョ05ィケィーィ ィーィ ィー0209ィーィ, ィィ ィャ060302ィー 0708ィィィェィィィャィ ィーィケ 09050201ィョ06ィエィィ02 04ィェィ ツ02ィェィィ07: GL_KEEP, GL_ZERO, GL_REPLACE, GL_INCR GL_DECR, GL_INVERT 090606ィー0902ィー09ィー0902ィェィェ06 09060108ィ ィェ0702ィー 04ィェィ - ツ02ィェィィ02 09 ィ ィョ00020802 ィャィ 09ィコィィ, 06ィ ィェィョ050702ィー 020006, 04ィ ィャ02ィェ0702ィー ィェィ 04ィ 01ィ ィェィェ0602 04ィェィ ツ02ィェィィ02 (ref), ィョ090205ィィ ツィィ09ィ 02ィー, ィョィャ02ィェィケ03ィ 02ィー ィィ05ィィ 0706ィ ィィィー060906 ィィィェ090208ィーィィ08ィョ02ィー. 080800ィョィャ02ィェィー04 dpfail 060708020102050706ィー 0102ィヲ09ィー09ィィ07 09 0905ィョ ツィ 02 06ィー08ィィ02ィ ィー0205ィケィェ060006 080204ィョ05ィケィーィ ィーィ ィー0209ィーィ ィェィ 0005ィョィ ィィィェィョ 09 z-ィ ィョ00020802, ィ dppass 04ィ 01ィ 02ィー 0102ィヲ09ィー09ィィ02 09 0905ィョ ツィ 02 0706050603ィィィー0205ィケィェ060006 080204ィョ05ィケィーィ ィーィ 05ィー060006 ィー0209ィーィ. 080800ィョィャ02ィェィー04 0708ィィィェィィィャィ 06ィー ィー02 0302 04ィェィ ツ02ィェィィ07, ツィー06 ィィ ィ 0800ィョィャ02ィェィー sfail. 0306 ィョィャ0605 ツィ ィェィィ06 090902 ィー08ィィ 07ィ 08ィ ィャ02ィー08ィ ィョ09ィーィ ィェ06090502ィェ04 ィェィ GL_KEEP. 020507 09ィコ0506 ツ02ィェィィ07 ィャィ 09ィコィィ080609ィ ィェィィ07 ィェ0206ィ 010601ィィィャ06 0904070605ィェィィィーィケ ィコ06ィャィ ィェ01ィョ glenable(gl_stencil_test); 09ィョ000208 ィャィ 09ィコィィ ィィ09070605ィケ04ィョ02ィー0907 0708ィィ 09060401ィ ィェィィィィ ィーィ ィコィィ01 0907020205000002ィコィー0609, ィコィ ィコ 07ィ 01ィ 06ィエィィ02 ィー02ィェィィ, 06ィー08ィ 0302ィェィィ07, 0705ィ 09ィェ0402 0702080201060104 ィィ04 0601ィェ06ィヲ ィコィ 08ィーィィィェィコィィ 09 0108ィョ00ィョ06 ィィ 0708. 0308ィィィャ0208 ィィ09070605ィケ040609ィ ィェィィ07 ィ ィョ000208ィ ィャィ 09ィコィィ 0708ィィ 070609ィー080602ィェィィィィ ィー02ィェ02ィヲ ィィ 06ィー08ィ 0302ィェィィィヲ 0708ィィ09020102ィェ 09 08ィ 04010205ィ 01 8.2 ィィ 8.3. 7.4. 070708ィ 090502ィェィィ02 08ィ 09ィー0208ィィ04ィ 02ィィ02ィヲ 0507060906ィ 0904070605ィェ02ィェィィ07 08ィ 09ィー0208ィィ04ィ 02ィィィィ 0708ィィィャィィィーィィ090609 ィャ0603ィェ06 ツィ 09ィーィィ ツィェ06 080200ィョ05ィィ080609ィ ィーィケ ィコ06ィャィ ィェ0106ィヲ glhint (target, mode), 000102 target 09ィィ01 ィコ06ィェィー080605ィィ08ィョ02ィャ0401 0102ィヲ09ィー09ィィィヲ, 0708ィィィェィィィャィ 06ィエィィィヲ 0601ィェ06 ィィ04 09050201ィョ06ィエィィ01 04ィェィ ツ02ィェィィィヲ: GL_FOG_HINT ィー06 ツィェ0609ィーィケ 0904 ツィィ090502ィェィィィヲ 0708ィィ ィェィ 05060302ィェィィィィ ィーィョィャィ ィェィ. 0004 ツィィ090502ィェィィ07 ィャ0600ィョィー 0904070605ィェ07ィーィケ0907 0706 07ィィィコ09020507ィャ (ィェィ ィィィ 0605ィケ03ィ 07 ィー06 ツィェ0609ィーィケ) ィィ05ィィ ィー0605ィケィコ06 09 09020803ィィィェィ 01. 030905ィィ 0802ィ 05ィィ04ィ 02ィィ07 OpenGL ィェ02 07060101020803ィィ09ィ 02ィー 070607ィィィコ090205ィケィェ060006 0904 ツィィ090502ィェィィ07, ィー06 0904070605ィェ0702ィー0907 ィー0605ィケィコ06 0904 ツィィ090502ィェィィ02 0706 09020803ィィィェィ ィャ;

137.4. 070708ィ 090502ィェィィ02 08ィ 09ィー0208ィィ04ィ 02ィィ02ィヲ 97 GL_LINE_SMOOTH_HINT ィョ0708ィ 090502ィェィィ02 ィコィ ツ0209ィー0906ィャ 070807ィャ0401. 0308ィィ 04ィェィ ツ02ィェィィィィ mode, 08ィ 09ィェ04ィャ GL_NICEST, ィョィャ02ィェィケ03ィ 02ィー0907 09ィーィョ0702ィェ ツィ ィー0609ィーィケ 070807ィャ0401 04ィ 09 ツ02ィー ィ 0605ィケ03020006 ツィィ0905ィ 07ィィィコ09020502ィヲ 09 070807ィャ0401; GL_PERSPECTIVE_CORRECTION_HINT ィー06 ツィェ0609ィーィケ ィィィェィー02080706050702ィィィィ ィコ06060801ィィィェィ ィー 0708ィィ 0904 ツィィ090502ィェィィィィ 020902ィー0609 ィィ ィェィ 05060302ィェィィィィ ィー02ィコ09ィーィョ0804. 030905ィィ 0802ィ 05ィィ04ィ 02ィィ07 OpenGL ィェ02 07060101020803ィィ09ィ 02ィー 080203ィィィャ GL_NICEST, ィー06 0609ィョィエ0209ィー09050702ィー0907 05ィィィェ02ィヲィェィ 07 ィィィェィー02080706050702ィィ07 ィコ06060801ィィィェィ ィー; GL_POINT_SMOOTH_HINT ィョ0708ィ 090502ィェィィ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ィ 090502ィェィィ02 09ィー0906ィャ 0904090601ィ 09ィー060806ィェ ィャィェ060006ィョ000605ィケィェィィィコィ. 03ィ 08ィ ィャ02ィー08 mode ィィィェィー0208070802ィーィィ08ィョ02ィー0907 09050201ィョ06ィエィィィャ 06ィ 08ィ 0406ィャ: GL_FASTEST ィィ09070605ィケ04ィョ02ィー0907 ィェィ ィィィ 06050202 ィ 0409ィー0804ィヲ ィ 05000608ィィィーィャ; GL_NICEST ィィ09070605ィケ04ィョ02ィー0907 ィ 05000608ィィィーィャ, 06ィ 02090702 ツィィ09ィ 06ィエィィィヲ 05ィョ ツ030202 ィコィ ツ0209ィー0906; GL_DONT_CARE 0904ィ 0608 ィ 05000608ィィィーィャィ 04ィ 09ィィ09ィィィー 06ィー 0802ィ 05ィィ04ィ 02ィィィィ. 00ィ 03ィェ06 04ィ ィャ02ィーィィィーィケ, ツィー06 ィコ06ィャィ ィェ0106ィヲ glhint() 0708060008ィ ィャィャィィ09ィー ィャ060302ィー ィー0605ィケィコ06 06070802010205ィィィーィケ 090906ィィ 0706030205ィ ィェィィ07 06ィーィェ0609ィィィー0205ィケィェ06 ィー060006 ィィ05ィィ ィィィェ060006 ィ 090702ィコィーィ 08ィ 09ィー0208ィィ04ィ 02ィィィィ 0708ィィィャィィィーィィ090609. 0806ィェィコ0802ィーィェィ 07 0802ィ 05ィィ04ィ 02ィィ07 OpenGL 090708ィ 0902 ィィ00ィェ0608ィィ080609ィ ィーィケ 01ィ ィェィェ0402 ィョ09ィーィ ィェ0609ィコィィ. 02ィ 08ィ ィーィィィー02 09ィェィィィャィ ィェィィ02, ツィー06 glhint() ィェ0205ィケ0407 0904040409ィ ィーィケ ィャ020301ィョ 06070208ィ ィー0608ィェ04ィャィィ 09ィコ06ィ ィコィ ィャィィ glbegin()/glend().

1398 0105ィ 09ィ 7. 02070208ィ 02ィィィィ 09 07ィィィコ09020507ィャィィ 7.5. 0806ィェィー080605ィケィェ0402 09060708060904 1) 08ィ ィコィィ02 ィ ィョ00020804 ィィ0406ィ 08ィ 0302ィェィィィヲ ィィ09070605ィケ04ィョ06ィー0907 09 OpenGL ィィ 010507 ツ020006? 2) 020507 ツ020006 ィィ09070605ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ glblendfunc? 3) 0306 ツ02ィャィョ 010507 ィコ06080802ィコィーィェ060006 0904090601ィ 0708060408ィ ツィェ0401 06ィ ィイ02ィコィー0609 ィー0802ィ ィョ02ィー0907 0906ィ 05060102ィェィィ02 ィョ09050609ィィィヲ ィョ070608070106 ツ02ィェィェ060006 0904090601ィ 0708ィィィャィィィーィィ090609 09 0708060408ィ ツィェ0609ィーィケ06? 4) 020507 ツ020006 ィィ09070605ィケ04ィョ02ィー0907 ィ ィョ000208-ィェィ ィコ0607ィィィー0205ィケ? 0308ィィ090201ィィィー02 0708ィィィャ0208 08ィ ィ 06ィー04 09 ィェィィィャ. 5) 08ィ ィコ 09 OpenGL ィャ0603ィェ06 ィェィ 050603ィィィーィケ ィャィ 09ィコィョ ィェィ 080204ィョ05ィケィーィィ08ィョ06ィエ0202 ィィ0406ィ 08ィ 0302ィェィィ02? 6) 02ィ ィイ0709ィェィィィー02, 010507 ツ020006 0708ィィィャ02ィェ07ィー0907 ィコ06ィャィ ィェ01ィ glhint(). 7) 08ィ ィコ0609 05000002ィコィー 0904070605ィェ02ィェィィ07 ィコ06ィャィ ィェ0104 glhint(gl_fog_hint, GL_DONT_CARE)?

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

13

130105ィ 09ィ 8. 0108ィ 00ィィ ツ0209ィコィィ02 ィ 05000608ィィィーィャ04 ィェィ 0609ィェ060902 OpenGL 00 05ィー06ィヲ 0005ィ 0902 ィャ04 08ィ 0909ィャ06ィー08ィィィャ ィコィ ィコ 09 0706ィャ06ィエィケ06 OpenGL 09060401ィ 09ィ ィーィケ ィェ02ィコ06ィー06080402 ィィィェィー02080209ィェ0402 09ィィ04ィョィ 05ィケィェ0402 05000002ィコィー04, ィェ0207060908020109ィー0902ィェィェィ 07 07060101020803ィコィ ィコ06ィー06080401 06ィー09ィョィー09ィー09ィョ02ィー 09 09ィーィ ィェ01ィ 08ィー02 ィ ィィィ 05ィィ06ィー02ィコィィ. 8.1. 0709ィー08ィ ィェ02ィェィィ02 09ィーィョ0702ィェ ツィ ィー0609ィーィィ 01ィ ツィェ02ィャ 09 04ィ 01ィ ツィィ ィョ09ィー08ィ ィェ02ィェィィ07 09ィーィョ0702ィェ ツィ ィー0609ィーィィ (antialiasing). 06000002ィコィー 09ィーィョ0702ィェ ツィ ィー0609ィーィィ (aliasing) 090604ィェィィィコィ 02ィー 09 080204ィョ05ィケィーィ ィー02 070600080203ィェ0609ィー02ィヲ 08ィ 09ィー0208ィィ04ィ 02ィィィィ 0708ィィィャィィィーィィ090609 09 ィ ィョ00020802 ィコィ 0108ィ ィィ04-04ィ ィコ06ィェ02 ツィェ060006 (ィィ ィコィ ィコ 0708ィ 09ィィ0506, ィェ02ィ 0605ィケ03060006) 08ィ 0408020302ィェィィ07 ィ ィョ000208ィ. 0309ィーィケ ィェ0209ィコ0605ィケィコ06 0706010106010609 ィコ 08020302ィェィィ06 01ィ ィェィェ06ィヲ 070806ィ 0502ィャ04. 01ィ 0708ィィィャ0208, ィャ0603ィェ06 0708ィィィャ02ィェ07ィーィケ 00ィィ05ィケィー08ィ 02ィィ06 070605ィョ ツ02ィェィェ060006 ィィ0406ィ 08ィ 0302ィェィィ07. 06ィ ィコ0302 05ィー06ィー 05000002ィコィー ィャ0603ィェ06 ィョ09ィー08ィ ィェ07ィーィケ ィェィ 05ィーィ 0702 08ィ 09ィー0208ィィ04ィ 02ィィィィ, 090005ィ 03ィィ09ィ 07 06ィ 08ィ 04 ィコィ 0301060006 0708ィィィャィィィーィィ09ィ. 05010209ィケ ィャ04 08ィ 0909ィャ06ィー08ィィィャ 0708ィィ02ィャ, 0706040906050706ィエィィィヲ ィョ09ィー08ィ ィェ07ィーィケ 07060106ィ ィェ0402 ィ 08ィー0200ィ ィコィー04 010507 090902ィヲ 090202ィェ04 020205ィィィコ06ィャ. 020507 ィコィ 0301060006 ィコィ 0108ィ ィェ0206ィ 010601ィィィャ06 ィェィ 08ィィ090609ィ ィーィケ 090202ィェィョ ィェ0209ィコ0605ィケィコ06 101

13102 0105ィ 09ィ 8. 0108ィ 00ィィ ツ0209ィコィィ02 ィ 05000608ィィィーィャ04 ィェィ 0609ィェ060902 OPENGL 08ィ 04, ィェィ ィコィ 030106ィャ 07080601060102 ィェ02ィャィェ060006 09ィャ02ィエィ 07 ィコィ ィャ0208ィョ 06ィーィェ0609ィィィー0205ィケィェ06 ィェィ ツィ 05ィケィェ060006 070605060302ィェィィ07. 030605060302ィェィィ07 ィコィ ィャ0208, ィェィ 0708ィィィャ0208, ィャ0600ィョィー 06ィ 08ィ 0406090409ィ ィーィケ 06ィコ08ィョ03ィェ0609ィーィケ. 030905ィィ 090109ィィ00 ィコィ ィャ020804 06ィーィェ0609ィィィー0205ィケィェ06 ィャィ 05, ィー06 070600080203ィェ0609ィーィィ 01ィィ09ィコ0802ィーィィ04ィ 02ィィィィ 070806070907ィー0907 0706-08ィ 04ィェ06ィャィョ, ィィ, ィョ09080201ィェ0707 070605ィョ ツ02ィェィェ0402 ィィ0406ィ 08ィ 0302ィェィィ07, ィャ04 070605ィョ ツィィィャ 090005ィ 0302ィェィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02. 030806ィエ02 0909020006 090109ィィ00ィ ィーィケ 070605060302ィェィィ02 ィェィ ィ 050601ィ ィー020507, ィェ06 0702080201 05ィーィィィャ ィェィョ03ィェ06 0904 ツィィ0905ィィィーィケ 08ィ 04ィャ0208 090109ィィ00ィ ィーィ ィコ, ツィー06ィ 04 0708ィィ09020102ィェィェ0602 ィコ ィコ06060801ィィィェィ ィーィ ィャ 05ィコ08ィ ィェィ 04ィェィ ツ02ィェィィ02 ィェ02 070802090403ィ 0506, 09ィコィ 0302ィャ, 0706050609ィィィェ04 08ィ 04ィャ0208ィ 07ィィィコ09020507. 000902 070605ィョ ツ02ィェィェ0402 ィィ0406ィ 08ィ 0302ィェィィ07 09060108ィ ィェ0702ィャ 09 ィ ィョ00020802-ィェィ ィコ0607ィィィー020502 09 ィコ06050000ィィ02ィィ02ィェィー06ィャ 1/n, 000102 n ツィィ090506 0708060106010609 010507 ィコィ 0301060006 ィコィ 0108ィ. チ02ィャ ィ 0605ィケ0302 ィーィ ィコィィ01 0708060106010609 ィー02ィャ ィェィィ0302 070806ィィ04090601ィィィー0205ィケィェ0609ィーィケ, ィェ06 05ィョ ツ0302 080204ィョ05ィケィーィ ィー. for ( i =0; i <samples_count;++ i ) // 06ィ 04 ツィェ06 samples_ count 050203ィィィー 09 070802010205ィ 01 06ィー 5 0106 10 { ShiftCamera ( i ) ; // 090109ィィ00ィ 02ィャ ィコィ ィャ0208ィョ RenderScene ( ) ; i f ( i ==0) // ィェィ 0702080906ィヲ ィィィー0208ィ 02ィィィィ 04ィ 0008ィョ03ィ 02ィャ ィィ0406ィ 08ィ 0302ィェィィ02 glaccum (GL_LOAD, 1 / ( float ) samples_count ) ; else // 0106ィ ィ 09050702ィャ ィコ ィョ0302 09ィョィエ0209ィー09ィョ06ィエ02ィャィョ glaccum (GL_ACCUM, 1 / ( float ) samples_count ) ; } // 03ィィ0302ィャ ィー06, ツィー06 070605ィョ ツィィ050609ィケ, ィェィ 04ィ 01 09 ィィ09010601ィェ04ィヲ ィ ィョ000208 glaccum (GL_RETURN, 1. 0 ) ; 05050201ィョ02ィー 06ィーィャ02ィーィィィーィケ, ツィー06 ィョ09ィー08ィ ィェ02ィェィィ02 09ィーィョ0702ィェ ツィ ィー0609ィーィィ 0908ィ 04ィョ 010507 090902ィヲ 090202ィェ04, ィコィ ィコ 0708ィ 09ィィ0506, 09090704ィ ィェ06 09 090208ィケ0204ィェ04ィャ 07ィ 0102ィェィィ02ィャ 070806ィィ04090601ィィィー0205ィケィェ0609ィーィィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ, ィーィ ィコ ィコィ ィコ 090907 090202ィェィ 08ィィ09ィョ02ィー0907 ィェ0209ィコ0605ィケィコ06 08ィ 04. 0506090802ィャ02ィェィェ0402 ィョ09ィコ0608ィィィー0205ィィ 06ィ 04 ツィェ06 ィ 0707ィ 08ィ ィーィェ06 0802ィ 05ィィ04ィョ06ィー 0108ィョ00ィィ02 ィャ02ィー060104.

138.2. 030609ィー080602ィェィィ02 ィー02ィェ02ィヲ 103 8.2. 030609ィー080602ィェィィ02 ィー02ィェ02ィヲ 00 OpenGL ィェ02ィー 0909ィー080602ィェィェ06ィヲ 07060101020803ィコィィ 070609ィー080602ィェィィ07 ィー02ィェ02ィヲ ィェィ ィョ080609ィェ02 ィ ィ 0406090401 ィコ06ィャィ ィェ01. 00 04ィェィ ツィィィー0205ィケィェ06ィヲ 09ィー020702ィェィィ 05ィー06 06ィ ィイ0709ィェ0702ィー0907 ィー02ィャ, ツィー06 09ィョィエ0209ィー09ィョ02ィー ィャィェ06030209ィー0906 ィ 05000608ィィィーィャ0609 ィィ01 070609ィー080602ィェィィ07, ィコ06ィー06080402 ィャ0600ィョィー ィ 04ィーィケ 0802ィ 05ィィ040609ィ ィェ04 ツ02080204 00ィョィェィコ02ィィィィ OpenGL. 0308ィィ09ィョィー09ィー09ィィ02 ィー02ィェ02ィヲ 09ィィ05ィケィェ06 0905ィィ0702ィー ィェィ 0802ィ 05ィィ09ィーィィ ツィェ0609ィーィケ ィー080201ィャ0208ィェ060006 ィィ0406ィ 08ィ 0302ィェィィ07, 070605ィー06ィャィョ 08ィ 0909ィャ06ィー08ィィィャ 0601ィィィェ ィィ04 0706010106010609 ィコ ィィ01 070609ィー080602ィェィィ06. 090605ィケ03ィィィェ09ィー0906 ィ 05000608ィィィーィャ0609, 07080201ィェィ 04ィェィ ツ02ィェィェ0401 010507 070609ィー080602ィェィィ07 ィー02ィェ02ィヲ, ィィ09070605ィケ04ィョ06ィー ィャ0601ィィ00ィィ02ィィ080609ィ ィェィェ0402 0708ィィィェ02ィィ0704 070208090702ィコィーィィ09ィェ06ィヲ 07080602ィコ02ィィィィ. 05010209ィケ 08ィ 0909ィャィ ィー08ィィ09ィ 02ィー0907 0601ィィィェ ィィ04 09ィ ィャ0401 07080609ィー0401 ィャ02ィー06010609. 05 020006 0706ィャ06ィエィケ06 ィャ0603ィェ06 070605ィョ ツィ ィーィケ ィー02ィェィィ, 06ィーィ 08ィ 090409ィ 02ィャ0402 ィー080201ィャ0208ィェ04ィャ 06ィ ィイ02ィコィー06ィャ ィェィ 07050609ィコ0609ィーィケ. 02ィ ィエィィィヲ 070601010601 ィーィ ィコ0609: 010507 09090201 ィー06 ツ02ィコ 06ィ ィイ02ィコィーィ ィェィ 010601ィィィー0907 ィィ01 07080602ィコ02ィィ07 07ィ 08ィ 05050205ィケィェ06 0902ィコィー0608ィョ, 09060201ィィィェ0706ィエ02ィャィョ 01ィ ィェィェィョ06 ィー06 ツィコィョ ィィ ィー06 ツィコィョ, 09 ィコ06ィー060806ィヲ ィェィ 010601ィィィー0907 ィィ09ィー06 ツィェィィィコ 090902ィーィ, ィェィ ィェ02ィコィョ06 04ィ 01ィ ィェィェィョ06 07050609ィコ0609ィーィケ. 0602ィャ 09ィ ィャ04ィャ 070605ィョ ツィ 02ィャ ィェ060904ィヲ 06ィ ィイ02ィコィー, 020205ィィィコ06ィャ 050203ィ ィエィィィヲ 09 04ィ 01ィ ィェィェ06ィヲ 07050609ィコ0609ィーィィ. 06ィー06ィー 06ィ ィイ02ィコィー ィィ 0709050702ィー0907 ィー02ィェィケ06 ィィ09010601ィェ060006. 04ィ 0909ィャ06ィー08ィィィャ ィャィ ィー02ィャィ ィーィィ ツ0209ィコィィ02 0609ィェ060904 01ィ ィェィェ060006 ィャ02ィー0601ィ. 03ィョ09ィーィケ: P ィー06 ツィコィ 09 ィー080201ィャ0208ィェ06ィャ 07080609ィー08ィ ィェ09ィー0902, ィコ06ィー0608ィ 07 06ィーィ 08ィ 090409ィ 02ィー ィー02ィェィケ. L 070605060302ィェィィ02 ィィ09ィー06 ツィェィィィコィ 090902ィーィ, ィコ06ィー060804ィヲ 06090902ィエィ 02ィー 01ィ ィェィェィョ06 ィー06 ツィコィョ. ィー06 ツィコィ, 09 ィコ06ィー0608ィョ06 06ィーィ 08ィ 090409ィ 02ィー ィー02ィェィケ ィー06 ツィコィ P, 000102 a 07ィ 08ィ ィャ02ィー08. S = a(l 6モ1 P ) 6モ1 P 030802010706050603ィィィャ, ツィー06 ィー02ィェィケ 07ィ 01ィ 02ィー ィェィ 07050609ィコ0609ィーィケ z = 0. 00 05ィー06ィャ 0905ィョ ツィ 02 a = z p /(z l 6モ1 z p ). 050502010609ィ ィー0205ィケィェ06,

13104 0105ィ 09ィ 8. 0108ィ 00ィィ ツ0209ィコィィ02 ィ 05000608ィィィーィャ04 ィェィ 0609ィェ060902 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 = 0 0009020102ィャ 0601ィェ06080601ィェ0402 ィコ06060801ィィィェィ ィー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ィ ィコ06060801ィィィェィ ィー04 S ィャ0600ィョィー ィ 04ィーィケ 070605ィョ ツ02ィェ04 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ ィョィャィェ060302ィェィィ07 ィャィ ィー08ィィ02 09050201ィョ06ィエィィィャ 06ィ 08ィ 0406ィャ: 69 62 z l 0 0 0 ( x s y s 0 w s ) ( = xs y s z s 1 ) 60 0 z l 0 0 63 616モ1x l 6モ1y l 0 1 64 0 0 0 z l 020507 ィー060006, ツィー06ィ 04 ィ 05000608ィィィーィャ ィャ0600 08ィ 0909 ツィィィー0409ィ ィーィケ ィー02ィェィケ, 07ィ 01ィ 06ィエィョ06 ィェィ 070806ィィ04090605ィケィェィョ06 07050609ィコ0609ィーィケ, 08ィ 0909ィャ06ィー08ィィィャ 070806ィィ04090605ィケィェィョ06 ィー06 ツィコィョ ィェィ 05ィィィェィィィィ ィャ020301ィョ S ィィ P, 0708020109ィーィ 090502ィェィェィョ06 09 0601ィェ06080601ィェ0401 ィコ06060801ィィィェィ ィーィ 01: ap + bl, 000102 a ィィ b 09ィコィ 050708ィェ0402 07ィ 08ィ ィャ02ィー0804. 05050201ィョ06ィエィ 07 ィャィ ィー08ィィ02ィ 04ィ 01ィ 02ィー 07050609ィコ0609ィーィケ ツ02080204 ィコ06060801ィィィェィ ィー04 0202 ィェ0608ィャィ 05ィィ: 69 x n 62 G = 60y n 63 61z n 64 d 0606 ツィコィ, 09 ィコ06ィー060806ィヲ 05ィョ ツ, 07080609020102ィェィェ04ィヲ 06ィー ィィ09ィー06 ツィェィィィコィ 090902ィーィ ツ02080204 01ィ ィェィェィョ06 ィー06 ツィコィョ P, 070208020902ィコィ 02ィー 07050609ィコ0609ィーィケ G, 060708020102050702ィー0907 07ィ 08ィ ィャ02ィー08ィ ィャィィ a ィィ b, ィョ0106090502ィー0906080706ィエィィィャィィ 09050201ィョ06ィエ02ィャィョ ィョ08ィ 09ィェ02ィェィィ06:

138.2. 030609ィー080602ィェィィ02 ィー02ィェ02ィヲ 105 (ap + bl)g = 0 02ィー090601ィ 070605ィョ ツィ 02ィャ: a(p G) + b(lg) = 0. 06ィー06ィャィョ ィョ08ィ 09ィェ02ィェィィ06 ィョ0106090502ィー0906080706ィー a = (LG), b = 6モ1(P G) 050502010609ィ ィー0205ィケィェ06, ィコ06060801ィィィェィ ィー04 ィィ09ィコ06ィャ06ィヲ ィー06 ツィコィィ S = (LG)P 6モ1 (P G)L. 030605ィケ04ィョ0709ィケ ィ 09090602ィィィ ィーィィ09ィェ0609ィーィケ06 ィャィ ィー08ィィ ツィェ060006 070806ィィ0409020102ィェィィ07, 070605ィョ ツィィィャ S = P [(LG)I 6モ1 GL] (8.1) 000102 I 0201ィィィェィィ ツィェィ 07 ィャィ ィー08ィィ02ィ. 00ィ ィー08ィィ02ィ (LG)I 6モ1 GL ィィ09070605ィケ04ィョ02ィー0907 010507 070605ィョ ツ02ィェィィ07 ィー02ィェ02ィヲ ィェィ 070806ィィ04090605ィケィェ06ィヲ 07050609ィコ0609ィーィィ. 04ィ 0909ィャ06ィー08ィィィャ ィェ02ィコ06ィー06080402 ィ 090702ィコィー04 0708ィ ィコィーィィ ツ0209ィコ06ィヲ 0802ィ 05ィィ04ィ 02ィィィィ 01ィ ィェィェ060006 ィャ02ィー0601ィ 09 0706ィャ06ィエィケ06 OpenGL. 030802010706050603ィィィャ, ツィー06 ィャィ ィー08ィィ02ィ oorshadow ィ 0405ィ 08ィ ィェ0202 070605ィョ ツ02ィェィ ィェィ ィャィィ ィィ04 000608ィャィョ0504 (LG)I 6モ1 GL. 05050201ィョ06ィエィィィヲ ィコ0601 09 0202 0706ィャ06ィエィケ06 09ィー0806ィィィー ィー02ィェィィ 010507 04ィ 01ィ ィェィェ06ィヲ 07050609ィコ0609ィーィィ: /* 00ィィ04ィョィ 05ィィ04ィィ08ィョ02ィャ 090202ィェィョ 09 06ィ 04 ツィェ06ィャ 080203ィィィャ02 */ RenderGeometry ( ) ; /* 020205ィ 02ィャ ィー02ィェィィ 070605ィョ0708060408ィ ツィェ04ィャィィ 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ 09ィャ0203ィィ09ィ ィェィィ07 020902ィー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 ( ) ; /* 0308060202ィィ08ィョ02ィャ ィー02ィェィケ */ glmultmatrixf ( ( GLfloat *) floorshadow ) ; /* 00ィィ04ィョィ 05ィィ04ィィ08ィョ02ィャ 090202ィェィョ 09 07080602ィコ02ィィィィ */

13106 0105ィ 09ィ 8. 0108ィ 00ィィ ツ0209ィコィィ02 ィ 05000608ィィィーィャ04 ィェィ 0609ィェ060902 OPENGL RenderGeometry ( ) ; glpopmatrix ( ) ; glenable (GL_LIGHTING) ; g l D i s a b l e (GL_BLEND) ; 00ィ ィー08ィィ02ィ oorshadow ィャ060302ィー ィ 04ィーィケ 070605ィョ ツ02ィェィ ィィ04 ィョ08ィ 09ィェ02ィェィィ07 8.1 09 0706ィャ06ィエィケ06 09050201ィョ06ィエ02ィヲ 00ィョィェィコ02ィィィィ: /* 07ィ 08ィ ィャ02ィー0804 : p l a n e 6モ1 ィコ06050000ィィ02ィィ02ィェィー04 ィョ08ィ 09ィェ02ィェィィ07 07050609ィコ0609ィーィィ l i g h t p o s 6モ1 ィコ06060801ィィィェィ ィー04 ィィ09ィー06 ツィェィィィコィ 090902ィーィ 0906040908ィ ィエィ 02ィー : m a t r i x 6モ1 080204ィョ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 ] ;

138.2. 030609ィー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ィェィィ, 070609ィー080602ィェィェ0402 ィーィ ィコィィィャ 06ィ 08ィ 0406ィャ, ィィィャ0206ィー 080701 ィェ02010609ィーィ ィーィコ0609: 0キ3 0207ィィ09ィ ィェィェ04ィヲ ィ 05000608ィィィーィャ 07080201070605ィ 00ィ 02ィー, ツィー06 07050609ィコ0609ィーィィ ィ 0209ィコ06ィェ02 ツィェ04, ィィ ィェ02 06ィー080204ィ 02ィー ィー02ィェィィ 0706 0008ィ ィェィィ0202. 01ィ 0708ィィィャ0208, 020905ィィ ィェ02ィコ06ィー060804ィヲ 06ィ ィイ02ィコィー 06ィーィ 08ィ 090409ィ 02ィー ィー02ィェィケ ィェィ 09ィー0605, 06ィェィ ィェ02 ィ ィョ0102ィー 06ィー0902ィコィ ィーィケ0907 0706 0008ィ ィェィィ0202, ィィ, ィー02ィャ ィ 06050202, 0604ィ 090608ィ ツィィ09ィ ィーィケ090707 ィェィ ィ 06ィコ0609ィョ06 070609020801ィェ0609ィーィケ 09ィー0605ィ. 0キ3 00 ィェ02ィコ06ィー06080401 ィャ0209ィーィ 01 ィー02ィェ02ィヲ ィャ060302ィー ィェィ ィ 050601ィ ィーィケ0907 05000002ィコィー 06010906ィヲィェ060006 09ィャ0203ィィ09ィ ィェィィ0707 (reblending), ィー.02. ィー02ィャィェ0402 0707ィーィェィ 09 ィー0201 ィョ ツィ 09ィーィコィ 01, 000102 090708060202ィィ080609ィ ィェィェ0402 ィー0802ィョ000605ィケィェィィィコィィ 07020802ィコ080409ィ 06ィー 0108ィョ00 0108ィョ00ィ. 0キ3 05 ィョ090205ィィ ツ02ィェィィ02ィャ ツィィ0905ィ 070609020801ィェ0609ィー02ィヲ 09050603ィェ0609ィーィケ ィ 05000608ィィィーィャィ 080204ィコ06 ィョ090205ィィ ツィィ09ィ 02ィー0907, ィー.ィコ. 010507 ィコィ 030106ィヲ 070609020801ィェ0609ィーィィ ィェィョ03ィェ06 04ィ ィェ060906 09ィー0806ィィィーィケ 090906 090202ィェィョ, 01ィ 0302 020905ィィ 070806ィ 0502ィャィ 06ィー0902 ツ02ィェィィ07 ィー02ィェ02ィヲ 0706 0008ィ ィェィィ0202 ィ ィョ0102ィー 08020302ィェィ. 0キ3 0602ィェィィ 06ィ 04 ツィェ06 ィィィャ0206ィー 08ィ 04ィャ04ィー0402 0008ィ ィェィィ0204, ィ 09 0708ィィ09020102ィェィェ06ィャ ィ 05000608ィィィーィャ02 06ィェィィ 0909020001ィ ィィィャ0206ィー 080204ィコィィ02 ィコ08ィ 07. チィ 09ィーィィ ツィェ06 ィィ04ィ 0203ィ ィーィケ 05ィー060006 0706040906050702ィー 08ィ 09 ツ02ィー ィー02ィェ02ィヲ ィィ04 ィェ0209ィコ0605ィケィコィィ01 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ, 08ィ 09070605060302ィェィェ0401 08070106ィャ ィィ 070609050201ィョ06ィエ0202 09ィャ0203ィィ09ィ ィェィィ02 080204ィョ05ィケィーィ ィー0609. 06ィャ0202ィー0907 08020302ィェィィ02 0702080906ィヲ ィィ 09ィー060806ィヲ 070806ィ 0502ィャ04. 020507 05ィー060006 ィィ09070605ィケ04ィョ02ィー0907 ィ ィョ000208 ィャィ 09ィコィィ (09ィャ. 07. 7.2). 06ィーィ ィコ, 04ィ 01ィ ツィ 06ィー0902 ツィケ 0904090601 000206ィャ02ィー08ィィィィ (ィー02ィェィィ) 0706 0008ィ ィェィィ0202 ィェ02ィコ06ィー060806ィヲ 070806ィィ04090605ィケィェ06ィヲ 06ィ 05ィ 09ィーィィ ィィ ィィ04ィ 0203ィ ィーィケ 06010906ィヲィェ060006 09ィャ0203ィィ-

13108 0105ィ 09ィ 8. 0108ィ 00ィィ ツ0209ィコィィ02 ィ 05000608ィィィーィャ04 ィェィ 0609ィェ060902 OPENGL 09ィ ィェィィ0707. 02ィ ィエィィィヲ ィ 05000608ィィィーィャ 08020302ィェィィ07 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ ィ ィョ000208ィ ィャィ 09ィコィィ ィーィ ィコ0609: 1) 06 ツィィィエィ 02ィャ ィ ィョ000208 ィャィ 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 ィ ィョ00020802 ィャィ 09ィコィィ 09 1; 3) 08ィィ09ィョ02ィャ ィー02ィェィィ 09 ィー0201 06ィ 05ィ 09ィー0701, 000102 09 ィ ィョ00020802 ィャィ 09ィコィィ ィョ09ィーィ ィェ06090502ィェ04 04ィェィ ツ02ィェィィ07; 020905ィィ ィー0209ィー 070806010601ィィィー, ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィャ 09 05ィーィィ 06ィ 05ィ 09ィーィィ 04ィェィ ツ02ィェィィ02 2. 0602070208ィケ 08ィ 0909ィャ06ィー08ィィィャ 05ィーィィ 05ィーィ 0704 ィ 06050202 0706010806ィ ィェ06. 1. /* 06 ツィィィエィ 02ィャ ィ ィョ000208 ィャィ 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. /* ィョ09050609ィィ02 0909020001ィ 0904070605ィェ02ィェ06 ィィ 04ィェィ ツ02ィェィィ02 09 ィ ィョ00020802 ィ ィョ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 ) ; /* 09 0506ィ 06ィャ 0905ィョ ツィ 02 04ィ ィャ02ィェ0702ィャ 04ィェィ ツ02ィェィィ02 09 ィ ィョ00020802 ィャィ 09ィコィィ */ g lstencilop (GL_REPLACE, GL_REPLACE, GL_REPLACE) ; /* 0904090601ィィィャ 000206ィャ02ィー08ィィ06, 0706 ィコ06ィー060806ィヲ 04ィ ィー02ィャ ィ ィョ0102ィー 06ィー0902 ツ02ィェィ ィー02ィェィケ */ RenderPlane ( ) ; 3. /* ィョ09050609ィィ02 0904070605ィェ02ィェ06 ィィ ィー0209ィー 01ィ 02ィー ィィ09ィーィィィェィョ ィー0605ィケィコ06 020905ィィ 04ィェィ ツ02ィェィィ02 09 ィ ィョ00020802 ィャィ 09ィコィィ 08ィ 09ィェ06 1 */

138.3. 050208ィコィ 05ィケィェ0402 06ィー08ィ 0302ィェィィ07 109 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 ィ ィョ00020802 08ィ 09ィェ06 2, 020905ィィ ィー02ィェィケ ィョ0302 090409020102ィェィ */ g lstencilop (GL_KEEP, GL_KEEP, GL_INCR) ; /* 0904090601ィィィャ ィー02ィェィィ */ RenderShadow ( ) ; 05ィー08060006 000609060807, 01ィ 0302 0708ィィ 0708ィィィャ02ィェ02ィェィィィィ ィャィ 09ィコィィ080609ィ ィェィィ07 0609ィーィ 06ィー0907 ィェ02ィコ06ィー06080402 070806ィ 0502ィャ04, 09090704ィ ィェィェ0402 09 08ィ ィ 06ィー06ィヲ z-ィ ィョ000208ィ. 00 ツィ 09ィーィェ0609ィーィィ, ィェ02ィコ06ィー06080402 ィョ ツィ 09ィーィコィィ ィー02ィェ02ィヲ ィャ0600ィョィー 09ィーィ ィーィケ ィェ0209ィィ01ィィィャ04ィャィィ. 020507 08020302ィェィィ07 05ィー06ィヲ 070806ィ 0502ィャ04 ィャ0603ィェ06 ィェ02ィャィェ060006 0708ィィ070601ィェ07ィーィケ ィー02ィェィィ ィェィ 01 07050609ィコ0609ィーィケ06 c 0706ィャ06ィエィケ06 ィャ0601ィィ00ィィィコィ 02ィィィィ ィョ08ィ 09ィェ02ィェィィ07, 0607ィィ090409ィ 06ィエ020006 07050609ィコ0609ィーィケ. 0207ィィ09ィ ィェィィ02 0108ィョ00ィィ01 ィャ02ィー06010609 0904010601ィィィー 04ィ 08ィ ィャィコィィ 01ィ ィェィェ060006 07060906ィ ィィ07. 8.3. 050208ィコィ 05ィケィェ0402 06ィー08ィ 0302ィェィィ07 00 05ィー06ィャ 08ィ 0401020502 ィャ04 08ィ 0909ィャ06ィー08ィィィャ ィ 05000608ィィィーィャ 070609ィー080602ィェィィ07 06ィー08ィ 0302ィェィィィヲ 06ィー 07050609ィコィィ01 06ィ ィイ02ィコィー0609. 06ィ ィコィィ02 06ィー08ィ 0302ィェィィ07 0708ィィ01ィ 06ィー ィ 0605ィケ03ィョ06 010609ィー06090208ィェ0609ィーィケ 070609ィー080602ィェィェ06ィャィョ ィィ0406ィ 08ィ 0302ィェィィ06 ィィ ィィ01 06ィーィェ0609ィィィー0205ィケィェ06 050200ィコ06 0802ィ 05ィィ040609ィ ィーィケ. 0805000608ィィィーィャ ィィ09070605ィケ04ィョ02ィー ィィィェィーィョィィィーィィ09ィェ0602 0708020109ィーィ 090502ィェィィ02 070605ィェ06ィヲ 090202ィェ04 09 040208ィコィ 0506ィャ ィコィ ィコ 090609ィーィ 090502ィェィェ06ィヲ ィィ04 0109ィョ01: 06ィェィ 09ィー0607ィエ02ィヲ07 ィィ 0609ィィ08ィーィョィ 05ィケィェ06ィヲ07 ィェィ 01060107ィエ02ィヲ0907 04ィ 040208ィコィ 0506ィャ. 050502010609ィ ィー0205ィケィェ06, 07080602020909 08ィィ090609ィ ィェィィ07 06ィー08ィ 0302ィェィィィヲ 090609ィー06ィィィー ィィ04 0109ィョ01 ツィ 09ィー02ィヲ: 1) 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ 06ィ 04 ツィェ06ィヲ 090202ィェ04 ィィ 2) 070609ィー080602ィェィィ07 ィィ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ 09ィィ08ィーィョィ 05ィケィェ06ィヲ. 020507 ィコィ 0301060006 06ィ ィイ02ィコィーィ 06ィェィ 09ィー0607ィエ02ィヲ07 090202ィェ04 09ィー0806ィィィー0907 020006 06ィー08ィ 0302ィェィェ04ィヲ 010906ィヲィェィィィコ, ィコ06ィー060804ィヲ ィェィ ィ 050601ィ ィー0205ィケ ィィ ィョ09ィィ01ィィィー 09 040208ィコィ 0502. 020507 ィィ05050609ィー08ィ 02ィィィィ 08ィ 0909ィャ06ィー08ィィィャ ィコ06ィャィェィ ィーィョ 09 040208ィコィ 0506ィャ ィェィ 09ィー02ィェ02. 0806ィャィェィ ィーィ ィィ 06ィ ィイ02ィコィー04, ィェィ 01060107ィエィィ020907 09 ィェ02ィヲ, 09040005070107ィー 09 040208ィコィ 0502 ィーィ ィコ, ィコィ ィコ 020905ィィ ィ 04 040208ィコィ 0506 ィ 040506 06ィコィェ06ィャ, ィ 04ィ ィェィィィャ ィ 0405ィ ィ 04 02ィエ02 0601ィェィ ィーィ ィコィ 07 0302 ィコ06ィャィェィ ィーィ 09 ィー02ィャ 0302 06ィ ィイ02ィコィーィ ィャィィ, ィェ06 09ィィィャィャ02ィー08ィィ ツィェ06 06ィー08ィ 0302ィェィェ04ィャィィ 06ィーィェ0609ィィィー0205ィケィェ06 07050609ィコ0609ィーィィ, 07080609020102ィェィェ06ィヲ ツ02080204 070609020801ィェ0609ィーィケ

13110 0105ィ 09ィ 8. 0108ィ 00ィィ ツ0209ィコィィ02 ィ 05000608ィィィーィャ04 ィェィ 0609ィェ060902 OPENGL 04ィィ09. 8.1. 050208ィコィ 05ィケィェ0602 06ィー08ィ 0302ィェィィ02 040208ィコィ 05ィ. 07070806ィエ02ィェィェ04ィヲ 09ィ 08ィィィ ィェィー ィ 05000608ィィィーィャィ 09060401ィ ィェィィ07 07050609ィコ060006 06ィー08ィ 0302ィェィィ07 090609ィー06ィィィー ィィ04 09050201ィョ06ィエィィ01 03ィ 000609: 1) 04ィィ09ィョ02ィャ 090202ィェィョ ィコィ ィコ 06ィ 04 ツィェ06, ィェ06 ィ 0204 06ィ ィイ02ィコィー0609-040208ィコィ 05. 2) 0609070605ィケ04ィョ07 ィ ィョ000208 ィャィ 09ィコィィ, 060008ィ ィェィィ ツィィ09ィ 02ィャ 01ィ 05ィケィェ02ィヲ03ィィィヲ 0904090601 07080602ィコ02ィィ02ィヲ 040208ィコィ 05ィ ィェィ 05ィコ08ィ ィェ. 3) 00ィィ04ィョィ 05ィィ04ィィ08ィョ02ィャ 090202ィェィョ, 06ィー08ィ 0302ィェィェィョ06 06ィーィェ0609ィィィー0205ィケィェ06 07050609ィコ0609ィーィィ 040208ィコィ 05ィ. 0308ィィ 05ィー06ィャ ィ ィョ000208 ィャィ 09ィコィィ 070604090605ィィィー 060008ィ ィェィィ ツィィィーィケ 0904090601 000608ィャ06ィヲ 07080602ィコ02ィィィィ 06ィ ィイ02ィコィーィ -040208ィコィ 05ィ. 06ィーィ 0706090502010609ィ ィー0205ィケィェ0609ィーィケ 0102ィヲ09ィー09ィィィヲ 070604090605ィィィー 070605ィョ ツィィィーィケ ィョィ 0201ィィィー0205ィケィェ04ィヲ 05000002ィコィー 06ィー08ィ 0302ィェィィ07. 04ィ 0909ィャ06ィー08ィィィャ 05ィーィ 0704 ィ 06050202 0706010806ィ ィェ06. 05ィェィ ツィ 05ィ ィェ0206ィ 010601ィィィャ06 ィェィ 08ィィ090609ィ ィーィケ 090202ィェィョ ィコィ ィコ 06ィ 04 ツィェ06. 0102 ィ ィョ0102ィャ 0609ィーィ ィェィ 0905ィィ09ィ ィーィケ0907 ィェィ 05ィー06ィャ 05ィーィ 0702 0706010806ィ ィェ06. 05ィ ィャ02ィーィィィャ ィー0605ィケィコ06, ツィー06, 06 ツィィィエィ 07 ィ ィョ00020804 OpenGL ィェ0207060908020109ィー0902ィェィェ06 0702080201 08ィィ090609ィ ィェィィ02ィャ, ィェィョ03ィェ06 ィェ02 04ィ ィ 04ィーィケ 06 ツィィ09ィーィィィーィケ ィ ィョ000208 ィャィ 09ィコィィ:

138.3. 050208ィコィ 05ィケィェ0402 06ィー08ィ 0302ィェィィ07 111 g l C l e a r (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT GL_STENCIL_BUFFER_BIT) ; 0006 090802ィャ07 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ 090202ィェ04 05ィョ ツ0302 ィェ02 08ィィ090609ィ ィーィケ 06ィ ィイ02ィコィー04, ィコ06ィー06080402 04ィ ィー02ィャ 09ィーィ ィェィョィー 040208ィコィ 05ィケィェ04ィャィィ. 01ィ 09ィー060806ィャ 05ィーィ 0702 ィェ0206ィ 010601ィィィャ06 060008ィ ィェィィ ツィィィーィケ 01ィ 05ィケィェ02ィヲ03ィィィヲ 0904090601 07080602ィコ02ィィ02ィヲ 040208ィコィ 05ィケィェ060006 06ィ ィイ02ィコィーィ ィェィ 05ィコ08ィ ィェ. 020507 05ィー060006 ィェィ 09ィー08ィ ィィ09ィ 02ィャ ィ ィョ000208 ィャィ 09ィコィィ ィィ 08ィィ09ィョ02ィャ 040208ィコィ 0506 glenable (GL_STENCIL_TEST) ; /* ィョ09050609ィィ02 09 09 02 00 01 ィ 0904070605ィェ02ィェ06 ィィ 04ィェィ ツ02ィェィィ02 09 ィ ィョ00020802 ィ ィョ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 ( ) ; 00 080204ィョ05ィケィーィ ィー02 ィャ04 070605ィョ ツィィ05ィィ: 0キ3 09 ィ ィョ00020802 ィコィ 0108ィ ィコ06080802ィコィーィェ06 ィェィ 08ィィ090609ィ ィェィェィ 07 090202ィェィ, 04ィ ィィ09ィコ0506- ツ02ィェィィ02ィャ 06ィ 05ィ 09ィーィィ 040208ィコィ 05ィ ; 0キ3 09 06ィ 05ィ 09ィーィィ 040208ィコィ 05ィ (ィーィ ィャ, 000102 ィャ04 0106ィーィィィャ 09ィィ0102ィーィケ 06ィー08ィ 0302ィェィィ02) 04ィェィ ツ02ィェィィ02 ィ ィョ000208ィ ィャィ 09ィコィィ 08ィ 09ィェ06 1. 01ィ ィー0802ィーィケ02ィャ 05ィーィ 0702 ィェィョ03ィェ06 ィェィ 08ィィ090609ィ ィーィケ 090202ィェィョ, 06ィー08ィ 0302ィェィェィョ06 06ィーィェ0609ィィィー0205ィケィェ06 07050609ィコ0609ィーィィ 040208ィコィ 05ィケィェ060006 06ィ ィイ02ィコィーィ. 05ィェィ ツィ 05ィ ィェィ 09ィー08ィ ィィ09ィ 02ィャ ィャィ ィー08ィィ02ィョ 06ィー08ィ 0302ィェィィ07. 00ィ ィー08ィィ02ィ 06ィー08ィ 0302ィェィィ07 01060503ィェィ 040208ィコィ 05ィケィェ06 06ィー08ィ 03ィ ィーィケ 090906 000206ィャ02ィー08ィィ06 06ィーィェ0609ィィィー0205ィケィェ06 07050609ィコ0609ィーィィ, 09 ィコ06ィー060806ィヲ 050203ィィィー 06ィ ィイ02ィコィー-040208ィコィ 0506. 0302 ィャ0603ィェ06 070605ィョ ツィィィーィケ, ィェィ 0708ィィィャ0208, 09 0706ィャ06ィエィケ06 ィーィ ィコ06ィヲ 00ィョィェィコ02ィィィィ (0706070806ィ ィョィヲィー02 070605ィョ ツィィィーィケ 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 ;

13112 0105ィ 09ィ 8. 0108ィ 00ィィ ツ0209ィコィィ02 ィ 05000608ィィィーィャ04 ィェィ 0609ィェ060902 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ィャ ィ ィョ000208 ィャィ 09ィコィィ ィェィ 08ィィ090609ィ ィェィィ02 ィー0605ィケィコ06 09 06ィ 05ィ 09ィー0701, 000102 04ィェィ ツ02ィェィィ02 ィ ィョ000208ィ 08ィ 09ィェ06 1: /* ィョ09050609ィィ02 0904070605ィェ02ィェ06 ィィ ィー0209ィー 01ィ 02ィー ィィ09ィーィィィェィョ ィー0605ィケィコ06 020905ィィ 04ィェィ ツ02ィェィィ02 09 ィ ィョ00020802 ィャィ 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 ) ; /* ィェィィ ツ020006 ィェ02 ィャ02ィェ0702ィャ 09 ィ ィョ00020802 */ g lstencilop (GL_KEEP, GL_KEEP, GL_KEEP) ; ィィ 08ィィ09ィョ02ィャ 090202ィェィョ 02ィエ02 08ィ 04 (ィ 0204 040208ィコィ 05ィケィェ0401 06ィ ィイ02ィコィー0609)

138.4. 0806ィェィー080605ィケィェ0402 09060708060904 113 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) ; 0306090502 05ィー060006 ィャ0603ィェ06 060702ィィ06ィェィ 05ィケィェ06 02ィエ02 08ィ 04 0904090209ィーィィ 040208ィコィ 05ィケィェ04ィヲ 06ィ ィイ02ィコィー, ィェィ 0708ィィィャ0208, 09 ィ 05ィケ00ィ -09ィャ020302ィェィィ02ィャ 010507 09060401ィ ィェィィ07 05000002ィコィーィ 04ィ ィャィョィーィェ02ィェィィ07 040208ィコィ 05ィ ィィ ィー.01. 02ィ 08ィ ィーィィィー02 09ィェィィィャィ ィェィィ02, ツィー06 0607ィィ09ィ ィェィェ04ィヲ ィャ02ィー0601 ィコ06080802ィコィーィェ06 08ィ ィ 06ィーィ 02ィー, ィー0605ィケィコ06 020905ィィ 04ィ 040208ィコィ 05ィケィェ04ィャ 06ィ ィイ02ィコィー06ィャ ィェ02ィー 0108ィョ00ィィ01 06ィ ィイ02ィコィー0609 090202ィェ04. 030605ィー06ィャィョ 09ィョィエ0209ィー09ィョ02ィー ィェ0209ィコ0605ィケィコ06 ィャ0601ィィ00ィィィコィ 02ィィィヲ 05ィー060006 ィ 05000608ィィィーィャィ, 06ィー05ィィ ツィ 06ィエィィ010907 0706090502010609ィ ィー0205ィケィェ0609ィーィケ06 0102ィヲ09ィー09ィィィヲ ィィ ィィィャ0206ィエィィ01 08ィ 04ィェ0402 060008ィ ィェィィ ツ02ィェィィ07 ィェィ 000206ィャ02ィー08ィィ06. 8.4. 0806ィェィー080605ィケィェ0402 09060708060904 0キ3 00 080204ィョ05ィケィーィ ィー02 ツ020006 090604ィェィィィコィ 02ィー 05000002ィコィー 09ィーィョ0702ィェ ツィ ィー0609ィーィィ ィィ0406ィ 08ィ 0302ィェィィ07? 0207ィィ03ィィィー02 ィ 05000608ィィィーィャ ィョ09ィー08ィ ィェ02ィェィィ07 09ィーィョ0702ィェ ツィ ィー0609ィーィィ. 0キ3 0306 ツ02ィャィョ 09 OpenGL ィェ02ィー 0909ィー080602ィェィェ06ィヲ 07060101020803ィコィィ 070609ィー080602ィェィィ07 ィー02ィェ02ィヲ? 0キ3 0808ィ ィーィコ06 0607ィィ03ィィィー02 0708020105060302ィェィェ04ィヲ ィャ02ィー0601 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ 040208ィコィ 05ィケィェ0401 06ィ ィイ02ィコィー0609. 0306 ツ02ィャィョ 06ィェ ィェ02 08ィ ィ 06ィーィ 02ィー, 020905ィィ 04ィ 040208ィコィ 0506ィャ ィェィ 01060107ィー0907 0108ィョ00ィィ02 06ィ ィイ02ィコィー04 090202ィェ04? チィー06 ィ ィョ0102ィー 06ィー08ィ 03ィ ィーィケ0907 09 05ィー06ィャ 0905ィョ ツィ 02? 030601ィョィャィ ィヲィー02, ィコィ ィコ 06ィ 06ィヲィーィィ 05ィー06 060008ィ ィェィィ ツ02ィェィィ02?

13

130105ィ 09ィ 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ 9.1. 020800ィ ィェィィ04ィ 02ィィ07 0708ィィ05060302ィェィィ07 01ィ 0702080904ィヲ 090400050701 ィャ060302ィー 0706ィコィ 04ィ ィーィケ0907, ツィー06 070806ィィ04090601ィィィー0205ィケィェ0609ィーィケ 0008ィ 00ィィ ツ0209ィコィィ01 0708ィィ05060302ィェィィィヲ, 0609ィェ0609ィ ィェィェ0401 ィェィ OpenGL, 060708020102050702ィー0907 09 07020809ィョ06 06 ツ02080201ィケ 070806ィィ04090601ィィィー0205ィケィェ0609ィーィケ06 0802ィ 05ィィ04ィ 02ィィィィ 09ィ ィャ06ィヲ ィ ィィィ 05ィィ06ィー02ィコィィ. 06ィー06 090208ィェ06, 0601ィェィ ィコ06 060800ィ ィェィィ04ィ 02ィィ07 0909020006 0708ィィ05060302ィェィィ07 ィーィ ィコ0302 06 ツ02ィェィケ 09ィ 03ィェィ. 9.1.1. 00040906ィコ06ィョ080609ィェ0209ィ 07 0607ィーィィィャィィ04ィ 02ィィ07 02ィ 04 ツィェ06 06ィー 0708060008ィ ィャィャ04 070601 OpenGL ィー0802ィ ィョ02ィー0907 09ィィ04ィョィ 05ィィ04ィ 02ィィ07 09040906ィコ060006 ィコィ ツ0209ィー09ィ ィェィ ィィィェィー0208ィ ィコィーィィ09ィェ0401 09ィコ06080609ィー0701. 0106 ィコィ ィコ 0708ィ 09ィィ0506, ィィ ィー06 ィィ 0108ィョ000602 0908ィ 04ィョ 070605ィョ ツィィィーィケ ィェ02 ィョ01ィ 02ィー0907. 050502010609ィ ィー0205ィケィェ06, ィェ0206ィ 010601ィィィャ 0706ィィ09ィコ ィコ06ィャ070806ィャィィ0909ィ ィャ020301ィョ ィコィ ツ0209ィー0906ィャ ィィ 070806ィィ04090601ィィィー0205ィケィェ0609ィーィケ06. 05ィョィエ0209ィー09ィョ02ィー ィャィェ06030209ィー0906 08ィ 0405ィィ ツィェ0401 0706010106010609, ィェ06 ィィ01 0706010806ィ ィェ0602 0607ィィ09ィ ィェィィ02 0904010601ィィィー 04ィ 07080201020504 05ィー060006 07060906ィ ィィ07. 0308ィィ09020102ィャ 05ィィ03ィケ ィェ0209ィコ0605ィケィコ06 0708ィィィャ02080609. 0キ3 000603ィェ06 06ィー06ィ 08ィ 03ィ ィーィケ 000206ィャ02ィー08ィィ06 090202ィェ04 09 ィェィィ04ィコィィィャ ィコィ ツ0209ィー0906ィャ 0906 090802ィャ07 ィ ィェィィィャィ 02ィィィィ, ィ 09 ィャ06ィャ02ィェィー04 0609ィーィ ィェ060906ィコ 0706ィコィ 040409ィ ィーィケ 0202 09 115

13116 0105ィ 09ィ 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ ィェィ ィィ05ィョ ツ03ィィィャ ィコィ ツ0209ィー0906ィャ. 0006 090802ィャ07 ィィィェィー0208ィ ィコィーィィ09ィェ060006 0908ィ ィエ02ィェィィ07 (ィェィ 0708ィィィャ0208, 0708ィィ ィェィ 03ィ ィー06ィヲ ィコ05ィ 09ィィ0302 ィャ0403ィィ) 09ィィ04ィョィ 05ィィ04ィィ080609ィ ィーィケ ィャ06010205ィケ 09 ィョィャ02ィェィケ0302ィェィェ04ィャ ィコ0605ィィ ツ0209ィー0906ィャ 0708ィィィャィィィーィィ090609. 0308ィィ 08ィィ090609ィ ィェィィィィ 09ィーィ ィーィィ ツィェ060006 ィィ0406ィ 08ィ 0302ィェィィ07 06ィー06ィ 08ィ 03ィ ィーィケ ィャ06010205ィケ 070605ィェ0609ィーィケ06. 0キ3 08ィェィ 050600ィィ ツィェ06, 06ィ ィイ02ィコィー04, ィコ06ィー06080402 08ィ 09070605ィ 00ィ 06ィー0907 01ィ 0502ィコ06 06ィー ィェィ ィ 050601ィ ィー020507, ィャ0600ィョィー ィ 04ィーィケ 0708020109ィーィ 090502ィェ04 ィャ0601020507ィャィィ 0706ィェィィ0302ィェィェ06ィヲ 09050603ィェ0609ィーィィ. 06ィー06 04ィェィ ツィィィー0205ィケィェ06 09ィェィィ04ィィィー ィェィ 0008ィョ04ィコィョ ィェィ 090902 09ィーィョ0702ィェィィ ィコ06ィェ0902ィヲ0208ィ OpenGL. 02ィ ィイ02ィコィー04, ィコ06ィー06080402 ィェィ 01060107ィー0907 070605ィェ0609ィーィケ06 09ィェ02 07060507 09ィィ01ィィィャ0609ィーィィ, ィャ0600ィョィー ィ 04ィーィケ 05000002ィコィーィィ09ィェ06 06ィー0902 ツ02ィェ04 ィ 0204 0702080201ィ ツィィ ィェィ ィコ06ィェ0902ィヲ0208 OpenGL 09 0706ィャ06ィエィケ06 070806090208ィコィィ 070607ィ 01ィ ィェィィ07 060008ィ ィェィィ ツィィ09ィ 06ィエィィ01 ィィ01 07080609ィー0401 06ィ ィイ02ィャ0609 (09000208 ィィ05ィィ ィコィョィ 0609) 09 07ィィ08ィ ィャィィ01ィョ 040802ィェィィ07. 9.1.2. 01ィィ04ィコ06ィョ080609ィェ0209ィ 07 0607ィーィィィャィィ04ィ 02ィィ07 02ィ ィイ02ィコィー04, 06ィー06ィ 08ィ 03ィ 02ィャ0402 09 0706ィャ06ィエィケ06 OpenGL, 0108ィ ィェ07ィー0907 09 ィェ02ィコ06ィー06080401 09ィー08ィョィコィーィョ08ィ 01 01ィ ィェィェ0401. 0201ィェィィ ィーィィ0704 ィーィ ィコィィ01 09ィー08ィョィコィーィョ08 ィ 06050202 05000002ィコィーィィ09ィェ04 09 ィィ09070605ィケ040609ィ ィェィィィィ, ツ02ィャ 0108ィョ00ィィ02, ツィー06 060708020102050702ィー 09ィコ06080609ィーィケ 09ィィ04ィョィ 05ィィ04ィ 02ィィィィ. 040205ィ ィー0205ィケィェ06, ツィー06ィ 04 ィィ09070605ィケ040609ィ 05ィィ09ィケ 09ィー08ィョィコィーィョ0804 01ィ ィェィェ0401, ィコ06ィー06080402 ィャ0600ィョィー ィ 04ィーィケ ィ 0409ィー0806 ィィ 05000002ィコィーィィ09ィェ06 0702080201ィ ィェ04 ィェィ ィコ06ィェ0902ィヲ0208 OpenGL. 01ィ 0708ィィィャ0208, 020905ィィ ィャ04 0106ィーィィィャ 06ィー06ィ 08ィ 04ィィィーィケ ィャィ 0909ィィ09 ィー0802ィョ000605ィケィェィィィコ0609, ィー06 ィィ09070605ィケ040609ィ ィェィィ02 ィョィコィ 04ィ ィー020507 ィェィ 05ィー06ィー ィャィ 0909ィィ09 04ィェィ ツィィィー0205ィケィェ06 ィ 06050202 05000002ィコィーィィ09ィェ06, ツ02ィャ 0702080201ィ ツィ 020006 OpenGL 0706050502ィャ02ィェィーィェ06. 0308ィィィャ0208. 030802010706050603ィィィャ, ツィー06 ィャ04 07ィィ0302ィャ 0708ィィ05060302ィェィィ02, ィコ06ィー06080602 0802ィ 05ィィ04ィョ02ィー 08ィィ090609ィ ィェィィ02 ィコィ 08ィー04 ィャ0209ィーィェ0609ィーィィ. 0201ィィィェ ィィ04 ィコ06ィャ0706ィェ02ィェィー0609 ィ ィ 0404 01ィ ィェィェ0401 0907ィィ0906ィコ 00060806010609 09 ィィ01 03ィィ08ィィィェ06ィヲ, 0106050006ィー06ィヲ ィィ ィェィ 0409ィ ィェィィ02ィャ. 050606ィー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 ; /* 070605060302ィェィィ02 0006080601ィ */ char *name ; /* ィェィ 0409ィ ィェィィ02 */

139.1. 020800ィ ィェィィ04ィ 02ィィ07 0708ィィ05060302ィェィィ07 117 } ; int l a r g e _ f l a g ; /* 0 = ィャィ 0502ィェィケィコィィィヲ, 1 = ィ 0605ィケ0306ィヲ */ 0507ィィ0906ィコ 00060806010609 ィャ060302ィー 0108ィ ィェィィィーィケ0907 ィコィ ィコ ィャィ 0909ィィ09 ィーィ ィコィィ01 09ィー08ィョィコィーィョ08. 020607ィョ09ィーィィィャ, ィャ04 07ィィ0302ィャ 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 08ィィ09ィョ02ィー 0006080601ィ ィェィ ィコィ 08ィー02 09 09ィィ0102 ィー06 ツ02ィコ 08ィ 04ィェ060006 08ィ 04ィャ0208ィ 09 07060107ィィ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ィ ィェィィ02 0006080601ィ */ 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ィ ツィェィ 0706 09050201ィョ06ィエィィィャ 0708ィィ ツィィィェィ ィャ: 0キ3 glpointsize 0904040409ィ 02ィー0907 010507 ィコィ 030106ィヲ ィィィー0208ィ 02ィィィィ 02ィィィコ05ィ ; 0キ3 ィャ020301ィョ glbegin ィィ glend 08ィィ09ィョ02ィー0907 ィー0605ィケィコ06 0601ィェィ ィー06 ツィコィ ; 0キ3 09020803ィィィェ04 060708020102050706ィー0907 09 ィェ020607ィーィィィャィ 05ィケィェ06ィャ 000608ィャィ ィー02. 01ィィ0302 0708ィィ09020102ィェ06 ィ 06050202 08ィ 02ィィ06ィェィ 05ィケィェ0602 08020302ィェィィ02: void draw_cities ( int n, struct c i t y c i t y l i s t [ ] ) {

13118 0105ィ 09ィ 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ 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ィャ 0906 09ィー0608ィョ06 06 ツ02080201ィケ */ 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ィ ィェィィ07 00060806010609 */ 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ィィィィ ィャ04 0904040409ィ 02ィャ glpointsize 0109ィ 030104 ィィ ィョ090205ィィ ツィィ09ィ 02ィャ ツィィ090506 09020803ィィィェ ィャ020301ィョ glbegin ィィ glend. 0201ィェィ ィコ06 0609ィーィ 06ィー0907 02ィエ02 07ィョィーィィ 010507 0607ィーィィィャィィ04ィ 02ィィィィ. 030905ィィ ィャ04 0706ィャ02-

139.1. 020800ィ ィェィィ04ィ 02ィィ07 0708ィィ05060302ィェィィ07 119 ィェ0702ィャ ィェィ 03ィィ 09ィー08ィョィコィーィョ0804 01ィ ィェィェ0401, ィー06 ィャ060302ィャ 02ィエ02 0706090409ィィィーィケ 05000002ィコィーィィ09ィェ0609ィーィケ 08ィィ090609ィ ィェィィ07 ィー06 ツ02ィコ. 01ィ 0708ィィィャ0208: struct c i t y _ l i s t { int num_cities ; /* ツィィ090506 00060806010609 09 0907ィィ09ィコ02 */ float * p o s i t i o n ; /* ィコ06060801ィィィェィ ィー04 0006080601ィ */ char **name ; /* ィョィコィ 04ィ ィー0205ィケ ィェィ ィェィ 0409ィ ィェィィ07 00060806010609 */ float s i z e ; /* 08ィ 04ィャ0208 ィー06 ツィコィィ, 06ィ 0604ィェィ ツィ 06ィエ02ィヲ 0006080601 */ } ; 0602070208ィケ 0006080601ィ 08ィ 04ィェ0401 08ィ 04ィャ02080609 0108ィ ィェ07ィー0907 09 08ィ 04ィェ0401 0907ィィ09ィコィ 01. 030605060302ィェィィ07 ィー06 ツ02ィコ 0108ィ ィェ07ィー0907 06ィー010205ィケィェ06 09 01ィィィェィ ィャィィ ツ0209ィコ06ィャ ィャィ 0909ィィ0902. 0306090502 0802060800ィ ィェィィ04ィ 02ィィィィ ィャ04 ィィ09ィコ0506 ツィ 02ィャ ィェ0206ィ 010601ィィィャ0609ィーィケ 09 ィョ09050609ィェ06ィャ 06070208ィ ィー060802 09ィェィョィー08ィィ glbegin/glend ィィ 070605ィョ ツィ 02ィャ 090604ィャ0603ィェ0609ィーィケ ィィ09070605ィケ040609ィ ィーィケ ィャィ 0909ィィ0904 09020803ィィィェ 010507 0607ィーィィィャィィ04ィ 02ィィィィ. 00 080204ィョ05ィケィーィ ィー02 ィェィ 03ィ 00ィョィェィコ02ィィ07 090400050701ィィィー 09050201ィョ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ィ ィェィィ02 0006080601ィ */ 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 ) ; }

13120 0105ィ 09ィ 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ 9.2. 0207ィーィィィャィィ04ィ 02ィィ07 09040406090609 OpenGL 9.2.1. 0302080201ィ ツィ 01ィ ィェィェ0401 09 OpenGL 00 01ィ ィェィェ06ィャ 08ィ 0401020502 08ィ 0909ィャ06ィー08ィィィャ 0907060906ィ 04 ィャィィィェィィィャィィ04ィ 02ィィィィ 090802ィャ02ィェィィ ィェィ 0702080201ィ ツィョ 01ィ ィェィェ0401 06 0708ィィィャィィィーィィ09ィ 01 09 OpenGL. 0609070605ィケ04ィョィヲィー02 09090704ィ ィェィェ0402 0708ィィィャィィィーィィ0904 05090704ィ ィェィェ0402 0708ィィィャィィィーィィ0904, ィーィ ィコィィ02 ィコィ ィコ GL_LINES, GL_LINE_LOOP, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN ィィ GL_QUAD_STRIP ィー0802ィ ィョ06ィー 010507 0607080201020502ィェィィ07 ィャ02ィェィケ0302 09020803ィィィェ, ツ02ィャ 06ィー010205ィケィェ0402 05ィィィェィィ07 ィィ05ィィ ィャィェ060006ィョ000605ィケィェィィィコ. 06ィー06 ィョィャ02ィェィケ03ィ 02ィー ィコ0605ィィ ツ0209ィー0906 01ィ ィェィェ0401, 0702080201ィ 09ィ 02ィャ0401 OpenGL. 0609070605ィケ04ィョィヲィー02 ィャィ 0909ィィ0904 09020803ィィィェ 01ィ ィ 0605ィケ03ィィィェ09ィー0902 ィ 0801ィィィー02ィコィーィョ08 04ィ ィャ02ィェィ ィャィェ06030209ィー0902ィェィェ0401 09040406090609 glvertex/glcolor/glnormal ィェィ ィャ0201ィ ィェィィ04ィャ ィャィ 0909ィィ090609 09020803ィィィェ ィャ060302ィー ィ 04ィーィケ 06 ツ02ィェィケ 0904ィィ00080403ィェ06ィヲ. 0609070605ィケ04ィョィヲィー02 ィィィェ0102ィコ09ィィ080609ィ ィェィェ0402 0708ィィィャィィィーィィ0904 00 ィェ02ィコ06ィー06080401 0905ィョ ツィ 0701 01ィ 0302 0708ィィ ィィ09070605ィケ040609ィ ィェィィィィ 09090704ィ ィェィェ0401 0708ィィィャィィィーィィ090609 GL_TRIANGLE_STRIP (GL_QUAD_STRIP) 09020803ィィィェ04 01ィョィ 05ィィ08ィョ06ィー0907. チィー06ィ 04 ィェ02 0702080201ィ 09ィ ィーィケ 09 OpenGL 01ィョィ 05ィィ, ィョ090205ィィ- ツィィ09ィ 07 ィェィ 0008ィョ04ィコィョ ィェィ 03ィィィェィョ, ィィ09070605ィケ04ィョィヲィー02 ィコ06ィャィ ィェ01ィョ gldrawelements(). 05ィ 01ィ 09ィ ィヲィー02 ィェ0206ィ 010601ィィィャ0402 ィャィ 0909ィィ0904 0601ィェ06ィヲ ィコ06ィャィ ィェ0106ィヲ 00ィャ0209ィー06 ィィ09070605ィケ040609ィ ィェィィ07 ィコ06ィャィ ィェ01 glvertexpointer, glcolorpointer, glnormalpointer 05ィョ ツ0302 070605ィケ040609ィ ィーィケ0907 0601ィェ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 ) ;

139.2. 0207ィーィィィャィィ04ィ 02ィィ07 09040406090609 OPENGL 121 06ィ ィコ, 020905ィィ ィィィャ0202ィー0907 09ィー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 0702080201ィ ィーィケ 09 0706ィャ06ィエィケ06 09050201ィョ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 ) ; ツィー06 0604ィェィ ツィ 02ィー, ツィー06 070208090402 ツ02ィー040802 oat 06ィーィェ060907ィー0907 ィコ 020902ィーィョ, 04ィ ィー02ィャ ィー08ィィ oat ィコ ィェ0608ィャィ 05ィィ, ィィ 070609050201ィェィィ02 ィー08ィィ oat 04ィ 01ィ 06ィー ィコ06060801ィィィェィ ィー04 09020803ィィィェ04. 0906050202 0706010806ィ ィェ0602 0607ィィ09ィ ィェィィ02 ィコ06ィャィ ィェ0104 09ィャ06ィー08ィィィー02 09 09070202ィィ00ィィィコィ 02ィィィィ OpenGL. 0908ィ ィェィィィー02 01ィ ィェィェ0402 06 09020803ィィィェィ 01 09 07ィ ィャ07ィーィィ 0706090502010609ィ ィー0205ィケィェ06 0306090502010609ィ ィー0205ィケィェ0602 08ィ 09070605060302ィェィィ02 01ィ ィェィェ0401 09 07ィ ィャ07ィーィィ ィョ05ィョ ツ03ィ 02ィー 09ィコ06080609ィーィケ 06ィ ィャ02ィェィ ィャ020301ィョ 0609ィェ0609ィェ06ィヲ 07ィ ィャ07ィーィケ06 ィィ 0008ィ 00ィィ ツ0209ィコ06ィヲ 07060109ィィ09ィー02ィャ06ィヲ. 0609070605ィケ04ィョィヲィー02 0902ィコィー0608ィェ0402 09020809ィィィィ glvertex, glcolor, glnormal ィィ gltexcoord. 08ィョィェィコ02ィィィィ glvertex, glcolor ィィ ィー.01., ィコ06ィー06080402 09 ィコィ ツ0209ィー0902 ィ 0800ィョィャ02ィェィー0609 0708ィィィェィィィャィ 06ィー ィョィコィ 04ィ ィー0205ィィ (ィェィ 0708ィィィャ0208, glvertex3fv(v)), ィャ0600ィョィー 08ィ ィ 06ィーィ ィーィケ 04ィェィ ツィィィー0205ィケィェ06 ィ 0409ィー080202, ツ02ィャ ィィ01 090606ィー0902ィー09ィー09ィョ06ィエィィ02 09020809ィィィィ glvertex3f(x,y,z). 07ィャ02ィェィケ03ィ ィヲィー02 09050603ィェ0609ィーィケ 0708ィィィャィィィーィィ090609 0006 ィャィェ0600ィィ01 0905ィョ ツィ 0701 ィ ィョ01ィケィー02 09ィェィィィャィ ィー0205ィケィェ04, ツィー06ィ 04 ィェ02 08ィ 04ィ ィィ09ィ ィーィケ ィ 0605ィケ03ィィ02 07050609ィコ0609ィーィィ ィェィ ツィ 09ィーィィ 09ィィ05ィケィェ0202, ツ02ィャ ィェ0206ィ 010601ィィィャ06. 030605ィコ09070208ィィィャ02ィェィーィィ08ィョィヲィー02, ィェィ 0708ィィィャ0208, 09 0708ィィィャィィィーィィ09ィ ィャィィ GLU 010507 0607080201020502ィェィィ07 ィェィ ィィ05ィョ ツ03020006 090606ィーィェ060302ィェィィ07 ィコィ ツ0209ィー09ィ ィィ 070806ィィ04090601ィィィー0205ィケィェ0609ィーィィ.

13122 0105ィ 09ィ 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ 0602ィコ09ィーィョ08ィィ080609ィ ィェィェ0402 06ィ ィイ02ィコィー04, ィェィ 0708ィィィャ0208, ィャ0600ィョィー ィ 04ィーィケ ィコィ ツ0209ィー0902ィェィェ06 06ィー06ィ 08ィ 0302ィェ04 09 ィェ02ィ 0605ィケ0306ィヲ 09050603ィェ0609ィーィケ06 000206ィャ02ィー08ィィィィ. 0609070605ィケ04ィョィヲィー02 01ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ 0609070605ィケ04ィョィヲィー02 01ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ 010507 ィェィ ィィィ 06050202 ツィ 09ィー06 0904090601ィィィャ0401 06ィ ィイ02ィコィー0609. 02ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ ィャ0600ィョィー 0108ィ ィェィィィーィケ0907 09 07ィ ィャ07ィーィィ 0008ィ 00ィィ ツ0209ィコ06ィヲ 07060109ィィ09ィー02ィャ04 ィィ, 090502010609ィ ィー0205ィケィェ06, ィィ09ィコ0506 ツィ ィーィケ ツィ 09ィー0402 07020802ィャ02ィエ02ィェィィ07 01ィ ィェィェ0401 ィィ04 0609ィェ0609ィェ06ィヲ 07ィ ィャ07ィーィィ. 0102 ィョィコィ 040409ィ ィヲィー02 ィェ02ィェィョ03ィェ0402 ィ ィー08ィィィ ィョィー04 09020803ィィィェ 030905ィィ 06090902ィエ02ィェィィ02 0904ィコ0506 ツ02ィェ06, ィェ02 0904040409ィ ィヲィー02 glnormal. 030905ィィ ィェ02 ィィ09070605ィケ04ィョ06ィー0907 ィー02ィコ09ィーィョ0804, ィェ02 0904040409ィ ィヲィー02 gltexcoord, ィィ ィー.01. 00ィィィェィィィャィィ04ィィ08ィョィヲィー02 ィコ0605ィィ ツ0209ィー0906 05ィィ03ィェ020006 ィコ0601ィ ィャ020301ィョ 06070208ィ ィー0608ィェ04ィャィィ 09ィコ06ィ ィコィ ィャィィ glbegin/glend 020507 ィャィ ィコ09ィィィャィ 05ィケィェ06ィヲ 070806ィィ04090601ィィィー0205ィケィェ0609ィーィィ ィェィ high-end 09ィィ09ィー02ィャィ 01 09ィ 03ィェ06, ツィー06ィ 04 ィィィェ000608ィャィ 02ィィ07 06 09020803ィィィェィ 01 ィ 0405ィ 0702080201ィ ィェィ 0008ィ 00ィィ ツ0209ィコ06ィヲ 07060109ィィ09ィー02ィャ02 ィャィ ィコ09ィィィャィ 05ィケィェ06 ィ 0409ィー0806. 0604ィ 0200ィ ィヲィー02 05ィィ03ィェ020006 ィコ0601ィ ィャ020301ィョ glbegin/glend. 0308ィィィャ0208 ィェ02ィョ01ィ ツィェ060006 08020302ィェィィ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 ( ) ;

139.2. 0207ィーィィィャィィ04ィ 02ィィ07 09040406090609 OPENGL 123 06ィーィ ィコ06ィェ09ィー08ィョィコ02ィィ07 07050601ィ ィー02ィャ, ツィー06 ィャ04 0708060902080702ィャ 07020802ィャ02ィェィェィョ06 lighting 0702080201 ィコィ 030106ィヲ 09020803ィィィェ06ィヲ. 06ィー060006 ィャ0603ィェ06 ィィ04ィ 0203ィ ィーィケ, 04ィ 09 ツ02ィー ツィ 09ィーィィ ツィェ060006 01ィョィ 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 ( ) ; } 9.2.2. 03080206ィ 08ィ 040609ィ ィェィィ07 03080206ィ 08ィ 040609ィ ィェィィ07 09ィコ0506 ツィ 06ィー 09 0902ィ 07 ィー08ィ ィェ09000608ィャィ 02ィィィィ 09020803ィィィェ 06ィー ィコ06060801ィィィェィ ィー, ィョィコィ 04ィ ィェィェ0401 09 glvertex, ィコ 06ィコ06ィェィェ04ィャ ィコ06060801ィィィェィ ィーィ ィャ, 06ィー0902- ツ02ィェィィ02, 06090902ィエ02ィェィィ02 ィィ ィー.01. 02090902ィエ02ィェィィ02 0キ3 0604ィ 0200ィ ィヲィー02 ィィ09070605ィケ040609ィ ィェィィ07 ィー06 ツ02 ツィェ0401 ィィ09ィー06 ツィェィィィコ0609 090902ィーィ. 0キ3 0604ィ 0200ィ ィヲィー02 ィィ09070605ィケ040609ィ ィェィィ07 0109ィョ0109ィー060806ィェィェ020006 06090902ィエ02ィェィィ07 (twosided lighting).

13124 0105ィ 09ィ 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ 0キ3 0604ィ 0200ィ ィヲィー02 ィィ09070605ィケ040609ィ ィェィィ07 0506ィコィ 05ィケィェ06ィヲ ィャ06010205ィィ 06090902ィエ02ィェィィ07. 0キ3 0604ィ 0200ィ ィヲィー02 ツィ 09ィー06ィヲ 09ィャ02ィェ04 07ィ 08ィ ィャ02ィー08ィ GL_SHININESS. 0キ3 04ィ 0909ィャ06ィー08ィィィー02 090604ィャ0603ィェ0609ィーィケ 04ィ 08ィ ィェ0202 07080609 ツィィィーィ ィーィケ 06090902ィエ02ィェィィ02. 000603ィェ06 070605ィョ ツィィィーィケ 05000002ィコィー 06090902ィエ02ィェィィ07, 04ィ 01ィ 09ィ 07 020902ィーィ 09020803ィィィェ 09ィャ0209ィー06 ィェ0608ィャィ 0502ィヲ. 02ィーィコ0506 ツィ ィヲィー02 ィェ0608ィャィ 05ィィ04ィ 02ィィ06 0902ィコィー06080609 ィェ0608ィャィ 0502ィヲ, ィコ060001ィ 05ィー06 ィェ02 0709050702ィー0907 ィェ0206ィ 010601ィィィャ04ィャ 0806ィャィ ィェ01ィ glenable/disable(gl_normalize) ィョ0708ィ 09050702ィー ィェ0608ィャィ 05ィィ04ィ 02ィィ02ィヲ 0902ィコィー06080609 ィェ0608ィャィ 0502ィヲ 0702080201 ィィ09070605ィケ040609ィ ィェィィ02ィャ. 030905ィィ 0904 ィェ02 ィィ09070605ィケ04ィョ02ィー02 ィコ06ィャィ ィェ01ィョ glscale, ィー06 ィェ0608ィャィ 05ィィ04ィ 02ィィ06 ィャ0603ィェ06 06ィーィコ0506 ツィィィーィケ ィ 0204 070609ィー060806ィェィェィィ01 05000002ィコィー0609. 0306 ィョィャ0605 ツィ ィェィィ06 05ィーィ 060702ィィ07 0904ィコ0506 ツ02ィェィ. 0609070605ィケ04ィョィヲィー02 09090704ィ ィェィェ0402 0708ィィィャィィィーィィ0904 05090704ィ ィェィェ0402 0708ィィィャィィィーィィ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ィー0906 01ィ ィェィェ0401, 0702080201ィ 09ィ 02ィャ0401 0008ィ 00ィィ- ツ0209ィコ06ィヲ 07060109ィィ09ィー02ィャ02. 9.2.3. 04ィ 09ィー0208ィィ04ィ 02ィィ07 04ィ 09ィー0208ィィ04ィ 02ィィ07 ツィ 09ィー06 0709050702ィー0907 ィョ04ィコィィィャ ィャ0209ィー06ィャ 0708060008ィ ィャィャィェ0401 0802ィ 05ィィ04ィ 02ィィィヲ OpenGL. 02ィーィコ0506 ツィ ィヲィー02 ィー0209ィー ィェィ 0005ィョィ ィィィェィョ, ィコ060001ィ 09 05ィー06ィャ ィェ02ィー ィェ0206ィ 010601ィィィャ0609ィーィィ 0806ィェ06090402 06ィ ィイ02ィコィー04, ィェィ 0708ィィィャ0208, ィャ0600ィョィー ィ 04ィーィケ ィェィ 08ィィ090609ィ ィェ04 ィ 0204 ィー0209ィーィ ィェィ 0005ィョィ ィィィェィョ, 020905ィィ 06ィェィィ 09ィィ04ィョィ 05ィィ04ィィ08ィョ02ィー0907 0702080904ィャィィ.

139.2. 0207ィーィィィャィィ04ィ 02ィィ07 09040406090609 OPENGL 125 0609070605ィケ04ィョィヲィー02 06ィー0902 ツ02ィェィィ02 06ィ 08ィ ィーィェ0401 0008ィ ィェ02ィヲ 070605ィィ0006ィェ0609 05ィ ィャィコィェィョィー0402 06ィ ィイ02ィコィー04 ィャ0600ィョィー ィ 04ィーィケ ィェィ 08ィィ090609ィ ィェ04 09 ィョ09ィーィ ィェ06090502ィェィェ04ィャ 080203ィィィャ06ィャ 06ィー0902 ツ02ィェィィ07 06ィ 08ィ ィーィェ0401 0008ィ ィェ02ィヲ glenable(gl_cull_face) 06ィェ060001ィ 05ィー06 0706040906050702ィー 06ィーィ 080609ィィィーィケ 0106 0706050609ィィィェ04 ィャィェ060006ィョ000605ィケィェィィィコ0609, ィェ02 08ィ 09ィー0208ィィ04ィョ07 ィィ01. 0604ィ 0200ィ ィヲィー02 05ィィ03ィェィィ01 06070208ィ 02ィィィヲ 09 07ィィィコ09020507ィャィィ 00ィ 09ィコィィ080609ィ ィェィィ02, ィ 05ィケ00ィ -09ィャ0203ィィ09ィ ィェィィ02 ィィ 0108ィョ00ィィ02 070607ィィィコ090205ィケィェ0402 06070208ィ 02ィィィィ ィャ0600ィョィー 04ィ ィェィィィャィ ィーィケ 09ィョィエ0209ィー0902ィェィェ0602 090802ィャ07 ィェィ 05ィーィ 0702 08ィ 09ィー0208ィィ04ィ 02ィィィィ. 02ィーィコ0506 ツィ ィヲィー02 090902 06070208ィ 02ィィィィ, ィコ06ィー06080402 0904 ィェ02 ィィ09070605ィケ04ィョ02ィー02. 07ィャ02ィェィケ03ィ ィヲィー02 08ィ 04ィャ0208 06ィコィェィ ィィ05ィィ 08ィ 0408020302ィェィィ02 05ィコ08ィ ィェィ 03080609ィー06ィヲ 0907060906ィ ィョィャ02ィェィケ03ィィィーィケ 090802ィャ07 08ィ 09ィー0208ィィ04ィ 02ィィィィ ィョィャ02ィェィケ03ィィィーィケ ツィィ090506 07ィィィコ09020502ィヲ, ィコ06ィー06080402 ィ ィョ01ィョィー ィェィ 08ィィ090609ィ ィェ04. 030905ィィ ィャ02ィェィケ03ィィ02 08ィ 04ィャ020804 06ィコィェィ ィィ05ィィ ィャ02ィェィケ030202 08ィ 0408020302ィェィィ02 05ィコ08ィ ィェィ 0708ィィ02ィャ0502ィャ04, ィー06 05ィー06 0106080603ィィィヲ 07ィョィーィケ 010507 ィョ090205ィィ ツ02ィェィィ07 09ィコ06080609ィーィィ 08ィ 09ィー0208ィィ04ィ 02ィィィィ. 9.2.4. 0602ィコ09ィーィョ08ィィ080609ィ ィェィィ02 01ィ 05060302ィェィィ02 ィー02ィコ09ィーィョ08 0709050702ィー0907 010608060006ィヲ 06070208ィ 02ィィ02ィヲ, ィコィ ィコ 09 0708060008ィ ィャィャィェ0401, ィーィ ィコ ィィ 09 ィ 0707ィ 08ィ ィーィェ0401 0802ィ 05ィィ04ィ 02ィィ0701. 0609070605ィケ04ィョィヲィー02 05000002ィコィーィィ09ィェ0402 000608ィャィ ィー04 0108ィ ィェ02ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィィヲ 080608ィャィ ィー GL_UNSIGNED_BYTE 06ィ 04 ツィェ06 ィェィ ィィィ 06050202 0909020006 070601010601ィィィー 010507 0702080201ィ ツィィ ィー02ィコ09ィーィョ0804 09 OpenGL. 02ィ ィイ0201ィィィェ07ィヲィー02 ィー02ィコ09ィーィョ0804 09 ィー02ィコ09ィーィョ08ィェ0402 06ィ ィイ02ィコィー04 ィィ05ィィ 01ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ. 06ィー06 060906ィ 02ィェィェ06 09ィ 03ィェ06, 020905ィィ 0904 ィィ09070605ィケ04ィョ02ィー02 ィェ0209ィコ0605ィケィコ06 ィー02ィコ09ィーィョ08, ィィ 0706040906050702ィー 0008ィ 00ィィ ツ0209ィコ06ィヲ 07060109ィィ09ィー02ィャ02 05000002ィコィーィィ09ィェ06 ィョ0708ィ 090507ィーィケ

13126 0105ィ 09ィ 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ 08ィ 04ィャ02ィエ02ィェィィ02ィャ ィー02ィコ09ィーィョ08 09 09ィィ01020607ィ ィャ07ィーィィ. 0102 ィィ09070605ィケ04ィョィヲィー02 ィー02ィコ09ィーィョ0804 ィ 0605ィケ03060006 08ィ 04ィャ0208ィ 0102ィ 0605ィケ03ィィ02 ィー02ィコ09ィーィョ0804 ィ 0409ィー080202 06ィ 08ィ ィ ィ ィー0409ィ 06ィー0907 ィィ 04ィ ィェィィィャィ 06ィー ィャ02ィェィケ0302 07ィ ィャ07ィーィィ, ツィー06 0706040906050702ィー 0108ィ ィェィィィーィケ 0908ィ 04ィョ ィェ0209ィコ0605ィケィコ06 ィー02ィコ09ィーィョ08 09 07ィ ィャ07ィーィィ 0008ィ 00ィィ ツ0209ィコ06ィヲ 07060109ィィ09ィー02ィャ04. 0806ィャィ ィィィェィィ08ィョィヲィー02 ィェ02ィ 0605ィケ03ィィ02 ィー02ィコ09ィーィョ0804 09 0601ィェィョ 030905ィィ 0904 ィィ09070605ィケ04ィョ02ィー02 ィェ0209ィコ0605ィケィコ06 ィャィ 0502ィェィケィコィィ01 ィー02ィコ09ィーィョ08, ィー06 ィャ0603ィェ06 06ィ ィイ0201ィィィェィィィーィケ ィィ01 09 0601ィェィョ ィ 0605ィケ03020006 08ィ 04ィャ0208ィ ィィ ィィ04ィャ02ィェィィィーィケ ィー02ィコ09ィーィョ08ィェ0402 ィコ06060801ィィィェィ ィー04 010507 08ィ ィ 06ィー04 09 ィェィョ03ィェ06ィヲ 070601ィー02ィコ09ィーィョ0806ィヲ. 06ィー06 0706040906050702ィー ィョィャ02ィェィケ03ィィィーィケ ツィィ090506 07020802ィコ0506 ツ02ィェィィィヲ ィー02ィコ09ィーィョ08. 08ィェィィィャィィ080609ィ ィェィェ0402 ィー02ィコ09ィーィョ0804 030905ィィ 0904 0106ィーィィィー02 ィィ09070605ィケ040609ィ ィーィケ ィ ィェィィィャィィ080609ィ ィェィェ0402 ィー02ィコ09ィーィョ0804, ィェ02 ィィ09070605ィケ04ィョィヲィー02 ィコ06ィャィ ィェ01ィョ glteximage2d ツィー06ィ 04 06ィ ィェ06090507ィーィケ 06ィ 08ィ 04 ィー02ィコ09ィーィョ0804. 00ィャ0209ィー06 05ィー060006 0802ィコ06ィャ02ィェ01ィョ02ィー0907 0904040409ィ ィーィケ gltexsubimage2d ィィ05ィィ gltexcopytexsubimage2d. 9.2.5. 02 ツィィ09ィーィコィ ィ ィョ0002080609 02 ツィィ09ィーィコィ ィ ィョ0002080609 020902ィーィ, 0005ィョィ ィィィェ04, ィャィ 09ィコィィ ィィ ィ ィョ000208ィ -ィェィ ィコ0607ィィィー020507 ィャ060302ィー ィー0802ィ 0609ィ ィーィケ 04ィェィ ツィィィー0205ィケィェ060006 090802ィャ02ィェィィ. 00 05ィー06ィャ 08ィ 0401020502 0607ィィ09ィ ィェ04 ィェ02ィコ06ィー06080402 0708ィィ02ィャ04, ィコ06ィー06080402 ィャ0600ィョィー 0706ィャ06 ツィケ 0607ィーィィィャィィ04ィィ080609ィ ィーィケ 05ィーィョ 06070208ィ 02ィィ06. 0609070605ィケ04ィョィヲィー02 ィコ06ィャィ ィェ01ィョ glclear 09 0609ィー06080603ィェ0609ィーィケ06 02 ツィィィエィ ィヲィー02 090902 ィェィョ03ィェ0402 ィ ィョ00020804 09 0706ィャ06ィエィケ06 0601ィェ06ィヲ ィコ06ィャィ ィェ0104 glclear. 0102090208ィェ06:

139.2. 0207ィーィィィャィィ04ィ 02ィィ07 09040406090609 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ィーィィィーィケ ィ ィョ000208 ィャィ 09ィコィィ? */ { g l C l e a r (GL_STENCIL_BUFFER_BIT) ; } 000208ィェ06: i f ( s t e n c i l i n g ) /* 06 ツィィ09ィーィィィーィケ ィ ィョ000208 ィャィ 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) ; } 9.2.6. 04ィ 04ィェ0602 03080609020807ィヲィー02 0603ィィィ ィコィィ GL 0906 090802ィャ07 ィェィ 07ィィ09ィ ィェィィ07 0708060008ィ ィャィャ 0004040409ィ ィヲィー02 ィコ06ィャィ ィェ01ィョ glgeterror() 010507 070806090208ィコィィ, ィェ02 070806ィィ0406030506 05ィィ 0603ィィィ ィコィィ 0906 090802ィャ07 0904040609ィ 0601ィェ06ィヲ ィィ04 00ィョィェィコ02ィィィヲ OpenGL. 08ィ ィコ 0708ィ 09ィィ0506, 0603ィィィ ィコィィ 090604ィェィィィコィ 06ィー ィィ04-04ィ ィェ02090208ィェ0401 07ィ 08ィ ィャ02ィー080609 ィコ06ィャィ ィェ01 OpenGL ィィ05ィィ ィェ02090208ィェ06ィヲ 0706090502010609ィ ィー0205ィケィェ0609ィーィィ ィコ06ィャィ ィェ01. 020507 00ィィィェィ 05ィケィェ0401 09020809ィィィヲ ィコ0601ィ 06ィーィコ0506 ツィ ィヲィー02 05ィーィィ 070806090208ィコィィ, ィーィ ィコ ィコィ ィコ 06ィェィィ ィャ0600ィョィー 09ィョィエ0209ィー0902ィェィェ06 04ィ ィャ020105ィィィーィケ 08ィ ィ 06ィーィョ. 020507 070806090208ィコィィ ィャ0603ィェ06 ィィ09070605ィケ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) ; 0609070605ィケ040609ィ ィーィケ 020006 ィャ0603ィェ06 ィーィ ィコ: glbegin (GL_TRIANGLES) ; g l V e r t e x 3 f ( 1, 1, 1 ) ; glend ( ) ;

13128 0105ィ 09ィ 9. 0207ィーィィィャィィ04ィ 02ィィ07 0708060008ィ ィャィャ CHECK_GL; 0609070605ィケ04ィョィヲィー02 glcolormaterial 09ィャ0209ィー06 glmaterial 030905ィィ 09 090202ィェ02 ィャィ ィー0208ィィィ 0504 06ィ ィイ02ィコィー0609 08ィ 0405ィィ ツィ 06ィー0907 05ィィ03ィケ 0601ィェィィィャ 07ィ 08ィ ィャ02ィー0806ィャ, ィコ06ィャィ ィェ01ィ glcolormaterial ィャ060302ィー ィ 04ィーィケ ィ 0409ィー080202, ツ02ィャ glmaterial. 00ィィィェィィィャィィ04ィィ08ィョィヲィー02 ツィィ090506 ィィ04ィャ02ィェ02ィェィィィヲ 090609ィー0607ィェィィ07 OpenGL 0806ィャィ ィェ0104, ィィ04ィャ02ィェ0706ィエィィ02 090609ィー0607ィェィィ02 OpenGL (glenable, gldisable, glbindtexture ィィ 0108ィョ00ィィ02), 0904040409ィ 06ィー 070609ィー0608ィェ0402 09ィェィョィー0802ィェィェィィ02 070806090208ィコィィ 0202050609ィーィェ0609ィーィィ, 09060401ィ ィェィィ02 0106070605ィェィィィー0205ィケィェ0401 09ィー08ィョィコィーィョ08 01ィ ィェィェ0401 ィィ ィー.01., ツィー06 ィャ060302ィー 0708ィィ090601ィィィーィケ ィコ 04ィ 01020803ィコィ ィャ. 0604ィ 0200ィ ィヲィー02 ィィ09070605ィケ040609ィ ィェィィ07 ィコ06ィャィ ィェ0104 glpolygonmode 030905ィィ 09ィ ィャ ィェ0206ィ 010601ィィィャ06 08ィィ090609ィ ィーィケ ィャィェ060006 ィェ0204ィ ィコ08ィ 0302ィェィェ0401 ィャィェ060006ィョ000605ィケィェィィィコ0609, ィィ09070605ィケ04ィョィヲィー02 glbegin 09 GL_POINTS, GL_LINES, GL_LINE_LOOP ィィ05ィィ GL_LINE_STRIP 09ィャ0209ィー06 ィィ04ィャ02ィェ02ィェィィ07 080203ィィィャィ 08ィィ090609ィ ィェィィ07 0708ィィィャィィィーィィ090609, ィーィ ィコ ィコィ ィコ 05ィー06 ィャ060302ィー ィ 04ィーィケ ィェィ ィャィェ060006 ィ 0409ィー080202. 0806ィェ02 ツィェ06, 05ィーィィ 0802ィコ06ィャ02ィェ01ィ 02ィィィィ 060109ィ ィー0409ィ 06ィー 05ィィ03ィケ ィャィ 05ィョ06 ツィ 09ィーィケ 090604ィャ0603ィェ0609ィー02ィヲ 0706 0607ィーィィィャィィ04ィ 02ィィィィ OpenGL-0708ィィ05060302ィェィィィヲ. 0602ィャ ィェ02 ィャ02ィェ0202, 0708ィィ ィィ01 0708ィ 09ィィ05ィケィェ06ィャ ィィ09070605ィケ040609ィ ィェィィィィ ィャ0603ィェ06 010609ィーィィ ツィケ 09ィョィエ0209ィー0902ィェィェ060006 ィョ09ィコ060802ィェィィ07 08ィ ィ 06ィー04 09ィ 03ィィ01 0708060008ィ ィャィャ. 9.3. 0806ィェィー080605ィケィェ0402 09060708060904 1) 03020802 ツィィ0905ィィィー02 ィィ04090209ィーィェ0402 09ィ ィャ ィャ02ィー060104 09040906ィコ06ィョ080609ィェ020906ィヲ 0607ィーィィィャィィ04ィ 02ィィィィ OpenGL-0708ィィ05060302ィェィィィヲ. 2) 0306 ツ02ィャィョ 070802010706 ツィーィィィー0205ィケィェ0202 ィィ09070605ィケ040609ィ ィェィィ02 09090704ィ ィェィェ0401 0708ィィィャィィィーィィ090609?

139.3. 0806ィェィー080605ィケィェ0402 09060708060904 129 3) 08ィ ィコィ 07 ィィ04 0109ィョ01 ィコ06ィャィ ィェ01 0904070605ィェ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 ) ;

13

13 チィ 09ィーィケ III 05060401ィ ィェィィ02 0708ィィ05060302ィェィィィヲ 09 OpenGL 131

13

130105ィ 09ィ 10. OpenGL-0708ィィ05060302ィェィィ07 09 0706ィャ06ィエィケ06 GLUT 10.1. 05ィー08ィョィコィーィョ08ィ GLUT-0708ィィ05060302ィェィィ07 02ィ 050202 ィ ィョ0102ィャ 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ 070609ィー080602ィェィィ02 ィコ06ィェ090605ィケィェ060006 0708ィィ05060302ィェィィ07 0708ィィ 0706ィャ06ィエィィ ィ ィィィ 05ィィ06ィー02ィコィィ GLUT. 06ィーィ ィ ィィィ 05ィィ06ィー02ィコィ 06ィ 02090702 ツィィ09ィ 02ィー 0201ィィィェ04ィヲ ィィィェィー02080002ィヲ09 010507 08ィ ィ 06ィー04 09 06ィコィェィ ィャィィ 09ィェ02 04ィ 09ィィ09ィィィャ0609ィーィィ 06ィー 0705ィ ィー000608ィャ04, 070605ィー06ィャィョ 0607ィィ090409ィ 02ィャィ 07 ィェィィ0302 09ィー08ィョィコィーィョ08ィ 0708ィィ05060302ィェィィ07 0609ィーィ 02ィー0907 ィェ02ィィ04ィャ02ィェィェ06ィヲ 010507 06070208ィ 02ィィ06ィェィェ0401 09ィィ09ィー02ィャ Windows, Linux ィィ 0108ィョ00ィィ01. 08ィョィェィコ02ィィィィ GLUT ィャ0600ィョィー ィ 04ィーィケ ィコ05ィ 0909ィィ00ィィ02ィィ080609ィ ィェ04 ィェィ ィェ0209ィコ0605ィケィコ06 0008ィョ0707 0706 09090602ィャィョ ィェィ 04ィェィ ツ02ィェィィ06: 0キ3 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ07; 0キ3 ィェィ ツィ 0506 06ィ 08ィ ィ 06ィーィコィィ 0906ィ 04ィーィィィヲ; 0キ3 ィョ0708ィ 090502ィェィィ02 06ィコィェィ ィャィィ; 0キ3 ィョ0708ィ 090502ィェィィ02 ィャ02ィェ06; 0キ3 080200ィィ09ィー08ィ 02ィィ07 00ィョィェィコ02ィィィヲ 09 06ィ 08ィ ィーィェ04ィャ 090404060906ィャ; 133

13134 0105ィ 09ィ 10. OPENGL-0708ィィ05060302ィェィィ07 09 0706ィャ06ィエィケ06 GLUT 0キ3 ィョ0708ィ 090502ィェィィ02 ィィィェ0102ィコ09ィィ080609ィ ィェィェ06ィヲ 07ィ 05ィィィー0806ィヲ 020902ィー0609; 0キ3 06ィー06ィ 08ィ 0302ィェィィ02 0308ィィ00ィー0609; 0キ3 06ィー06ィ 08ィ 0302ィェィィ02 0106070605ィェィィィー0205ィケィェ0401 000206ィャ02ィー08ィィ ツ0209ィコィィ01 00ィィ00ィョ08 (ィー0608, ィコ06ィェィョ09 ィィ 0108.). 06ィェィィ02ィィィ 05ィィ04ィ 02ィィ07 070806090601ィィィー0907 09 0706ィャ06ィエィケ06 00ィョィェィコ02ィィィィ: g l u t I n i t ( int * argcp, char ** argv ) 03020802ィャ02ィェィェィ 07 argcp 0209ィーィケ ィョィコィ 04ィ ィー0205ィケ ィェィ 09ィーィ ィェ01ィ 08ィーィェィョ06 07020802ィャ02ィェィェィョ06 argc, 0607ィィ090409ィ 02ィャィョ06 09 00ィョィェィコ02ィィィィ main(), ィ argv ィョィコィ 04ィ ィー0205ィケ ィェィ 07ィ 08ィ ィャ02ィー0804, 0702080201ィ 09ィ 02ィャ0402 0708060008ィ ィャィャ02 0708ィィ 04ィ 07ィョ09ィコ02, ィコ06ィー060804ィヲ 0607ィィ090409ィ 02ィー0907 ィーィ ィャ 0302. 06ィーィ 00ィョィェィコ02ィィ07 070806090601ィィィー ィェ0206ィ 010601ィィィャ0402 ィェィ ツィ 05ィケィェ0402 0102ィヲ09ィー09ィィ07 010507 070609ィー080602ィェィィ07 06ィコィェィ 0708ィィ05060302ィェィィ07, ィィ ィー0605ィケィコ06 ィェ0209ィコ0605ィケィコ06 00ィョィェィコ02ィィィヲ GLUT ィャ0600ィョィー ィ 04ィーィケ 09040409ィ ィェ04 0106 ィェ0202. 08 ィェィィィャ 06ィーィェ060907ィー0907: glutinitwindowposition ( int x, int y ) glutinitwindowsize ( int width, int height ) glutinitdisplaymode ( unsigned int mode) 030208090402 010902 00ィョィェィコ02ィィィィ 04ィ 01ィ 06ィー 090606ィー0902ィー09ィー0902ィェィェ06 070605060302ィェィィ02 ィィ 08ィ 04ィャ0208 06ィコィェィ, ィ 070609050201ィェ0707 00ィョィェィコ02ィィ07 060708020102050702ィー 08ィ 0405ィィ ツィェ0402 080203ィィィャ04 06ィー06ィ 08ィ 0302ィェィィ07 ィィィェ000608ィャィ 02ィィィィ, ィコ06ィー06080402 ィャ0600ィョィー 090609ィャ0209ィーィェ06 04ィ 01ィ 09ィ ィーィケ0907 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ 06070208ィ 02ィィィィ 0706ィ ィィィー0609060006 06ィィ05ィィ07 (06 07): GLUT_RGBA 040203ィィィャ RGBA. 0609070605ィケ04ィョ02ィー0907 0706 ィョィャ0605 ツィ ィェィィ06, 020905ィィ ィェ02 ィョィコィ 04ィ ィェ04 080203ィィィャ04 GLUT_RGBA ィィ05ィィ GLUT_INDEX. GLUT_RGB 0606 0302, ツィー06 ィィ GLUT_RGBA. GLUT_INDEX 040203ィィィャ ィィィェ0102ィコ09ィィ080609ィ ィェィェ0401 020902ィー0609 (ィィ09070605ィケ040609ィ ィェィィ02 07ィ 05ィィィー0804). 02ィーィャ02ィェ0702ィー GLUT_RGBA. GLUT_SINGLE 02ィコィェ06 09 0601ィィィェ06 ツィェ04ィャ ィ ィョ00020806ィャ. 0609070605ィケ04ィョ02ィー0907 0706 ィョィャ0605 ツィ ィェィィ06. GLUT_DOUBLE 02ィコィェ06 09 010906ィヲィェ04ィャ ィ ィョ00020806ィャ. 02ィーィャ02ィェ0702ィー GLUT_SINGLE.

1310.1. 05ィー08ィョィコィーィョ08ィ GLUT-0708ィィ05060302ィェィィ07 135 GLUT_STENCIL 02ィコィェ06 09 ィ ィョ00020806ィャ ィャィ 09ィコィィ. GLUT_ACCUM 02ィコィェ06 09 ィ ィョ00020806ィャ-ィェィ ィコ0607ィィィー020502ィャ. GLUT_DEPTH 02ィコィェ06 09 ィ ィョ00020806ィャ 0005ィョィ ィィィェ04. 06ィー06 ィェ02070605ィェ04ィヲ 0907ィィ0906ィコ 07ィ 08ィ ィャ02ィー080609 010507 01ィ ィェィェ06ィヲ 00ィョィェィコ02ィィィィ, 0601ィェィ ィコ06 010507 ィ 0605ィケ03ィィィェ09ィー09ィ 0905ィョ ツィ 0209 05ィー060006 ィ 0409ィ 02ィー 010609ィーィ ィー06 ツィェ06. 04ィ ィ 06ィーィ 09 ィ ィョ00020806ィャ ィャィ 09ィコィィ ィィ ィ ィョ00020806ィャ ィェィ ィコ06070502ィェィィ07 0607ィィ09ィ ィェィ 09 0005ィ 0902 7. 08ィョィェィコ02ィィィィ ィ ィィィ 05ィィ06ィー02ィコィィ GLUT 0802ィ 05ィィ04ィョ06ィー ィーィ ィコ ィェィ 040409ィ 02ィャ04ィヲ 0906ィ 04ィーィィィヲィェ06-ィョ0708ィ 09050702ィャ04ィヲ ィャ0201ィ ィェィィ04ィャ. 06ィー06 0604ィェィ ツィ 02ィー, ツィー06 0209ィーィケ ィェ02ィコ06ィー060804ィヲ 09ィェィョィー0802ィェィェィィィヲ 02ィィィコ05, ィコ06ィー060804ィヲ 04ィ 07ィョ09ィコィ 02ィー0907 0706090502 090606ィー0902ィー09ィー09ィョ06ィエ02ィヲ ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ 06ィ 08ィ ィ ィ ィー0409ィ 02ィー 0601ィェ06 04ィ 0108ィョ00ィィィャ 090902 0906ィ 04ィーィィ07, 06ィ ィイ07090502ィェィェ0402 0906 090802ィャ07 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ. 08 0906ィ 04ィーィィ07ィャ 06ィーィェ060907ィー0907: ィエ0205 ツ06ィコ ィャ0403ィィ, 04ィ ィコ0804ィーィィ02 06ィコィェィ, ィィ04ィャ02ィェ02ィェィィ02 090906ィヲ09ィー09 06ィコィェィ, 070208020109ィィ0302ィェィィ02 ィコィョ08090608ィ, ィェィ 03ィ ィーィィ02 ィコ05ィ 09ィィ03ィィ ィィ 0607ィョ09ィー060207 (idle) 0906ィ 04ィーィィ02, ィコ060001ィ ィェィィ ツ020006 ィェ02 070806ィィ09010601ィィィー. 020507 07080609020102ィェィィ07 070208ィィ0601ィィ ツ0209ィコ06ィヲ 070806090208ィコィィ 09060902080302ィェィィ07 ィー060006 ィィ05ィィ ィィィェ060006 0906ィ 04ィーィィ07 ィェィ 0106 04ィ 080200ィィ09ィー08ィィ080609ィ ィーィケ 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 ィ ィョ0102ィー 020006 06ィ 08ィ ィ ィ ィー0409ィ ィーィケ. 020507 05ィー060006 ィィ09070605ィケ04ィョ06ィー0907 00ィョィェィコ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ィャ 010507 ィェィィ01 0709050702ィー0907 ィィィャ07 090606ィー0902ィー09ィー09ィョ06ィエ02ィヲ 00ィョィェィコ02ィィィィ 04ィ 01ィ ィェィェ060006 ィーィィ07ィ. 05 0706ィャ06ィエィケ06 glutdisplayfunc() 04ィ 01ィ 02ィー0907 00ィョィェィコ02ィィ07 08ィィ090609ィ ィェィィ07 010507 06ィコィェィ 0708ィィ05060302ィェィィ07, ィコ06ィー0608ィ 07 0904040409ィ 02ィー0907 0708ィィ ィェ0206ィ 010601ィィィャ0609ィーィィ 09060401ィ ィェィィ07 ィィ05ィィ 09060909ィーィ ィェ06090502ィェィィ07 ィィ0406ィ 08ィ 0302ィェィィ07. 020507

13136 0105ィ 09ィ 10. OPENGL-0708ィィ05060302ィェィィ07 09 0706ィャ06ィエィケ06 GLUT 0709ィェ060006 ィョィコィ 04ィ ィェィィ07, ツィー06 06ィコィェ06 ィェィ 0106 06ィ ィェ0609ィィィーィケ, ィィィェ060001ィ ィョ0106ィ ィェ06 ィィ09070605ィケ040609ィ ィーィケ 00ィョィェィコ02ィィ06 void glutpostredisplay ( void ) チ02080204 glutreshapefunc() ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー0907 00ィョィェィコ02ィィ07 06ィ 08ィ ィ 06ィーィコィィ ィィ04ィャ02ィェ02ィェィィ07 08ィ 04ィャ02080609 06ィコィェィ 070605ィケ040609ィ ィー020502ィャ, ィコ06ィー060806ィヲ 0702080201ィ 06ィー0907 ィェ06090402 08ィ 04ィャ020804. glutmousefunc() 060708020102050702ィー 00ィョィェィコ02ィィ06-06ィ 08ィ ィ 06ィー ツィィィコ ィコ06ィャィ ィェ01 06ィー ィャ0403ィィ, ィ glutidlefunc() 04ィ 01ィ 02ィー 00ィョィェィコ02ィィ06, ィコ06ィー0608ィ 07 ィ ィョ0102ィー 0904040409ィ ィーィケ0907 ィコィ 030104ィヲ 08ィ 04, ィコ060001ィ ィェ02ィー 0906ィ 04ィーィィィヲ 06ィー 070605ィケ040609ィ ィー020507. 08ィョィェィコ02ィィ07, 060708020102050702ィャィ 07 glutmotionfun09(), 0904040409ィ 02ィー0907, ィコ060001ィ 070605ィケ040609ィ ィー0205ィケ 0109ィィ00ィ 02ィー ィョィコィ 04ィ ィー0205ィケ ィャ0403ィィ, ィョ01020803ィィ09ィ 07 ィコィェ0607ィコィョ ィャ0403ィィ. glutpassivemotionfunc 080200ィィ09ィー08ィィ08ィョ02ィー 00ィョィェィコ02ィィ06, 0904040409ィ 02ィャィョ06, 020905ィィ 070605ィケ040609ィ ィー0205ィケ 0109ィィ00ィ 02ィー ィョィコィ 04ィ ィー0205ィケ ィャ0403ィィ ィィ ィェ02 ィェィ 03ィ ィー06 ィェィィ 0601ィェ06ィヲ ィコ070607ィコィィ ィャ0403ィィ. 0806ィェィー080605ィケ 09090201 0906ィ 04ィーィィィヲ 070806ィィ09010601ィィィー 09ィェィョィー08ィィ ィ 0209ィコ06ィェ02 ツィェ060006 02ィィィコ05ィ 09 00ィョィェィコ02ィィィィ void glutmainloop ( void ) ィコ06ィー0608ィ 07 06ィ 04 ツィェ06 0904040409ィ 02ィー0907 09 ィコ06ィェ0202 0506ィ 06ィヲ 0708060008ィ ィャィャ04, ィィ09070605ィケ04ィョ06ィエ02ィヲ GLUT. 05ィー08ィョィコィーィョ08ィ 0708ィィ05060302ィェィィ07, ィィ09070605ィケ04ィョ06ィエ020006 ィ ィェィィィャィ 02ィィ06, ィ ィョ0102ィー 09050201ィョ06ィエ02ィヲ: #i n c l u d e <GL/ g l u t. h> void MyIdle ( void ) { /* 080601, ィコ06ィー060804ィヲ ィャ02ィェ0702ィー 07020802ィャ02ィェィェ0402, 060708020102050706ィエィィ02 09050201ィョ06ィエィィィヲ ィコィ 0108 */... } ; void MyDisplay ( void ) { /* 080601 OpenGL, ィコ06ィー060804ィヲ 06ィー06ィ 08ィ 03ィ 02ィー ィコィ 0108 */...

1310.2. GLUT 09 0908020102 MICROSOFT VISUAL C++ 6.0 137 /* 0306090502 08ィィ090609ィ ィェィィ07 0702080209ィーィ 09050702ィャ ィ ィョ00020804 */ 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, 4 8 0 ) ; glutinitwindowposition (0, 0 ) ; /* 02ィーィコ0804ィーィィ02 06ィコィェィ */ glutcreatewindow ( "My OpenGL Application " ) ; /* 0004ィ 0608 080203ィィィャィ : 010906ィヲィェ06ィヲ ィ ィョ000208 ィィ RGBA 020902ィーィ */ glutinitdisplaymode (GLUT_RGBA GLUT_DOUBLE GLUT_DEPTH) ; /* 040200ィィ09ィー08ィ 02ィィ07 0904040409ィ 02ィャ0401 00ィョィェィコ02ィィィヲ */ glutdisplayfunc ( MyDisplay ) ; glutidlefunc ( MyIdle ) ; /* 05ィ 07ィョ09ィコ ィャ0201ィ ィェィィ04ィャィ 06ィ 08ィ ィ 06ィーィコィィ 0906ィ 04ィーィィィヲ */ glutmainloop ( ) ; } ; 00 0905ィョ ツィ 02, 020905ィィ 0708ィィ05060302ィェィィ02 01060503ィェ06 09ィー0806ィィィーィケ 09ィーィ ィーィィ ツィェ0602 ィィ0406ィ 08ィ 0302ィェィィ02, ィャ0603ィェ06 04ィ ィャ02ィェィィィーィケ GLUT_DOUBLE ィェィ GLUT_SINGLE, ィーィ ィコ ィコィ ィコ 0601ィェ060006 ィ ィョ000208ィ 09 05ィー06ィャ 0905ィョ ツィ 02 ィ ィョ0102ィー 010609ィーィ ィー06 ツィェ06, ィィ ィョィ 08ィ ィーィケ 0904040609 00ィョィェィコ02ィィィィ glutidlefunc(). 10.2. GLUT 09 0908020102 Microsoft Visual C++ 6.0 0302080201 ィェィ ツィ 0506ィャ 08ィ ィ 06ィー04 ィェ0206ィ 010601ィィィャ06 09ィコ0607ィィ080609ィ ィーィケ 00ィ ィヲ0504 glut.h, glut32.lib glut32.dll 09 ィコィ ィーィ 050600ィィ MSVC Include Gl, MSVC Lib, Windows System 090606ィー0902ィー09ィー0902ィェィェ06. 06ィ ィコ0302 09 05ィーィィ01 ィコィ ィーィ 050600ィ 01 ィェィ 0106 070806090208ィィィーィケ ィェィ 05ィィ ツィィ02 00ィ ィヲ050609 gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, ィコ06ィー06080402 06ィ 04 ツィェ06 0901060107ィー 09 090609ィーィ 09 Visual C++ ィィ Windows. 0308ィィ ィィ09070605ィケ040609ィ ィェィィィィ ィコ06ィャィ ィェ01 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ

13138 0105ィ 09ィ 10. OPENGL-0708ィィ05060302ィェィィ07 09 0706ィャ06ィエィケ06 GLUT GLAUX ィコ 07020802 ツィィ090502ィェィェ04ィャ 00ィ ィヲ05ィ ィャ ィェィ 0106 0106ィ ィ 09ィィィーィケ 070601ィコ0506 ツィ 02ィャ0402 00ィ ィヲ0504 ィ ィィィ 05ィィ06ィー02ィコィィ glaux.h ィィ glaux.lib. 020507 09060401ィ ィェィィ07 0708ィィ05060302ィェィィ07 ィェィ 0106 0904070605ィェィィィーィケ 09050201ィョ06ィエィィ02 0102ィヲ09ィー09ィィ07: 0キ3 05060401ィ ィェィィ02 07080602ィコィーィ : 010507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ FileNew ProjectsWin32 Console Application, ィェィ ィ 08ィ ィーィケ ィィィャ07 07080602ィコィーィ, OK. 0キ3 00 07060709ィィ090302ィャ0907 06ィコィェ02 0904ィ 08ィ ィーィケ 06An empty project07, Finish, OK. 0キ3 0602ィコ09ィー 0708060008ィ ィャィャ04 ィャ0603ィェ06 05ィィィ 06 08ィ 04ィャ0209ィーィィィーィケ 09 09060401ィ ィェィェ06ィャ ィー02ィコ09ィー060906ィャ 00ィ ィヲ0502 (0904ィ 08ィ 09 FileNewFilesText File), 05ィィィ 06 0106ィ ィ 09ィィィーィケ 00ィ ィヲ05 09 08ィ 0903ィィ0802ィェィィ02ィャ *.c ィィ05ィィ *.cpp 09 07080602ィコィー (0904ィ 08ィ 09 ProjectAdd To ProjectFiles). 0キ3 030601ィコ0506 ツィィィーィケ ィコ 07080602ィコィーィョ ィ ィィィ 05ィィ06ィー02ィコィィ OpenGL. 020507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ ProjectSettingsLink ィィ 09 07060502 Object library modules ィェィ ィ 08ィ ィーィケ ィェィ 0409ィ ィェィィ07 ィェィョ03ィェ0401 ィ ィィィ 05ィィ06ィー02ィコ: opengl32.lib, glu32.lib, glut32.lib ィィ, 020905ィィ ィェィ 0106, glaux.lib. 0キ3 020507 ィコ06ィャ07ィィ050702ィィィィ 0904ィ 08ィ ィーィケ BuildBuild program.exe, 010507 0904070605ィェ02ィェィィ07 BuildExecute program.exe. 0キ3 チィー06ィ 04 0708ィィ 04ィ 07ィョ09ィコ02 ィェ02 070607090507050609ィケ ィー02ィコ09ィー06090602 06ィコィェ06, ィェィ 0106 0904ィ 08ィ ィーィケ ProjectSettingsLink ィィ 09 07060502 Project Options 09ィャ0209ィー06 06subsystem:console07 ィェィ ィ 08ィ ィーィケ 06subsystem:windows07, ィィ ィェィ ィ 08ィ ィーィケ ィーィ ィャ 0302 09ィー0806ィコィョ 06/entry:mainCRTStartup07. 08060001ィ 0708060008ィ ィャィャィ 0006ィー0609ィ, 0802ィコ06ィャ02ィェ01ィョ02ィー0907 07020802ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ 0202 09 080203ィィィャ02 06Release07 010507 0607ィーィィィャィィ04ィ 02ィィィィ 0706 ィ 0409ィー08060102ィヲ09ィー09ィィ06 ィィ 06ィ ィイ02ィャィョ. 020507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ BuildSet Active Conguration ィィ 06ィーィャ02ィーィィィーィケ 06... -Win32 Release07, ィ 04ィ ィー02ィャ 04ィ ィェ060906 070601ィコ0506 ツィィィーィケ ィェ0206ィ 010601ィィィャ0402 ィ ィィィ 05ィィ06ィー02ィコィィ.

1310.3. GLUT 09 0908020102 MICROSOFT VISUAL C++ 2005 139 10.3. GLUT 09 0908020102 Microsoft Visual C++ 2005 0302080201 ィェィ ツィ 0506ィャ 08ィ ィ 06ィー04 ィェ0206ィ 010601ィィィャ06 09ィコ0607ィィ080609ィ ィーィケ 00ィ ィヲ0504 glut.h, glut32.lib ィィ glut32.dll 09 ィコィ ィーィ 050600ィィ MVS8 VC PlatformSDK Include, MVS8 VC PlatformSDK Lib, Windows System 090606ィー0902ィー09ィー0902ィェィェ06. 06ィ ィコ0302 09 05ィーィィ01 ィコィ ィーィ 050600ィ 01 ィェィ 0106 070806090208ィィィーィケ ィェィ 05ィィ ツィィ02 00ィ ィヲ050609 gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, ィコ06ィー06080402 06ィ 04 ツィェ06 0901060107ィー 09 090609ィーィ 09 Visual C++ ィィ Windows. 0308ィィ ィィ09070605ィケ040609ィ ィェィィィィ ィコ06ィャィ ィェ01 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ GLAUX ィコ 07020802 ツィィ090502ィェィェ04ィャ 00ィ ィヲ05ィ ィャ ィェィ 0106 0106ィ ィ 09ィィィーィケ 070601ィコ0506 ツィ 02ィャ0402 00ィ ィヲ0504 ィ ィィィ 05ィィ06ィー02ィコィィ glaux.h ィィ glaux.lib. 020507 09060401ィ ィェィィ07 0708ィィ05060302ィェィィ07 ィェィ 0106 0904070605ィェィィィーィケ 09050201ィョ06ィエィィ02 0102ィヲ09ィー09ィィ07: 0キ3 05060401ィ ィェィィ02 07080602ィコィーィ : 010507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ FileNew ProjectsWin32Win32 Console Application, ィェィ ィ 08ィ ィーィケ ィィィャ07 07080602ィコィーィ, OK. 0キ3 00 07060709ィィ090302ィャ0907 06ィコィェ02 0906 09ィコ05ィ 01ィコ02 Application Settings 0904ィ 08ィ ィーィケ 06Console application07, 06An empty project07, Finish. 0キ3 0602ィコ09ィー 0708060008ィ ィャィャ04 ィャ0603ィェ06 05ィィィ 06 08ィ 04ィャ0209ィーィィィーィケ 09 09060401ィ ィェィェ06ィャ ィー02ィコ09ィー060906ィャ 00ィ ィヲ0502 (0904ィ 08ィ 09 FileNewFilesVisual C++ C++File ), 05ィィィ 06 0106ィ ィ 09ィィィーィケ 00ィ ィヲ05 09 08ィ 0903ィィ0802ィェィィ02ィャ *.c ィィ05ィィ *.cpp 09 07080602ィコィー (0904ィ 08ィ 09 ProjectAdd To ProjectFiles). 0キ3 030601ィコ0506 ツィィィーィケ ィコ 07080602ィコィーィョ ィ ィィィ 05ィィ06ィー02ィコィィ OpenGL. 020507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ ProjectPropertiesConguration Properties LinkerInput ィィ 09 07060502 Additional dependencies ィェィ ィ 08ィ ィーィケ ィェィ 0409ィ ィェィィ07 ィェィョ03ィェ0401 ィ ィィィ 05ィィ06ィー02ィコ: opengl32.lib, glu32.lib, glut32.lib ィィ, 020905ィィ ィェィ 0106, glaux.lib. 0キ3 020507 ィコ06ィャ07ィィ050702ィィィィ 0904ィ 08ィ ィーィケ Build program.exe, 010507 0904070605ィェ02ィェィィ07 DebugStart Debugging ィィ05ィィ DebugStart Without Debugging.

13140 0105ィ 09ィ 10. OPENGL-0708ィィ05060302ィェィィ07 09 0706ィャ06ィエィケ06 GLUT 0キ3 チィー06ィ 04 0708ィィ 04ィ 07ィョ09ィコ02 0708060008ィ ィャィャ04 ィェ02 070607090507050609ィケ ィコ06ィェ090605ィケィェ0602 ィー02ィコ09ィー06090602 06ィコィェ06, ィェィ 0106 0904ィ 08ィ ィーィケ ProjectProperties Conguration PropertiesLinkerSystem ィィ 09 07060502 SubSystem 09ィャ0209ィー06 06Console07 0904ィ 08ィ ィーィケ 06Windows07. 03020802ィヲィーィィ 09 08ィ 04010205 LinkerAdvanced ィィ 09 07060502 Entry Point ィェィ 07ィィ09ィ ィーィケ 06wmainCRTStartup07 (ィ 0204 ィコィ 0904 ツ02ィコ). 08060001ィ 0708060008ィ ィャィャィ 0006ィー0609ィ, 0802ィコ06ィャ02ィェ01ィョ02ィー0907 07020802ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ 0202 09 080203ィィィャ02 06Release07 010507 0607ィーィィィャィィ04ィ 02ィィィィ 0706 ィ 0409ィー08060102ィヲ09ィー09ィィ06 ィィ 06ィ ィイ02ィャィョ. 020507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ BuildConguration Manager ィィ 09 07060502 06Active solution conguration07 0904ィ 08ィ ィーィケ 06Release07, ィ 04ィ ィー02ィャ 04ィ ィェ060906 070601ィコ0506 ツィィィーィケ ィェ0206ィ 010601ィィィャ0402 ィ ィィィ 05ィィ06ィー02ィコィィ 010507 05ィー06ィヲ ィコ06ィェ00ィィ00ィョ08ィ 02ィィィィ. 10.4. GLUT 09 0908020102 Borland C++ Builder 6 0302080201 ィェィ ツィ 0506ィャ 08ィ ィ 06ィー04 ィェ0206ィ 010601ィィィャ06 09ィコ0607ィィ080609ィ ィーィケ 00ィ ィヲ0504 glut.h, glut32.lib, glut32.dll 09 ィコィ ィーィ 050600ィィ CBuilder6 Include Gl, CBuilder6 Lib, Windows System 090606ィー0902ィー09ィー0902ィェィェ06. 06ィ ィコ0302 09 05ィーィィ01 ィコィ ィーィ 050600ィ 01 ィェィ 0106 070806090208ィィィーィケ ィェィ 05ィィ ツィィ02 00ィ ィヲ050609 gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, ィコ06ィー06080402 06ィ 04 ツィェ06 0901060107ィー 09 090609ィーィ 09 Borland C++ ィィ Windows. 0308ィィ 05ィー06ィャ ィェィ 0106 ィョ ツィィィー0409ィ ィーィケ, ツィー06 0608ィィ00ィィィェィ 05ィケィェ0402 (010507 Microsoft Visual C++) 09020809ィィィィ 00ィ ィヲ05ィ glut32.lib c Borland C++ Builder 6 08ィ ィ 06ィーィ ィーィケ ィェ02 ィ ィョ01ィョィー, ィィ 09050201ィョ02ィー ィィ09070605ィケ040609ィ ィーィケ ィー0605ィケィコ06 090609ィャ0209ィーィィィャィョ06 09020809ィィ06. チィー06ィ 04 09060401ィ ィーィケ ィーィ ィコィョ06 09020809ィィ06, ィェィ 0106 ィィ09070605ィケ040609ィ ィーィケ 09ィーィ ィェ01ィ 08ィーィェィョ06 0708060008ィ ィャィャィョ 'implib', ィコ06ィー0608ィ 07 ィェィ 010601ィィィー0907 09 ィコィ ィーィ 05060002 05Builder6 Bin. 020507 05ィー060006 09 ィコ06ィャィ ィェ01ィェ06ィヲ 09ィー0806ィコ02 ィェィ 0106 0904070605ィェィィィーィケ ィコ06ィャィ ィェ01ィョ implib glut32.lib glut32.dll ィコ06ィー0608ィ 07 09060401ィ 02ィー ィェィョ03ィェ04ィヲ lib-00ィ ィヲ05 ィィ04 090606ィー0902ィー09ィー09ィョ06ィエ020006 dll-00ィ ィヲ05ィ.

1310.5. GLUT 09 0908020102 BORLAND C++ BUILDER 2006 141 020507 09060401ィ ィェィィ07 0708ィィ05060302ィェィィ07 ィェィ 0106 0904070605ィェィィィーィケ 09050201ィョ06ィエィィ02 0102ィヲ09ィー09ィィ07: 0キ3 05060401ィ ィェィィ02 07080602ィコィーィ : 010507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ FileNew OtherConsole Wizard, OK. 0キ3 00 07060709ィィ090302ィャ0907 06ィコィェ02 0904ィ 08ィ ィーィケ Source Type 05++, Console Application, 09ィ 080609ィィィーィケ 060702ィィィィ 06Use VCL07, 06Use CLX07, 06Multi Threaded07. 01ィ 03ィ ィーィケ 0208. 0キ3 0602ィコ09ィー 0708060008ィ ィャィャ04 ィャ0603ィェ06 05ィィィ 06 08ィ 04ィャ0209ィーィィィーィケ 09 09060401ィ ィェィェ06ィャ ィー02ィコ09ィー060906ィャ 00ィ ィヲ0502, 05ィィィ 06 ィョ01ィ 05ィィィーィケ 020006 ィィ04 07080602ィコィーィ (Project Remove From Project) ィィ 0106ィ ィ 09ィィィーィケ 00ィ ィヲ05 09 08ィ 0903ィィ0802ィェィィ02ィャ *.c ィィ05ィィ *.cpp 09 07080602ィコィー (0904ィ 08ィ 09 ProjectAdd To Project). 0キ3 05060108ィ ィェィィィー02 09060401ィ ィェィェ04ィヲ 07080602ィコィー 09 030205ィ 02ィャ06ィャ ィコィ ィーィ 05060002 (0904ィ 08ィ 09 FileSave All). 0キ3 030601ィコ0506 ツィィィーィケ ィコ 07080602ィコィーィョ ィ ィィィ 05ィィ06ィー02ィコィョ GLUT. 020507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ ProjectAdd To Project ィィ 0106ィ ィ 09ィィィーィケ 00ィ ィヲ05 glut32.lib 0キ3 020507 ィコ06ィャ07ィィ050702ィィィィ 0904ィ 08ィ ィーィケ ProjectBuild..., 010507 0904070605ィェ02ィェィィ07 RunRun. 08060001ィ 0708060008ィ ィャィャィ 0006ィー0609ィ, 0802ィコ06ィャ02ィェ01ィョ02ィー0907 07020802ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ 0202 09 080203ィィィャ02 06Release07 010507 0607ィーィィィャィィ04ィ 02ィィィィ 0706 ィ 0409ィー08060102ィヲ09ィー09ィィ06 ィィ 06ィ ィイ02ィャィョ. 020507 05ィー060006 09ィェィ ツィ 05ィ ィェィ 0106 0904ィ 08ィ ィーィケ ProjectOptions Compiler ィィ ィェィ 03ィ ィーィケ ィコィェ0607ィコィョ 06Release07. 10.5. GLUT 09 0908020102 Borland C++ Builder 2006 0302080201 ィェィ ツィ 0506ィャ 08ィ ィ 06ィー04 ィェ0206ィ 010601ィィィャ06 09ィコ0607ィィ080609ィ ィーィケ 00ィ ィヲ0504 glut.h, glut32.lib, glut32.dll 09 ィコィ ィーィ 050600ィィ Borland BDS 4.0 Include Gl, Borland BDS 4.0 Lib,

13142 0105ィ 09ィ 10. OPENGL-0708ィィ05060302ィェィィ07 09 0706ィャ06ィエィケ06 GLUT Windows System 090606ィー0902ィー09ィー0902ィェィェ06. 06ィ ィコ0302 09 05ィーィィ01 ィコィ ィーィ 050600ィ 01 ィェィ 0106 070806090208ィィィーィケ ィェィ 05ィィ ツィィ02 00ィ ィヲ050609 gl.h, glu.h, opengl32.lib, glu32.lib, opengl32.dll, glu32.dll, ィコ06ィー06080402 06ィ 04 ツィェ06 0901060107ィー 09 090609ィーィ 09 Borland C++ ィィ Windows. 0308ィィ 05ィー06ィャ ィェィ 0106 ィョ ツィィィー0409ィ ィーィケ, ツィー06 0608ィィ00ィィィェィ 05ィケィェ0402 (010507 Microsoft Visual C++) 09020809ィィィィ 00ィ ィヲ05ィ glut32.lib c Borland C++ Builder 6 08ィ ィ 06ィーィ ィーィケ ィェ02 ィ ィョ01ィョィー, ィィ 09050201ィョ02ィー ィィ09070605ィケ040609ィ ィーィケ ィー0605ィケィコ06 090609ィャ0209ィーィィィャィョ06 09020809ィィ06. チィー06ィ 04 09060401ィ ィーィケ ィーィ ィコィョ06 09020809ィィ06, ィェィ 0106 ィィ09070605ィケ040609ィ ィーィケ 09ィーィ ィェ01ィ 08ィーィェィョ06 0708060008ィ ィャィャィョ 'implib', ィコ06ィー0608ィ 07 ィェィ 010601ィィィー0907 09 ィコィ ィーィ 05060002 Borland BDS 4.0 Bin. 020507 05ィー060006 09 ィコ06ィャィ ィェ01ィェ06ィヲ 09ィー0806ィコ02 ィェィ 0106 0904070605ィェィィィーィケ ィコ06ィャィ ィェ01ィョ implib glut32.lib glut32.dll ィコ06ィー0608ィ 07 09060401ィ 02ィー ィェィョ03ィェ04ィヲ lib-00ィ ィヲ05 ィィ04 090606ィー0902ィー09ィー09ィョ06ィエ020006 dll-00ィ ィヲ05ィ. 020507 09060401ィ ィェィィ07 0708ィィ05060302ィェィィ07 ィェィ 0106 0904070605ィェィィィーィケ 09050201ィョ06ィエィィ02 0102ィヲ09ィー09ィィ07: 0キ3 05060401ィ ィェィィ02 07080602ィコィーィ : 010507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ FileNew OtherConsole Application, OK. 0キ3 00 07060709ィィ090302ィャ0907 06ィコィェ02 0904ィ 08ィ ィーィケ Source Type 0605++07, 06Console Application07, 09ィ 080609ィィィーィケ 060702ィィィィ 06Use VCL07, 06Multi Threaded07. 01ィ 03ィ ィーィケ 0208. 0キ3 0602ィコ09ィー 0708060008ィ ィャィャ04 ィャ0603ィェ06 05ィィィ 06 08ィ 04ィャ0209ィーィィィーィケ 09 09060401ィ ィェィェ06ィャ ィー02ィコ09ィー060906ィャ 00ィ ィヲ0502, 05ィィィ 06 ィョ01ィ 05ィィィーィケ 020006 ィィ04 07080602ィコィーィ (Project Remove From Project) ィィ 0106ィ ィ 09ィィィーィケ 00ィ ィヲ05 09 08ィ 0903ィィ0802ィェィィ02ィャ *.c ィィ05ィィ *.cpp 09 07080602ィコィー (0904ィ 08ィ 09 ProjectAdd To Project). 0キ3 05060108ィ ィェィィィー02 09060401ィ ィェィェ04ィヲ 07080602ィコィー 09 030205ィ 02ィャ06ィャ ィコィ ィーィ 05060002 (0904ィ 08ィ 09 FileSave All). 0キ3 030601ィコ0506 ツィィィーィケ ィコ 07080602ィコィーィョ ィ ィィィ 05ィィ06ィー02ィコィョ GLUT. 020507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ ProjectAdd To Project ィィ 0106ィ ィ 09ィィィーィケ 00ィ ィヲ05 glut32.lib

1310.5. GLUT 09 0908020102 BORLAND C++ BUILDER 2006 143 0キ3 020507 ィコ06ィャ07ィィ050702ィィィィ 0904ィ 08ィ ィーィケ ProjectBuild..., 010507 0904070605ィェ02ィェィィ07 RunRun. 08060001ィ 0708060008ィ ィャィャィ 0006ィー0609ィ, 0802ィコ06ィャ02ィェ01ィョ02ィー0907 07020802ィコ06ィャ07ィィ05ィィ080609ィ ィーィケ 0202 09 080203ィィィャ02 06Release07 010507 0607ィーィィィャィィ04ィ 02ィィィィ 0706 ィ 0409ィー08060102ィヲ09ィー09ィィ06 ィィ 06ィ ィイ02ィャィョ. 020507 05ィー060006 ィェィ 0106 0904ィ 08ィ ィーィケ ProjectBuild Congurations ィィ 09 0907ィィ09ィコ02 06Conguration name07 0904ィ 08ィ ィーィケ 06Release Build07.

13

130105ィ 09ィ 11. 0609070605ィケ040609ィ ィェィィ02 OpenGL 09 MFC ィィ VCL 02ィ 050202 ィ ィョ0102ィャ 08ィ 0909ィャィ ィー08ィィ09ィ ィーィケ 0708ィィィェ02ィィ0704 070609ィー080602ィェィィ02 06ィコ06ィェィェ060006 0708ィィ05060302ィェィィ07 Windows 09 07060101020803ィコ06ィヲ OpenGL 0708ィィ 0706ィャ06ィエィィ 090604ィャ0603ィェ0609ィー02ィヲ ィ ィィィ 05ィィ06ィー02ィコ MFC (Microsoft Foundation Classes) ィィ VCL (Visual Component Library). 030609ィコ0605ィケィコィョ Windows 0709050702ィー0907 ィャィェ06000606ィコ06ィェィェ06ィヲ 06070208ィ 02ィィ06ィェィェ06ィヲ 09ィィ09ィー02ィャ06ィヲ, 0609ィェ0609ィェィ 07 04ィ 01ィ ツィ 0708ィィ05060302ィェィィ07 ィェィ 05ィーィ 0702 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ 060708ィィ090704ィ ィーィケ07 ィコ06ィャィ ィェ0104 OpenGL ィコ ィコ06ィェィコ0802ィーィェ06ィャィョ 06ィコィェィョ ィィ 09060401ィ ィーィケ 010507 05ィー060006 06ィコィェィ 090902 09090706ィャ0600ィ ィー0205ィケィェ0402 ィ ィョ00020804 (ィ ィョ000208 ィコィ 0108ィ, ィ ィョ000208 0005ィョィ ィィィェ04 ィィ ィー.07.). 05ィ ィャィ ィ ィィィ 05ィィ06ィー02ィコィ ィェ02 090601020803ィィィー 0908020109ィー09 010507 05ィー060006, 070605ィー06ィャィョ ィコィ 0301ィ 07 06070208ィ 02ィィ06ィェィェィ 07 09ィィ09ィー02ィャィ, 07060101020803ィィ09ィ 06ィエィ 07 OpenGL, 070802010609ィーィ 09050702ィー 090906ィィ. 09ィィィ 05ィィ06ィー02ィコィ GLUT 0708020109ィーィ 09050702ィー ィョィェィィ00ィィ02ィィ080609ィ ィェィェ04ィヲ ィィィェィー02080002ィヲ09 010507 010609ィーィョ07ィ ィコ 05ィー06ィヲ 00ィョィェィコ02ィィ06ィェィ 05ィケィェ0609ィーィィ, 0601ィェィ ィコ06 0705ィ ィー06ィヲ 04ィ ィョィェィィ00ィィィコィ 02ィィ06 0709050702ィー0907 010609ィーィ ィー06 ツィェ06 09ィコ0806ィャィェ0402 090604ィャ0603ィェ0609ィーィィ 070609ィー080602ィェィィ07 0008ィ 00ィィ ツ0209ィコ060006 ィィィェィー02080002ィヲ09ィ 070605ィケ040609ィ ィー020507, 0802ィ 05ィィ040609ィ ィェィェ0402 09 GLUT. 020507 09060401ィ ィェィィ07 0708ィィ05060302ィェィィィヲ 09 08ィ 0409ィィィー04ィャ ィィィェィー02080002ィヲ0906ィャ ィェ0206ィ 010601ィィィャ06 0708ィィィャ02ィェ07ィーィケ 0908020109ィー09ィ ィコ06ィェィコ0802ィーィェ06ィヲ 06070208ィ 02ィィ06ィェィェ06ィヲ 09ィィ09ィー02ィャ04 010507 08ィ ィ 06ィー04 09 OpenGL. 020507 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ 08ィ ィ 06ィー04 09 OpenGL 09 Windows ィェ0206ィ 0106-145

13146 0105ィ 09ィ 11. 0609070605ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL 01ィィィャ06 0904070605ィェィィィーィケ 09050201ィョ06ィエィィ02 03ィ 00ィィ: 1) ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ07 (0708ィィ 09060401ィ ィェィィィィ 06ィコィェィ ); ィ ) 070605ィョ ツ02ィェィィ02 ィィ ィョ09ィーィ ィェ0609ィコィ ィコ06ィェィー02ィコ09ィーィ 0008ィ 00ィィ ツ0209ィコ060006 ィョ09ィー0806ィヲ09ィー09ィ (09ィャ. 07.11.1); ィ ) ィョ09ィーィ ィェ0609ィコィ 07ィィィコ090205ィケィェ060006 000608ィャィ ィーィ (07.11.2); 09) 070605ィョ ツ02ィェィィ02 ィィ ィョ09ィーィ ィェ0609ィコィ ィコ06ィェィー02ィコ09ィーィ 08ィィ090609ィ ィェィィ07 (07.11.3); 2) 08ィィ090609ィ ィェィィ02 09 0706ィャ06ィエィケ06 OpenGL 09 06ィコィェ02; 3) 06090906ィ 06030102ィェィィ02 ィコ06ィェィー02ィコ09ィー0609 (0708ィィ ィョ01ィ 0502ィェィィィィ 06ィコィェィ ). 11.1. 0806ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ 0806ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ (device context) 09ィ 03ィェ04ィヲ 050502ィャ02ィェィー 0008ィ 00ィィィコィィ 09 0908020102 0205 Windows. 0806ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ ィョィコィ 040409ィ 02ィー ィャ0209ィー06 06ィー06ィ 08ィ 0302ィェィィ07 0008ィ 00ィィ ツ0209ィコィィ01 ィコ06ィャィ ィェ01. 0806ィェィー02ィコ09ィー06ィャ ィャ060302ィー ィ 04ィーィケ 06ィコィェ06 0708060008ィ ィャィャ04 ィェィ 05ィコ08ィ ィェ02, 0708ィィィェィー0208, ィィ05ィィ 0108ィョ000602 ィョ09ィー0806ィヲ09ィー0906, 07060101020803ィィ09ィ 06ィエ0202 0008ィ 00ィィ ツ0209ィコィィィヲ 0904090601. 060102ィェィーィィ00ィィィコィ ィー0608 ィコ06ィェィー02ィコ09ィーィ ィョ09ィー0806ィヲ09ィー09ィ 05ィー06 ツィィ090506090602 04ィェィ ツ02ィェィィ02, 04ィェィ ィェィィ02 ィコ06ィー0608060006 0706040906050702ィー ィェィ 0708ィ 09ィィィーィケ 0008ィ 00ィィ ツ0209ィコィィィヲ 0904090601 09 ィェィョ03ィェ04ィヲ ィコ06ィェィー02ィコ09ィー. 0302080201 ィェィ ツィ 0506ィャ 08ィィ090609ィ ィェィィ07 ィェ0206ィ 010601ィィィャ06 070605ィョ ツィィィーィケ 05ィー06 ツィィ090506090602 04ィェィ ツ02ィェィィ02, ィ 0706090502 08ィィ090609ィ ィェィィ07 ィェィョ03ィェ06 ィコ06ィェィー02ィコ09ィー 06090906ィ 0601ィィィーィケ, ィー.02. 090208ィェィョィーィケ ィィ09070605ィケ04ィョ02ィャ0402 080209ィョ080904 09 09ィィ09ィー02ィャィョ. 01020906ィ 05060102ィェィィ02 05ィー060006 0708ィ 09ィィ05ィ ツ080209ィ ィー06 ィーィ ィコィィィャィィ 07060905020109ィー09ィィ07ィャィィ ィコィ ィコ ィョィー02 ツィコィィ 07ィ ィャ07ィーィィ ィィ 070802ィコ08ィ ィエ02ィェィィ02 ィェ0608ィャィ 05ィケィェ06ィヲ 08ィ ィ 06ィー04 0708060008ィ ィャィャ04. 030609ィコ0605ィケィコィョ ィェィ 0302ィヲ 04ィ 01ィ ツ02ィヲ 0709050702ィー0907 08ィィ090609ィ ィェィィ02 09 06ィコィェ02, ィコ06ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ hdc ィャ0603ィェ06 070605ィョ ツィィィーィケ 0706 ィィ0102ィェィーィィ00ィィィコィ ィー0608ィョ 06ィコィェィ hwnd: HWND hwnd = <ィコ0601 070605ィョ ツ02ィェィィ02 ィィ0102ィェィーィィ00ィィィコィ ィー0608ィ 06ィコィェィ >; HDC hdc = GetDC(hWnd) ; 020507 06090906ィ 06030102ィェィィ07 ィコ06ィェィー02ィコ09ィーィ ィィ09070605ィケ04ィョ02ィー0907 ィコ06ィャィ ィェ01ィ ReleaseDC: ReleaseDC (hwnd, hdc) ;

1311.2. 0709ィーィ ィェ0609ィコィ 000608ィャィ ィーィ 07ィィィコ09020502ィヲ 147 11.2. 0709ィーィ ィェ0609ィコィ 000608ィャィ ィーィ 07ィィィコ09020502ィヲ 0306090502 070605ィョ ツ02ィェィィ07 ィコ06ィェィー02ィコ09ィーィ ィョ09ィー0806ィヲ09ィー09 ィェィョ03ィェ06 ィョ09ィーィ ィェ0609ィィィーィケ 000608ィャィ ィー 07ィィィコ09020502ィヲ (pixel format) ィコ06ィェィー02ィコ09ィーィ. 06ィー06 ィェィョ03ィェ06 010507 ィー060006, ツィー06ィ 04 090606ィ ィエィィィーィケ 06070208ィ 02ィィ06ィェィェ06ィヲ 09ィィ09ィー02ィャ02, ィコィ ィコィィ02 080209ィョ080904 ィェ0206ィ 010601ィィィャ06 0904010205ィィィーィケ 010507 01ィ ィェィェ060006 ィコ06ィェィー02ィコ09ィーィ. 080608ィャィ ィー 07ィィィコ09020502ィヲ ィョィコィ 040409ィ 02ィー, ィコィ ィコィィ02 090604ィャ0603ィェ0609ィーィィ OpenGL ィャ04 ィ ィョ0102ィャ ィィ09070605ィケ040609ィ ィーィケ: 010906ィヲィェ06ィヲ ィ ィョ000208, ィ ィョ000208 ィャィ 09ィコィィ, ィ ィョ000208 0005ィョィ ィィィェ04, 000608ィャィ ィー 020902ィーィ ィィ ィー.01. チィー06ィ 04 ィョ09ィーィ ィェ0609ィィィーィケ 000608ィャィ ィー 07ィィィコ09020507, ィェィョ03ィェ06 04ィ 070605ィェィィィーィケ 09ィー08ィョィコィーィョ08ィョ PIXELFORMATDESCRIPTOR ィィ 0702080201ィ ィーィケ 0202 09 ィー02ィコィョィエィィィヲ ィコ06ィェィー02ィコ09ィー: PIXELFORMATDESCRIPTOR pfd ; // 06ィ ィェィョ050702ィャ 09 09 02 ィー0605ィケィコ06 ツィー06 09060401ィ ィェィェ06ィヲ 09ィー08ィョィコィーィョ0804 ; ZeroMemory(&pfd, sizeof ( pfd ) ) ; // 04ィ 070605ィェ0702ィャ 09ィー08ィョィコィーィョ08ィョ pfd. nsize = sizeof ( pfd ) ; pfd. nversion = 1 ; // 0005ィ 00ィィ 0706ィコィ 040409ィ 06ィー, ツィー06 ィャ04 ィ ィョ0102ィャ ィィ09070605ィケ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; // 070605ィェ06020902ィーィェ04ィヲ ィ ィョ000208 020902ィーィ ( 8 ィ ィィィー ィェィ ィコィ ィェィ 05 ) pfd. ccolorbits = 2 4 ; // 04ィ 0708ィ 03ィィ09ィ 02ィャ 16 ィ ィィィー ィェィ 07ィィィコ090205ィケ 010507 ィ ィョ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ィィィャ 0706010806ィ ィェ0202 00ィョィェィコ02ィィィィ, ィコ06ィー06080402 ィィ09070605ィケ04ィョ06ィー0907 010507 ィョ09ィーィ ィェ0609ィコィィ 000608ィャィ ィーィ 07ィィィコ09020507: int ChoosePixelFormat ( HDC hdc, CONST PIXELFORMATDESCRIPTOR * ppfd ) ;

13148 0105ィ 09ィ 11. 0609070605ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL 06ィーィ 00ィョィェィコ02ィィ07 0706040906050702ィー 0706 ィコ06ィェィー02ィコ09ィーィョ 0008ィ 00ィィ ツ0209ィコ060006 ィョ09ィー0806ィヲ09ィー09ィ ィェィ ィヲィーィィ 07ィィィコ090205ィケィェ04ィヲ 000608ィャィ ィー, ィャィ ィコ09ィィィャィ 05ィケィェ06 ィョ0106090502ィー0906080706ィエィィィヲ ィェィ 03ィィィャ ィー0802ィ 0609ィ ィェィィ07ィャ, ィィ 0906040908ィ ィエィ 02ィー 020006 010209ィコ08ィィ07ィー0608. 01ィ 0708ィィィャ0208, 020905ィィ 04ィ 0708060302ィェ 24-ィ ィィィーィェ04ィヲ ィ ィョ000208 020902ィーィ, ィ ィコ06ィェィー02ィコ09ィー 0008ィ 00ィィ ツ0209ィコ060006 ィョ09ィー0806ィヲ09ィー09ィ 070802010609ィーィ 09050702ィー ィー0605ィケィコ06 8-ィ ィィィーィェ04ィヲ ィ ィョ000208, ィー06 00ィョィェィコ02ィィ07 0906040908ィ ィーィィィー 000608ィャィ ィー 07ィィィコ09020507 09 8-ィ ィィィーィェ04ィャ ィ ィョ00020806ィャ. 08ィョィェィコ02ィィ07 SetPixelFormat ィョ09ィーィ ィェィ 0905ィィ09ィ 02ィー 000608ィャィ ィー 07ィィィコ09020507 09 ィコ06ィェィー02ィコ09ィー 0008ィ 00ィィ ツ0209ィコ060006 ィョ09ィー0806ィヲ09ィー09ィ : BOOL SetPixelFormat ( HDC hdc, int ipixelformat, CONST PIXELFORMATDESCRIPTOR * ppfd ) ; 030609ィコ0605ィケィコィョ ィャ04 ィィ09070605ィケ04ィョ02ィャ ィコ06ィェィー02ィコ09ィー 0008ィ 00ィィ ツ0209ィコ060006 ィョ09ィー0806ィヲ09ィー09ィ 09 010906ィヲィェ04ィャ ィ ィョ00020806ィャ, OpenGL-08ィィ090609ィ ィェィィ02 09 ィコ06ィェィー02ィコ09ィー 070806ィィ09010601ィィィー 09 ィェ0209ィィ01ィィィャ0602 ィェィ 05ィコ08ィ ィェ02 ィャ0209ィー06 09 07ィ ィャ07ィーィィ. 06ィー06 ィェ0206ィ 010601ィィィャ06 010507 0708020106ィー0908ィ ィエ02ィェィィ07 ィャ020802ィ ィェィィ07. 020507 ィー060006, ツィー06ィ 04 ィィ0406ィ 08ィ 0302ィェィィ02 07060709ィィ050609ィケ ィェィ 05ィコ08ィ ィェ02, ィェィョ03ィェ06 09040409ィ ィーィケ 09050201ィョ06ィエィョ06 00ィョィェィコ02ィィ06: SwapBuffers ( hdc ) ; 11.3. 0806ィェィー02ィコ09ィー 08ィィ090609ィ ィェィィ07 (render context) 0806ィェィー02ィコ09ィー 08ィィ090609ィ ィェィィ07 060708020102050702ィー 09 ィコィ ィコ06ィヲ ィコ06ィェィー02ィコ09ィー ィョ09ィー0806ィヲ09ィー09ィ ィ ィョ01ィョィー ィェィ 0708ィ 090507ィーィケ0907 ィコ06ィャィ ィェ0104 OpenGL. 01ィ 0708ィィィャ0208, 020905ィィ 09 0708060008ィ ィャィャ02 0209ィーィケ ィェ0209ィコ0605ィケィコ06 06ィコ06ィェ OpenGL, ィー06 0702080201 090404060906ィャ ィコ06ィャィ ィェ01 OpenGL ィェ0206ィ 010601ィィィャ06 ィョィコィ 04ィ ィーィケ 06ィコィェ06, 09 ィコ06ィー06080602 ィ ィョ01ィョィー ィェィ 0708ィ 090502ィェ04 05ィーィィ ィコ06ィャィ ィェ0104. 05 ィコ06ィェィー02ィコ09ィー06ィャ 08ィィ090609ィ ィェィィ07 ィ 09090602ィィィィ080609ィ ィェ06 ィー02ィコィョィエ0202 090609ィー0607ィェィィ02 OpenGL, ィー02ィコ09ィーィョ0804, 01ィィ09070502ィヲィェ0402 0907ィィ09ィコィィ ィィ ィー.07. 05060401ィ ィェィィ02 ィコ06ィェィー02ィコ09ィーィ 08ィィ090609ィ ィェィィ07 hrc: HGLRC hrc; hrc = wglcreatecontext (hdc) ; 0302080201 ィィ09070605ィケ040609ィ ィェィィ02ィャ ィコ06ィェィー02ィコ09ィーィ ィェ0206ィ 010601ィィィャ06 09010205ィ ィーィケ 020006 ィー02ィコィョィエィィィャ:

1311.4. 0805ィ 0909 GLRC 149 wglmakecurrent (hdc, hrc) ; 02ィ 050202 ィャ0603ィェ06 090906ィ 0601ィェ06 ィィ09070605ィケ040609ィ ィーィケ ィコ06ィャィ ィェ0104 OpenGL, ィェ02 04ィ ィ 0409ィ 07 0904040409ィ ィーィケ SwapBuers 0706090502 06ィコ06ィェ ツィ ィェィィ07 08ィィ090609ィ ィェィィ07 ィコィ 0108ィ. 0306090502 ィィ09070605ィケ040609ィ ィェィィ07 ィコ06ィェィー02ィコ09ィーィ 08ィィ090609ィ ィェィィ07 020006 ィェィョ03ィェ06 06090906ィ 0601ィィィーィケ (06ィ 04 ツィェ06 0702080201 06090906ィ 06030102ィェィィ02ィャ 090606ィー0902ィー09ィー09ィョ06ィエ020006 ィコ06ィェィー02ィコ09ィーィ ィョ09ィー0806ィヲ09ィー09ィ ): wgldeletecontext (hrc) ; 11.4. 0805ィ 0909 GLRC 00 07.09.5 0708ィィ09020102ィェ 0708ィィィャ0208 ィコ05ィ 0909ィ GLRC, 0802ィ 05ィィ04ィョ06ィエィィィヲ 07020802- ツィィ090502ィェィェ0402 06070208ィ 02ィィィィ. 00ィィィコ05 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ 08ィィ090609ィ ィェィィ07 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ 05ィー060006 ィコ05ィ 0909ィ 090400050701ィィィー 09050201ィョ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 ( "0102090604ィャ0603ィェ06 09060401ィ ィーィケ ィコ06ィェィー02ィコ09ィー OpenGL" ) ;.. // 2. 08ィィ090609ィ ィェィィ02 // ( 06ィ 04 ツィェ06 09 06ィ 08ィ ィ 06ィー ツィィィコィ 01 0906ィ 04ィーィィ07 WM_PAINT) bool r e s = m_pglrc6モ1>makecurrent ( ) ; i f (! r e s ) Error ( "0102090604ィャ0603ィェ06 09010205ィ ィーィケ ィコ06ィェィー02ィコ09ィー ィー02ィコィョィエィィィャ" ) ; // ィコ06ィャィ ィェ0104 OpenGL g l C l e a r (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT)... // 04ィ 0902080302ィェィィ02 ィコィ 0108ィ m_pglrc6モ1>swapbuffers ( ) ;

13150 0105ィ 09ィ 11. 0609070605ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL // 3. ィョィェィィ ツィー060302ィェィィ02 06ィコィェィ // ( 06ィ 04 ツィェ06 09 06ィ 08ィ ィ 06ィー ツィィィコィ 01 0906ィ 04ィーィィ07 WM_DESTROY) m_pglrc6モ1>destroy ( ) ; delete m_pglrc; 11.5. 0609070605ィケ040609ィ ィェィィ02 OpenGL c MFC 030905ィィ 0708ィィ 09060401ィ ィェィィィィ Windows-0708ィィ05060302ィェィィ07 ィィ09070605ィケ04ィョ02ィー0907 ィ ィィィ 05ィィ06ィー02ィコィ MFC, ィー06 ィェ0206ィ 010601ィィィャ06 0909ィー0806ィィィーィケ ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ06, 06090906ィ 06030102ィェィィ02 ィコ06ィェィー02ィコ09ィー0609 ィィ 08ィィ090609ィ ィェィィ02 OpenGL 09 08ィ 0405ィィ ツィェ0402 06ィ 08ィ ィ 06ィー ツィィィコィィ ィョィェィ 090502010609ィ ィェィェ0401 ィコ05ィ 09090609 MFC. 02ィ ィェィェィ 07 ィコィェィィ00ィ ィェ02 0709050702ィー0907 08ィョィコ0609060109ィー0906ィャ 0706 0708060008ィ ィャィャィィ080609ィ ィェィィ06 09 ィィ09070605ィケ040609ィ ィェィィ02ィャ MFC, 070605ィー06ィャィョ 060008ィ ィェィィ ツィィィャ0907 09060902ィーィ ィャィィ 0706 ィィ09070605ィケ040609ィ ィェィィ06 OpenGL 09 05ィー06ィヲ ィ ィィィ 05ィィ06ィー02ィコ06ィヲ: 0キ3 080601 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ ィィ 08ィィ090609ィ ィェィィ07 ィー02070208ィケ 0106050302ィェ ィェィ 010601ィィィーィケ0907 09 ィャ02ィー0601ィ 01 (ィィ05ィィ 0904040409ィ ィーィケ0907 ィィ04 05ィーィィ01 ィャ02ィー06010609) ィコ05ィ 0909ィ, ィョィェィ 090502010609ィ ィェィェ060006 06ィー ィコ05ィ 0909ィ CWnd ィェィ 070807ィャィョ06 ィィ05ィィ ィコ06090902ィェィェ06. 0キ3 020507 ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ OpenGL 05ィョ ツ0302 0909020006 ィィ09070605ィケ040609ィ ィーィケ ィャ02ィー0601 OnCreate, 010507 08ィィ090609ィ ィェィィ07 OnPaint, OnUpdate, OnDraw ィィ05ィィ OnTimer (05ィー06 04ィ 09ィィ09ィィィー 06ィー 08ィ 04ィェ0401 00ィ ィコィー06080609, ィェィ 0708ィィィャ0208, 06ィー ィコィ ィコ060006 ィィィャ02ィェィェ06 ィコ05ィ 0909ィ ィョィェィ 090502010609ィ ィェ ィコ05ィ 0909 OpenGL-06ィコィェィ ィィ ツィー06 ィィィャ02ィェィェ06 ィィ0406ィ 08ィ 03ィ 02ィー0907). 0キ3 020507 0708020106ィー0908ィ ィエ02ィェィィ07 ィャ020802ィ ィェィィ07 ィェ0206ィ 010601ィィィャ06 070208020008ィョ04ィィィーィケ 06ィ 08ィ ィ 06ィー ツィィィコ 090606ィ ィエ02ィェィィ07 WM_ERASEBKGND, ィィィェィ ツ02 Windows ィ ィョ0102ィー 04ィ 05ィィ09ィ ィーィケ 0006ィェ 06ィコィェィ 0702080201 090404060906ィャ 06ィ 08ィ ィ 06ィー ツィィィコィ OnPaint. 0キ3 020507 06090906ィ 06030102ィェィィ07 07060106ィヲ0102ィー 06ィ 08ィ ィ 06ィー ツィィィコ OnDestroy, ィ 010507 06ィ 08ィ ィ 06ィーィコィィ ィィ04ィャ02ィェ02ィェィィィヲ 08ィ 04ィャ0208ィ 06ィコィェィ OnSize. 0キ3 030605ィョ ツィィィーィケ ィィ0102ィェィーィィ00ィィィコィ ィー0608 06ィコィェィ ィャ0603ィェ06 09 0706ィャ06ィエィケ06 ィャ02ィー0601ィ CWnd::GetSafeHwnd.

1311.5. 0609070605ィケ040609ィ ィェィィ02 OPENGL C MFC 151 0308ィィィャ0208 ィコ05ィ 0909ィ 06ィコィェィ, 08ィィ090609ィ ィェィィ02 09 ィコ06ィー06080602 0609ィョィエ0209ィー09050702ィー0907 0708ィィ 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ィェィ ィーィョ0804 05ィーィィ01 ィャ02ィー06010609 0607080201020502ィェ04 04ィ 08ィ ィェ0202 MFC // ィィ 01060503ィェ04 09040005070102ィーィケ ィィィャ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ィ ィイ07090502ィェィィ02 ィコィ 08ィー04 090606ィ ィエ02ィェィィィヲ Windows DECLARE_MESSAGE_MAP( ) // ィコ05ィ 0909 010507 0108ィ ィェ02ィェィィ07 ィコ06ィェィー02ィコ09ィー0609 OpenGL GLRC* m_pglrc; } ; 0402ィ 05ィィ04ィ 02ィィ07 ィャ02ィー06010609: // ィコ06ィェ09ィー08ィョィコィー0608 OpenGLWindow : : OpenGLWindow( ) : m_pglrc(null) { } // 04ィ 070605ィェ02ィェィィ02 ィコィ 08ィー04 090606ィ ィエ02ィェィィィヲ BEGIN_MESSAGE_MAP( OpenGLWindow, CWnd) // 09ィーィ ィェ01ィ 08ィーィェ0402 ィャィ ィコ08060904 MFC ON_WM_CREATE( ) ON_WM_PAINT( )

13152 0105ィ 09ィ 11. 0609070605ィケ040609ィ ィェィィ02 OPENGL 09 MFC ィィ VCL ON_WM_DESTROY( ) ON_WM_ERASEBKGND( ) END_MESSAGE_MAP( ) // 09 05ィー06ィャ ィャ02ィー060102 0802ィ 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ィ 070802ィエィ 02ィャ 04ィ 05ィィ09ィコィョ 0006ィェィ afx_msg BOOL OpenGLWindow : : OnEraseBkgnd (CDC* pdc) { return FALSE; } // 04010209ィケ 08ィィ09ィョ02ィャ afx_msg void OpenGLWindow : : OnPaint ( ) { CWnd: : OnPaint ( ) ; // 010205ィ 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, ツィー06 0106ィーィィィャ ィェィ 08ィィ090609ィ ィーィケ <ィャ02ィー060104 08ィィ090609ィ ィェィィ07 OpenGL>

1311.6. 0609070605ィケ040609ィ ィェィィ02 OPENGL C VCL 153 } m_glrc6モ1>swapbuffers ( ) ; // 04010209ィケ 070806ィィ09010601ィィィー 06090906ィ 06030102ィェィィ02 080209ィョ08090609 afx_msg void OpenGLWindow : : OnDestroy ( ) { m_glrc6モ1>destroy ( ) ; delete m_glrc; } CWnd: : OnDestroy ( ) ; 11.6. 0609070605ィケ040609ィ ィェィィ02 OpenGL c VCL 0609070605ィケ040609ィ ィェィィ02 OpenGL 09 VCL 0108ィョ0006ィヲ 070607ィョ050708ィェ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ06ィヲ 010507 08ィ 0408ィ ィ 06ィーィコィィ Windows-0708ィィ05060302ィェィィィヲ, 06ィー05ィィ ツィ 02ィー0907 06ィー 070802010401ィョィエ020006 0708ィィィャ0208ィ ィー0605ィケィコ06 0102ィーィ 0507ィャ ィィ ィェィ 0409ィ ィェィィ07ィャィィ ィコ05ィ 09090609. 0006ィー 0708ィィィャ0208 ィャィィィェィィィャィ 05ィケィェ060006 ィコ0601ィ ィェィ 05++, ィコ06ィー060804ィヲ 0106ィ ィ 09ィィィー OpenGL ィコ 000608ィャ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ィェィ ィーィョ0804 05ィーィィ01 ィャ02ィー06010609 0607080201020502ィェ04 04ィ 08ィ ィェ0202 void fastcall FormCreate ( TObject * sender ) ; void fastcall FormDestroy ( TObject * sender ) ;

13154 0105ィ 09ィ 11. 0609070605ィケ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ィー060102 0802ィ 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 ) ; } // 04010209ィケ 08ィィ09ィョ02ィャ void fastcall OpenGLForm : : FormPaint ( TObject * sender ) { // 010205ィ 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, ツィー06 0106ィーィィィャ ィェィ 08ィィ090609ィ ィーィケ <ィャ02ィー060104 08ィィ090609ィ ィェィィ07 OpenGL> } m_glrc6モ1>swapbuffers ( ) ; // 04 01 02 09 ィケ 070806ィィ09010601ィィィー 0102ィィィェィィ02ィィィ 05ィィ04ィ 02ィィ07

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

13

130105ィ 09ィ 12. OpenGL 09.NET 00 05ィー06ィャ 08ィ 0401020502 08ィ 0909ィャィ ィー08ィィ09ィ 02ィー0907 070609ィー080602ィェィィ02 06ィコ06ィェィェ060006 0708ィィ05060302ィェィィ07 09 07060101020803ィコ06ィヲ OpenGL ィェィ 0705ィ ィー000608ィャ02 Microsoft.NET. 010209ィャ06ィー0807 ィェィ ィー06, ツィー06 OpenGL ィェ02 ィィィャ0202ィー 0909ィー080602ィェィェ06ィヲ 07060101020803ィコィィ 09.NET, 09 ィェィ 09ィー0607ィエ0202 090802ィャ07 09ィョィエ0209ィー09ィョ02ィー 010609ィーィ ィー06 ツィェ06 ィャィェ060006 08020302ィェィィィヲ, 0706040906050706ィエィィ01 070601ィコ0506 ツィ ィーィケ OpenGL ィコ.NET-0708060008ィ ィャィャィ ィャ. 0004 08ィ 0909ィャ06ィー08ィィィャ 08ィ ィ 06ィーィョ 09 0601ィェ06ィヲ ィィ04 ィェィィ01 090906ィ 0601ィェ06-08ィ 0907080609ィー08ィ ィェ0702ィャ06ィヲ ィ ィィィ 05ィィ06ィー02ィコ06ィヲ Tao Framework. Tao Fram02work (http://www.taoframework.com) 0802ィ 05ィィ04ィョ02ィー 070806ィャ0203ィョィー06 ツィェ04ィヲ ィョ08060902ィェィケ ィャ020301ィョ.NET 0708ィィ05060302ィェィィ02ィャ ィィ 08ィ 0405ィィ ツィェ04ィャィィ Win32-ィ ィィィ 05ィィ06ィー02ィコィ ィャィィ, 09 ツィ 09ィーィェ0609ィーィィ GL, GLU, GLUT, WGL. 12.1. GLUT 09 0908020102 Microsoft Visual C# 2005 03080609ィー02ィヲ03ィィィャ 0907060906ィ 06ィャ 09060401ィ ィェィィ07 OpenGL-0708ィィ05060302ィェィィ07 09 0908020102.NET ィャ0603ィェ06 09 ツィィィーィ ィーィケ ィィ09070605ィケ040609ィ ィェィィ02 ィ ィィィ 05ィィ06ィー02ィコィィ GLUT, 010609ィーィョ07ィェ06ィヲ ツ02080204.NET-ィコ06ィャ0706ィェ02ィェィーィョ Tao.FreeGlut. 02ィ 050202 0708ィィ09060107ィー0907 03ィ 00ィィ, ィェ0206ィ 010601ィィィャ0402 010507 09060401ィ ィェィィ07 ィコ06ィェ090605ィケィェ060006.NET-0708ィィ05060302ィェィィ07 09 0908020102 Microsoft Visual C# 2005 ィェィ C# 09 GLUT ィィ OpenGL: 157

13158 0105ィ 09ィ 12. OPENGL 09.NET 0キ3 07ィ 0201ィィィーィケ0907, ツィー06 ィェィ ィャィ 03ィィィェ02 ィョ09ィーィ ィェ06090502ィェ GLUT (glut32.dll 050203ィィィー 09 Windows System32). 0キ3 05060401ィ ィェィィ02 07080602ィコィーィ ィコ06ィェ090605ィケィェ060006 0708ィィ05060302ィェィィ07: FileNew ProjectsVisual C#WindowsConsole Application, ィェィ ィ 08ィ ィーィケ ィィィャ07 07080602ィコィーィ, OK. 0キ3 0206ィ ィ 090502ィェィィ02 Tao ィコ 07080602ィコィーィョ: ProjectAdd Reference.NET, ィェィ ィヲィーィィ 09 0907ィィ09ィコ02 06Tao Framework OpenGL Binding For.NET07 ィィ 06Tao Framework FreeGLUT Binding For.NET07, 0904010205ィィィーィケ 06ィ ィ, 0208. 030905ィィ ィコ06ィャ0706ィェ02ィェィー ィェ02ィー 09 0907ィィ09ィコ02, ィェ0206ィ 010601ィィィャ06 ィェィ ィヲィーィィ ィィ01 09 ィィィェ09ィーィ 05050702ィィ06ィェィェ06ィャ ィコィ ィーィ 05060002 ィ ィィィ 05ィィ06ィー02ィコィィ Tao Framework ィィ 0106ィ ィ 09ィィィーィケ ツ02080204 09ィコ05ィ 01ィコィョ Browse. 0308060008ィ ィャィャィィ080609ィ ィェィィ02 09 ィィ09070605ィケ040609ィ ィェィィ02 GLUT ィィ OpenGL 09.NET ィェィ C# 0708ィ ィコィーィィ ツ0209ィコィィ ィェ02 06ィー05ィィ ツィ 02ィー0907 06ィー 09ィ 08ィィィ ィェィーィ 010507 Win32 ィィ C++. 01ィィ0302 0708ィィ09020102ィェ 0708ィィィャ0208 07080609ィー06ィヲ 0708060008ィ ィャィャ04, ィ ィェィ 050600ィィ ツィェ06ィヲ 0708ィィィャ0208ィョ ィィ04 07.2.5: 0308060008ィ ィャィャィ 12.1. 03080609ィー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 ;

1312.1. GLUT 09 0908020102 MICROSOFT VISUAL C# 2005 159 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 )

13160 0105ィ 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 090902 ィコ06ィャィ ィェ0104 ィィ ィコ06ィェ09ィーィ ィェィー04 GL, GLU ィィ GLUT ィェィ 01060107ィー0907 09 07080609ィー08ィ ィェ09ィー09ィ 01 ィィィャ02ィェ Gl, Glu ィィ Glut, 090606ィー0902ィー09ィー0902ィェィェ06. 12.2. 0609070605ィケ040609ィ ィェィィ02 OpenGL 09 WindowsForms OpenGL 09 WindowsForms ィー0802ィ ィョ02ィー ィィィェィィ02ィィィ 05ィィ04ィ 02ィィィィ, ィ ィェィ 050600ィィ ツィェ06ィヲ 08ィ 0909ィャ06ィー0802ィェィェ06ィヲ 010507 ィ ィィィ 05ィィ06ィー02ィコ MFC ィィ VCL (09ィャ. 07.11). 00 Tao Framework ィョ0302 0802ィ 05ィィ040609ィ ィェ 07080609ィー06ィヲ ィコ05ィ 0909 06ィコィェィ OpenGL Tao.Platform.Windows.SimpleOpenGlControl. 04ィ 0909ィャ06ィー08ィィィャ 0706090502010609ィ ィー0205ィケィェ0609ィーィケ 0102ィヲ09ィー09ィィィヲ, ィェ0206ィ 010601ィィィャィョ06 010507

1312.2. 0609070605ィケ040609ィ ィェィィ02 OPENGL 09 WINDOWSFORMS 161 09060401ィ ィェィィ07 07080609ィー060006 06ィコ06ィェィェ060006 0708ィィ05060302ィェィィ07 09 WindowsForms ィィ 09 07060101020803ィコ06ィヲ OpenGL: 0キ3 05060401ィ ィェィィ02 07080602ィコィーィ 0708ィィ05060302ィェィィ07: FileNewProjectsVisual C#WindowsWindows Application, ィェィ ィ 08ィ ィーィケ ィィィャ07 07080602ィコィーィ, OK. 0キ3 0206ィ ィ 090502ィェィィ02 Tao ィコ 07080602ィコィーィョ: ProjectAdd Reference.NET, ィェィ ィヲィーィィ 09 0907ィィ09ィコ02 06Tao Framework OpenGL Binding For.NET07 ィィ 06Tao Framework Windows Platform API Binding For.NET07, 0904010205ィィィーィケ 06ィ ィ, 0208. 030905ィィ ィコ06ィャ0706ィェ02ィェィー ィェ02ィー 09 0907ィィ09ィコ02, ィェ0206ィ 010601ィィィャ06 ィェィ ィヲィーィィ ィィ01 09 ィィィェ09ィーィ 05050702ィィ06ィェィェ06ィャ ィコィ ィーィ 05060002 ィ ィィィ 05ィィ06ィー02ィコィィ Tao Framework ィィ 0106ィ ィ 09ィィィーィケ ツ02080204 09ィコ05ィ 01ィコィョ Browse. 0キ3 チィー06ィ 04 ィョ0106ィ ィェ06 09060401ィ ィーィケ 06ィコィェ06 OpenGL, ィェ0206ィ 010601ィィィャ06 0106ィ ィ 09ィィィーィケ 090606ィー0902ィー09ィー09ィョ06ィエィィィヲ 06ィ ィイ02ィコィー ィェィ 07ィ ィェ0205ィケ ィィィェ09ィー08ィョィャ02ィェィー0609. 020507 05ィー060006 ィェィョ03ィェ06 09 ィコ06ィェィー02ィコ09ィーィェ06ィャ ィャ02ィェ06 07ィ ィェ0205ィィ 06Toolbox07 0904ィ 08ィ ィーィケ 07ィョィェィコィー 06Choose Items...07, 09 07060709ィィ090302ィャ0907 0907ィィ09ィコ02 ィェィ ィヲィーィィ 06SimpleOpenGLControl07, 070609ィーィ 09ィィィーィケ 00ィ 0506 ツィコィョ 06ィコ060506 ィェ020006, 0208. 0キ3 0206ィ ィ 090502ィェィィ02 06ィコィェィ OpenGL ィェィ 000608ィャィョ: ィェィ 07ィ ィェ0205ィィ 06Toolbox07 ィェィ ィヲ01ィィィー02 06SimpleOpenGLControl07 ィィ 07020802ィーィ ィエィィィー02 ィェィ 000608ィャィョ 0708ィィ05060302ィェィィ07. 02ィコィェ06 01060503ィェ06 04ィ 070605ィェ07ィーィケ0907 ツ0208ィェ04ィャ 020902ィー06ィャ. 0キ3 06ィェィィ02ィィィ 05ィィ04ィ 02ィィ07 OpenGL: 09 ィコ06ィェ09ィー08ィョィコィー060802 000608ィャ04 0706090502 0904040609ィ InitializeComponent() 0106ィ ィ 09ィィィーィケ 0904040609 00ィョィェィコ02ィィィィ 09060401ィ ィェィィ07 ィコ06ィェィー02ィコ09ィーィ simpleopenglcontrol1.initializecontexts(). 08ィョィェィコ02ィィィィ 08ィィ090609ィ ィェィィ07 OpenGL ィャ0603ィェ06 0106ィ ィ 090507ィーィケ 09 06ィ 08ィ ィ 06ィー ツィィィコ 0906ィ 04ィーィィ07 Paint 06ィコィェィ OpenGL (ィェ02 07ィョィーィ ィーィケ 09 Paint 000608ィャ04).

13

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

13

130308ィィ05060302ィェィィ02 08. 0308ィィィャィィィーィィ0904 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT 04ィ 0909ィャ06ィー08ィィィャ 09ィーィ ィェ01ィ 08ィーィェ0402 ィコ06ィャィ ィェ0104 070609ィー080602ィェィィ07 0708ィィィャィィィーィィ090609, ィコ06ィー06080402 0802ィ 05ィィ040609ィ ィェ04 09 ィ ィィィ 05ィィ06ィー02ィコィ 01 GLU ィィ GLUT. チィー06ィ 04 070609ィー0806ィィィーィケ 0708ィィィャィィィーィィ09 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ GLU, ィェィ 0106 09ィェィ - ツィ 05ィ 09060401ィ ィーィケ ィョィコィ 04ィ ィー0205ィケ ィェィ quadric-06ィ ィイ02ィコィー 09 0706ィャ06ィエィケ06 ィコ06ィャィ ィェ0104 glunewquadric(), ィ 04ィ ィー02ィャ 09040409ィ ィーィケ 0601ィェィョ ィィ04 ィコ06ィャィ ィェ01 glusphere(), glucylinder(), gludisk(), glupartialdisk(). 04ィ 0909ィャ06ィー08ィィィャ 05ィーィィ ィコ06ィャィ ィェ0104 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ィィィー 09000208ィョ 09 0202ィェィー0806ィャ 09 ィェィ ツィ 0502 ィコ06060801ィィィェィ ィー ィィ 08ィ 01ィィィョ0906ィャ radius. 0308ィィ 05ィー06ィャ ツィィ090506 08ィ 04ィ ィィ02ィェィィィヲ 0900020804 0906ィコ08ィョ00 0609ィィ z 04ィ 01ィ 02ィー0907 07ィ 08ィ ィャ02ィー0806ィャ slices, ィ 09010605ィケ 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

13166 0308ィィ05060302ィェィィ02 08. 0308ィィィャィィィーィィ0904 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT 02ィ ィェィェィ 07 00ィョィェィコ02ィィ07 09ィー0806ィィィー 02ィィ05ィィィェ0108 ィ 0204 0609ィェ0609ィ ィェィィィヲ (ィコ0605ィケ0206), 070806010605ィケィェィ 07 0609ィケ 07ィ 08ィ 05050205ィケィェィ 0609ィィ z, 04ィ 01ィェ0202 0609ィェ0609ィ ィェィィ02 ィィィャ0202ィー 08ィ 01ィィィョ09 baseradius, ィィ 08ィ 09070605060302ィェ06 09 07050609ィコ0609ィーィィ z = 0, 0702080201ィェ0202 0609ィェ0609ィ ィェィィ02 ィィィャ0202ィー 08ィ 01ィィィョ09 topradius ィィ 08ィ 09070605060302ィェ06 09 07050609ィコ0609ィーィィ z = height. 030905ィィ 04ィ 01ィ ィーィケ 0601ィィィェ ィィ04 08ィ 01ィィィョ090609 08ィ 09ィェ04ィャ ィェィョ0506, ィー06 ィ ィョ0102ィー 070609ィー080602ィェ ィコ06ィェィョ09. 03ィ 08ィ ィャ02ィー0804 slices ィィ stacks ィィィャ0206ィー ィ ィェィ 050600ィィ ツィェ04ィヲ 09ィャ040905, ツィー06 ィィ 09 070802010401ィョィエ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ィィィー 07050609ィコィィィヲ 01ィィ09ィコ (ィコ08ィョ00) 09 0202ィェィー0806ィャ 09 ィェィ ツィ 0502 ィコ06060801ィィィェィ ィー ィィ 08ィ 01ィィィョ0906ィャ outerradius. 030905ィィ 04ィェィ ツ02ィェィィ02 innerradius 06ィー05ィィ ツィェ06 06ィー ィェィョ0507, ィー06 09 0202ィェィー0802 01ィィ09ィコィ ィ ィョ0102ィー ィェィ 010601ィィィーィケ0907 06ィー09020809ィーィィ02 08ィ 01ィィィョ0906ィャ innerradius. 03ィ 08ィ ィャ02ィー08 slices 04ィ 01ィ 02ィー ツィィ090506 08ィ 04ィ ィィ02ィェィィィヲ 01ィィ09ィコィ 0906ィコ08ィョ00 0609ィィ z, ィ 07ィ 08ィ ィャ02ィー08 loops ツィィ090506 ィコ06ィェ0202ィェィー08ィィ ツ0209ィコィィ01 ィコ06050202, 0702080702ィェ01ィィィコィョ050708ィェ0401 0609ィィ 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ィャィ ィェ0104 06ィー 070802010401ィョィエ02ィヲ 04ィ ィコ0506 ツィ 02ィー0907 09 ィー06ィャ, ツィー06 06ィェィ 09ィー0806ィィィー 0902ィコィー0608 ィコ08ィョ00ィ, ィェィ ツィ 05ィケィェ04ィヲ ィィ ィコ06ィェ02 ツィェ04ィヲ ィョ000504 ィコ06ィー0608060006 06ィー09 ツィィィー0409ィ 06ィー0907 070806ィーィィ09 ツィ 09060906ィヲ 09ィー080205ィコィィ 06ィー 0706050603ィィィー0205ィケィェ060006 ィェィ 0708ィ 090502ィェィィ07 0609ィィ y ィィ 04ィ 01ィ 06ィー0907 07ィ 08ィ ィャ02ィー08ィ ィャィィ startangle ィィ sweepangle. 07000504 ィィ04ィャ02080706ィー0907 09 0008ィ 01ィョ09ィ 01. 0806ィャィ ィェ0104, 07080609060107ィエィィ02 070609ィー080602ィェィィ02 0708ィィィャィィィーィィ090609 ィィ04 ィ ィィィ 05ィィ06ィー02ィコィィ GLUT, 0802ィ 05ィィ040609ィ ィェ04 ツ02080204 09ィーィ ィェ01ィ 08ィーィェ0402 0708ィィィャィィィーィィ0904 OpenGL

13167 ィィ GLU. 020507 070609ィー080602ィェィィ07 ィェィョ03ィェ060006 0708ィィィャィィィーィィ09ィ 010609ィーィ ィー06 ツィェ06 070806ィィ04090209ィーィィ 0904040609 090606ィー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ィィィー 09000208ィョ, ィ glutwiresphere() ィコィ 08ィコィ 09 0900020804 08ィ 01ィィィョ0906ィャ radius. 0209ィーィ 05ィケィェ0402 07ィ 08ィ ィャ02ィー0804 ィー02 0302, ツィー06 ィィ 09 070802010401ィョィエィィ01 ィコ06ィャィ ィェ01ィ 01. void glutsolidcube ( GLdouble s i z e ) void glutwirecube ( GLdouble s i z e ) 0806ィャィ ィェ0104 09ィー080607ィー ィコィョィ ィィ05ィィ ィコィ 08ィコィ 09 ィコィョィ ィ 09 0202ィェィー0806ィャ 09 ィェィ ツィ 0502 ィコ06060801ィィィェィ ィー ィィ 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ィャィ ィェ0104 09ィー080607ィー ィコ06ィェィョ09 ィィ05ィィ 020006 ィコィ 08ィコィ 09 09040906ィー06ィヲ height ィィ 08ィ 01ィィィョ0906ィャ 0609ィェ0609ィ ィェィィ07 base, 08ィ 09070605060302ィェィェ04ィヲ 09010605ィケ 0609ィィ z. 0209ィェ0609ィ ィェィィ02 ィェィ 010601ィィィー0907 09 07050609ィコ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ィャィ ィェ0104 09ィー080607ィー ィー0608 ィィ05ィィ 020006 ィコィ 08ィコィ 09 09 07050609ィコ0609ィーィィ z = 0. 00ィェィョィー0802ィェィェィィィヲ ィィ 09ィェ0203ィェィィィヲ 08ィ 01ィィィョ0904 ィコ06ィェィー080605ィィ08ィョ06ィー0907 07ィ 08ィ ィャ02ィー08ィ ィャィィ

13168 0308ィィ05060302ィェィィ02 08. 0308ィィィャィィィーィィ0904 ィ ィィィ 05ィィ06ィー02ィコ GLU ィィ GLUT innerradius ィィ outerradius. 03ィ 08ィ ィャ02ィー08 nsides 04ィ 01ィ 02ィー ツィィ090506 09ィー060806ィェ 09 ィコ0605ィケ02ィ 01, 090609ィーィ 09050706ィエィィ01 0608ィー060006ィェィ 05ィケィェ0602 0902 ツ02ィェィィ02 ィー0608ィ, ィ rings ツィィ090506 08ィ 01ィィィ 05ィケィェ0401 08ィ 04ィ ィィ02ィェィィィヲ ィー0608ィ. void glutsolidtetrahedron ( void ) void glutwiretetrahedron ( void ) 06ィーィィ ィコ06ィャィ ィェ0104 09ィー080607ィー ィー02ィー08ィ 050108 (0708ィ 09ィィ05ィケィェィョ06 ィー0802ィョ000605ィケィェィョ06 07ィィ08ィ ィャィィ01ィョ) ィィ05ィィ 020006 ィコィ 08ィコィ 09, 0708ィィ 05ィー06ィャ 08ィ 01ィィィョ09 0607ィィ09ィ ィェィェ06ィヲ 0900020804 0906ィコ08ィョ00 ィェ020006 08ィ 0902ィェ 1. void glutsolidoctahedron ( void ) void glutwireoctahedron ( void ) 06ィーィィ ィコ06ィャィ ィェ0104 09ィー080607ィー 06ィコィーィ 050108 ィィ05ィィ 020006 ィコィ 08ィコィ 09, 08ィ 01ィィィョ09 0607ィィ09ィ ィェィェ06ィヲ 0906ィコ08ィョ00 ィェ020006 0900020804 08ィ 0902ィェ 1. void glutsoliddodecahedron ( void ) void glutwiredodecahedron ( void ) 06ィーィィ ィコ06ィャィ ィェ0104 09ィー080607ィー 01060102ィコィ 050108 ィィ05ィィ 020006 ィコィ 08ィコィ 09, 08ィ 01ィィィョ09 0607ィィ09ィ ィェィェ06ィヲ 0906ィコ08ィョ00 ィェ020006 0900020804 08ィ 0902ィェ ィコ09ィ 0108ィ ィーィェ06ィャィョ ィコ0608ィェ06 ィィ04 ィー080201. 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ィャィ ィェ0104 09ィー080607ィー ィィィコ0609ィ 050108 ィィ05ィィ 020006 ィコィ 08ィコィ 09, 08ィ 01ィィィョ09 0607ィィ09ィ ィェィェ06ィヲ 0906ィコ08ィョ00 ィェ020006 0900020804 08ィ 0902ィェ 1. 0308ィ 09ィィ05ィケィェ0602 070609ィー080602ィェィィ02 07020802 ツィィ090502ィェィェ0401 0708ィィィャィィィーィィ090609 090604ィャ0603ィェ06 0708ィィ ィョ01ィ 0502ィェィィィィ ィェ0209ィィ01ィィィャ0401 05ィィィェィィィィ ィィ 070609020801ィェ0609ィー02ィヲ, 010507 ツ020006 ィェィ 0106 09ィコ0506 ツィィィーィケ 090606ィー0902ィー09ィー09ィョ06ィエィィィヲ 080203ィィィャ 090404060906ィャ ィコ06ィャィ ィェ0104 glenable(gl_depth_test).

130308ィィ05060302ィェィィ02 09. 0202ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ0402 0708060008ィ ィャィャ04 09.1. 0308ィィィャ0208 1: 03080609ィー0602 GLUT-0708ィィ05060302ィェィィ02 06ィー06ィー 07080609ィー06ィヲ 0708ィィィャ0208 07080201ィェィ 04ィェィ ツ02ィェ 010507 0102ィャ06ィェ09ィー08ィ 02ィィィィ 09ィー08ィョィコィーィョ0804 GLUT-0708ィィ05060302ィェィィ07 ィィ 07080609ィー02ィヲ03ィィ01 0609ィェ0609 OpenGL. 040204ィョ05ィケィーィ ィー06ィャ 08ィ ィ 06ィー04 0708060008ィ ィャィャ04 0709050702ィー0907 0905ィョ ツィ ィヲィェ04ィヲ ィェィ ィ 0608 020902ィーィェ0401 070807ィャ06ィョ000605ィケィェィィィコ0609, ィコ06ィー060804ィヲ ィャ02ィェ0702ィー0907 0708ィィ ィェィ 03ィ ィーィィィィ 05020906ィヲ ィコィェ0607ィコィィ ィャ0403ィィ. 05 0706ィャ06ィエィケ06 0708ィ 0906ィヲ ィコィェ0607ィコィィ ィャ0403ィィ ィャ0603ィェ06 ィャ02ィェ07ィーィケ 080203ィィィャ 04ィ 05ィィ09ィコィィ 070807ィャ06ィョ000605ィケィェィィィコ0609. 0308060008ィ ィャィャィ 09.1. 03080609ィー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

13170 0308ィィ05060302ィェィィ02 09. 0202ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ0402 0708060008ィ ィャィャ04 // 03ィィ08ィィィェィ ィィ 09040906ィーィ 06ィコィェィ GLint Width = 512, Height = 512; // ツィィ090506 070807ィャ06ィョ000605ィケィェィィィコ0609 09 06ィコィェ02 int Times = 100; // 09 04ィ 070605ィェ02ィェィィ02ィャ? int F i l l F l a g = 1 ; long Seed = 0 ; // 00ィョィェィコ02ィィ07 06ィー06ィ 08ィ 03ィ 02ィー 070807ィャ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ィ 09050702ィー 090902ィャ 090409060106ィャ ィェィ 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 ) ;

1309.1. 0308ィィィャ0208 1: 03080609ィー0602 GLUT-0708ィィ05060302ィェィィ02 171 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 ( ) ; // 0004040409ィ 02ィー0907 0708ィィ ィィ04ィャ02ィェ02ィェィィィィ 08ィ 04ィャ02080609 06ィコィェィ 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ィー 090606ィ ィエ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) ;

13172 0308ィィ05060302ィェィィ02 09. 0202ィャ06ィェ09ィー08ィ 02ィィ06ィェィェ0402 0708060008ィ ィャィャ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ィー 090606ィ ィエ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 ( ) ;

1309.2. 0308ィィィャ0208 2: 0006010205ィケ 06090902ィエ02ィェィィ07 OPENGL 173 04ィィ09. 09.1. 040204ィョ05ィケィーィ ィー 08ィ ィ 06ィー04 0708060008ィ ィャィャ04 09.1. 05050209ィ 080203ィィィャ 04ィ 070605ィェ02ィェィィ07, 090708ィ 09ィ 080203ィィィャ ィコ06ィェィーィョ080609. 09.2. 0308ィィィャ0208 2: 0006010205ィケ 06090902ィエ02ィェィィ07 OpenGL 0308060008ィ ィャィャィ 07080201ィェィ 04ィェィ ツ02ィェィ 010507 0102ィャ06ィェ09ィー08ィ 02ィィィィ ィャ06010205ィィ 06090902ィエ02ィェィィ07 OpenGL ィェィ 0708ィィィャ020802 07080609ィー06ィヲ 090202ィェ04, 090609ィー0607ィエ02ィヲ ィィ04 ィー0608ィ, ィコ06ィェィョ09ィ ィィ 03ィ 08ィ. 02ィ ィイ02ィコィーィ ィャ ィェィ 04ィェィ ツィ 06ィー0907 08ィ 04ィェ0402 ィャィ ィー0208ィィィ 0504. 00 090202ィェ02 0708ィィ09ィョィー09ィー09ィョ02ィー ィー06 ツ02 ツィェ04ィヲ ィィ09ィー06 ツィェィィィコ 090902ィーィ. 0308060008ィ ィャィャィ 09.2. 0006010205ィケ 06090902ィエ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 } ;