Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Z-Π±ΡƒΡ„Π΅Ρ€?(Π»ΠΈΠΊΠ±Π΅Π·).

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Z-Π±ΡƒΡ„Π΅Ρ€?(Π»ΠΈΠΊΠ±Π΅Π·).

Π’Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ΅ Π½Π° экранС ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° прСдставляСт собой Π½Π°Π±ΠΎΡ€ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Ρ€ΡƒΠΏΠΏ элСмСнтов:

— Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²,

— Π³Ρ€ΡƒΠΏΠΏΡ‹ источников освСщСния,

— Π³Ρ€ΡƒΠΏΠΏΡ‹ примСняСмых тСкстурных ΠΊΠ°Ρ€Ρ‚,

— Π³Ρ€ΡƒΠΏΠΏΡ‹ (ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎΠΉ) ΠΊΠ°ΠΌΠ΅Ρ€.

Π’Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ задаСтся:

— ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ Π΅Π³ΠΎ Π²Π΅Ρ€ΡˆΠΈΠ½ Π² пространствС сцСны,

— Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ Π² пространствС тСкстурной ΠΊΠ°Ρ€Ρ‚Ρ‹,

— смСщСниСм ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠΌΠΈ измСнСниями Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² соотвСтствии с замыслом Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌ ΠΎΡ‚ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π΄Π²ΡƒΡ… свойств являСтся Π³Ρ€Π°Π½ΡŒ — ΠΏΠ»ΠΎΡΠΊΠΎΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΈΠΌΠ΅ΡŽΡ‰Π°Ρ Ρ‚Ρ€ΠΈ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹, с Π½Π°Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ Π½Π° Π½Π΅Π΅ тСкстурами.

ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹. Π­Ρ‚ΠΎ простыС гСомСтричСскиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ слоТныС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Π˜Ρ… ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ задаСтся располоТСниСм ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… Ρ‚ΠΎΡ‡Π΅ΠΊ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Π΅Ρ€ΡˆΠΈΠ½). Для конструирования ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΈ построСнии ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² учитываСтся Ρ‚Π°ΠΊΠΆΠ΅ эффСкт пСрспСктивы.

ВСкстуры. Π­Ρ‚ΠΎ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹Π΅ изобраТСния, ΠΈΠ»ΠΈ повСрхности, Π½Π°Π»Π°Π³Π°Π΅ΠΌΡ‹Π΅ Π½Π° ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹. Π’ΠΎΡ‡ΠΊΠΈ тСкстуры Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ тСксСлами.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ освСщСния ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π»Π°Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ Π² пространствС сцСны, ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ (Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ), Ρ‚ΠΈΠΏΠΎΠΌ (Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΌ, Ρ‚ΠΎΡ‡Π΅Ρ‡Π½Ρ‹ΠΌ ΠΈ Ρ‚. ΠΏ.), Ρ†Π²Π΅Ρ‚ΠΎΠΌ ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ измСнСния свСтового излучСния.

ВСкстурой (ΠΈΠ»ΠΈ тСкстурной ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ) Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π΄Π²ΡƒΡ…- ΠΈΠ»ΠΈ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ Π·Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ восприятиС Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ свойств Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… повСрхностСй. Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ тСкстуры (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰Π΅ΠΉ срСды) сами Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ, Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… тСкстур, Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π½Π° ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½.

МоТно ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ процСссора, проявив Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ…ΠΈΡ‚Ρ€ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ упорядочСнии ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΠΎ ΠΈΡ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ Z . Если какая-Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ скрыта Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‘Ρ€Π½ΡƒΡ‚Π° ΠΎΡ‚ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚Π΅Π»Ρ, Ρ‚ΠΎ Π΅Π΅ совсСм Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠΉ. А Ссли ΠΌΡ‹ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ рисования, Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Π½Π΅ Π½Π°Π΄ΠΎ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ тСкстуры, Π² связи с этим ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ количСство Ρ€Π°Π±ΠΎΡ‚Ρ‹ для процСссора.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π΅Ρ€Π°Ρ‚ΠΈΡ‡Π½Π°Ρ Z-буфСризация для ΠΎΡ‚Π±Ρ€Π°ΠΊΠΎΠ²ΠΊΠΈ окклюзии

Π― Ρ‡ΠΈΡ‚Π°ΡŽ Ρ€Π°Π·Π΄Π΅Π» отсСчки окклюзии Π² Real-Time Rendering 3rd Edition, ΠΈ я Π½Π΅ ΠΌΠΎΠ³ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. НСкоторыС вопросы:

Как получаСтся β€œZ-пирамида”? Π—Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Z-Π±ΡƒΡ„Π΅Ρ€Π°? Π’ ΠΊΠ½ΠΈΠ³Π΅ ΠΎΠ½ отобраТаСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (слСва):
Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это

ЯвляСтся Π»ΠΈ структура Octree ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ Octree, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΠ±Ρ‰Π΅Π³ΠΎ ΠΎΡ‚Π±Ρ€Π°ΠΊΠΎΠ²ΠΊΠΈ ΠΈ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° усСчСния? Или это спСциализированный Octree, сдСланный Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΎΡ‚Π±Ρ€Π°ΠΊΠΎΠ²ΠΊΠΈ окклюзии?

Π‘ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰ΠΈΠΉ вопрос: Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ (Π° Ρ‚Π°ΠΊΠΆΠ΅ здСсь), Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Query Occlusion Query описываСтся ΠΊΠ°ΠΊ β€œΡ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ объСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ сравнСниС Π΅Π³ΠΎ Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Z-Π±ΡƒΡ„Π΅Ρ€Π΅, возвращая количСство Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… пиксСлСй”. КакиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² OpenGL связаны с этой ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠ΅ΠΉ окклюзионного запроса?

ЯвляСтся Π»ΠΈ эта ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° стандартом для отсСчСния окклюзии ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π°?

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Z-Π±ΡƒΡ„Π΅Ρ€ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π² ситуациях, ΠΊΠΎΠ³Π΄Π° большиС Π±Π»ΠΈΠ·Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ мноТСство Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ визуализация Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ части здания ΠΈΠ»ΠΈ Π³ΠΎΡ€Π½ΠΎΠ³ΠΎ Π»Π°Π½Π΄ΡˆΠ°Ρ„Ρ‚Π°.

Когда визуализируСтся Π±Π»ΠΈΠ·Π»Π΅ΠΆΠ°Ρ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΎΠ½ устанавливаСт пиксСль Π³Π΄Π΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Z-Π±ΡƒΡ„Π΅Ρ€Π½ΠΎΠΉ ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π±Π»ΠΈΠ·ΠΊΠΎΠ΅ ΠΊ Π³Π»ΡƒΠ±ΠΈΠ½Π΅. Когда визуализируСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ мСньшСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, Π΅Π³ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ ΠΌΠΎΠΆΠ½ΠΎ сначала ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠΎ этому пиксСлю ΠΈ ΠΎΡ‚Π±Ρ€Π°ΠΊΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π²Ρ‹Π³ΠΎΠ΄Ρƒ ΠΈΠ· иСрархичСского Z-Π±ΡƒΡ„Π΅Ρ€Π°, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅ΠΉΠ·Π°ΠΆ, начиная с Π±Π»ΠΈΠΆΠ°ΠΉΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Для этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠ΅ΠΌΡ‹, ΠΊΠ°ΠΊ ΠΎΠΊΡ‚Ρ€Π΅ΠΈ ΠΈΠ»ΠΈ BSP.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΠΊΡ‚Ρ€ΠΈ ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ позволяСт ΠΎΡ‚Π±ΠΈΡ€Π°Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹Π΅ Π²Π΅Ρ‚ΠΊΠΈ Π΄Π΅Ρ€Π΅Π²Π° Π½Π° основС расстояния Π΄ΠΎ ΠΈΡ… bbox, Π° Π½Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ².

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Z-Π±ΡƒΡ„Π΅Ρ€Ρ‹ Π±Ρ‹Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°Π½Π½ΠΈΡ… Radeon. Однако я Π½Π΅ ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎΠ± этом Π² настоящСС врСмя.

Запросы окклюзии, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. Они, ΠΏΠΎ сути, Π΄Π°ΡŽΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ прСимущСства.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Настройки

Π­Ρ‚ΠΎ Π½Π΅Π·Π°Π²Π΅Ρ€ΡˆΡ‘Π½Π½Π°Ρ ΡΡ‚Π°Ρ‚ΡŒΡ
Она содСрТит Π½Π΅ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ
Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Satisfactory Π²ΠΈΠΊΠΈ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΠ² Π΅Ρ‘.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ настройки доступны Π² основном мСню ( Esc ).

ΠŸΠΎΡ‡Ρ‚ΠΈ всС ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ понятно ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ ΠΈ снабТСны Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΠΈ подсказками, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ сомнСний Π² ΠΈΡ… Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ.

Π˜Π³Ρ€ΠΎΠ²ΠΎΠΉ процСсс

ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ языка интСрфСйса. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ 26 языков. ГолосовыС сообщСния АНА ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π° английском, Π½ΠΎ субтитры пСрСводятся.

ΠšΠ°Ρ‡Π΅ΡΡ‚Π²ΠΎ сСти

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ полосу пропускания сСти, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΠ³Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΈΠ³Ρ€Ρ‹ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅Π΅Ρ€Π°.

ΠŸΠΎΠΊΠ°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ Π³ΠΎΠ»ΠΎΠ²ΠΎΠΉ

Π Π΅Π³ΡƒΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ покачивания Π³ΠΎΠ»ΠΎΠ²Ρ‹ ΠΏΠΈΠΎΠ½Π΅Ρ€Π° ΠΏΡ€ΠΈ Ρ…ΠΎΠ΄ΡŒΠ±Π΅.

Π‘ΠΈΠ»Π° оптичСского эффСкта ΠΏΡ€ΠΈ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ (%)

Π˜Π½Ρ‚Π΅Ρ€Π²Π°Π» автосохранСний Π² ΠΌΠΈΠ½ΡƒΡ‚Π°Ρ…

Π—Π°Π΄Π°Ρ‘Ρ‚ частоту автоматичСских сохранСний. Π—Π°Π΄Π°ΠΉΡ‚Π΅ Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ автосохранСния. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ слотов для автоматичСского сохранСния ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ….

УвСдомлСния ΠΎΠ± автосохранСнии

Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ с Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ отсчёта Π·Π° 10 сСкунд Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° автоматичСского сохранСния.

ΠžΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ± ΠΈΠ³Ρ€Π΅

Π Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ Π²Π½ΡƒΡ‚Ρ€ΠΈΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ диагностики Π² Coffee Stain Studios.

Π Π΅ΠΆΠΈΠΌ Π°Ρ€Π°Ρ…Π½ΠΎΡ„ΠΎΠ±ΠΈΠΈ

УвСдомлСния ΠΎ ΠΏΠ΅Ρ€Π΅Ρ€Ρ‹Π²Π΅

Π”ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ послС Π΄Π²ΡƒΡ… часов Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ³Ρ€Ρ‹. Π­Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ пСрСстала Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ послС ΠΏΠ°Ρ‚Ρ‡Π° 0.3.3.0

Π‘Ρ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠΏΠΎΡ€Ρ‹ ΠΏΡ€ΠΈ отпускании ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΡ‹ΡˆΠΈ

Если стоит Π³Π°Π»ΠΎΡ‡ΠΊΠ°, Ρ‚ΠΎ для установки ΠΎΠΏΠΎΡ€ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала Π·Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ основного дСйствия (Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это), послС Ρ‡Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ высоту, ΡƒΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π° ΠΈΠ»ΠΈ Π½Π°ΠΊΠ»ΠΎΠ½Π°. Для ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ построСния Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ.

АвтоматичСскоС соблюдСниС отступов ΠΏΡ€ΠΈ ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²Π΅

ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π½ΠΎΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ слишком Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ, Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ нСмногшо ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Ρ‘Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ±Π»ΡŽΡΡ‚ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ отступы ΠΎΡ‚ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… конструкций.

Π’Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½Π°ΠΊΠ»ΠΎΠ½ ΠΎΠΏΠΎΡ€Ρ‹ ΠΏΠΎ оси Π₯

Если стоит Π³Π°Π»ΠΎΡ‡ΠΊΠ° Π²Π°ΠΌ понадобится ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ привязки ( Ctrl ), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΎΠΏΠΎΡ€Ρƒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΌΡ‹ΡˆΠΈ.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ уровнями громкости.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ окклюзия z Π±ΡƒΡ„Π΅Ρ€Π° Ρ‡Ρ‚ΠΎ это

Z-Π±ΡƒΡ„Π΅Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρƒ ΠΆΠ΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ структуру Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ 2d-массив, с Ρ‚ΠΎΠΉ лишь Ρ€Π°Π·Π½ΠΈΡ†Π΅ΠΉ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ пиксСля экрана вмСсто Ρ†Π²Π΅Ρ‚Π½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ 3 значСния для создания Ρ†Π²Π΅Ρ‚Π°. Π­Ρ‚ΠΎ заставляСт z-Π±ΡƒΡ„Π΅Ρ€ ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π½ΠΎ-Π±Π΅Π»Ρ‹ΠΌ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ†Π²Π΅Ρ‚Π΅. Π‘ΡƒΡ„Π΅Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹, Ρ‡Ρ‚ΠΎ ΠΈ экранный Π±ΡƒΡ„Π΅Ρ€ для Сдинообразия.

Π‘ΠžΠ”Π•Π Π–ΠΠΠ˜Π•

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ достаточно ΠΌΠ°Π»ΠΎΠΉ стСпСни Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с качСством, Ссли Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ расстояния z-Π±ΡƒΡ„Π΅Ρ€Π° Π½Π΅Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСна ΠΏΠΎ Ρ€Π°ΡΡΡ‚ΠΎΡΠ½ΠΈΡŽ. Π‘ΠΎΠ»Π΅Π΅ Π±Π»ΠΈΠ·ΠΊΠΈΠ΅ значСния Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚ΠΎΡ‡Π½Π΅Π΅ (ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΌΠΎΠ³ΡƒΡ‚ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π±Π»ΠΈΠ·ΠΊΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹), Ρ‡Π΅ΠΌ значСния, располоТСнныС дальшС. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, это ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚Ρ‹. Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ z-Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСнной точности, называСтся w-Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ (см. НиТС ).

Z-ΠΎΡ‚Π±Ρ€Π°ΠΊΠΎΠ²ΠΊΠ°

Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ z-буфСризация позволяСт Π½Π΅ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ, сортировка ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² ΠΏΡƒΡ‚Π΅ΠΌ увСличСния Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ (Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ рисования ) позволяСт ΠΎΡ‚Ρ€ΠΈΡΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ пиксСль экрана мСньшС Ρ€Π°Π·. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² сцСнах с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΉ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ заполнСния ΠΈ большим количСством пСрСрисовки, Π½ΠΎ Ссли Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² сочСтании с z-Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ:

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ рисования Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ Z-ΠΎΡ‚Π±Ρ€Π°ΠΊΠΎΠ²ΠΊΠ΅ (Π±Π΅Π· Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³Π°), Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Z-ΠΎΡ‚Π±Ρ€Π°ΠΊΠΎΠ²ΠΊΠΈ. НапримСр, оптимизация ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π² сортировкС ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² Π² соотвСтствии с ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ x / y ΠΈ Π³Π»ΡƒΠ±ΠΈΠ½ΠΎΠΉ z для обСспСчСния Π³Ρ€Π°Π½ΠΈΡ†, Ρ‡Ρ‚ΠΎΠ±Ρ‹ быстро ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΌΠΎΠ³ΡƒΡ‚ Π»ΠΈ Π΄Π²Π° ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ΠΌ.

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ с фиксированной Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ

W-Π±ΡƒΡ„Π΅Ρ€

Алгоритмика

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ псСвдокод дСмонстрируСт процСсс z-Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Z-Π±ΡƒΡ„Π΅Ρ€

ΠŸΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Π°

