Partilhar via


Interfaces de sistema de efeito (Direct3D 11)

O sistema de efeitos define várias interfaces para gerenciar o estado do efeito. Existem dois tipos de interfaces: aquelas usadas pelo tempo de execução para renderizar um efeito e interfaces de reflexão para obter e definir variáveis de efeito.

  • Interfaces de tempo de execução do Effect
  • Interfaces de reflexão de efeito

Interfaces de tempo de execução do Effect

Use interfaces de tempo de execução para renderizar um efeito.

Interfaces de tempo de execução Descrição
ID3DX11Effect Coleção de um ou mais grupos e técnicas de renderização.
ID3DX11EffectPass Uma coleção de atribuições do 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 efeitos para suportar o estado de efeito de leitura (e escrita). 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 mistura.
ID3DX11EffectDepthStencilVariable Obtenha e defina o estado do estêncil de profundidade.
ID3DX11EffectRasterizerVariable Obter e definir o estado do rasterizador.
ID3DX11EffectSamplerVariable Obter e definir o estado do amostrador.

 

Definindo recursos de efeito

Use essas interfaces para obter e definir recursos.

Interfaces de reflexão Descrição
ID3DX11EffectConstantBuffer Acesse dados em um buffer de textura ou buffer constante.
ID3DX11EffectDepthStencilViewVariable Acesse dados em um recurso de estêncil profundo.
ID3DX11EffectRenderTargetVariable Acesse dados em um destino de renderização.
ID3DX11EffectShaderResourceVariable Acessar dados em um recurso de sombreador.
ID3DX11EffectUnorderedAccessViewVariable Aceda aos dados numa vista de acesso não ordenado.

 

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 Obtenha uma instância de classe.
ID3DX11EffectInterfaceVariable Obtenha e defina uma interface.
ID3DX11EffectMatrixVariable Obtenha e defina uma matriz.
ID3DX11EffectScalarVariable Obter e definir um escalar.
ID3DX11EffectShaderVariable Obtenha uma variável de sombreador.
ID3DX11EffectStringVariable Obter e definir uma cadeia de caracteres.
ID3DX11EffectType Obtenha um tipo de variável.
ID3DX11EffectVectorVariable Obter e definir um vetor.

 

Todas as interfaces de reflexão derivam de ID3DX11EffectVariable.

Effects (Direct3D 11)

Guia de programação para Direct3D 11