본문 바로가기
그래픽스 정리

깊이 처리

by water_beetle 2023. 10. 10.

Depth Processing

Question

3D 공간상에서 물체가 앞 뒤로 곂쳐져 화면에 어떻게 출력할 것인가?
-> 당연히 뒤쪽에 있는 Object는 앞쪽 Object에 의해 가려져야함.

그걸 어떻게 구현하는가?
-> 뒤쪽 Object부터 앞쪽 Object 순서로 그린다
-> 그것보다는 *Z-buffer Method *를 사용하자

Z-buffer Method

가장 널리 쓰이는 hidden surface removal method
더 가까운 물체가 더 물체를 가린다

  • 어떤 Object가 그려질 때 만들어지는 픽셀에 깊이 값인 Z를 관리하는 Z 버퍼를 추가하자
  • 만약 서로 다른 Object가 같은 Pixel에 그려져야 할 때 Z값을 비교해서 누가 더 가까운지 판단한 다음
    가까운 Object를 FrameBuffer에 그리고, Z 버퍼의 값을 더 작은 값으로 덮어쓴다.

장점

  • Object들을 정렬할 필요 없이 그냥 Z값만 체크하면 됨
  • 하드웨어 구현으로 매우 빠름

단점

  • framebuffer 크기 정도의 추가 메모리가 필요함 -> Z-buffer를 새로 만들기 때문에
  • 정밀도를 위해 거의 픽셀당 24bit or 32bit 정도 사용함

'그래픽스 정리' 카테고리의 다른 글

MVP 파이프라인  (0) 2023.10.10
백 페이스 컬링  (0) 2023.10.10
더블 버퍼링  (0) 2023.10.10
그래픽스 파이프라인  (0) 2023.10.10
기초 정리  (0) 2023.10.10

최근댓글

최근글

skin by © 2024 ttuttak