Чому простір кліпів завжди називають «однорідним простором кліпу»?


12

Я помітив майже в усьому, що я прочитав до цього часу, що термін "простір кліпів" є висунутим словом "однорідний". Тепер я розумію, що це приблизно означає "все те саме", але я не розумію, чому існує явна потреба сказати "однорідний простір кліпу". Коли простір кліпу не є однорідним і чому нам потрібно диференціюватись? І з цього приводу, що саме означає, що ми називаємо це "однорідним простором кліпу"? Однорідний по відношенню до чого? Яким чином вершини "все однакові"?

Відповіді:


22

Простір кліпу називається однорідним, оскільки значення в ньому використовують однорідні координати , тобто вони мають форму [xyzw] замість [xyz] . Для того, щоб отримати останнє, перспективний поділ все ж має відбутися:

 [x y z w]      [x/w y/w z/w]
homogeneous     normalized device
clip space      coordinates (NDC)

Причина відсікання виконується перед перспективним поділом, оскільки підрозділи - це дорогі операції. Замість тестування, наприклад, |x| > 1 в просторі NDC, ми можемо просто протестувати |x| > |w|в однорідному просторі кліпу, що дає точно такий же результат, і дозволяє виконувати відсікання перед поділом.


2
Запропоновано пояснити, чому відсікання в однорідному просторі 4D дешевше, ніж у 3D-просторі NDC. Я думаю, що це вперше помітили Джим Блінн та ME Ньюелл. Навіть після відсікання вцілілі точки зазнають цього (дорогого) перспективного поділу, однак кількість очок тепер буде значно меншою після відсікання.
legends2k

Що ви тут маєте на увазі під "відсіканням", а точніше, під "відсіканням виконується"?

"Причина відсікання виконується перед перспективним поділом, тому що поділи - це дорогі операції" неправильно. це тому, що ти не можеш нічого спроектувати за допомогою z <= 0. вона логічно не може потрапити в площину проекції. тому також найближча площина не може бути 0. Все повинно бути перед камерою. тому відсікання має відбуватися перед проекцією.
Калюжа
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.