Dlaczego przestrzeń klipu jest zawsze nazywana „jednorodną przestrzenią klipu”?


12

Zauważyłem w prawie wszystkim, co do tej pory przeczytałem, że termin „przestrzeń klipu” jest poprzedzony słowem „jednorodny”. Teraz rozumiem, że z grubsza oznacza to „wszystko to samo”, ale nie rozumiem, dlaczego istnieje wyraźna potrzeba powiedzenia „jednorodna przestrzeń klipu”. Kiedy przestrzeń klipu nie jest jednorodna i dlaczego musimy ją różnicować? Co do tego, co to dokładnie oznacza, że ​​nazywamy to „jednorodną przestrzenią klipu”? Jednorodny w stosunku do czego? W jaki sposób wierzchołki są „takie same”?

Odpowiedzi:


22

Przestrzeń wycięcia nazywana jest jednorodną, ponieważ wartości w niej używają jednorodnych współrzędnych , tj. Mają one postać [xyzw] zamiast [xyz] . Aby uzyskać to drugie, podział perspektywiczny musi wciąż zachodzić:

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

Powodowanie wycinania jest wykonywane przed podziałem perspektywy, ponieważ podziały są kosztownymi operacjami. Zamiast testować np. |x| > 1 W przestrzeni NDC, możemy po prostu przetestować |x| > |w|w jednorodnej przestrzeni klipu, co daje dokładnie ten sam wynik i pozwala wykonać obcinanie przed podziałem.


2
Wybitny za wyjaśnienie, dlaczego przycinanie w jednorodnej przestrzeni 4D jest tańsze niż w przestrzeni 3D NDC. Myślę, że po raz pierwszy zauważyli to Jim Blinn i ME Newell. Nawet po przycięciu punkty, które przetrwały, podlegają (drogiemu) podziałowi perspektywy, jednak liczba punktów będzie teraz znacznie mniejsza po przycięciu.
legends2k

Co rozumiesz przez „przycinanie”, a ściślej mówiąc „przycinanie jest wykonywane”?

„Przyczyną obcinania przed podziałem perspektywy jest niepoprawne dzielenie” to dlatego, że nie można nic wyświetlać z z <= 0. logicznie nie może trafić w płaszczyznę projekcji. dlatego też bliski samolot nie może mieć wartości 0. wszystko musi znajdować się przed kamerą. więc przycinanie musi nastąpić przed projekcją.
Kałuża
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.