Поводом для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ послуТил Π½ΠΎΠ²Ρ‹ΠΉ графичСский чипсСт ΠΎΡ‚ ATI Radeon 256, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ, примСнСнная Π² Π½Π΅ΠΌ тСхнология HyperZ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ, ΠΏΠΎ утвСрТдСниям самой ATI, ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частотС Π² 200 ΠœΠ³Ρ† Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ магичСской Ρ†ΠΈΡ„Ρ€Ρ‹ β€” 1.5 ГигатСксСлСй Π² сСкунду (ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π½Π° Π΄Π°Π½Π½ΠΎΠΉ частотС 1.2 Gtex). Π§Ρ‚ΠΎ это β€” Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΡ€Ρ‹Π² Π² области Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈΠ»ΠΈ рСализация ΡƒΠΆΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Π½Ρ‹Ρ… ΠΈΠ΄Π΅ΠΉ? Π‘Π°ΠΌΠ° ATI это Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ скрываСт, Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅ΠΌ, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠΎΠ² ΠΈ спСциалистов Π² области Π΄ΠΈΠ·Π°ΠΉΠ½Π° графичСских чипсСтов сходятся Π½Π° мысли, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ 20%-Π½Ρ‹ΠΉ прирост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ получаСтся Π·Π° счСт примСнСния Z-Π±ΡƒΡ„Π΅Ρ€Π° с ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½Π½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ выдСлСния Π²Ρ‹ΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ…ΡΡ рСсурсов Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π½ΡƒΠΆΠ΄Ρ‹. Π’ΠΎΡ‚ Ρ‡Ρ‚ΠΎ написал ΠΏΠΎ этому ΠΏΠΎΠ²ΠΎΠ΄Ρƒ Eric Haines, Π°Π²Ρ‚ΠΎΡ€ ΠΏΠ΅Ρ€Π΅ΠΆΠΈΠ²Π°ΡŽΡ‰Π΅ΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ Real-Time rendering (http://www.realtimerendering.com)

«β€¦ Из пСрСписки с Peter Glazkowsky, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ·ΡƒΡ‡Π°Π΅Ρ‚ графичСскиС Ρ‡ΠΈΠΏΡ‹ всю свою Тизнь, вырисовываСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

HyperZ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° Ρ‚Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ основС, Ρ‚.Π΅ Π½Π° основС разбиСния экрана Π½Π° ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹. Radeon вырисовываСт ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ сначала Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ порядкС, Π·Π°Ρ‚Π΅ΠΌ Π² Ρ‚Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ, ΠΈ Ссли Ρ‚Π°ΠΉΠ» ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ собой ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½, Ρ‚ΠΎ ΠΎΠ½ отбрасываСтся ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΈΠ· дальнСйшСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π­Ρ‚ΠΎ простой, Π½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ эффСктивный Ρ‚Ρ€ΡŽΠΊ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΡΡŽΠΆΠ΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ разыгрываСтся Π² сцСнах, содСрТащих стСны, ΠΏΠΎΡ‚ΠΎΠ»ΠΊΠΈ ΠΈ Ρ‚.Π΄. ATI сообщаСт, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ экономит Π΄ΠΎ 20% Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π§Ρ‚ΠΎ это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚? А скорСС всСго Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ сохраняСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ самого «ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ» значСния Z ΠΈΠ· всСго Ρ‚Π°ΠΉΠ»Π° ( Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 8Ρ…8 пиксСлСй, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ATI, я Π½Π΅ знаю), ΠΈ ΠΏΡ€ΠΈ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° вычисляСтся Π΅Π³ΠΎ блиТайшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚. И Ссли выясняСтся, Ρ‡Ρ‚ΠΎ это блиТайшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ находится дальшС самого ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ для Ρ‚Π°ΠΉΠ»Π°, Ρ‚ΠΎ ΠΌΡ‹ сразу выбрасываСм этот ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½. Он Π½Π°ΠΌ большС Π½Π΅ Π½ΡƒΠΆΠ΅Π½, Ρ‚.ΠΊ. ΠΌΡ‹ Π΅Π³ΠΎ просто Π½Π΅ Π²ΠΈΠ΄ΠΈΠΌ. Участок стСны ΠΏΠΎΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Ρ‡Π°ΡΡ‚ΡŒ экрана Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 8Ρ…8, Ρ‚ΠΎΠ³Π΄Π° всС, Ρ‡Ρ‚ΠΎ находится Π·Π° этим участком, Π±ΡƒΠ΄Π΅Ρ‚ отсСчСно всСго ΠΎΠ΄Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ сравнСния, вмСсто Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ исслСдования всСх 64 пиксСлСй ΠΎΠ΄ΠΈΠ½ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ.

МнС каТСтся, Ρ‡Ρ‚ΠΎ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΡ‹ пСриодичСски Π±ΡƒΠ΄Π΅ΠΌ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°Ρ‚ΡŒ объявлСния ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Π΅Ρ‰Π΅ΠΉ, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… этим, ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ всС большС ΠΈ большС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ графичСского ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² hardware. Π’Π°ΠΊ, нСсколько Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ ΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ HP Visualize fx позволяСт Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΈ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹Ρ… кубичСских подпространств, содСрТащих Π² сСбС элСмСнты Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ сцСны. Π’ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΈ этих подпространств Π½Π° экран, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π½Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ, Π½ΠΎ спроСцированныС Π³Ρ€Π°Π½ΠΈ ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Z-Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ Π½Π° Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ. CPU Π·Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠ³ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π°ΠΌ, являСтся Π»ΠΈ провСряСмый ΠΊΡƒΠ± Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ, ΠΈ Ссли Π½Π΅Ρ‚, Ρ‚ΠΎ Ρ€Π°Π·ΠΎΠΌ ΠΎΡ‚ΠΏΠ°Π΄Π°Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ просчСтом Ρ‚Π΅Ρ… ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π»ΠΈΡΡŒ Π² этом подпространствС. «

«Π—Π°Ρ‡Π΅ΠΌ ΠΌΠ½Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ΅ ΡΡ‚Π°Ρ€ΡŒΠ΅?» β€” спроситС Π²Ρ‹.

ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ Π² 1993 Π³ΠΎΠ΄Ρƒ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ для дорогостоящих графичСских станций, сСйчас Π²ΠΏΠΎΠ»Π½Π΅ доступно для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Π½Ρ‹Π½Π΅ΡˆΠ½ΠΈΡ… PC. Π­Ρ‚ΠΎΡ‚ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» Π½Π΅ потСрял Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. И спСцифичСскиС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Π΅Ρ… Π²Ρ€Π΅ΠΌΠ΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСйчас находят своС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² систСмах, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π½Π° массового ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π‘Ρ‚Π°Ρ‚ΡŒΡ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ раскрываСт ΡΡƒΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, особСнностСй Π΅Π³ΠΎ примСнСния, ΠΈ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° Π½Π° читатСля, ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ знания Π² области Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Z-Π±ΡƒΡ„Π΅Ρ€

Π’Π°ΠΊ ΠΆΠ΅ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ Π·Π°ΠΎΡΡ‚Ρ€ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ 90% Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ β€” слова β€” Π²Ρ‹Ρ…ΠΎΠ΄Ρ†Ρ‹ ΠΈΠ· английского языка. ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ стандартизации Π½Π° ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ этих Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ² Π½Π° русский, ΠΊ соТалСнию, сдСрТиваСт ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ€ΠΎΠ΄Π½ΠΎΠ³ΠΎ языка Π² этой области. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹, Π·Π° Ρ†Π΅Π»Ρ‹ΠΌ рядом Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ сохранСн ΠΈΡ… исходный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ написания Π½Π° английском языкС.

ΠžΠ±Ρ‰Π΅Π΅

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π΄Π²Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… Π΄Π΅Π»Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ быстро ΠΎΡ‚ΡΠ΅ΠΊΠ°Ρ‚ΡŒ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ ΠΈ, Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя, Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΈ scan conversion. ΠŸΡ€ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΡƒΡŽ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ (взаимосвязь) ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для сцСн с высокой гСомСтричСской ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π³Π»ΡƒΠ±ΠΈΠ½ΠΎΠΉ ΠΈ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях позволяСт Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ скорости просчСта Π½Π° нСсколько порядков Π²Ρ‹ΡˆΠ΅ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Z-buffer scan conversion.

1. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π’ΡΠ΅Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°ΡŽΡ‰Π°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ гСомСтричСских сцСн Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π΄Π°Π΅Ρ‚ ΠΏΡ€Π΅ΠΊΡ€Π°ΡΠ½ΡƒΡŽ ΠΏΠΎΡ‡Π²Ρƒ для исслСдования ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ видимости ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ сСбС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ³ΡƒΠ»ΠΊΡƒ ΠΏΠΎ максимально Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ гСомСтричСскому Π½Π°Π±ΠΎΡ€Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΌΡƒ собой Ρ†Π΅Π»Ρ‹ΠΉ Π³ΠΎΡ€ΠΎΠ΄ с Π΅Π³ΠΎ Ρ€Π°ΡΡ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ, зданиями, мСбСлью Π²Π½ΡƒΡ‚Ρ€ΠΈ Π·Π΄Π°Π½ΠΈΠΉ со всСми Π΅Π΅ ящиками, Π½ΠΎΠΆΠΊΠ°ΠΌΠΈ, Ρ€ΡƒΡ‡ΠΊΠ°ΠΌΠΈ ΠΈ Ρ‚.Π΄. Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ опрСдСлСния Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ видимости ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π½Π° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΌ обСспСчСнии, вряд Π»ΠΈ справятся с Π·Π°Π΄Π°Ρ‡Π΅ΠΉ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ сцСн ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ слоТности Π½Π° скоростях, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅. И ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ Π΅Ρ‰Π΅ Π½Π΅ΠΌΠ°Π»ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ создано Ρ‚ΠΎ «ΠΆΠ΅Π»Π΅Π·ΠΎ», ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ способно Π² ΠΎΠ΄ΠΈΠ½ΠΎΡ‡ΠΊΡƒ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΆΠ°Ρ‚ΡŒ максимум ΠΈΠ· ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎΡΡ Π² нашСм распоряТСнии Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ обСспСчСния, ΠΌΡ‹ нуТдаСмся Π² создании быстрых Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², способных Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ просчСт Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… частСй ΠΈ отброс всСй Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ части сцСны.

Π”Π°Π»Π΅Π΅ ΠΌΡ‹ прСдставляСм Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ просчСта видимости ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ всС Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½Ρ‹Ρ… связСй ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π½Π° нСсколько порядков ΠΎΠΏΠ΅Ρ€Π΅Π΄ΠΈΡ‚ΡŒ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.

Π”ΠΎΠΌΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ тСхнологиями для просчСта видимости ΡΠ²Π»ΡΡŽΡ‚ΡΡ Z-buffer scan conversion ΠΈ ray tracing. Π’.ΠΊ. Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ Z-Π±ΡƒΡ„Π΅Ρ€, Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ эффСктивно Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с частично ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΌΠΈ повСрхностями, поэтому ΠΌΡ‹ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠΌ обсуТдСниС модСлями, состоящими ΠΈΠ· Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹Ρ… повСрхностСй. Π’ случаС примСнСния Ρ‚Π°ΠΊΠΈΡ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ для опрСдСлСния видимости Π½Π°ΠΌ достаточно Π»ΡƒΡ‡Π°, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ Π΄ΠΎ повСрхности, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ остановимся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… Z-Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ray casting (Ρ‚ΠΎΡ‚ ΠΆΠ΅ ray tracing, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° Π²Ρ‚ΠΎΡ€ΠΈΡ‡Π½ΠΎΠ³ΠΎ Π»ΡƒΡ‡Π°).

Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Z-Π±ΡƒΡ„Π΅Ρ€ΠΈΠ½Π³ достаточно эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½Ρ‹Π΅ связи Π² ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΌ пространствС ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ scan conversion. ΠŸΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ сначала Π΄Π΅Π»Π°ΡŽΡ‚ΡΡ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ вычислСния для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π°, Π° Π·Π°Ρ‚Π΅ΠΌ производится ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ пиксСлю ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π°. Но Π²ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Z-buffer состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ этот ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½Ρ‹Π΅ связи Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΌ пространствС ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΡƒΡŽ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ просчитываСтся ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, ΠΈ Π½Π°ΠΌ нСдоступна информация ΠΎΠ± ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… расчСтах Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΊΠ°Π΄Ρ€Π΅. Для сцСн с высокой ΠΈ свСрхвысокой гСомСтричСской ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, модСль Π³ΠΎΡ€ΠΎΠ΄Π°, Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΎΡ‡Π΅Π½ΡŒ нСэффСктивСн. Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π±ΡƒΠ΄Π΅Ρ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя Π½Π° просчСт ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ящика Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ письмСнного стола Π² Π·Π΄Π°Π½ΠΈΠΈ, Π΄Π°ΠΆΠ΅ Ссли всС Π·Π΄Π°Π½ΠΈΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π½ΠΎ, ΠΈ всС ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ опрСдСляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° пиксСльном ΡƒΡ€ΠΎΠ²Π½Π΅.

Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ трассировки Π»ΡƒΡ‡Π° (ray tracing ΠΈΠ»ΠΈ ray casting), Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½Ρ‹Π΅ связи Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΌ пространствС, рСализуя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° пространствСнноС Π΄Π΅Π»Π΅Π½ΠΈΠ΅. Π›ΡƒΡ‡ ΠΈΠ· Π³Π»Π°Π· Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚Π΅Π»Ρ (ΠΈΠ»ΠΈ ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹) ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Ρ‡Π΅Ρ€Π΅Π· структуру ΠΏΠΎΠ΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ пространства, ΠΏΠΎΠΊΠ° Π½Π΅ коснСтся ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ повСрхности. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π»ΡƒΡ‡ достиг повСрхности, ΡƒΠΆΠ΅ Π½Π΅Ρ‚ нСобходимости Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ повСрхности Π² подпространствах, располоТСнных Π·Π° ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ Π»ΡƒΡ‡Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΈΠ· дальнСйшСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ количСство Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ. Π’ этом контСкстС ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ прСимущСство ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ Z-Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ, Π½ΠΎ Π½Π΅ использовали ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ Π² ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΌ пространствС ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½Ρ‹Π΅ взаимосвязи ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ. Π—Π΄Π΅ΡΡŒ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… основанных Π½Π° трассировкС Π»ΡƒΡ‡Π΅ΠΉ всС ΠΆΠ΅ Π²ΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡ‚ΠΈΠ»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½Ρ‹Π΅ связи, Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ Π² ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΌ пространствС (image space coherence) прСдставляСтся ΠΎΡ‡Π΅Π½ΡŒ ΠΈ ΠΎΡ‡Π΅Π½ΡŒ слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ.

Π’ нашСм случаС ΠΌΡ‹ прСдставляСм Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π² сСбС силы сразу Π΄Π²ΡƒΡ… (ray casting ΠΈ Z-buffering) Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². Для ΡƒΡ‚ΠΈΠ»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½Ρ‹Ρ… связСй Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΌ пространствС ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ рСкурсивноС Π΄Π΅Π»Π΅Π½ΠΈΠ΅ пространства Π½Π° 8 подпространств. Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ когСрСнтности Π² пространствС изобраТСния Π²ΠΎΠ·Π»ΠΎΠΆΠΈΠΌ Π½Π° Z-buffer scan conversion, ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹, которая ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π½Π°ΠΌ ΠΎΡ‡Π΅Π½ΡŒ эффСктивно ΠΎΡ‚ΡΠ΅ΠΊΠ°Ρ‚ΡŒ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅ части Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ сцСны. И Π½Π°ΠΊΠΎΠ½Π΅Ρ†, для использования ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΎΠΉ когСрСнтности Π² качСствС стартовой Ρ‚ΠΎΡ‡ΠΊΠΈ Π½Π°Ρ‡Π°Π»Π° всСго Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΡΡ‡ΠΈΡ‚Π°Π½Π½ΡƒΡŽ Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΊΠ°Π΄Ρ€Π°. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅ΠΌΡ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π½Π΅ слоТСн для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ для ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π½Ρ‹Ρ… Π½Π°Π±ΠΎΡ€ΠΎΠ² любой слоТности. И Ρ‡Π΅ΠΌ слоТнСС использованная гСомСтрия Π² сцСнС ΠΈ Ρ‡Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ изобраТСния, Ρ‚Π΅ΠΌ Π·Π°ΠΌΠ΅Ρ‚Π½Π΅Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·Π½ΠΈΡ†Π° Π² скорости просчСтов ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌΠΈ.

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΌΡ‹ Π΄Π°Π΄ΠΈΠΌ ΠΎΡ†Π΅Π½ΠΊΡƒ ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ исслСдованиям ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠΌ ΠΏΠΎ ΡƒΡΠΊΠΎΡ€Π΅Π½ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ray-tracing ΠΈ scan conversion. Π’ части 3 ΠΌΡ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΌ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΌ пространствах, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ сосСдними ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ. Π’ части 4 ΠΌΡ‹ опишСм Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… слоТных ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ содСрТащих сотни ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ².

2. ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Π£ΠΆΠ΅ Π±Ρ‹Π»ΠΈ Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½Ρ‹Π΅ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². КаТдая ΠΈΠ· этих ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ прСдставляла собой Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ использованию Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… аспСктов когСрСнтности, присущих самой ΠΈΠ΄Π΅Π΅ просчСта видимости. Но Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· этих ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ Π½Π΅ Π΄Π°Π²Π°Π»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ совмСстного использования всСх Ρ‚Ρ€Π΅Ρ… Π²ΠΈΠ΄ΠΎΠ² когСрСнтности.

Основная масса Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ Π² области ray tracing Ρ€Π°ΡΡˆΠΈΡ€ΡΠ»Π° возмоТности использования Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ когСрСнтности, ΠΈ эти ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΈ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ [1, 2, 3, 4, 5]. ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½Π°Ρ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅Π΄ΠΊΠΎ использовалась Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, Π½ΠΎ для ряда случаСв всС ΠΆΠ΅ Π΅ΡΡ‚ΡŒ нСсколько ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ. Если всС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π²Ρ‹ΠΏΡƒΠΊΠ»Ρ‹ΠΌΠΈ ΠΈ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹ΠΌΠΈ Π²ΠΎ врСмя двиТСния самой ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹, Ρ‚ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ закономСрности Π² процСссС измСнСния видимости самих ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Алгоритм трассирования Π² состоянии ΠΎΡ‚ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти закономСрности. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ссли ΠΊΠ°ΠΌΠ΅Ρ€Π° являСтся Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ, Ρ‚ΠΎ Ρ‚ΠΎΠ³Π΄Π° Π»ΡƒΡ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ ΠΏΠΎΠ΄ влияниС двиТущихся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹, ΠΈ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π²Π·ΡΡ‚ΡŒ ΠΈΠ· процСсса ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΊΠ°Π΄Ρ€Π°. Но ΠΌΡ‹ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π½Π΅ Π²ΠΈΠ΄ΠΈΠΌ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, способного ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π²Ρ‹Π³ΠΎΠ΄Ρƒ ΠΈΠ· когСрСнтности изобраТСния, Π²Π²ΠΈΠ΄Ρƒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ пиксСль просчитываСтся нСзависимо ΠΎΡ‚ состояния сосСдних. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ эвристичСского прСдсказания Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ray tracing Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ пиксСль ΠΏΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ сосСдних [10], ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΌΡ‹ ΠΈ здСсь Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎ использованию когСрСнтности изобраТСния ΠΏΡ€ΠΈ ray tracing.

ΠŸΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Z-buffer (ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² scan conversion Π²ΠΎΠΎΠ±Ρ‰Π΅) Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ противополоТная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°. ΠžΠ±Ρ‹Ρ‡Π½Π°Ρ растСризация с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Z-Π±ΡƒΡ„Π΅Ρ€Π° Π² ΠΏΠΎΠ΄Π°Π²Π»ΡΡŽΡ‰Π΅ΠΌ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв связана с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ просчСта ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π°, ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС этого ΠΌΠΎΠΆΠ½ΠΎ нСпосрСдствСнно ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ самой растСризации посрСдством scan conversion, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ΡΡ всС задСйствованныС пиксСли. Π­Ρ‚Π° схСма, сама ΠΏΠΎ сСбС, прСкрасно ΡƒΡ‚ΠΈΠ»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ изобраТСния, поэтому Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π΄ΡƒΠΌΠ°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Π΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒΡŽ.

Одним ΠΈΠ· доступных Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΏΠΎ использованию ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ когСрСнтности Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… Z-Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ являСтся использованиС пространствСнного дСлСния Π½Π° подпространства с Ρ†Π΅Π»ΡŒΡŽ усСчСния (culling) ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ состояния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΡ‚Π°Π»ΠΈΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Ρ‹, ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ Π² ΠΏΠΎΠ»Π΅ видимости (viewing frustum), опрСдСляСмоС ΡƒΠ³Π»ΠΎΠΌ наблюдСния ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ ΠΈ Π΅Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π΄Π°Π΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ускорСниС Π² вычислСниях, Π½ΠΎ всС ΠΆΠ΅ ΡƒΡ‚ΠΈΠ»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ°Π»ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½Ρ‹Ρ… связСй Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΌ пространствС, Π² случаС, ΠΊΠΎΠ³Π΄Π° модСль ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ ΠΏΠΎ Z-ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅. Π’ модСлях Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, большая Ρ‡Π°ΡΡ‚ΡŒ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ спрятана Π·Π° стСнами ΠΊΠΎΠΌΠ½Π°Ρ‚, хотя ΠΈ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… viewing frustum.

Π‘ Ρ†Π΅Π»ΡŒΡŽ Π±ΠΎΠ»Π΅Π΅ эффСктивного использования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ когСрСнтности Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Ρ… модСлях Airey [12, 13], Π° Π² дальнСйшСм Teller ΠΈ Sequin [15] ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ячСйки ΠΈ ΠΏΡ€ΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ для Π½ΠΈΡ… potentially visible set (PVS) β€” ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² ΠΈΠ· ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ячССк. ΠŸΡ€ΠΈ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ изобраТСния ΠΈΠ· любой Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, находящСйся Π²Π½ΡƒΡ‚Ρ€ΠΈ ячСйки, Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π»ΠΈΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Ρ‹, входящиС Π² PVS.

* Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» дальнСйшСС Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΈ рСализовывался Π² Π²ΠΈΠ΄Π΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ просчСта BSP (binary set of polygons) Π΄Π΅Ρ€Π΅Π²Π° для всСй сцСны.

Π‘Ρ…Π΅ΠΌΡ‹ с использованиСм PVS ΠΎΡ‡Π΅Π½ΡŒ Π±Π»ΠΈΠ·ΠΊΠΈ ΠΏΠΎ Π΄ΡƒΡ…Ρƒ ΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ, прСдставляСмому здСсь, ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΡƒΡŽ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ, Ρ‚Π°ΠΊ ΠΈ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ изобраТСния. Но, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ†Π΅Π»Ρ‹ΠΉ ряд Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ смоТСм ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ, ΠΎΠ½ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ просчСт PVS, Π° Ρ‚Π°ΠΊΠΆΠ΅ большого объСма памяти для хранСния этого Π½Π°Π±ΠΎΡ€Π°. Благодаря способу, ΠΊΠ°ΠΊΠΈΠΌ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ пространствСнныС ячСйки, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, скорСС всСго, Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² случаях модСлирования Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈ Π·Π΄Π°Π½ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ячСйками ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΠΌΠ½Π°Ρ‚Ρ‹, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Π΅ со всСх сторон Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΌΠΈ стСнами (Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠΊΠΎΠ½ ΠΈ Π΄Π²Π΅Ρ€Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΌΠΎΠ²). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, количСство ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² ΠΈΠ· самой ячСйки Ρ€Π΅Π·ΠΊΠΎ ограничиваСтся, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹ΠΉ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Ρˆ ΠΏΡ€ΠΈ растСризации Π² дальнСйшСм. Но Π²ΠΎΡ‚ Π² случаС модСлирования ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… пространств ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ примСнСния PVS ΠΎΡ‡Π΅Π½ΡŒ ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°.

3. Hierarchical Visibility (ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ иСрархичСских структур Π΄Π°Π½Π½Ρ‹Ρ… Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ опрСдСлСния видимости)

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Z-Π±ΡƒΡ„Π΅Ρ€ Π² своСй Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ octree spatial subdivision β€” рСкурсивноС Π΄Π΅Π»Π΅Π½ΠΈΠ΅ пространства Π½Π° восСмь подпространств β€” для Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ использования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ когСрСнтности; Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρƒ для ΡƒΡ‚ΠΈΠ»ΠΈΠ·Π°Ρ†ΠΈΠΈ когСрСнтности изобраТСния ΠΈ список Ρ€Π°Π½Π΅Π΅ Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… (Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΊΠ°Π΄Ρ€Π΅) подпространств. Π’ Ρ‚ΠΎ врСмя, ΠΊΠ°ΠΊ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Ρˆ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² случаС ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ использования всСх Ρ‚Ρ€Π΅Ρ… иСрархичСских структур, object space octree ΠΈ Z-pyramid ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. И нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, примСняСм ΠΌΡ‹ ΠΈΡ… вмСстС ΠΈΠ»ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½ΠΎ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ эффСкта Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Z-Π±ΡƒΡ„Π΅Ρ€Π°, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠΆΠ΅ со Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшСй Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ.

3.1 Π”Π΅Π»Π΅Π½ΠΈΠ΅ пространства Π½Π° восСмь (object-space octree)

ДрСвовидная структура, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰Π°ΡΡΡ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ рСкурсивного дСлСния пространства Π½Π° восСмь подпространств, использовалась Ρ€Π°Π½Π΅Π΅ для ускорСния ray tracing ΠΈ эффСктивной Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΌΠ½Ρ‹Ρ… Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… [16]. Π‘ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ, ΠΈ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹ΠΌΠΈ модификациями, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊ Z-buffer scan conversion. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² нСсколько дСсятков Ρ€Π°Π· Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈ Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π½Π° модСлях, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ ΠΈ ΠΏΡ€ΠΎΡΡ‚ΠΈΡ€Π°ΡŽΡ‰ΠΈΡ…ΡΡ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ Π² «Π³Π»ΡƒΠ±ΡŒ экрана».

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Ρ‚ΡŒ максимально понятыми, для Π½Π°Ρ‡Π°Π»Π° Π²Π²Π΅Π΄Π΅ΠΌ нСсколько соглашСний. ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Z-Π±ΡƒΡ„Π΅Ρ€Π°, ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ, Ссли Π½ΠΈ ΠΎΠ΄ΠΈΠ½ пиксСль ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅ΠΆΠ°Ρ‚ΡŒ Π±Π»ΠΈΠΆΠ΅ значСния Z, ΡƒΠΆΠ΅ записанного Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Z-Π±ΡƒΡ„Π΅Ρ€Π°. Аналогично, ΠΊΡƒΠ± Π² пространствС Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ, Ссли Ρ‚Ρ€ΠΈ Π΅Π³ΠΎ Π³Ρ€Π°Π½ΠΈ, ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½Π½Ρ‹Π΅ ΠΊ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚Π΅Π»ΡŽ, Π±ΡƒΠ΄ΡƒΡ‚ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π°ΠΌΠΈ. И Π½Π°ΠΊΠΎΠ½Π΅Ρ†, всС Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ Π²Π΅Ρ‚Π²ΠΈ Π΄Π΅Ρ€Π΅Π²Π° (octree), ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ пространства, Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ, Ссли ΠΌΡ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ, Ρ‡Ρ‚ΠΎ кубичСскоС подпространство, ассоциируСмоС с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ вСтвями, Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ. Π‘ ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ этих ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ условиС, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ Π½Π°ΠΌ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ 2D Z-Π±ΡƒΡ„Π΅Ρ€ с Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ пространства Π½Π° кубичСскиС субпространствС: Ссли ΠΊΡƒΠ± считаСтся Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ Π½Π° основС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Z-Π±ΡƒΡ„Π΅Ρ€Π΅, Ρ‚ΠΎ всС ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ находятся Π² Π΄Π°Π½Π½ΠΎΠΌ кубичСском субпространствС, Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ. Π§Ρ‚ΠΎ Π½Π°ΠΌ это Π΄Π°Π΅Ρ‚? А Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ссли ΠΌΡ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ scan conversion просчитаСм Π³Ρ€Π°Π½ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ субпространства ΠΈΠ· состава octree ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ, Ρ‡Ρ‚ΠΎ всС пиксСли этого ΠΊΡƒΠ±Π° находятся ΠΏΠΎΠ·Π°Π΄ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Z-Π±ΡƒΡ„Π΅Ρ€Π΅, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ смСло ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всю Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ Π½Π°Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΡƒΠ±Π°.

Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ, Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π»Π΅Π³ΠΊΠΎ ΡΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Для Π½Π°Ρ‡Π°Π»Π° вся гСомСтричСскоС пространство ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ размСщаСтся Π² структурС Π΄Π΅Ρ€Π΅Π²Π° (octree), ассоциируя ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ² с наимСньшим кубичСским пространством Π΄Π΅Ρ€Π΅Π²Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ² помСщаСтся ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ.

*Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС, (octree) β€” Π΄Π΅Ρ€Π΅Π²ΠΎ рСкурсивного дСлСния пространства Π½Π° восСмь подпространств β€” формируСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Вся сцСна помСщаСтся Π² минимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΉ, Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎ осям ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚, ΠΊΡƒΠ±. Π­Ρ‚ΠΎΡ‚ ΠΊΡƒΠ± Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ (root) ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»Ρƒ(ΠΊΠΎΡ€Π½ΡŽ) Π΄Π΅Ρ€Π΅Π²Π°. Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ°Ρ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° являСтся рСкурсивной ΠΏΠΎ сути ΠΈ начинаСтся с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ содСрТащихся Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΊΡƒΠ±Π΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ², ΠΈ Ссли ΠΈΡ… количСство мСньшС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ значСния, Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ассоциируСт Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ² с этим ΠΊΡƒΠ±ΠΎΠΌ ΠΈ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΡŽ. Если Π½Π΅Ρ‚, Ρ‚ΠΎ с ΠΊΡƒΠ±ΠΎΠΌ ассоциируСтся любой ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ пСрСсСкаСт хотя Π±Ρ‹ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π΄Π²ΡƒΡ… плоскостСй, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ дСлящих ΠΊΡƒΠ± Π½Π° восСмь Ρ€Π°Π²Π½Ρ‹Ρ… подпространств, ΠΈ производится Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΡƒΠ±Π° этими двумя плоскостями. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ этого ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ восСмь Π½ΠΎΠ²Ρ‹Ρ… Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… ΠΊΡƒΠ±ΠΈΠΊΠΎΠ² с Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ сторон 1/2 ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΊΡƒΠ±Π°. Π­Ρ‚ΠΈ восСмь ΠΊΡƒΠ±ΠΈΠΊΠΎΠ² Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ‚Π²ΡŒ Π΄Π΅Ρ€Π΅Π²Π°. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΊΡƒΠ±Ρ‹ снова ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ΡΡ Π½Π° соотвСтствиС содСрТащихся Π² Π½ΠΈΡ… ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠΌΡƒ количСству, ΠΈ, Ссли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π½Π΅ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΠ²ΡˆΠΈΠΉ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ ΠΊΡƒΠ± Π±ΡƒΠ΄Π΅Ρ‚ снова ΠΏΠΎΠ΄Π΅Π»Π΅Π½ Π½Π° восСмь ΠΌΠ΅Π½ΡŒΡˆΠΈΡ… ΠΊΡƒΠ±ΠΈΠΊΠΎΠ²(подпространств), ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΡ… собой появлСниС Π½ΠΎΠ²Ρ‹Ρ…, Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… Π²Π΅Ρ‚Π²Π΅ΠΉ Ρƒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π²Π΅Ρ‚Π²ΠΈ ΠΈ Ρ‚.Π΄. Π­Ρ‚ΠΎΡ‚ процСсс Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒΡΡ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΡƒΠ±ΠΎΠ² Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² мСньшС, Ρ‡Π΅ΠΌ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ° рСкурсия Π½Π΅ достигнСт своСго самого Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ уровня.

Π—Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ² с Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄Π΅Ρ€Π΅Π²Π°, ΠΌΡ‹ рСкурсивно выполняСм ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ: начиная с Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ (root) ΠΊΡƒΠ±Π°, ΠΌΡ‹ провСряСм, ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π»ΠΈ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΡƒΠ± Π² ΠΏΠΎΠ»Π΅ зрСния (viewing frustum), Ссли НЕВ β€” Π½Π° этом ΠΈ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠΌ, Ссли ΠΆΠ΅ ДА, Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ scan conversion для Π³Ρ€Π°Π½Π΅ΠΉ опрСдСляСм Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΡƒΠ±Π°. Если ΠΊΡƒΠ± Π½Π΅ Π²ΠΈΠ΄ΠΈΠΌ β€” Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Π΅ΠΌ, Ссли Π²ΠΈΠ΄ΠΈΠΌ β€” Ρ‚ΠΎ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·ΡƒΠ΅ΠΌ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ, Π°ΡΡΠΎΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ с Π΄Π°Π½Π½Ρ‹ΠΌ ΠΊΡƒΠ±ΠΎΠΌ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ Π΅Π³ΠΎ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌ вСтвям (мСньшим ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌ ΠΊΡƒΠ±Π°ΠΌ) ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ выполняСм Π²Ρ‹ΡˆΠ΅ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ, Π½ΠΎ ΡƒΠΆΠ΅ для этих Π²Π΅Ρ‚Π²Π΅ΠΉ.

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько характСристик, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π΄ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ особоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. ΠŸΠ΅Ρ€Π²ΠΎΠ΅: ΠΎΠ½ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·ΡƒΠ΅Ρ‚ Ρ‚Ρƒ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ, которая содСрТится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΡƒΠ±Π°Ρ… (Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… вСтвях Π΄Π΅Ρ€Π΅Π²Π°). ΠŸΡ€ΠΈ этом Ρ‡Π°ΡΡ‚ΡŒ просчитанных ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ, Π½ΠΎ всС ΠΎΠ½ΠΈ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ «Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ частично». Частично Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΌΡ‹ ΠΈΡ… Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ исходя ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… сообраТСний: всСгда найдСтся такая Ρ‚ΠΎΡ‡ΠΊΠ° Π² пространствС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ станСт ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ, ΠΈ эта Ρ‚ΠΎΡ‡ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π΅ дальшС, Ρ‡Π΅ΠΌ Π΄Π»ΠΈΠ½Π° Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΊΡƒΠ±Π°, содСрТащСго Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ прСимущСство ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌΡƒ ΡƒΡΠ΅Ρ‡Π΅Π½ΠΈΡŽ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ ΠΏΠΎΠ΄ ΠΏΠΎΠ»Π΅ зрСния ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ (culling to the viewing frustum). Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ этому, наш Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π½Π΅ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ врСмя Π½Π° Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Π΅ Π²Π΅Ρ‚Π²ΠΈ Π΄Π΅Ρ€Π΅Π²Π° Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ посСщаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Π²Π΅Ρ‚Π²ΠΈ, Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ структуры ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… β€” Π²ΠΈΠ΄ΠΈΠΌΡ‹. Π§Ρ‚ΠΎ Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ, наш Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ посСщаСт ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Π²Π΅Ρ‚Π²ΠΈ Π΄Π²Π°ΠΆΠ΄Ρ‹. А этот нСдостаток присущ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌ ray tracing, Π³Π΄Π΅ ΠΊΠΎΡ€Π΅Π½ΡŒ Π΄Π΅Ρ€Π΅Π²Π° посСщаСтся ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ пиксСля, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π΅Ρ‚Π²ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ посСщСны дСсятки тысяч Ρ€Π°Π·. Как Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, наш Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ осущСствляСт culling Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ эффСктивно.

Однако Ρƒ этого Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π΅ΡΡ‚ΡŒ ΠΈ слабыС мСста. НапримСр, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ассоциируСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСбольшиС ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ с большим ΠΊΡƒΠ±ΠΎΠΌ Π² Ρ‚ΠΎΠΌ случаС, Ссли ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ² пСрСсСкаСт плоскости, дСлящиС ΠΊΡƒΠ± Π½Π° Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ ΠΊΡƒΠ±Ρ‹. МалСнький Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ пСрСсСкаСт Ρ†Π΅Π½Ρ‚Ρ€ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ (Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ) ΠΊΡƒΠ±Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΏΠΎΠΊΠ° модСль являСтся Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ. Для ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ повСдСния Π΅ΡΡ‚ΡŒ Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°: ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ β€” ΠΏΠΎΠ΄Ρ€Π΅Π·Π°Ρ‚ΡŒ (clip) ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ умСстился Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π½ΡŒΡˆΠΈΡ… Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… подпространствах (ΠΊΡƒΠ±Π°Ρ…). Но это Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΡŽ количСства ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² Π² структурС Π΄Π°Π½Π½Ρ‹Ρ…. Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” Π°ΡΡΠΎΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ сразу с нСсколькими вСтвями. Π­Ρ‚ΠΎΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΌΡ‹ ΠΈ Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ. Для Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ нСсколько ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ построСния Π΄Π΅Ρ€Π΅Π²Π° (octree). Если ΠΌΡ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ² пСрСсСкаСтся с плоскостями дСлСния ΠΊΡƒΠ±Π°, Π½ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшС Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² самого ΠΊΡƒΠ±Π°, ΠΌΡ‹ Π½Π΅ станСм Π°ΡΡΠΎΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ с этим ΠΊΡƒΠ±ΠΎΠΌ. ВмСсто этого ΠΌΡ‹ ассоциируСм Π΅Π³ΠΎ сразу с нСсколькими Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌΠΈ ΠΊΡƒΠ±Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ пСрСсСкаСт. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ассоциирован с нСскольким подпространствами сразу, ΠΏΡ€ΠΈ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΡ‹ встрСтим Π΅Π³ΠΎ нСсколько Ρ€Π°Π·. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΡ‹ встрСтим Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π·, ΠΏΠΎΠΌΠ΅Ρ‚ΠΈΠΌ Π΅Π³ΠΎ ΠΊΠ°ΠΊ «ΠΎΡ‚Ρ€Π΅Π½Π΄Π΅Ρ€Π΅Π½Π½Ρ‹ΠΉ» Π² структурС Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΠΌ Π΅Π³ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΡƒΡŽ Ρ€Π°ΡΡ‚Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡŽ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Π΄Ρ€Π΅.

3.2. Z β€” ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π° ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ пространства

Π”Π΅Ρ€Π΅Π²ΠΎ Π΄Π΅Π»Π΅Π½ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ пространства (object space octree) позволяСт Π½Π°ΠΌ ΠΎΡ‚ΡΠ΅Ρ‡ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ долю Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ, присущСй scan conversion для Π³Ρ€Π°Π½Π΅ΠΉ кубичСских подпространств, ΠΈΠ· состава octree. Π’Π°ΠΊ ΠΊΠ°ΠΊ кубичСскиС пространства ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ»ΠΎΡ‰Π°Π΄ΡŒ Π² пСрСсчСтС Π½Π° пиксСли, Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ примСнСния scan conversion ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‡Π΅Π½ΡŒ «Π΄ΠΎΡ€ΠΎΠ³ΠΈΠΌ» ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΠ΅ΠΌ.

*здСсь Π½Π°Π΄ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ сами ΠΊΡƒΠ±Ρ‹ Π½Π° экран Π½Π΅ Ρ€Π°ΡΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‚ΡΡ, Π° Ρ€Π°ΡΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹, содСрТащиСся Π² этих ΠΊΡƒΠ±Π°Ρ…. А Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ scan conversion для ΠΊΡƒΠ±ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для выяснСния, Π²ΠΈΠ΄ΠΈΠΌ ΠΎΠ½ ΠΈΠ»ΠΈ Π½Π΅Ρ‚, Ρ‚.Π΅. Ρ€Π°ΡΡ‚Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°ΡΡΠΎΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ с Π½ΠΈΠΌ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ опрСдСлСния видимости кубичСских пространств, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρƒ. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ², Z-pyramid позволяСт ΠΎΡ‡Π΅Π½ΡŒ быстро ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Π²ΠΈΠ΄ΠΈΠΌ ΠΎΠ½ ΠΈΠ»ΠΈ Π½Π΅Ρ‚, ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΡ€ΠΈ этом ΠΏΠΎΠΏΠΈΠΊΡΠ΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

*По сути, Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π° ΠΎΡ‡Π΅Π½ΡŒ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ собой ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρƒ тСкстур с mip- levels.

Бмысл Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ β€” это использованиС Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ (стандартного) Z-Π±ΡƒΡ„Π΅Ρ€Π° Π² качСствС основания ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹. Π­Ρ‚ΠΎ основаниС Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ самым Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ Π²ΠΎ всСй ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π΅. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ, Π±ΠΎΠ»Π΅Π΅ Π³Ρ€ΡƒΠ±Ρ‹ΠΉ, ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ собой Π½Π°Π±ΠΎΡ€ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π±ΠΎΡ€Π° самого большого (Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ) значСния ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… Π±Π»ΠΈΠ·Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ, Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ, уровня. И Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, каТдая запись Π² ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ собой максимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠΉ области Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Z-Π±ΡƒΡ„Π΅Ρ€Π° ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρƒ экрана (Ρ‚Π°ΠΉΠ»Ρƒ). Π‘Π°ΠΌΡ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π³Ρ€ΡƒΠ±Ρ‹ΠΉ, ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ (Π΅Π΅ Π²Π΅Ρ€ΡˆΠΈΠ½Π°) Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ запись, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ самоС большоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Z ΠΈΠ· Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Z-Π±ΡƒΡ„Π΅Ρ€Π° ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ максимальной Π³Π»ΡƒΠ±ΠΈΠ½Π΅ всСго изобраТСния.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρƒ Π² Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии просто: ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ обновляСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Z-Π±ΡƒΡ„Π΅Ρ€Π°, ΠΌΡ‹ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°Π΅ΠΌ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ Π±ΠΎΠ»Π΅Π΅ Π³Ρ€ΡƒΠ±Ρ‹ΠΌ уровням ΠΈ остановимся Π² Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° встрСтим Ρ‚Ρƒ запись, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ находится Ρ‚Π°ΠΊ ΠΆΠ΅ Π΄Π°Π»Π΅ΠΊΠΎ, ΠΊΠ°ΠΊ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Z.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ осущСствляСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. ΠœΡ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Ρ‚Ρƒ запись Π² ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π΅, которая ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ минимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡƒΡŽ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΏΠ»ΠΎΡ‰Π°Π΄ΡŒ экрана ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ содСрТащСй исслСдуСмый ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½. И Ссли Z Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ блиТайшСй Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ дальшС значСния, содСрТащСгося Π² этой записи, ΠΌΡ‹ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌ. Π­Ρ‚ΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для опрСдСлСния видимости ΠΊΠ°ΠΊ Π²Π΅Ρ‚Π²Π΅ΠΉ octree, Ρ‚Π°ΠΊ ΠΈ для опрСдСлСния видимости ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² самой ΠΌΠΎΠ΄Π΅Π»ΠΈ.

НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π° позволяСт Π½Π°ΠΌ достаточно быстро ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² ΠΈ ΠΎΡ‚ΡΠ΅Ρ‡ΡŒ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅, этот Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ страдаСт ΠΎΡ‚ Ρ‚Π΅Ρ… ΠΆΠ΅ нСдостатков, Ρ‡Ρ‚ΠΎ ΠΈ Π² случаС с octree. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· структуры ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹, Π³Π΄Π΅ каТдая запись соотвСтствуСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΈ Π½Π° экранС (Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ ΠΊΠ²Π°Π΄Ρ€Π°Π½Ρ‚ΠΎΠΌ, ΠΈΠ»ΠΈ Ρ‚Π°ΠΉΠ»ΠΎΠΌ), малСнький ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½, располоТСнный Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ экрана, Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ с самым Π³Ρ€ΡƒΠ±Ρ‹ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ, находящимся Π² Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ всС Ρ€Π°Π²Π½ΠΎ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½Ρ‹ΠΌ ΠΈ Π² этом случаС, ΠΌΡ‹ тСряСм Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ видимости Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° понадобится самый ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ рСкурсивный Ρ†ΠΈΠΊΠ».

ΠžΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ опрСдСлСния видимости рСализуСтся ΠΏΡƒΡ‚Π΅ΠΌ рСкурсивного примСнСния Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Ρ‡Π΅Ρ€Π΅Π· всю ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρƒ, начиная с Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹. Если Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ являСтся Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ, ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ, Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠΌΡƒ ΡƒΡ€ΠΎΠ²Π½ΡŽ ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ попытаСмся ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ являСтся Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ Π²ΠΎ всСх Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… Ρ‚Π°ΠΉΠ»Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ пСрСсСкаСт. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· этих ΠΊΠ²Π°Π΄Ρ€Π°Π½Ρ‚ΠΎΠ² ΠΌΡ‹ сравним блиТайшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Z-ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ, находящимся Π² Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π΅. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ находится Π±Π»ΠΈΠΆΠ΅, ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠ²Π°Π΄Ρ€Π°Π½Ρ‚Π΅.

Если ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌ хотя Π±Ρ‹ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΊΠ²Π°Π΄Ρ€Π°Π½Ρ‚ΠΎΠ², ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ, Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ для этого ΠΊΠ²Π°Π΄Ρ€Π°Π½Ρ‚Π° ΠΈ пытаСмся снова. Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ², ΠΌΡ‹ смоТСм ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌ, ΠΈΠ»ΠΈ ΠΌΡ‹ Π΄ΠΎΠΉΠ΄Π΅ΠΌ Π΄ΠΎ самого Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ уровня ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ ΠΈ Π½Π°ΠΉΠ΄Π΅ΠΌ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Ρ‹ΠΉ Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΉ пиксСль. Π’.Π΅. ΠΌΡ‹ ΠΈΠ»ΠΈ отбросим ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½, ΠΈΠ»ΠΈ «Π½Π°Ρ€ΠΈΡΡƒΠ΅ΠΌ» ΠΎΠ΄ΠΈΠ½ ΠΈΠ· пиксСлСй этого ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π°. Когда ΠΌΡ‹ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π°ΠΉΠ΄Π΅ΠΌ всС Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅ пиксСли, ΠΌΡ‹ скаТСм, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π»ΠΈ hierarchical scan conversion

ΠŸΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ опрСдСлСния Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ «Π΄ΠΎΡ€ΠΎΠ³ΠΎ» Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ блиТайшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Z ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ²Π°Π΄Ρ€Π°Π½Ρ‚Π°.

* Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ HyperZ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ATI, вСроятнСС всСго, Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Π° Π±Ρ‹Π»Π° ΠΏΠΎΡΡ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ это «Π΄ΠΎΡ€ΠΎΠ³ΠΎΠ΅ вычислСниС» Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ.

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сравнСниС значСния Z ΠΈΠ· ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹ с блиТайшим Z Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Π° Π½Π° всСх стадиях рСкурсии. Π’ этом случаС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΡˆΡƒΡΡ‚Ρ€Π΅Π΅, ΠΈ Π΅Π³ΠΎ Π»Π΅Π³Ρ‡Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ Π½Π΅ являСтся ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΈΡ‚ΠΎΠ³ΠΎΠΌ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° становится Π»ΠΈΠ±ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌ, Π»ΠΈΠ±ΠΎ ΠΌΡ‹ Π΄ΠΎΠΉΠ΄Π΅ΠΌ Π΄ΠΎ уровня пиксСля ΠΈ Π½Π΅ смоТСм ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Π²ΠΈΠ΄ΠΈΠΌ ΠΎΠ½ ΠΈΠ»ΠΈ Π½Π΅Ρ‚. ΠŸΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠΉ ситуации с Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ пиксСля стандартным Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ scan-conversion. На испытаниях Π² нашСй Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€ΠΈΠΈ ΠΌΡ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄.

3.3. ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½Π°Ρ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ

Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ просчитываСм ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΡŽ слоТной ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΡƒΡŽ ΠΏΠ»ΠΎΡΠΊΠΎΡΡ‚ΡŒ с использованиСм object-space octree, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ малая Ρ‡Π°ΡΡ‚ΡŒ кубичСских подпространств ΠΈΠ· состава octree остаСтся Π²ΠΈΠ΄ΠΈΠΌΠΎΠΉ. Если ΠΌΡ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ ΠΏΡ€ΠΎΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠ°Π΄Ρ€ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ с большой Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΊΡƒΠ±ΠΎΠ², Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΊΠ°Π΄Ρ€Π΅, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄ΠΈΠΌΠΎ ΠΈ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ. НСкоторыС ΠΈΠ· Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΡƒΠ±ΠΎΠ² станут Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ β€” Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, Π½ΠΎ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ сосСдними ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ достаточно Π²Π΅Π»ΠΈΠΊΠ°, ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ нСбольшоС количСство ΠΊΡƒΠ±ΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ свой статус ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ сосСдними ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ (Ссли, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° полная смСна всСй сцСны). Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нашСго иСрархичСского Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΌΡ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ ΠΈ эту Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ. Π‘ΠΎΠ·Π΄Π°Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠ°Π΄Ρ€, ΠΌΡ‹ создадим ΠΈ сохраним ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΡƒΠ±ΠΎΠ² ΠΈΠ· Π½Π΅Π³ΠΎ Π² Π²ΠΈΠ΄Π΅ списка (temporal coherence list). ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Ρ ΠΊ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ, ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ с самого Π½Π°Ρ‡Π°Π»Π° Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ наш иСрархичСский Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ для Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°, ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅ΠΌ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡŽ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ, содСрТащСйся Π² подпространствах ΠΈΠ· нашСго списка. ΠšΡƒΠ±Ρ‹, Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ ΡƒΠΆΠ΅ просчитали, ΠΏΠΎΠΌΠ΅Ρ‚ΠΈΠΌ ΠΊΠ°ΠΊ «rendered». На Π±Π°Π·Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠ΅Π³ΠΎΡΡ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ этой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Z-Π±ΡƒΡ„Π΅Ρ€Π° создадим Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρƒ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ, запустив Π² Ρ€Π°Π±ΠΎΡ‚Ρƒ наш Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΏΡ€ΠΈ достаточной когСрСнтности ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ ΠΌΡ‹ Π·Π°Ρ‚Ρ€Π°Ρ‚ΠΈΠΌ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Ρ‚.ΠΊ. большая Ρ‡Π°ΡΡ‚ΡŒ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ ΡƒΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π°. ΠŸΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшС Ρ†ΠΈΠΊΠ»ΠΎΠ² рСкурсий Π½Π° выявлСниС Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΡƒΠ±ΠΎΠ² ΠΈΠ· состава octree ΠΈ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ. Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ список Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΡƒΠ±ΠΎΠ² Π² соотвСтствии с Π½ΠΎΠ²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ. Как ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ Π² Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠΉ части ΡΡ‚Π°Ρ‚ΡŒΠΈ, использованиС ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΎΠΉ когСрСнтности ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ просчСты ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ изобраТСния.

*разумССтся, Ρ‡Ρ‚ΠΎ, ΠΏΡ€ΠΈ ΠΌΠ°Π»ΠΎΠΉ когСрСнтности ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π΅Π΅ отсутствии, Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π²Ρ‹Π½ΡƒΠ΄ΠΈΡ‚ Π²ΠΏΡƒΡΡ‚ΡƒΡŽ Π·Π°Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя Π½Π° ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡŽ Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ ΠΈΠ· списка, Ρ‚.ΠΊ. всС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ†ΠΈΠΊΠ»Ρ‹ рСкурсии всС Ρ€Π°Π²Π½ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΏΠΎ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ использования ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΎΠΉ когСрСнтности Π² случаях Ρ€Π΅Π·ΠΊΠΎΠΉ смСны содСрТимого Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

4. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ рСализация ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹

Наша пСрвая рСализация иСрархичСского Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° опрСдСлСния видимости создана Π½Π° Π±Π°Π·Π΅ стандартного, ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π‘-ΠΊΠΎΠ΄Π°. ΠŸΡ€ΠΈ этом scan conversion Π±Ρ‹Π» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ. Наш ΠΊΠΎΠ΄ использовал object-space octree, Z-pyramid Π² ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΌ пространствС ΠΈ список ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΎΠΉ когСрСнтности (temporal coherence list). Π”Π°ΠΆΠ΅ для ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ простых ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ наш чисто «ΡΠΎΡ„Ρ‚Π²Π΅Ρ€Π½Ρ‹ΠΉ» Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ оказался быстрСС Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° опрСдСлСния видимости Π½Π° Π±Π°Π·Π΅ Z-Π±ΡƒΡ„Π΅Ρ€Π°. Для слоТных ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ скорости просчСтов Π±Ρ‹Π»ΠΎ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹ΠΌ.

Для тСстирования Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΌΡ‹ сконструировали ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π² Π²ΠΈΠ΄Π΅ офисной ΠΊΠΎΠΌΠ½Π°Ρ‚Ρ‹, состоящий ΠΈΠ· Π±ΠΎΠ»Π΅Π΅, Ρ‡Π΅ΠΌ 15000 ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ², Π° Π·Π°Ρ‚Π΅ΠΌ Ρ€Π°Π·ΠΌΠ½ΠΎΠΆΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π² 3D-пространствС. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠΌΠ΅Π» Π² своСм составС лСстничный Π±Π»ΠΎΠΊ с большим ΠΏΡ€ΠΎΠ΅ΠΌΠΎΠΌ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ обстановки Π½Π° сосСдних этаТах. Ни ΠΎΠ΄Π½Π° ΠΈΠ· стСн офисного модуля Π½Π΅ ΠΏΡ€ΠΎΡΡ‚ΠΈΡ€Π°Π»Π°ΡΡŒ нСпосрСдствСнно Π΄ΠΎ ΠΏΠΎΡ‚ΠΎΠ»ΠΊΠ°, поэтому ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ обстановку ΠΈ мСбСль ΠΈΠ· сосСдних ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π½Π° Ρ‚ΠΎΠΌ ΠΆΠ΅ самом этаТС.

ОТидалось, Ρ‡Ρ‚ΠΎ для простых ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ с ΠΌΠ°Π»Ρ‹ΠΌ количСством ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ сцСны наш иСрархичСский Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ опрСдСлСния видимости (hierarchical visibility algorithm) Π±ΡƒΠ΄Π΅Ρ‚ нСсколько ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Ρ‡Π΅ΠΌ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅, Π²Π²ΠΈΠ΄Ρƒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€ΠΈ просчСтС видимости подпространств octree ΠΈ поддСрТания Z-ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Ρ‹. Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ прСдполоТСния ΠΌΡ‹ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π»ΠΈ Ρ„ΠΈΠ½Π°Π»ΡŒΠ½ΡƒΡŽ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡŽ нашим ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΠΎΠ³ΠΎ офисного модуля, описанного Π²Ρ‹ΡˆΠ΅ (15000 ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ²) ΠΈΠ· Ρ‚ΠΎΡ‡ΠΊΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ максимум Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ. ВрСмя Π½Π° Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ изобраТСния 512Ρ…512 пиксСлСй составило 1.52 сСкунды, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ scan conversion ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π» 1.30 сСкунды. Налицо 17%-Π½ΠΎΠ΅ отставаниС ΠΎΡ‚ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… способов. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ Ρ‚Ρ€ΠΈ модуля, выстроСнных Π΄Ρ€ΡƒΠ³ Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π² Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ (45000 ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ²). ВрСмя ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ составило 3.05 сСкунды для ΠΎΠ±ΠΎΠΈΡ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², показывая, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ гСомСтричСской слоТности являСтся ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ (для Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ гСомСтричСской ΠΌΠΎΠ΄Π΅Π»ΠΈ). Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π·Π°Ρ‚Ρ€Π°Ρ‚ΠΈΠ» 5.17 сСкунды для Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ изобраТСния Π½Π°Π±ΠΎΡ€Π° ΠΈΠ· дСвяти ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π² Ρ‚ΠΎ врСмя ΠΊΠΎΠ³Π΄Π° Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΠ» Π½Π° это ΡƒΠΆΠ΅ 7.16 сСкунды.

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, истинная ΠΎΠ±Π»Π°ΡΡ‚ΡŒ примСнСния иСрархичСских Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² β€” это ΠΌΠΎΠ΄Π΅Π»ΠΈ большой ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большой слоТности. Для дСмонстрации возмоТностСй Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΌΡ‹ сконструировали Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ здания, состоящСС ΠΈΠ· 33 Ρ€Π°Π·ΠΌΠ½ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π² пространствС, исходных офисных ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. ΠžΠ±Ρ‰Π΅Π΅ количСство ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ достигло 538 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ²! Π’ нашСм случаС 59.7 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ² Π»Π΅ΠΆΠ°Π»ΠΎ Π² ΠΏΠΎΠ»Π΅ viewing frustum. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ Π½Π° Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π»ΠΈΡΡŒ 1746 сформированных подпространств (ΠΊΡƒΠ±ΠΎΠ²) ΠΈΠ· состава octree, ΠΈΠ· Π½ΠΈΡ… 27 ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ² Π±Ρ‹Π»ΠΎ ΠΎΡ‚Π±Ρ€ΠΎΡˆΠ΅Π½ΠΎ сразу, Π³Ρ€Π°Π½ΠΈ 687 ΠΊΡƒΠ±ΠΎΠ² Π±Ρ‹Π»ΠΈ иСрархичСски scan converted, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ ΠΌΡ‹ отбросили ΠΏΠΎΡ‡Ρ‚ΠΈ 73% ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ², ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… Π² ΠΏΠΎΠ»Π΅ Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ (viewing frustum). ПослС Ρ‚Π°ΠΊΠΈΡ… ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠΉ Π½Π°ΠΌ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 83000 ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ², ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… 41200 Π±Ρ‹Π»ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½Ρ‹ ΠΊ ΠΊΠ°ΠΌΠ΅Ρ€Π΅ (это ΠΎΠΊΠΎΠ»ΠΎ 0.000076 ΠΎΡ‚ исходной ΠΌΠΎΠ΄Π΅Π»ΠΈ). Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ визуализация ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ изобраТСния описанной Π½Π°ΠΌΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ заняла всСго лишь 6.45 сСкунды Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ станции SGI Crimson Elan. Визуализация этой ΠΆΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ с использованиСм Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Z-Π±ΡƒΡ„Π΅Ρ€Π°, Π½ΠΎ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π΅Π³ΠΎ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ вСрсии Π½Π° Crimson Elan, заняла ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ 1 час 15 ΠΌΠΈΠ½ΡƒΡ‚. А ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π°ΠΌ навСрняка ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ Π±Ρ‹ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ суток.

Как Π²ΠΈΠ΄ΠΈΠΌ, Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Ρˆ прСдставляСмый Π½ΠΎΠ²Ρ‹ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ колоссалСн.

4.2. ИспользованиС графичСских аксСлСраторов

Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ «ΡΠΎΡ„Ρ‚Π²Π΅Ρ€Π½ΠΎΠΉ» вСрсии нашСго Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΌΡ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π»ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄ΠΎΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ наши ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с Ρ†Π΅Π»ΡŒΡŽ возмоТности ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ доступныС Π½Π° настоящий ΠΌΠΎΠΌΠ΅Π½Ρ‚ коммСрчСскиС графичСскиС аксСлСраторы. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π½Π°ΡˆΠΈΡ… исслСдований Π±Ρ‹Π» Π²Ρ‹Π²ΠΎΠ΄: Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ графичСскиС аксСлСраторы для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ части нашСго Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΎΡ‡Π΅Π½ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ. И Π²ΠΎΡ‚ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ, Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ: эффСктивноС использованиС когСрСнтности ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ пространства Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли ΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ scan conversion Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ аксСлСратора, ΠΎΡ‡Π΅Π½ΡŒ быстро смоТСм ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, являСтся Π»ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ пиксСль Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ. К соТалСнию, протСстированныС Π½Π°ΠΌΠΈ аксСлСраторы ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ смогли Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° наш запрос, ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ миллисСкунд. А это слишком Π΄ΠΎΠ»Π³ΠΎ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²ΠΏΠΎΠ»Π½Π΅ СстСствСнно ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΎΡ‚ графичСского ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π°, Π½ΠΎ «ΠΆΠ΅Π»Π΅Π·ΠΎ», спроСктированноС ΠΈ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π½Π° Ρ‚Π°ΠΊΠΈΠ΅ «Π²ΠΎΠΏΡ€ΠΎΡΡ‹», Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ микросСкунд.

ΠœΡ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ пространства Π½Π° подпространства (object space octree) Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ станции Kubota Pacific Titan 3000 с аксСлСратором Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π½Π° Π±Π°Π·Π΅ Denali GB. Denali ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π» нСстандартный Π²Ρ‹Π·ΠΎΠ² ΠΈΠ· графичСской Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Π²ΠΈΠ΄ΠΈΠΌΡ‹ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ пиксСли ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ², Π½Π° основании ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Z- Π±ΡƒΡ„Π΅Ρ€Π°. ΠœΡ‹ использовали этот Π²Ρ‹Π·ΠΎΠ² (имСвший Π½Π°Π·Π²Π°Π½ΠΈΠ΅ «Z query») для опрСдСлСния видимости octree cubes. Быстрота возвращСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΎΡ‡Π΅Π½ΡŒ зависСла ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΈ ΠΊΡƒΠ±Π° Π½Π° экран (Ссли Π±Ρ‹ ΠΌΡ‹ Π΅Π³ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π½Π° экран), ΠΈ ΠΏΠΎΡ€ΠΎΠΉ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… миллисСкунд. Наши дальнСйшиС тСсты ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… запросов Ρ‚Ρ€Π°Ρ‚ΠΈΠ»ΠΎΡΡŒ Π΄ΠΎ 36% Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π­Ρ‚ΠΎ нСдопустимо ΠΌΠ½ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ аксСлСратора эффСктивным.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π² настоящСС врСмя графичСскиС аксСлСраторы Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ быстро Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π½Π°Π·Π°Π΄ просчитанноС ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ΠΎΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, поэтому малоэффСктивно ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ… для использования Π² иСрархичСских Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… опрСдСлСния видимости (hierarchical visibility) Π±Π΅Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ, Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ самого графичСского ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π°.

5. Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Учитывая Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ всС Π±ΠΎΠ»Π΅Π΅ ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТная гСомСтрия ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΈ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹Ρ… сцСн становится всС Ρ‡Π°Ρ‰Π΅ ΠΈ Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅, становится ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ для получСния ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ³Π΅Ρ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΈ сцСны ΠΈ изобраТСния. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ прСдставили ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π² индустрии Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡƒΡ‚ΠΈΠ»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Ρ€ΠΈ Π²ΠΈΠ΄Π° когСрСнтности: object space coherence, image-space coherence ΠΈ temporal coherence. Алгоритм Π±Ρ‹Π» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΈ Π΄ΠΎΠΊΠ°Π·Π°Π» свою ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ с Π±ΠΎΠ»Π΅Π΅, Ρ‡Π΅ΠΌ ΠΏΠΎΠ»ΡƒΠΌΠΈΠ»Π»ΠΈΠ°Ρ€Π΄ΠΎΠΌ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΎΠ².

Π₯очСтся Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ прСдставлСнный здСсь иСрархичСский Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Π΅Π· сущСствСнных ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π½Π° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… графичСских аксСлСраторах, Π½ΠΎ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π΅Π³ΠΎ ограничиваСтся нСдостаточными возмоТностями ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… аксСлСраторов. БовсСм Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ аксСлСраторов смогут Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π² hardware.

* с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΏΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Ρ‹ ΠΊ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅, Π±ΡƒΠ΄Π΅ΠΌ ΠΎΡ‡Π΅Π½ΡŒ Π½Π°Π΄Π΅ΡΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ Radeon 256 ΠΎΡ‚ ATI Π±ΡƒΠ΄Π΅Ρ‚ свободСн ΠΎΡ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… нСдостатков πŸ™‚

Благодарности

Особая Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½ΠΎΡΡ‚ΡŒ Frank Crow ΠΈ Advanced Technology Group ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Apple Computer Π·Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π² ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ исслСдований. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Ρ‹ Mike Toelle, Avi Bleiweiss, Helga Thorvaldsdottir ΠΈ Mike Keller ΠΈΠ· Kubota Pacific Corporation Π·Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π² ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ тСстирования Π½Π°ΡˆΠΈΡ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ станции Titan.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *