728x90
반응형
- 개요

이전의 문제를 해결하기 위해 원근 보정 매핑 방식을 이용하여 뷰 공간의 깊이 값을 활용할 수 있다
뷰 공간에서의 깊이 값 z`는 위와 같이 계산할 수 있다

위의 식을 활용하여 계산한 픽셀의 깊이 값을 흑백이미지로 변경하기 위해 [0, 1]의 범위로 교체해야 한다
이때 뷰 공간에서의 절두체가 가지는 깊이의 범위는 원평면에서 근평면을 뺀 f - n이므로
뷰 공간에서의 깊이 값의 색은 위와 같이 계산할 수 있다
- 예제

DrawTriangle3D 함수의 로직에 위와 같이 코드를 추가한다
지역변수 n과 f를 사용하여 카메라의 근평면과 원평면 값을 저장한다

이어서 위의 코드를 추가한다
useLinearVisualization 변수를 확인하여 선형화된 방식의 깊이 버퍼를 보여줄지 판단하고
보여주어야 한다면 위의 식을 토대로 근평면과 원평면의 값을 사용하여 깊이 값의 색을 계산한다
- 최종 실행 결


728x90
반응형
'수학 > 이득우의 게임 수학' 카테고리의 다른 글
| 절두체 컬링 (2) 평면의 방정식의 정규화 (0) | 2026.06.24 |
|---|---|
| 절두체 컬링 (1) 평면의 방정식 (0) | 2026.06.24 |
| 원근 투영 (6) 깊이 버퍼의 시각화 (1) (0) | 2026.06.17 |
| 원근 투영 (5) - 깊이 버퍼와 깊이 테스팅 (0) | 2026.06.17 |
| 원근 투영 (4) - 원근 보정 매핑 (0) | 2026.06.10 |