[DX] 절단(Clipping)

김진우·2025년 7월 15일

DirectX

목록 보기
21/32
post-thumbnail

정의

DirectX에서 절단(Clipping)이란 화면(viewport)에 보이지 않는 부분의 기하(grometry)를 잘라내는 과정이다.
즉, 절두체 바깥에 있는 정점이나 폴리곤(삼각형 등)을 잘라내는 연산을 한다.

목적

  • 불필요한 연산 최소화 : 카메라의 시야 범위(뷰 프러스텀, 절두체)를 벗어난 객체 부분을 렌더링 파이프라인 초기에 잘라냄으로써 GPU 자원을 절약한다.

  • 정확한 장면 연출 : 사용자가 볼 수 없는 영역을 제거해 원하는 영역만 보여준다.

  • 렌더링 버그 방지 : 화면 외부 데이터를 렌더링하지 않아 그래픽 오류 예방한다.


절단이 발생하는 과정

  1. 모델 공간 → 월드 공간 변환
  2. 월드 공간 → 뷰 공간 변환
  3. 뷰 공간 → 클립 공간 변환 (투영 행렬 적용)
  4. 클립 공간에서 절단(Clipping)
  5. 정규화된 장치 좌표(NDC) → 화면 좌표 변환(Viewport Transform)

종류

  1. Point Clipping : 하나의 점이 시야(절두체) 내부에 있는지 검사한다.
  2. Line Clipping : 성분이 시야를 벗어나는지 검사하고 잘라낸다.
  3. Polygon Clipping : 다각형(삼각형 포함)이 시야를 벗어나면 잘라낸다.

0개의 댓글