ID3DXPRTEngine::ComputeVolumeSamplesDirectSH 메서드
지정된 위치에서 인시던트 광채를 나타내는 SH(구면 조화) 기본 벡터로 원거리 조명의 프로젝션을 계산합니다.
구문
HRESULT ComputeVolumeSamplesDirectSH(
[in] UINT OrderIn,
[in] UINT OrderOut,
[in] UINT NumVolSamples.xml,
[in] const D3DXVECTOR3 *pSampleLocs,
[in, out] LPD3DXPRTBUFFER pDataOut
);
매개 변수
-
OrderIn [in]
-
형식: UINT
원거리 조명의 SH 표현 순서입니다. D3DXSH_MAXORDER D3DXSH_MINORDER 범위여야 합니다. 평가 수준은 OrderIn - 1입니다.
-
OrderOut [in]
-
형식: UINT
로컬 조명의 SH 표현 순서입니다. D3DXSH_MAXORDER D3DXSH_MINORDER 범위여야 합니다. 평가 수준은 OrderOut - 1입니다.
-
NumVolSamples.xml [in]
-
형식: UINT
샘플 위치 수입니다.
-
pSampleLocs [in]
-
형식: const D3DXVECTOR3*
각 샘플의 위치입니다.
-
pDataOut [in, out]
-
형식: LPD3DXPRTBUFFER
먼 조명을 SH 기본 벡터로 투영하는 출력 ID3DXPRTBuffer 개체에 대한 포인터입니다. 이 버퍼에는 시뮬레이션에 할당된 적절한 수의 색 채널이 있어야 합니다. 이 메서드는 각 샘플 위치에서 채널당 OrderIn² * OrderOut"² 스칼라를 생성합니다.
반환 값
형식: HRESULT
메서드가 성공하면 반환 값이 D3D_OK. 메서드가 실패하면 반환 값은 D3DERR_INVALIDCALL, E_OUTOFMEMORY 중 하나일 수 있습니다.
설명
이 메서드는 pSampleLocs로 지정된 공간의 각 지점에 먼 소스의 빛이 도착하는 방법을 계산합니다. SH 계수는 전송된 인시던트 광채에 대한 원본 광채의 각 pSampleLocs 지점에서 매핑을 나타냅니다.
이 메서드를 성공적으로 사용하려면 ID3DXPRTEngine::SetSamplingInfo에서 UseSphere = TRUE 및 UseCosine = FALSE를 사용하여 구에 샘플링을 설정해야 합니다. 그렇지 않으면 이 메서드는 D3DERR_INVALIDCALL 오류를 반환합니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|
라이브러리 |
|
추가 정보