14 View 변환

gksrudtlr
|2025. 1. 12. 18:26
  • 카메라
    • 카메라는 우리가 게임을 플레이 했을 때 보여주는 시야를 의미한다
  • View 행렬
    • 월드 좌표를 가지고 카메라를 기준으로 하는 좌표를 만들어 줘야 한다
    • 카메라 좌표를 기반으로 원근법등을 적용해 줄 수 있다
    • 모든 물체들은 카메라 좌표를 기준으로 바꿔주어 카메라 영역 안에 들어오지 않는 것들은 그리지 않고, 들어오는 물체들을 그려주어야 하기 때문이다
    • 지금까지 배웠던 변환 행렬에 적용시켜 구해보자
    • 월드 좌표계와 카메라 위치를 일치시켜 항등행렬을 만들어 변환하는 것이 가장 쉬울 것이다
    • 일반적인 상황인 카메라의 위치와 월드 좌표의 위치가 다른 경우에는
      • View 행렬도 역시 SRT를 가지고 구할 수 있으나 S는 카메라의 크기를 변화시키지 않을 것이기 때문에 RT를 이용해 구하게 된다
      • 이때 RT의 역행렬들을 이용하는 이유는 카메라가 이동하거나 회전할 때 World상의 물체들은 카메라가 이동/회전 한 반대로 움직이기 때문이다
      • 이때 회전행렬인 R은 직교 행렬이기 때문에 역행렬이 전치 행렬과 같기 때문에 $R{^T}$가 된다
    • DirectX에는 카메라의 위치, 카메라가 바라볼 위치, 윗 방향을 가져와 함수 내부에서 외적을 통해 연산하여 위에서 설명한 View 행렬을 만들어 준다

'DirectX' 카테고리의 다른 글

31 Animation  (0) 2025.01.12
15 Projection 변환 행렬  (0) 2025.01.12
13 World 변환 행렬  (1) 2025.01.12
12 좌표계 변환 행렬  (0) 2025.01.12
11 SRT 변환 행렬  (0) 2025.01.12