카메라 공간 변환(Direct3D 9)
카메라 공간의 꼭짓점은 월드 뷰 행렬을 사용하여 개체 꼭짓점을 변환하여 계산됩니다.
V = V * wvMatrix
카메라 공간에서 꼭짓점 법선은 월드 뷰 행렬의 역변경으로 개체 법선 변환을 통해 계산됩니다. 세계관 행렬은 직교일 수도 있으며 그렇지 않을 수도 있습니다.
N = N * (wvMatrix⁻σ)T
행렬 반전 및 행렬 트랜스포지션은 4x4 행렬에서 작동합니다. 곱하기는 결과 4x4 행렬의 3x3 부분과 노멀을 결합합니다.
렌더링 상태인 D3DRENDERSTATE_NORMALIZENORMALS TRUE 설정된 경우 다음과 같이 카메라 공간으로 변환한 후 꼭짓점 일반 벡터가 정규화됩니다.
N = norm(N)
카메라 공간의 조명 위치는 뷰 매트릭스를 사용하여 광원 위치를 변환하여 계산됩니다.
Lp = Lp * vMatrix
방향 광원에 대한 카메라 공간의 광원 방향은 뷰 매트릭스를 기준으로 광원 방향을 곱하고 결과를 정규화하고 무효화하여 계산됩니다.
Ldir = -norm(Ldir * wvMatrix)
D3DLIGHT_POINT 및 D3DLIGHT_SPOT 조명 방향은 다음과 같이 계산됩니다.
Ldir = norm(V * Lp) 여기서 매개 변수는 다음 표에 정의되어 있습니다.
매개 변수 | 기본값 | 형 | 묘사 |
---|---|---|---|
L디르 | 해당(N/A) | D3DVECTOR | 개체 꼭짓점에서 광원으로의 방향 벡터 |
V | 해당(N/A) | D3DVECTOR | 카메라 공간의 꼭짓점 위치 |
wvMatrix | 신원 | D3DMATRIX | 월드 및 뷰 변환을 포함하는 복합 행렬 |
N | 해당(N/A) | D3DVECTOR | 꼭짓점 법선 |
Lp 로 | 해당(N/A) | D3DVECTOR | 카메라 공간의 밝은 위치 |
vMatrix | 신원 | D3DMATRIX | 뷰 변환을 포함하는 행렬 |
관련 항목