Compartilhar via


Interfaces do sistema de efeito (Direct3D 11)

O sistema de efeito define várias interfaces para gerenciar o estado de efeito. Há dois tipos de interfaces: aquelas usadas pelo runtime para renderizar um efeito e interfaces de reflexão para obter e definir variáveis de efeito.

Interfaces de tempo de execução de efeito

Use interfaces de runtime para renderizar um efeito.

Runtime Interfaces Descrição
ID3DX11Effect Coleção de um ou mais grupos e técnicas para renderização.
ID3DX11EffectPass Uma coleção de atribuições de estado.
ID3DX11EffectTechnique Uma coleção de um ou mais passes.
ID3DX11EffectGroup Uma coleção de uma ou mais técnicas.

 

Interfaces de reflexão de efeito

A reflexão é implementada no sistema de efeito para dar suporte ao estado de efeito de leitura (e gravação). Há várias maneiras de acessar variáveis de efeito.

Definindo grupos de estado de efeito

Use essas interfaces para obter e definir um grupo de estado.

Interfaces de reflexão Descrição
ID3DX11EffectBlendVariable Obter e definir o estado de combinação.
ID3DX11EffectDepthStencilVariable Obter e definir o estado do estêncil de profundidade.
ID3DX11EffectRasterizerVariable Obter e definir o estado do rasterizador.
ID3DX11EffectSamplerVariable Obter e definir o estado do sampler.

 

Configurando recursos de efeito

Use essas interfaces para obter e definir recursos.

Interfaces de reflexão Descrição
ID3DX11EffectConstantBuffer Acessar dados em um buffer de textura ou buffer constante.
ID3DX11EffectDepthStencilViewVariable Acessar dados em um recurso de estêncil de profundidade.
ID3DX11EffectRenderTargetViewVariable Acessar dados em um destino de renderização.
ID3DX11EffectShaderResourceVariable Acessar dados em um recurso de sombreador.
ID3DX11EffectUnorderedAccessViewVariable Acessar dados em uma exibição de acesso não ordenada.

 

Definindo outras variáveis de efeito

Use essas interfaces para obter e definir o estado pelo tipo de variável.

Interfaces de reflexão Descrição
ID3DX11EffectClassInstanceVariable Obter uma instância de classe.
ID3DX11EffectInterfaceVariable Obter e definir uma interface.
ID3DX11EffectMatrixVariable Obter e definir uma matriz.
ID3DX11EffectScalarVariable Obter e definir um escalar.
ID3DX11EffectShaderVariable Obtenha uma variável de sombreador.
ID3DX11EffectStringVariable Obter e definir uma cadeia de caracteres.
ID3DX11EffectType Obter um tipo de variável.
ID3DX11EffectVectorVariable Obter e definir um vetor.

 

Todas as interfaces de reflexão derivam de ID3DX11EffectVariable.

Efeitos (Direct3D 11)

Guia de programação para Direct3D 11