D3DXFillVolumeTexture 함수
사용자 제공 함수를 사용하여 지정된 볼륨 텍스처의 각 밉 수준의 각 텍셀을 채웁니다.
구문
HRESULT D3DXFillVolumeTexture(
_Out_ LPDIRECT3DVOLUMETEXTURE9 pTexture,
_In_ LPD3DXFILL3D pFunction,
_In_ LPVOID pData
);
매개 변수
-
pTexture [out]
-
채워진 텍스처를 나타내는 IDirect3DVolumeTexture9 인터페이스에 대한 포인터입니다.
-
pFunction [in]
-
형식: LPD3DXFILL3D
각 텍셀의 값을 계산하는 데 사용되는 사용자 제공 계산기 함수에 대한 포인터입니다. 함수는 LPD3DXFILL3D의 프로토타입을 따릅니다.
-
pData [in]
-
형식: LPVOID
사용자 정의 데이터의 임의 블록에 대한 포인터입니다. 이 포인터는 pFunction에 제공된 함수에 전달됩니다.
반환 값
형식: HRESULT
함수가 성공하면 반환 값이 D3D_OK. 함수가 실패하면 반환 값은 D3DERR_INVALIDCALL 값 중 하나일 수 있습니다.
설명
볼륨이 동적이 아닌 경우(사용량이 생성될 때 0으로 설정되고) 비디오 메모리(메모리 풀이 D3DPOOL_DEFAULT 설정됨)에 있는 경우 볼륨을 잠글 수 없기 때문에 D3DXFillVolumeTexture 가 실패합니다.
이 예제에서는 D3DXFillVolumeTexture를 사용하는 ColorVolumeFill이라는 함수를 만듭니다.
// Define a function that matches the prototype of LPD3DXFILL3D
VOID WINAPI ColorVolumeFill (D3DXVECTOR4* pOut, const D3DXVECTOR3* pTexCoord,
const D3DXVECTOR3* pTexelSize, LPVOID pData)
{
*pOut = D3DXVECTOR4(pTexCoord->x, pTexCoord->y, pTexCoord->z, 0.0f);
}
// Fill volume texture
if (FAILED (hr = D3DXFillVolumeTexture (m_pTexture, ColorVolumeFill, NULL)))
{
return hr;
}
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|
라이브러리 |
|
추가 정보