Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Blok status hanya dapat digunakan untuk mengambil status puncak (lihat Status Simpan dan Pulihkan Status Blok Status (Direct3D 9)). Status berikut adalah status puncak:
- Status render vertex (lihat Vertex Pipeline: Render State).
- Status pengambil sampel vertex (lihat Vertex Pipeline: Sampler State).
- Status tekstur vertex (lihat Vertex Pipeline: Texture State).
- Segmen mode NPatch dari IDirect3DDevice9::SetNPatchMode.
- Setiap lampu dari IDirect3DDevice9::SetLight, serta apakah lampu tersebut diaktifkan dengan IDirect3DDevice9::LightEnable.
- Shader vertex yang sedang digunakan saat ini dan masing-masing konstanta shader vertex.
- Untuk setiap aliran vertex, simpan nilai pembagi dari IDirect3DDevice9::SetStreamSourceFreq.
- Deklarasi puncak saat ini.
Untuk menangkap status vertex dengan blok status, tentukan D3DSBT_VERTEXSTATE saat memanggil IDirect3DDevice9::CreateStateBlock.
Pipeline Vertex: Keadaan Render
Status render perangkat memengaruhi perilaku hampir setiap bagian dari alur. Status render diatur dengan memanggil IDirect3DDevice9::SetRenderState.
Tabel berikut menyertakan semua status render yang menetapkan status vertex.
| Keadaan Perenderan | Nilai Bawaan |
|---|---|
| D3DRS_CULLMODE | D3DCULL_CCW |
| D3DRS_FOGCOLOR | 0 |
| D3DRS_FOGTABLEMODE | D3DFOG_NONE |
| D3DRS_FOGSTART | 0 |
| D3DRS_FOGEND | 1 |
| D3DRS_FOGDENSITY | 1 |
| D3DRS_RANGEFOGENABLE | FALSE |
| D3DRS_AMBIENT | 0 |
| D3DRS_COLORVERTEX | BENAR |
| D3DRS_FOGVERTEXMODE | D3DFOG_NONE |
| D3DRS_CLIPPING | BENAR |
| D3DRS_LIGHTING | BENAR |
| D3DRS_LOCALVIEWER | TRUE |
| D3DRS_EMISSIVEMATERIALSOURCE | D3DMCS_MATERIAL |
| D3DRS_AMBIENTMATERIALSOURCE | D3DMCS_MATERIAL |
| D3DRS_DIFFUSEMATERIALSOURCE | D3DMCS_COLOR1 |
| D3DRS_SPECULARMATERIALSOURCE | D3DMCS_COLOR2 |
| D3DRS_VERTEXBLEND | D3DVBF_DISABLE |
| D3DRS_CLIPPLANEENABLE | 0 |
| D3DRS_POINTSIZE | Bergantung pada driver |
| D3DRS_POINTSIZE_MIN | 1 |
| D3DRS_POINTSPRITEENABLE | FALSE |
| D3DRS_POINTSCALEENABLE | FALSE |
| D3DRS_POINTSCALE_A | 1 |
| D3DRS_POINTSCALE_B | 0 |
| D3DRS_POINTSCALE_C | 0 |
| D3DRS_MULTISAMPLEANTIALIAS | BENAR |
| D3DRS_MULTISAMPLEMASK | 0xffffffff |
| D3DRS_PATCHEDGESTYLE | D3DPATCHEDGE_DISCRETE |
| D3DRS_POINTSIZE_MAX | 1 |
| D3DRS_INDEXEDVERTEXBLENDENABLE | FALSE |
| D3DRS_TWEENFACTOR | 0 |
| D3DRS_POSITIONDEGREE | D3DDEGREE_CUBIC |
| D3DRS_NORMALDEGREE | D3DDEGREE_LINEAR |
| D3DRS_MINTESSELLATIONLEVEL | 1 |
| D3DRS_MAXTESSELLATIONLEVEL | 1 |
| D3DRS_ADAPTIVETESS_X | 0 |
| D3DRS_ADAPTIVETESS_Y | 0 |
| D3DRS_ADAPTIVETESS_Z | 1 |
| D3DRS_ADAPTIVETESS_W | 0 |
| D3DRS_ENABLEADAPTIVETESSELLATION"/> | FALSE |
Jalur Vertex: Keadaan Sampler
Keadaan sampel mengontrol topik terkait pengambilan sampel seperti pemfilteran, pengubinan, dan mode alamat koordinat tekstur. Gunakan IDirect3DDevice9::SetSamplerState untuk menyiapkan status sampler (termasuk yang digunakan di unit tesselator untuk mengambil sampel peta perpindahan). Status sampler telah diganti namanya dengan awalan "D3DSAMP_" untuk mengaktifkan deteksi kesalahan waktu kompilasi saat porting dari DirectX 8.
Tabel berikut ini mencakup semua status sampler yang menyiapkan status vertex:
| Keadaan Sampler | Nilai Bawaan |
|---|---|
| D3DSAMP_DMAPOFFSET | 256 |
Jalur Vertex: Status Tekstur
Status tekstur mengontrol operasi perpaduan tekstur dari blender multi-tekstur. Gunakan IDirect3DDevice9::SetTextureStageState untuk menyiapkan status tekstur. Gunakan IDirect3DDevice9::SetTexture untuk mengaitkan tekstur dengan tahap sampler.
Tabel berikut ini menyertakan semua status tekstur yang menyiapkan status puncak:
| Status Tekstur | Nilai Bawaan |
|---|---|
| D3DTSS_TEXCOORDINDEX | 0 |
| D3DTSS_TEXTURETRANSFORMFLAGS | D3DTTFF_DISABLE |
D3DTSS_TEXCOORDINDEX adalah status pemrosesan verteks fungsi tetap. Jika shader vertex yang dapat diprogram digunakan, status ini diabaikan.
Topik terkait