멋진 OpenGL 튜토리얼을 읽고 있습니다 . 정말 대단해, 믿어 줘 현재 내가 다루고있는 주제는 Z- 버퍼입니다. 저자는 GL_LESS, GL_ALWAYS 등과 같은 커스텀 깊이 테스트를 수행 할 수 있다고 설명하고, 깊이 값의 실제 의미 (최상위 및 비상 위)도 설명 할 수 있다고 설명합니다. 주문을 받아서 만드는. 나는 지금까지 이해합니다. 그리고 저자는 믿을 수없는 것을 말합니다.
zNear 범위는 zFar 범위보다 클 수 있습니다. 만약 그렇다면, 윈도우 공간 값은 뷰어로부터 가장 가깝거나 가장 먼 구성의 관점에서 역전 될 것이다.
이전에는 0의 창 공간 Z 값이 가장 가깝고 1이 가장 먼 것으로 알려졌습니다. 그러나 클립 공간 Z 값이 부정되면 깊이 1은 뷰에 가장 가깝고 깊이 0은 가장 먼 거리입니다. 그러나 깊이 테스트 방향 (GL_LESS에서 GL_GREATER 등)을 뒤집 으면 동일한 결과를 얻습니다. 정말 컨벤션 일뿐입니다. 실제로 Z의 부호와 깊이 테스트를 뒤집는 것은 많은 게임에서 중요한 성능 최적화였습니다.
성능 측면에서 올바르게 이해한다면 Z의 부호와 깊이 테스트를 뒤집는 것은 <
비교를 비교로 변경 하는 >
것입니다. 그래서, 내가 제대로 이해하고 저자는 다음 변경, 거짓말을하거나 일을하고 있지 않은 경우 <
로 >
로 사용되는 중요한 최적화 많은 게임.
저자는, 물건을 만드는 뭔가를 오해하고, 또는 한 번 경우 참 <
(느렸다 극히 보다 저자가 말한대로는) >
?
이 호기심 많은 문제를 분명히 해주셔서 감사합니다!
면책 조항 : 알고리즘 복잡성이 최적화의 주요 소스라는 것을 알고 있습니다. 또한, 요즘에는 분명히 아무런 변화가 없을 것이라고 생각하며 아무것도 최적화하지 않아도됩니다. 나는 극도로, 고통스럽고, 엄청나게 호기심이 많습니다.