ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Direct3D8
ΠΠ΅ΡΡΠΈΡ ΡΠ΅ΠΊΡΡΠ°: 1.0
ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΡΠΎΠ»ΡΠΊΠΎ .exe) (72 kb)
ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄) (44 kb)
ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½Π°Ρ Π³ΡΠ°ΡΠΈΠΊΠ° Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ»Π° ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΠΏΡΠΎΡΠ²Π»Π΅Π½ΠΈΠΉ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. ΠΠ°Π²Π½ΡΠΌ-Π΄Π°Π²Π½ΠΎ, Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π° ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠ² Π½ΠΈΠΊΡΠΎ Π΄Π°ΠΆΠ΅ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΡΠ΅Π±Π΅ Π½Π΅ ΠΌΠΎΠ³, ΡΡΠΎ ΠΏΡΠΎΠΉΠ΄Π΅Ρ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΎΠ±ΡΠ°Π·Ρ ΡΠ°Π½ΡΠ°ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΌΠΎΠ½ΡΡΡΠΎΠ² Π±ΡΠ΄ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ Π½Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΠΏΡΠ΅-ΠΌΠ°ΡΠ΅ ΠΈ ΠΏΠ»Π°ΡΡΠΈΠ»ΠΈΠ½Π°, Π° ΠΏΡΡΠΌΠΎ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°. ΠΡΠΎ ΡΠ΅ΠΉΡΠ°Ρ Π²ΡΠ΅ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ ΠΊ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ, ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΡΠΆΠ΅ Π½ΠΈΠΊΠΎΠ³ΠΎ Π½Π΅ ΡΠ΄ΠΈΠ²ΠΈΡΡ. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π½Π°Π΄ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠ°ΠΌΡΡΠ½ΠΈΠΊ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΠ΅ΡΠΈΠ» Π½Π°ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ ΠΈΠ· ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² β ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΎΠ΄Π° ΠΈΡΠΊΡΡΡΡΠ²ΠΎ Π±ΡΠ»ΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΎ Π² ΡΠ²ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΈ Π΅Π³ΠΎ ΠΎΡΠ³ΠΎΠ»ΠΎΡΠΊΠΈ Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡ . ΠΡΡΠΎΡΠΈΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π° ΡΠ°ΠΌΠ° ΠΏΠΎ ΡΠ΅Π±Π΅ ΠΈ Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, Π½ΠΎ Π΄Π°Π½Π½ΡΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΡΡΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ Ρ Π°ΡΠ°ΠΊΡΠ΅Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π½Π° ΡΡΠ°ΠΏΠ°Ρ ΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈΡΠΊΡΡΡΡΠ²Π° ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ°, Π° ΠΎΠ±ΡΠ°ΡΠΈΠΌΡΡ ΡΡΠ°Π·Ρ ΠΊ Π½Π°ΡΠΈΠΌ Π΄Π½ΡΠΌ. Π‘ΡΠ°Π½Π΄Π°ΡΡΠΎΠΌ Π΄Π΅-ΡΠ°ΠΊΡΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Windows ΡΡΠ°Π»ΠΈ Π΄Π²Π΅ 3D Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ: OpenGL ΠΈ Direct3D (ΡΠ°ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ DirectX). OpenGL, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ ΡΠΈΡΠΌΠΎΠΉ Silicon Graphics, ΡΠΆΠ΅ ΡΡΠ°Π» ΠΊΠ»Π°ΡΡΠΈΠΊΠΎΠΉ ΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΠ΅ΡΡΡ ΡΠ²ΠΎΠ΅ΠΉ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡΡ ΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ². ΠΠ°ΠΏΡΠΎΡΠΈΠ², Direct3D, Π΄Π΅ΡΠΈΡΠ΅ Microsoft, ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ, ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΡΠ΅ΡΡΡ ΠΈ Π΄Π²ΠΈΠ³Π°Π΅ΡΡΡ Π²ΠΏΠ΅ΡΠ΅Π΄. ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° ΠΈΠΌΠ΅Π΅Ρ Π½ΠΎΠΌΠ΅Ρ 8, ΠΈ ΡΡΠΎ Π½Π΅ ΠΊΠΎΠ½Π΅Ρ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ Π±Ρ Ρ ΠΎΡΠ΅Π» ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡ ΡΠΈΡΠ°ΡΠ΅Π»Ρ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π°ΡΠΏΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°, ΡΠΊΠ°Π·Π°ΡΡ Π½Π° Π΅Π³ΠΎ ΠΎΡΠ»ΠΈΡΠΈΡ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΈ ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²Π΅ΡΡΠΌΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ Π·Π°Π΄Π°Ρ β ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π²ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ . ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π²Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Ρ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° ΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ .
DirectX 8.0a SDK ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
ΠΠ½Π³Π»ΠΎΡΠ·ΡΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ DirectX 8.0a Runtime for Windows 95, Windows 98, Windows 98 SE, Windows ME ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
ΠΠ½Π³Π»ΠΎΡΠ·ΡΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ DirectX 8.0a Runtime for Windows 2000 ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
ΠΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ DirectX 8.0a Runtime ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ ΡΡΡ.
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ Π½Π°ΡΠ°ΡΡ, Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ Π΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΠΎΠ² ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π² ΡΡΠ°ΡΡΠ΅. ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π±Π°Π·ΠΈΡΡΠ΅ΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΎΡ Microsoft, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΏΠΎΠΊΠ° (ΠΈ ΠΏΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΡΠ°ΠΊ Π±ΡΠ΄Π΅Ρ Π²ΡΠ΅Π³Π΄Π°) ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅. ΠΠ΅ ΡΠΎ, ΡΡΠΎ Π±Ρ Π½ΠΈΠΊΡΠΎ Ρ Π½Π°Ρ Π½Π΅ Π·Π½Π°Π΅Ρ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ°, Π½ΠΎ ΡΠΆ ΡΠ΅Π»ΠΎΠ²Π΅ΡΠ΅ΡΠΊΠ°Ρ ΠΏΡΠΈΡ ΠΈΠΊΠ° ΡΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½Π°, ΡΡΠΎ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ Π²ΡΠ΅ Π°Π²ΡΠΎΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΡ Π½Π° ΡΡΡΡΠΊΠΈΠΉ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ. ΠΠΎΡΡΠΎΠΌΡ ΠΌΠ½ΠΎΠΉ Π±ΡΠ»ΠΎ ΠΏΡΠΈΠ½ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅: ΡΠ΅ΡΠΌΠΈΠ½Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΡΠΈΡΠ°ΡΠ΅Π»Ρ ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ Π·Π°Ρ ΠΎΡΠ΅Ρ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ· ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΠΎΡΡΠ°Π²Π»ΡΡΡ Π½Π° ΠΈΡ ΡΠΎΠ΄Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅. Π’Π°ΠΊ ΡΡΠΎ Π½Π΅ ΡΠ΄ΠΈΠ²Π»ΡΠΉΡΠ΅ΡΡ, ΡΠ²ΠΈΠ΄Π΅Π² ΡΠ΅ΡΠΌΠΈΠ½ "flip chain" Π²ΠΌΠ΅ΡΡΠΎ "ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ" ΠΈΠ»ΠΈ "ΡΠ΅ΠΏΠΎΡΠΊΠ° ΠΏΠ΅ΡΠ΅Π²ΠΎΡΠΎΡΠ°"β¦ Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΠ΅ΡΠΌΠΈΠ½Π° Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π² ΡΠΊΠΎΠ±ΠΊΠ°Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° ΠΈΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: "ΠΌΠ°ΡΡΠΈΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ (projection matrix)".
ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
ΠΡΠ±ΠΎΠΉ Π°Π²ΡΠΎΡ ΡΡΠ°ΡΡΠΈ ΡΠ°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΡΡ Ρ Π½Π΅Π»Π΅Π³ΠΊΠΈΠΌ Π²ΠΎΠΏΡΠΎΡΠΎΠΌ: ΠΊΠ°ΠΊΡΡ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΈΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·Π»Π°Π³Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°. ΠΠ°ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ±ΠΎΡΠ° Visual C++ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π±Π°Π·Ρ ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΡ ΠΏΡΡΠ΅ΠΉ: ΡΠΆ Π±ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΠΏΠ»ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΈ frameworks. ΠΠΎΠΆΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ 4 Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅ΡΠ½ΡΡ (ΡΡΠ°Π·Ρ ΠΆΠ΅ ΠΎΡΠΌΠ΅ΡΡ ΠΈΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ΠΈ Π΄ΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π°):
β’ Π§ΠΈΡΡΠΎΠ΅ API ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΠ΅. ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄, ΠΏΡΠ°Π²Π΄Π°, ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΠΎΡΡΡΡ Π½Π΅ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡβ¦
β’ MFC ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ Π²ΡΠ±ΠΎΡ. Π‘Π΅ΠΉΡΠ°Ρ ΡΠΆΠ΅ ΡΡΡΠ΄Π½ΠΎ Π½Π°ΠΉΡΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ mfc42.dll, Ρ ΠΎΡΡ, ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ. Π Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠ°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ½Π΅ΡΡΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ³Π»ΠΎΠ²Π°ΡΠΎΡΡΡ ΠΈ ΡΡΠΆΠ΅Π»ΠΎΠ²Π΅ΡΠ½ΠΎΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ².
β’ WTL (Windows Template Library) ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΡΡΡΠΊΠ°, Π½ΠΎ ΠΏΠΎΡΠ΅ΠΌΡ-ΡΠΎ Π΅ΡΠ΅ Π½Π΅ Π²ΡΠ΅ Π»ΡΠ΄ΠΈ ΡΠ»ΡΡΠ°Π»ΠΈ ΠΎ WTL, ΠΈ, ΡΡΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ΅ΡΠ°Π»ΡΠ½ΠΎ, Π½Π΅ Ρ Π²ΡΠ΅Ρ ΠΎΠ½Π° ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π°.
Π, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ATL ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π»ΡΠ±ΠΈΠΌΡΠΉ ΠΌΠ½ΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄, ΠΏΡΠΈΠ³ΠΎΠ΄Π½Π°Ρ (Π²ΠΎΠΏΡΠ΅ΠΊΠΈ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΌΠ½Π΅Π½ΠΈΡ) Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ Windows-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΠΌΠ°ΡΡΠ΅Ρ ATL ΠΈΠ· ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ° Visual C++6 Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π½Π΅-COM ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΡΠ»Π΅ Π΄ΠΎΠ»Π³ΠΈΡ ΡΠ°Π·ΠΌΡΡΠ»Π΅Π½ΠΈΠΉ Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΡΡ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅. ΠΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ, ΡΠΈΡΠ°ΡΠ΅Π»Ρ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ, Π° ΠΌΠ½Π΅ ΠΏΡΠΈΡΡΠ½ΠΎ. Π¨ΡΡΠΊΠ°. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΈΡΠ°Ρ, ΡΡΠΎ ΡΡΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ» ΠΌΠ½Π΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠΎΠ΄ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ, ΠΈ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, Π½Π΅ ΠΈΠ·ΠΌΡΡΠ΅Π½Π½ΡΠΉ Π½Π°ΡΠ·Π°Π½ΠΎΠΌ Π² Π²ΠΈΠ΄Π΅ MFC, ΡΠ°Π·Π±Π΅ΡΠ΅ΡΡΡ ΡΠ°ΠΌ Π±Π΅Π· ΠΎΡΠΎΠ±ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅Π½Π°Π²ΠΈΠ΄ΠΈΡΠ΅ ATL β Π½Π΅ ΡΠΈΡΠ°ΠΉΡΠ΅ ΡΡΡ ΡΡΠ°ΡΡΡ Π΄Π°Π»ΡΡΠ΅. Π§ΡΠΎΠ±Ρ Π²Π½Π΅ΡΡΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ½ΠΎΡΡΡ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΡΡΡ, ΡΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π²Π°ΡΠ΅ΠΌΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π΄Π»Ρ Π΄Π΅ΠΌΠΎ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π² Rational Rose 2000 β Π½ΠΎΡΠ°ΡΠΈΡ ΠΡΡΠ°.
ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² ΠΏΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ²:
β’ CMainDlg β ΠΠ»Π°Π²Π½ΡΠΉ ΠΊΠ»Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π£Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ CDialogImpl ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π² ΡΡΠ½ΠΊΡΠΈΠΈ WinMain ΠΊΠ°ΠΊ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡΠ½ΡΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ Π² ΡΠ΅Π±Π΅ ΠΎΠ΄ΠΈΠ½ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° C3DGraphic, ΠΎΠ΄ΠΈΠ½ C3DGraphFrame, 4 Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡΠ½ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² (CMaterialPropsWindow, CLightPropsWindow, CBackColorWindow and CFunctionTypeWindow) ΠΈ 3 ΠΎΠ±ΡΠ΅ΠΊΡΠ° 3D ΡΡΠ½ΠΊΡΠΈΠΉ (CSplashFunction, CPlaneFunction and CParabaloidFunction).
β’ CPropertyWindow β ΠΠ°Π·ΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΎΠΊΠΎΠ½ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ². Π£Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ ΠΎΡ CDialogImpl.
β’ C3DFunction β ΠΠ°Π·ΠΎΠ²ΡΠΉ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ 2-Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ .
β’ CPropertyWindowNotify β ΠΠ±ΡΡΡΠ°ΠΊΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌΡΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ ΠΎΠΊΠΎΠ½ ΡΠ²ΠΎΠΉΡΡΠ². Π§Π΅ΡΠ΅Π· ΡΡΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»ΡΡΡΡΡ ΠΎΠ± ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ , ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡΠΈΡ ΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ.
β’ CD3D8Application β ΠΠ΅ΡΡΠΌΠ° ΠΏΡΠΎΡΡΠΎΠΉ ΠΊΠ»Π°ΡΡ-ΠΎΠ±Π΅ΡΡΠΊΠ° Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΆΠΈΠ·Π½ΡΡ ΠΈ ΡΠΌΠ΅ΡΡΡΡ IDirect3D8 ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
β’ C3DGraphFrame β ΠΠΊΠ½ΠΎ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠ°Ρ 2D ΠΏΡΠΎΠ΅ΠΊΡΠΈΡ ΡΡΠ΅Ρ ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ²ΠΎΡΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Ρ MFC, ΠΊΠ»Π°ΡΡ Π²ΠΈΠ΄Π° Π΄Π»Ρ ΡΡΠ΅Ρ ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ Π³ΡΠ°ΡΠΈΠΊΠ°.
β’ C3DGraphic β ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°ΡΠΈΠΌΡΠΉ ΠΈ Π½Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉ Π²ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ 3D ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΠΎΠΌ, ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°, ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π° ΠΈ ΡΠΎΠΌΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅. Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΠ°Π΄ΠΈ Π½Π΅Π³ΠΎ Π²ΡΠ΅ ΠΈ Π·Π°ΡΠ΅Π²Π°Π»ΠΎΡΡβ¦
Π’ΠΎ Π»ΠΈ ΠΠΈΠΊΠ΅Π»Π°Π½Π΄ΠΆΠ΅Π»ΠΎ, ΡΠΎ Π»ΠΈ Π΅ΡΠ΅ ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΠΈΠ· Π²Π΅Π»ΠΈΠΊΠΈΡ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ ΡΠΏΡΠΎΡΠΈΠ»ΠΈ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΡΠ»ΡΠΏΡΡΡΡ. ΠΠ΅Π»ΠΈΠΊΠΈΠΉ, Π½Π΅Π΄ΠΎΠ»Π³ΠΎ Π΄ΡΠΌΠ°Ρ, ΠΎΡΠ²Π΅ΡΠΈΠ»: "ΠΠΎΠ·ΡΠΌΠΈΡΠ΅ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΊΠ°ΠΌΠ΅Π½Ρ ΠΈ ΡΠ΄Π°Π»ΠΈΡΠ΅ Π²ΡΠ΅ Π»ΠΈΡΠ½Π΅Π΅." ΠΠΊΠΈΠ½ΡΠ² Π²Π·Π³Π»ΡΠ΄ΠΎΠΌ Π²ΡΠ΅ Π²ΡΡΠ΅ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΎΡΡΠΎΠΉ Π²ΡΠ²ΠΎΠ΄: Π΄Π΅ΠΌΠΎ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΈ ΡΠ΅ΠΌ ΠΈΠ½ΡΠΌ, ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΠΌ ATL EXE COM ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ, ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Ρ ΠΈΡΡΠΎΠΉ ΡΡΠΊΠΎΠΉ Π°Π²ΡΠΎΡΠ° Π±ΡΠ»ΠΎ ΡΠ΄Π°Π»Π΅Π½ΠΎ Π²ΡΠ΅ ΠΎΡΠ½ΠΎΡΡΡΠ΅Π΅ΡΡ ΠΊ COM ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΌΠΎ ΠΏΠΎ ΡΠ΅Π±Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ, Π½ΠΎ ΠΌΡ Π½Π΅ ΡΠΊΡΠ»ΡΠΏΡΠΎΡΡ, ΡΠ°ΠΊ ΡΡΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΎΡΡΠ°Π²ΠΈΠΌ Π² ΡΡΠΎΡΠΎΠ½Π΅. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, ΡΡΠΎ ΡΠ΅ΠΌΠ° ΠΌΠΎΠ΅ΠΉ ΡΡΠ°ΡΡΠΈ Π²ΡΠ΅-ΡΠ°ΠΊΠΈ DirectX, Π° Π½Π΅ ATL. ΠΠΎΡ ΡΠ΅ΠΉΡΠ°Ρ β ΠΊΠ°ΠΊ ΡΠ°Π· ΠΎΠ± ΡΡΠΎΠΌβ¦
Π ΡΡΠΎ ΡΡΠΎ Π·Π° Direct3D8, ΠΈ Π³Π΄Π΅ ΠΎΠ½ΠΎ ΠΆΠΈΠ²Π΅Ρ???
ΠΡΠ»ΠΈ Π²Ρ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΈΠΌΠ΅Π»ΠΈ Π΄Π΅Π»ΠΎ Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ DirectX, ΡΠΎ ΠΠ°Ρ ΠΆΠ΄Π΅Ρ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅ ΠΎΡΠΊΡΡΡΠΈΠ΅: DirectDraw Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅Ρ Π²ΠΎΠΎΠ±ΡΠ΅!!! Microsoft Π² ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΡΠ°Π· ΡΠ΅ΡΠΈΠ» ΠΎΠ±ΠΎΠ±ΡΠΈΡΡ Π²ΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ, ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ ΠΎΡΠ½ΠΎΡΡΡΠ΅Π΅ΡΡ ΠΊ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² DirectX ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ ΠΏΠΎΠ΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ±ΡΠΈΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ DirectX Graphics. ΠΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ ΠΊΠ°ΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ DirectX7. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ IDirect3DDevice8, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ΅Π΅Ρ 94 ΠΌΠ΅ΡΠΎΠ΄Π°. ΠΠ»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, IDirect3DDevice7 ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ» Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π»ΠΈΡΡ 48 ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ. Back-Π±ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ ΡΡΠΈΠ»ΠΈΠΉ Ρ ΠΠ°ΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Ρ β Π½Π΅ Π½Π°Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΡΡΠ½ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΠΈ Π·Π°Π³Π°Π΄ΠΎΡΠ½ΡΠ΅ flip chains. ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Direct3D ΡΡΠ°Π»Π° ΠΏΡΠΎΡΡΠΎΠΉ ΠΊΠ°ΠΊ i++, ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΠ°Π»ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ. ΠΠ΅ Π²ΡΠ΅Π³Π΄Π° ΡΡΠΎ Π·Π΄ΠΎΡΠΎΠ²ΠΎ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° primary surface. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π²Ρ ΠΈ ΡΠΈΡΠ°ΡΡ ΡΠΎ Ρ Π½Π΅Π΅ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅. Π’ΠΎΡΠ½Π΅Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅, Π½ΠΎ Microsoft Π½Π΅ ΡΠΎΠ²Π΅ΡΡΠ΅Ρ. ΠΡ ΡΠ΅Π±Ρ ΠΏΠΎΡΠΎΠ²Π΅ΡΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ Π½Π΅ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Microsoft, Π° Π»ΡΠ±ΠΎΠΏΡΡΠ½ΡΡ ΠΎΡΡΡΠ»Π°Ρ ΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΌΠ΅ΡΠΎΠ΄Ρ IDirect3DDevice8::GetFrontBuffer. ΠΠΏΡΠΎΡΠ΅ΠΌ, ΠΊ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Microsoft Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ½ΠΎΡΠΈΠ»Π°ΡΡ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΈ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² DirectX8, ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°.
Π ΡΡΠΎ ΠΆΠ΅ Π΄Π΅Π»Π°ΡΡ ΡΠ΅ΠΌ Π»ΡΠ΄ΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΠΌΠ΅Π»ΠΈ Π΄Π΅Π»Π° Ρ Direct3D Π²ΠΎΠΎΠ±ΡΠ΅??? Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ Π½ΠΈΡ Ρ Π±Ρ Ρ ΠΎΡΠ΅Π» Π²ΠΊΡΠ°ΡΡΠ΅ ΠΎΠ±ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ (ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ ΠΡ Π²ΡΠ΅ ΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π°ΡΠΏΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ 3D ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ):
β’ Direct3D8 ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎ-Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΉ ΠΏΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ Π²ΠΈΠ΄Π΅ΠΎΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° ΠΌΠ°ΡΠΈΠ½Π΅. ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡΠ΅Π½Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΠΎΠΉ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΡ ΡΠΌΡΠ»ΡΡΠΈΡ. ΠΠΌΡΠ»ΡΡΠΈΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Π΄Π° ΠΈ Π½Π΅ Π²ΡΠ΅ ΡΠΌΡΠ»ΠΈΡΡΠ΅ΡΡΡβ¦
β’ ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ 3D ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ: ΠΌΠ°ΡΡΠΈΡΠ° ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ (world matrix), ΠΌΠ°ΡΡΠΈΡΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ (view matrix) ΠΈ ΠΌΠ°ΡΡΠΈΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ (projection matrix).