Fungsi D3DXFillVolumeTexture

Menggunakan fungsi yang disediakan pengguna untuk mengisi setiap texel dari setiap tingkat mip tekstur volume tertentu.

Sintaks

HRESULT D3DXFillVolumeTexture(
  _Out_ LPDIRECT3DVOLUMETEXTURE9 pTexture,
  _In_  LPD3DXFILL3D             pFunction,
  _In_  LPVOID                   pData
);

Parameter

pTexture [out]

Jenis: LPDIRECT3DVOLUMETEXTURE9

Penunjuk ke antarmuka IDirect3DVolumeTexture9 , mewakili tekstur yang diisi.

pFunction [in]

Jenis: LPD3DXFILL3D

Arahkan ke fungsi evaluator yang disediakan pengguna, yang akan digunakan untuk menghitung nilai setiap texel. Fungsi ini mengikuti prototipe LPD3DXFILL3D.

pData [in]

Jenis: LPVOID

Arahkan ke blok arbitrer data yang ditentukan pengguna. Pointer ini akan diteruskan ke fungsi yang disediakan dalam pFunction.

Menampilkan nilai

Jenis: HRESULT

Jika fungsi berhasil, nilai yang dikembalikan adalah D3D_OK. Jika fungsi gagal, nilai yang dikembalikan bisa menjadi salah satu nilai berikut: D3DERR_INVALIDCALL.

Keterangan

Jika volume tidak dinamis (karena penggunaan diatur ke 0 saat dibuat), dan terletak di memori video (kumpulan memori diatur ke D3DPOOL_DEFAULT), D3DXFillVolumeTexture akan gagal karena volume tidak dapat dikunci.

Contoh ini membuat fungsi yang disebut ColorVolumeFill, yang bergantung pada D3DXFillVolumeTexture.

// 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;
}

Persyaratan

Persyaratan Nilai
Header
D3dx9tex.h
Pustaka
D3dx9.lib

Lihat juga

Fungsi Tekstur di D3DX 9