struktur D3DHAL_DP2RENDERSTATE (d3dhal.h)
Satu atau beberapa struktur D3DHAL_DP2RENDERSTATE diurai dari buffer perintah oleh panggilan balik D3dDrawPrimitives2 ketika anggota bCommand struktur D3DHAL_DP2COMMAND diatur ke D3DDP2OP_RENDERSTATE, dan digunakan untuk mengatur status render yang sesuai.
Sintaks
typedef struct _D3DHAL_DP2RENDERSTATE {
D3DRENDERSTATETYPE RenderState;
union {
D3DVALUE dvState;
DWORD dwState;
};
} D3DHAL_DP2RENDERSTATE;
Anggota
RenderState
Menentukan jenis enumerasi D3DRENDERSTATETYPE yang menunjukkan status render yang akan diperbarui. Status render yang diminta pada tingkat aplikasi dijelaskan dalam dokumentasi DirectX SDK. Merender status yang secara eksklusif digunakan oleh driver dijelaskan dalam D3DRENDERSTATETYPE.
dvState
Menentukan nilai yang harus diperbarui driver dengan status render yang diidentifikasi oleh anggota RenderState . Anggota ini valid ketika RenderState memerlukan D3DVALUE.
dwState
Menentukan nilai tempat driver harus memperbarui status render yang diidentifikasi oleh RenderState . Anggota ini valid ketika RenderState memerlukan DWORD.
Keterangan
D3dDrawPrimitives2 harus memproses struktur D3DHAL_DP2RENDERSTATE wStateCount dari buffer perintah. Nilai wStateCount ditentukan dalam struktur D3DHAL_DP2COMMAND.
Untuk setiap struktur D3DHAL_DP2RENDERSTATE, D3dDrawPrimitives2 harus memperbarui status render privat driver dan array status render yang ditunjuk oleh anggota lpdwRStatesD3DHAL_DRAWPRIMITIVES2DATA . Elemen yang akan diperbarui dalam array status render publik adalah lpdwRStates[RenderState].
Gambar berikut menunjukkan sebagian buffer perintah sampel yang berisi perintah D3DDP2OP_RENDERSTATE dan dua struktur D3DHAL_DP2RENDERSTATE. Driver harus memperbarui lpdwRStates[D3DRENDERSTATE_FILLMODE] menjadi D3DFILL_SOLID dan lpdwRStates[D3DRENDERSTATE_SHADEMODE] menjadi D3DSHADE_GOURAUD. Driver juga harus memperbarui status privatnya sesuai.
Meskipun status render yang nilainya adalah Boolean dalam jenis didokumenkan sebagai hanya menerima TRUE(1) dan FALSE(0) runtime tidak memvalidasi ini dan menerima nilai subzero apa pun sebagai benar. Driver sampel menafsirkan ini secara ketat dan menginterpretasikan nilai selain 1 sebagai TRUE. Namun, karena runtime tidak menawarkan validasi, driver Anda harus menginterpretasikan 0 sebagai FALSE dan nilai subzero lainnya sebagai TRUE. Dalam hal ini driver Anda tidak boleh meniup perilaku driver sampel yang disediakan.Persyaratan
Persyaratan | Nilai |
---|---|
Header | d3dhal.h (termasuk D3dhal.h) |
Lihat juga
D3DDP2OP_RENDERSTATE
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