Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Um bloco de estado pode ser usado para capturar apenas o estado de vértice (consulte State Blocks Save and Restore State (Direct3D 9)). O seguinte estado é o estado do vértice:
- Estado de renderização do vértice (consulte Vertex Pipeline: Render State).
- Estado do amostrador de vértice (ver Vertex Pipeline: Sampler State).
- Estado de textura do vértice (consulte Vertex Pipeline: Texture State).
- O modo NPatch segmenta de IDirect3DDevice9::SetNPatchMode.
- Cada luz de IDirect3DDevice9::SetLight, bem como se a luz está ou não habilitada com IDirect3DDevice9::LightEnable.
- O sombreador de vértice atual e cada uma das constantes de sombreador de vértice.
- Para cada fluxo de vértice, armazene o valor do divisor de IDirect3DDevice9::SetStreamSourceFreq.
- A declaração de vértice atual.
Para capturar o estado de vértice com um bloco de estado, especifique D3DSBT_VERTEXSTATE ao chamar IDirect3DDevice9::CreateStateBlock.
Vertex Pipeline: Estado de renderização
Os estados de renderização do dispositivo afetam o comportamento de quase todas as partes do pipeline. Os estados de renderização são definidos chamando IDirect3DDevice9::SetRenderState.
A tabela a seguir inclui todos os estados de renderização que configuram o estado do vértice:
Estados de renderização | Valor padrão |
---|---|
D3DRS_CULLMODE | D3DCULL_CCW |
D3DRS_FOGCOLOR | 0 |
D3DRS_FOGTABLEMODE | D3DFOG_NONE |
D3DRS_FOGSTART | 0 |
D3DRS_FOGEND | 1 |
D3DRS_FOGDENSITY | 1 |
D3DRS_RANGEFOGENABLE | FALSO |
D3DRS_AMBIENT | 0 |
D3DRS_COLORVERTEX | VERDADEIRO |
D3DRS_FOGVERTEXMODE | D3DFOG_NONE |
D3DRS_CLIPPING | VERDADEIRO |
D3DRS_LIGHTING (iluminação) | VERDADEIRO |
D3DRS_LOCALVIEWER | VERDADEIRO |
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 | Dependente do condutor |
D3DRS_POINTSIZE_MIN | 1 |
D3DRS_POINTSPRITEENABLE | FALSO |
D3DRS_POINTSCALEENABLE | FALSO |
D3DRS_POINTSCALE_A | 1 |
D3DRS_POINTSCALE_B | 0 |
D3DRS_POINTSCALE_C | 0 |
D3DRS_MULTISAMPLEANTIALIAS | VERDADEIRO |
D3DRS_MULTISAMPLEMASK | 0xffffffff |
D3DRS_PATCHEDGESTYLE | D3DPATCHEDGE_DISCRETE |
D3DRS_POINTSIZE_MAX | 1 |
D3DRS_INDEXEDVERTEXBLENDENABLE | FALSO |
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"/> | FALSO |
Vertex Pipeline: Estado do amostrador
Os estados do amostrador controlam tópicos relacionados à amostragem, como filtragem, mosaico e modos de endereço de coordenadas de textura. Use IDirect3DDevice9::SetSamplerState para configurar o estado do amostrador (incluindo o usado na unidade tessellator para amostrar mapas de deslocamento). Os estados do amostrador foram renomeados com um prefixo "D3DSAMP_" para permitir a deteção de erros em tempo de compilação ao portar do DirectX 8.
A tabela a seguir inclui todos os estados do amostrador que configuram o estado do vértice:
Estados de Amostragem | Valor padrão |
---|---|
D3DSAMP_DMAPOFFSET | 256 |
Vertex Pipeline: Estado de textura
Os estados de textura controlam as operações de mistura de textura do misturador multitextura. Use IDirect3DDevice9::SetTextureStageState para configurar estados de textura. Use IDirect3DDevice9::SetTexture para associar uma textura a uma etapa do amostrador.
A tabela a seguir inclui todos os estados de textura que configuram o estado do vértice:
Estados de textura | Valor padrão |
---|---|
D3DTSS_TEXCOORDINDEX | 0 |
D3DTSS_TEXTURETRANSFORMFLAGS | D3DTTFF_DISABLE |
D3DTSS_TEXCOORDINDEX é um estado de processamento de vértice de função fixa. Se um sombreador de vértice programável for usado, esse estado será ignorado.
Tópicos relacionados