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이면 조명이 점등입니다.

요구 사항

요구 사항
헤더
D3DX10Math.h
라이브러리
D3DX10.lib

추가 정보

수학 함수