D3DXMatrixShadow 함수(D3DX10Math.h)
참고
D3DX10 유틸리티 라이브러리는 더 이상 사용되지 않습니다. 대신 DirectXMath 를 사용하는 것이 좋습니다.
기하 도형을 평면으로 평면화하는 행렬을 작성합니다.
구문
D3DXMATRIX* D3DXMatrixShadow(
_Inout_ D3DXMATRIX *pOut,
_In_ const D3DXVECTOR4 *pLight,
_In_ const D3DXPLANE *pPlane
);
매개 변수
-
pOut [in, out]
-
형식: D3DXMATRIX*
작업의 결과인 D3DXMATRIX 구조체에 대한 포인터입니다.
-
pLight [in]
-
형식: const D3DXVECTOR4*
조명의 위치를 설명하는 D3DXVECTOR4 에 대한 포인터입니다.
-
pPlane [in]
-
형식: const D3DXPLANE*
원본 D3DXPLANE에 대한 포인터입니다.
반환 값
형식: D3DXMATRIX*
기하 도형을 평면으로 평면화하는 D3DXMATRIX 구조체에 대한 포인터입니다.
설명
D3DXMatrixShadow 함수는 마치 조명에서 그림자를 캐스팅하는 것처럼 기하 도형을 평면으로 평면화합니다.
이 함수의 반환 값은 pOut 매개 변수에 반환된 값과 동일합니다. 이러한 방식으로 D3DXMatrixShadow 함수를 다른 함수의 매개 변수로 사용할 수 있습니다.
이 함수는 다음 수식을 사용하여 반환된 행렬을 계산합니다.
P = normalize(Plane);
L = Light;
d = dot(P, L)
P.a * L.x + d P.a * L.y P.a * L.z P.a * L.w
P.b * L.x P.b * L.y + d P.b * L.z P.b * L.w
P.c * L.x P.c * L.y P.c * L.z + d P.c * L.w
P.d * L.x P.d * L.y P.d * L.z P.d * L.w + d
광원의 w 구성 요소가 0이면 원점에서 빛으로의 광선은 방향 광원을 나타냅니다. 1이면 조명이 점등입니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|
라이브러리 |
|
추가 정보