Fungsi D3DXCreateEffectEx
Membuat efek dari ASCII atau deskripsi efek biner. Fungsi ini adalah versi yang diperluas dari D3DXCreateEffect yang memungkinkan aplikasi untuk mengontrol parameter mana yang diabaikan oleh sistem efek.
Sintaks
HRESULT D3DXCreateEffectEx(
_In_ LPDIRECT3DDEVICE9 pDevice,
_In_ LPCVOID pSrcData,
_In_ UINT SrcDataLen,
_In_ const D3DXMACRO *pDefines,
_In_ LPD3DXINCLUDE pInclude,
_In_ LPCSTR pSkipConstants,
_In_ DWORD Flags,
_In_ LPD3DXEFFECTPOOL pPool,
_Out_ LPD3DXEFFECT *ppEffect,
_Out_ LPD3DXBUFFER *ppCompilationErrors
);
Parameter
-
pDevice [in]
-
Jenis: LPDIRECT3DDEVICE9
Penunjuk ke perangkat yang akan membuat efeknya. Lihat IDirect3DDevice9.
-
pSrcData [in]
-
Jenis: LPCVOID
Penunjuk ke buffer yang berisi deskripsi efek.
-
SrcDataLen [in]
-
Jenis: UINT
Panjang data efek, dalam byte.
-
pDefines [in]
-
Jenis: const D3DXMACRO*
Array struktur D3DXMACRO opsional yang dihentikan NULL yang menjelaskan definisi prapemrosuaian. Nilai ini bisa 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.
-
pSkipConstants [in]
-
Jenis: LPCSTR
String parameter efek yang akan diabaikan oleh sistem efek. String harus dihentikan NULL , dan perlu berisi nama setiap konstanta yang dikelola aplikasi yang dipisahkan oleh titik koma.
-
Bendera [in]
-
Jenis: DWORD
Jika pSrcData berisi efek teks, bendera dapat berupa kombinasi Bendera D3DXSHADER dan benderaD3DXFX ; jika tidak, pSrcData berisi efek biner dan satu-satunya bendera yang dihormati adalah bendera D3DXFX. Pengkompilasi Direct3D 10 HLSL sekarang menjadi default. Lihat Alat Pengkompilasi Efek untuk detailnya.
-
pPool [in]
-
Jenis: LPD3DXEFFECTPOOL
Arahkan ke objek ID3DXEffectPool untuk digunakan untuk parameter bersama. Jika nilai ini NULL, tidak ada parameter yang akan dibagikan.
-
ppEffect [out]
-
Jenis: LPD3DXEFFECT*
Mengembalikan penunjuk ke antarmuka ID3DXEffect .
-
ppCompilationErrors [out]
-
Jenis: LPD3DXBUFFER*
Mengembalikan buffer yang berisi daftar kesalahan kompilasi.
Menampilkan nilai
Jenis: HRESULT
Jika fungsi berhasil, nilai yang dikembalikan adalah D3D_OK. Jika fungsi gagal, nilai yang dikembalikan dapat berupa salah satu hal berikut: D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.
Keterangan
Fungsi ini adalah versi yang diperluas dari D3DXCreateEffect yang memungkinkan aplikasi menentukan konstanta efek mana yang akan dikelola oleh aplikasi. Konstanta yang dikelola oleh aplikasi diabaikan oleh sistem efek. Artinya, aplikasi bertanggung jawab untuk menginisialisasi konstanta serta menyimpan dan memulihkan statusnya kapan pun sesuai.
Fungsi ini memeriksa setiap konstanta dalam pSkipConstants untuk melihat bahwa:
- Ini terikat ke register konstan.
- Ini hanya digunakan dalam kode shader HLSL.
Jika konstanta dinamai dalam string yang tidak ada dalam efek, konstanta akan diabaikan.
Persyaratan
Persyaratan | Nilai |
---|---|
Header |
|
Pustaka |
|
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk