Compartilhar via


estrutura D3D11_SIGNATURE_PARAMETER_DESC (d3d11shader.h)

Descreve uma assinatura de sombreador.

Sintaxe

typedef struct _D3D11_SIGNATURE_PARAMETER_DESC {
  LPCSTR                      SemanticName;
  UINT                        SemanticIndex;
  UINT                        Register;
  D3D_NAME                    SystemValueType;
  D3D_REGISTER_COMPONENT_TYPE ComponentType;
  BYTE                        Mask;
  BYTE                        ReadWriteMask;
  UINT                        Stream;
  D3D_MIN_PRECISION           MinPrecision;
} D3D11_SIGNATURE_PARAMETER_DESC;

Membros

SemanticName

Tipo: LPCSTR

Uma cadeia de caracteres por parâmetro que identifica como os dados serão usados. Para obter mais informações, consulte Semântica.

SemanticIndex

Tipo: UINT

Índice semântico que modifica a semântica. Usado para diferenciar parâmetros diferentes que usam a mesma semântica.

Register

Tipo: UINT

O registro que conterá os dados dessa variável.

SystemValueType

Tipo: D3D_NAME

Um valor de tipo D3D_NAME que identifica uma cadeia de caracteres predefinida que determina a funcionalidade de determinados estágios de pipeline.

ComponentType

Tipo: D3D_REGISTER_COMPONENT_TYPE

Um valor de tipo D3D_REGISTER_COMPONENT_TYPE que identifica o tipo de dados por componente armazenado em um registro. Cada registro pode armazenar até quatro componentes de dados.

Mask

Tipo: BYTE

Máscara que indica quais componentes de um registro são usados.

ReadWriteMask

Tipo: BYTE

Máscara que indica se um determinado componente nunca foi gravado (se a assinatura for uma assinatura de saída) ou sempre lido (se a assinatura for uma assinatura de entrada).

Stream

Tipo: UINT

Indica qual fluxo o sombreador de geometria está usando para o parâmetro de assinatura.

MinPrecision

Tipo: D3D_MIN_PRECISION

Um valor de tipo D3D_MIN_PRECISION que indica a precisão mínima de interpolação desejada. Para obter mais informações, consulte Usando a precisão mínima de HLSL.

Comentários

Um sombreador pode obter n entradas e pode produzir saídas m. A ordem dos parâmetros de entrada (ou saída), seus tipos associados e qualquer semântica anexada compõem a assinatura do sombreador. Cada sombreador tem uma entrada e uma assinatura de saída.

Ao compilar um sombreador ou um efeito, algumas chamadas à API validam assinaturas de sombreador Ou seja, comparam a assinatura de saída de um sombreador (como um sombreador de vértice) com a assinatura de entrada de outro sombreador (como um sombreador de pixel). Isso garante que um sombreador gere dados compatíveis com um sombreador downstream que está consumindo esses dados. Compatível significa que uma assinatura de sombreador é um subconjunto de correspondência exata do estágio de sombreador anterior. Correspondência exata significa que os tipos de parâmetro e a semântica devem corresponder exatamente. Subconjunto significa que um parâmetro que não é exigido por um estágio downstream não precisa incluir esse parâmetro em sua assinatura de sombreador.

Obtenha uma assinatura de sombreador de um sombreador ou um efeito chamando APIs como ID3D11ShaderReflection::GetInputParameterDesc.

Requisitos

Requisito Valor
Cabeçalho d3d11shader.h

Confira também

Estruturas do sombreador