estructura de D3D11_TRACE_STATS (d3d11shadertracing.h)
Especifica estadísticas sobre un seguimiento.
Sintaxis
typedef struct D3D11_TRACE_STATS {
D3D11_SHADER_TRACE_DESC TraceDesc;
UINT8 NumInvocationsInStamp;
UINT8 TargetStampIndex;
UINT NumTraceSteps;
D3D11_TRACE_COMPONENT_MASK InputMask[32];
D3D11_TRACE_COMPONENT_MASK OutputMask[32];
UINT16 NumTemps;
UINT16 MaxIndexableTempIndex;
UINT16 IndexableTempSize[4096];
UINT16 ImmediateConstantBufferSize;
UINT PixelPosition[4][2];
UINT64 PixelCoverageMask[4];
UINT64 PixelDiscardedMask[4];
UINT64 PixelCoverageMaskAfterShader[4];
UINT64 PixelCoverageMaskAfterA2CSampleMask[4];
UINT64 PixelCoverageMaskAfterA2CSampleMaskDepth[4];
UINT64 PixelCoverageMaskAfterA2CSampleMaskDepthStencil[4];
BOOL PSOutputsDepth;
BOOL PSOutputsMask;
D3D11_TRACE_GS_INPUT_PRIMITIVE GSInputPrimitive;
BOOL GSInputsPrimitiveID;
D3D11_TRACE_COMPONENT_MASK HSOutputPatchConstantMask[32];
D3D11_TRACE_COMPONENT_MASK DSInputPatchConstantMask[32];
} D3D11_TRACE_STATS;
Miembros
TraceDesc
Estructura D3D11_SHADER_TRACE_DESC que describe el objeto de seguimiento del sombreador para el que esta estructura especifica estadísticas.
NumInvocationsInStamp
Número de llamadas en la marca para el seguimiento. Este valor siempre es 1 para sombreadores de vértices, sombreadores de casco, sombreadores de dominio, sombreadores de geometría y sombreadores de proceso. Este valor es 4 para sombreadores de píxeles.
TargetStampIndex
Índice de la marca de destino. Este valor siempre es 0 para sombreadores de vértices, sombreadores de casco, sombreadores de dominio, sombreadores de geometría y sombreadores de proceso. Sin embargo, en el caso de los sombreadores de píxeles, este valor indica cuál de los cuatro píxeles de la marca es el destino del seguimiento. Puede examinar los seguimientos de otros píxeles del sello para determinar cómo se produjeron los cálculos derivados. Puede realizar esta determinación correlacionando los registros entre seguimientos.
NumTraceSteps
Número total de pasos para el seguimiento. Este número es el mismo para todas las llamadas de stamp.
InputMask[32]
Máscara de seguimiento de componentes para cada registro de entrada de v#. Para obtener información sobre D3D11_TRACE_COMPONENT_MASK, consulte D3D11_TRACE_VALUE.
En el caso de los sombreadores de vértices, sombreadores de geometría, sombreadores de píxeles, sombreadores de casco y sombreadores de dominio, el intervalo válido es [0..31]. En el caso de los sombreadores de proceso, este miembro no es aplicable. Además, las entradas para sombreadores de geometría están indizada en 2D. Por ejemplo, considere v[vtex][attribute]. En este ejemplo, el intervalo de [atributo] es [0..31]. El eje [vértice] es el mismo tamaño para todas las entradas, que viene determinada por el miembro GSInputPrimitive .
De forma similar, las entradas para sombreador de casco y sombreador de dominio se indexan en 2D. Por ejemplo, considere v[vtex][attribute]. En este ejemplo, el intervalo de [atributo] es [0..15]. El eje [vértice] es el mismo tamaño para todas las entradas.
OutputMask[32]
Máscara de seguimiento de componentes para cada registro de salida de o#. Para obtener información sobre D3D11_TRACE_COMPONENT_MASK, consulte D3D11_TRACE_VALUE.
En el caso de los sombreadores de vértices y sombreadores de geometría, el intervalo válido es [0..31]. En el caso de los sombreadores de píxeles, el intervalo válido es [0..7]. En el caso de los sombreadores de proceso, este miembro no es aplicable. En el caso de los puntos de control de salida para sombreadores de casco, los registros se indexan en 2D. Por ejemplo, considere ocp[vértice][atributo]. En este ejemplo, el intervalo de [atributo] es [0..31]. El eje [vértice] es el mismo tamaño para todas las entradas.
NumTemps
Número de temporales, es decir, registros r# de 4 x 32 bits que se declaran.
MaxIndexableTempIndex
Índice máximo #+1 de todas las temporales indexables x#[] que se declaran. Si se declaran dispersamente (por ejemplo, x3[12] y x200[30] solo), este valor es 201 (200+1).
IndexableTempSize[4096]
Número de temporales para cada temp indizable x#[numTemps]. Solo puede tener temps hasta el valor en el miembro MaxIndexableTempIndex .
ImmediateConstantBufferSize
Número de valores de 4 x 32 bits (si los hay) que se encuentran en el búfer de constantes inmediato.
PixelPosition[4]
PixelCoverageMask[4]
PixelDiscardedMask[4]
PixelCoverageMaskAfterShader[4]
PixelCoverageMaskAfterA2CSampleMask[4]
PixelCoverageMaskAfterA2CSampleMaskDepth[4]
PixelCoverageMaskAfterA2CSampleMaskDepthStencil[4]
PSOutputsDepth
Valor que especifica si este seguimiento es para un sombreador de píxeles que genera el registro oDepth. TRUE indica que el sombreador de píxeles genera el registro oDepth; de lo contrario, FALSE.
PSOutputsMask
Valor que especifica si este seguimiento es para un sombreador de píxeles que genera el registro oMask. TRUE indica que el sombreador de píxeles genera el registro oMask; de lo contrario, FALSE.
GSInputPrimitive
Valor D3D11_TRACE_GS_INPUT_PRIMITIVE con tipo que identifica el tipo de primitivo de entrada del sombreador de geometría. Es decir, este valor identifica: {point, line, triangle, line_adj, triangle_adj} o el número de vértices: 1, 2, 3, 4 o 6 respectivamente. Por ejemplo, para una línea, input v[][#] es realmente v[2][#]. Para sombreadores de vértices y sombreadores de píxeles, establezca este miembro en D3D11_TRACE_GS_INPUT_PRIMITIVE_UNDEFINED.
GSInputsPrimitiveID
Valor que especifica si este seguimiento es para un sombreador de geometría que introduce el registro PrimitiveID. TRUE indica que el sombreador de geometría introduce el registro PrimitiveID; de lo contrario, FALSE.
HSOutputPatchConstantMask[32]
El valor de D3D11_TRACE_INPUT_PRIMITIVE_ID_REGISTER está disponible a través de una llamada al método ID3D11ShaderTrace::GetInitialRegisterContents .
DSInputPatchConstantMask[32]
Los siguientes valores están disponibles a través de una llamada al método ID3D11ShaderTrace::GetInitialRegisterContents :
Comentarios
Esta API requiere el Kit de desarrollo de software (SDK) de Windows para Windows 8.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2012 [solo aplicaciones de escritorio] |
Encabezado | d3d11shadertracing.h |