[DX] 텍스처 공간(Texture Space) / 접 공간(Tangent Space)

김진우·2025년 7월 27일

DirectX

목록 보기
30/32
post-thumbnail

텍스처 공간 (Texture Space)

정의

  • Mesh의 각 정점이 가지고 있는 UV좌표계를 기반으로 정의된 2D공간이다. 텍스처 맵은 이 UV 좌표계에 따라 2D 이미지처럼 표현된다.

구성

일반적으로 (U, V) 좌표를 사용하지만, 법선 맵을 사용할 때는 이 UV에 수직인 방향(= 접선 공간)도 필요하다.

그래서 텍스처 공간에서의 3축을 다음과 같이 생각할 수 있다.
U 방향 → Tangent (접선)
V 방향 → Bitangent (BiTangent, Binormal)
UV에 수직한 방향 → Normal (표면 법선)


접 공간 (Tangent Space)

정의

  • Mesh의 각 정점에서 정의된 표면을 기준으로 하는 로컬 좌표계이다.

보통 법선 맵을 월드 공간이나 뷰 공간이 아닌, 텍스처 공간 기반으로 적용하기 위해 사용된다.

구성

Tangent (T): U 방향 (텍스처의 가로 방향)
Bitangent (B): V 방향 (텍스처의 세로 방향)
Normal (N): 표면 법선 (T × B 또는 주어진 법선)

이 3개 벡터 (T, B, N)는 보통 직교화된 정규화 벡터이며, Mesh의 표면에서 로컬 좌표계를 구성한다.


TBN Matrix

        | T.x  B.x  N.x |
TBN =   | T.y  B.y  N.y |
        | T.z  B.z  N.z |
  • mul(normalTS, TBN) → 월드 공간의 법선 방향

0개의 댓글