estructura de D3D12_GRAPHICS_PIPELINE_STATE_DESC (d3d12.h)

Describe un objeto de estado de canalización de gráficos.

Sintaxis

typedef struct D3D12_GRAPHICS_PIPELINE_STATE_DESC {
  ID3D12RootSignature                *pRootSignature;
  D3D12_SHADER_BYTECODE              VS;
  D3D12_SHADER_BYTECODE              PS;
  D3D12_SHADER_BYTECODE              DS;
  D3D12_SHADER_BYTECODE              HS;
  D3D12_SHADER_BYTECODE              GS;
  D3D12_STREAM_OUTPUT_DESC           StreamOutput;
  D3D12_BLEND_DESC                   BlendState;
  UINT                               SampleMask;
  D3D12_RASTERIZER_DESC              RasterizerState;
  D3D12_DEPTH_STENCIL_DESC           DepthStencilState;
  D3D12_INPUT_LAYOUT_DESC            InputLayout;
  D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue;
  D3D12_PRIMITIVE_TOPOLOGY_TYPE      PrimitiveTopologyType;
  UINT                               NumRenderTargets;
  DXGI_FORMAT                        RTVFormats[8];
  DXGI_FORMAT                        DSVFormat;
  DXGI_SAMPLE_DESC                   SampleDesc;
  UINT                               NodeMask;
  D3D12_CACHED_PIPELINE_STATE        CachedPSO;
  D3D12_PIPELINE_STATE_FLAGS         Flags;
} D3D12_GRAPHICS_PIPELINE_STATE_DESC;

Miembros

pRootSignature

Puntero al objeto ID3D12RootSignature .

VS

Estructura D3D12_SHADER_BYTECODE que describe el sombreador de vértices.

PS

Estructura D3D12_SHADER_BYTECODE que describe el sombreador de píxeles.

DS

Estructura D3D12_SHADER_BYTECODE que describe el sombreador de dominio.

HS

Estructura D3D12_SHADER_BYTECODE que describe el sombreador de casco.

GS

Estructura D3D12_SHADER_BYTECODE que describe el sombreador de geometría.

StreamOutput

Estructura D3D12_STREAM_OUTPUT_DESC que describe un búfer de salida de streaming.

BlendState

Estructura D3D12_BLEND_DESC que describe el estado de mezcla.

SampleMask

Máscara de ejemplo para el estado de mezcla.

RasterizerState

Estructura D3D12_RASTERIZER_DESC que describe el estado del rasterizador.

DepthStencilState

Estructura D3D12_DEPTH_STENCIL_DESC que describe el estado de la galería de símbolos de profundidad.

InputLayout

Estructura D3D12_INPUT_LAYOUT_DESC que describe los datos del búfer de entrada para la fase del ensamblador de entrada.

IBStripCutValue

Especifica las propiedades del búfer de índice en una estructura de D3D12_INDEX_BUFFER_STRIP_CUT_VALUE .

PrimitiveTopologyType

Valor de tipo D3D12_PRIMITIVE_TOPOLOGY_TYPE para el tipo de primitivo y el orden de los datos primitivos.

NumRenderTargets

Número de formatos de destino de representación en el miembro RTVFormats .

RTVFormats[8]

Matriz de valores con tipo DXGI_FORMAT para los formatos de destino de representación.

DSVFormat

Valor DXGI_FORMAT con tipo para el formato de galería de símbolos de profundidad.

SampleDesc

Estructura DXGI_SAMPLE_DESC que especifica parámetros de muestreo múltiple.

NodeMask

Para una sola operación de GPU, establézcalo en cero. Si hay varios nodos de GPU, establezca bits para identificar los nodos (adaptadores físicos del dispositivo) para los que se aplicará el estado de canalización de gráficos. Cada bit de la máscara corresponde a un único nodo. Consulte Sistemas de varios adaptadores.

CachedPSO

Objeto de estado de canalización almacenado en caché, como una estructura de D3D12_CACHED_PIPELINE_STATE . pCachedBlob y CachedBlobSizeInBytes se pueden establecer en NULL y 0 respectivamente.

Flags

Constante de enumeración D3D12_PIPELINE_STATE_FLAGS como para "depuración de herramientas".

Comentarios

El método CreateGraphicsPipelineState usa esta estructura.

El tiempo de ejecución valida:

  • Si la vinculación entre las fases del sombreador es correcta.
  • Si se especifican los miembros HS y DS , el miembro PrimitiveTopologyType para el tipo de topología debe establecerse en D3D12_PRIMITIVE_TOPOLOGY_TYPE_PATCH.
  • Indica si no se permite la ejecución de frecuencia de ejemplo con el patrón de suavizado de suavizado de varios ejemplos (MSAA) central.
  • Indica si no se permiten líneas de suavizado con el patrón MSAA central.
  • Si el miembro ForcedSampleCount de D3D12_RASTERIZER_DESC que RasterizerState especifica no es cero:
    • La profundidad y la galería de símbolos deben estar deshabilitadas.
    • El sombreador de píxeles no puede generar profundidad.
    • El sombreador de píxeles no se puede ejecutar con frecuencia de ejemplo.
    • El recuento de muestras de destino de representación debe ser 1.
  • Si el estado de mezcla es compatible con los formatos de destino de representación.
  • Si el tipo de salida del sombreador de píxeles es compatible con el formato de destino de representación.
  • Indica si se admiten el recuento de muestras y la calidad para los formatos de galería de símbolos de destino/profundidad de representación.

Requisitos

   
Encabezado d3d12.h

Consulte también

Rasterización conservadora

Estructuras principales

Vistas ordenadas por el rasterizador