estructura D3D12_SIGNATURE_PARAMETER_DESC (d3d12shader.h)
Describe una firma de sombreador.
Sintaxis
typedef struct _D3D12_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;
} D3D12_SIGNATURE_PARAMETER_DESC;
Miembros
SemanticName
Cadena por parámetro que identifica cómo se usarán los datos. Para obtener más información, consulta Semántica.
SemanticIndex
Índice semántico que modifica la semántica. Se usa para diferenciar parámetros diferentes que usan la misma semántica.
Register
Registro que contendrá los datos de esta variable.
SystemValueType
Valor de tipo D3D_NAME que identifica una cadena predefinida que determina la funcionalidad de determinadas fases de canalización.
ComponentType
Valor de tipo D3D_REGISTER_COMPONENT_TYPE que identifica el tipo de datos por componente que se almacena en un registro. Cada registro puede almacenar hasta cuatro componentes de datos.
Mask
Máscara que indica qué componentes de un registro se usan.
ReadWriteMask
Máscara que indica si un componente determinado nunca se escribe (si la firma es una firma de salida) o siempre se lee (si la firma es una firma de entrada).
Stream
Indica qué secuencia usa el sombreador de geometría para el parámetro de firma.
MinPrecision
Valor de tipo D3D_MIN_PRECISION que indica la precisión de interpolación mínima deseada. Para obtener más información, consulta Uso de la precisión mínima de HLSL.
Comentarios
Un sombreador puede tomar n entradas y puede generar salidas m. El orden de los parámetros de entrada (o salida), sus tipos asociados y cualquier semántica adjunta constituyen la firma del sombreador. Cada sombreador tiene una entrada y una firma de salida.
Al compilar un sombreador o un efecto, algunas llamadas API validan firmas de sombreador Es decir, comparan la firma de salida de un sombreador (como un sombreador de vértices) con la firma de entrada de otro sombreador (como un sombreador de píxeles). Esto garantiza que un sombreador genera datos compatibles con un sombreador de nivel inferior que consume esos datos. Compatible significa que una firma de sombreador es un subconjunto de coincidencia exacta de la fase del sombreador anterior. Coincidencia exacta significa que los tipos de parámetros y la semántica deben coincidir exactamente. Subconjunto significa que un parámetro que no es necesario para una fase de bajada no necesita incluir ese parámetro en su firma del sombreador.
Obtenga una firma de sombreador de un sombreador o un efecto mediante una llamada a las API como ID3D12ShaderReflection::GetInputParameterDesc.
Requisitos
Requisito | Valor |
---|---|
Header | d3d12shader.h |