Fungsi D3DXPreprocessShader

Praproses shader tanpa melakukan kompilasi. Ini menyelesaikan semua #defines dan #includes, menyediakan shader mandiri untuk kompilasi berikutnya.

Catatan

Alih-alih menggunakan fungsi warisan ini, kami sarankan Anda menggunakan API D3DPreprocess .

 

Sintaks

HRESULT D3DXPreprocessShader(
  _In_        LPCSTR        pSrcData,
  _In_        UINT          SrcDataSize,
  _In_  const D3DXMACRO     *pDefines,
  _In_        LPD3DXINCLUDE pInclude,
  _Out_       LPD3DXBUFFER  *ppShaderText,
  _Out_       LPD3DXBUFFER  *ppErrorMsgs
);

Parameter

pSrcData [in]

Jenis: LPCSTR

Penunjuk ke string yang berisi shader.

SrcDataSize [in]

Jenis: UINT

Panjang data dalam byte.

pDefines [in]

Jenis: const D3DXMACRO*

Array opsional NULL yang dihentikan dari struktur D3DXMACRO . Nilai ini mungkin NULL.

pInclude [in]

Jenis: LPD3DXINCLUDE

Penunjuk antarmuka opsional, ID3DXInclude, untuk digunakan untuk menangani arahan #include. Jika nilai ini NULL, #includes akan dihormati saat mengkompilasi dari file atau akan menyebabkan kesalahan saat dikompilasi dari sumber daya atau memori.

ppShaderText [out]

Jenis: LPD3DXBUFFER*

Mengembalikan buffer yang berisi satu string besar yang mewakili aliran token yang diformat yang dihasilkan.

ppErrorMsgs [out]

Jenis: LPD3DXBUFFER*

Mengembalikan buffer yang berisi daftar kesalahan dan peringatan yang ditemui selama kompilasi. Ini adalah pesan yang sama yang ditampilkan debugger saat berjalan dalam mode debug. Nilai ini mungkin NULL.

Mengembalikan nilai

Jenis: HRESULT

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

Persyaratan

Persyaratan Nilai
Header
D3DX9Shader.h
Pustaka
D3dx9.lib

Lihat juga

Fungsi Shader

D3DXPreprocessShaderFromFile

D3DXPreprocessShaderFromResource