estructura de D3D11_RASTERIZER_DESC1 (d3d11_1.h)
typedef struct D3D11_RASTERIZER_DESC1 {
D3D11_FILL_MODE FillMode;
D3D11_CULL_MODE CullMode;
BOOL FrontCounterClockwise;
INT DepthBias;
FLOAT DepthBiasClamp;
FLOAT SlopeScaledDepthBias;
BOOL DepthClipEnable;
BOOL ScissorEnable;
BOOL MultisampleEnable;
BOOL AntialiasedLineEnable;
UINT ForcedSampleCount;
} D3D11_RASTERIZER_DESC1;
FillMode
Tipo: D3D11_FILL_MODE
Determina el modo de relleno que se va a usar al representar.
CullMode
Tipo: D3D11_CULL_MODE
Indica que los triángulos que se enfrentan a la dirección especificada no se dibujan.
FrontCounterClockwise
Tipo: BOOL
Especifica si un triángulo está orientado hacia delante o hacia atrás. Si es TRUE, se considerará un triángulo frontal si sus vértices están en sentido contrario al reloj en el destino de representación y se consideran hacia atrás si están en el sentido de las agujas del reloj. Si es FALSE, lo contrario es true.
DepthBias
Tipo: INT
Valor de profundidad agregado a un píxel determinado. Para obtener información sobre el sesgo de profundidad, consulta Sesgo de profundidad.
DepthBiasClamp
Tipo: FLOAT
Sesgo máximo de profundidad de un píxel. Para obtener información sobre el sesgo de profundidad, consulta Sesgo de profundidad.
SlopeScaledDepthBias
Tipo: FLOAT
Escalar en la pendiente de un píxel determinado. Para obtener información sobre el sesgo de profundidad, consulta Sesgo de profundidad.
DepthClipEnable
Tipo: BOOL
Especifica si se va a habilitar el recorte en función de la distancia.
El hardware siempre realiza el recorte x e y de coordenadas rasterizadas. Cuando DepthClipEnable se establece en default–TRUE, el hardware también recorta el valor z (es decir, el hardware realiza el último paso del algoritmo siguiente).
0 < w
-w <= x <= w (or arbitrarily wider range if implementation uses a guard band to reduce clipping burden)
-w <= y <= w (or arbitrarily wider range if implementation uses a guard band to reduce clipping burden)
0 <= z <= w
Al establecer DepthClipEnable en FALSE, el hardware omite el recorte z (es decir, el último paso del algoritmo anterior). Sin embargo, el hardware sigue realizando el recorte "0 < w". Cuando el recorte z está deshabilitado, el orden de profundidad incorrecto en el nivel de píxel puede dar lugar. Sin embargo, cuando el recorte z está deshabilitado, se simplifican las implementaciones de sombras de galería de símbolos. En otras palabras, puede evitar un control complejo de mayúsculas y minúsculas especiales para la geometría que va más allá del plano de recorte de retroceso.
ScissorEnable
Tipo: BOOL
Especifica si se va a habilitar la selección de tijeras o rectángulos. Se seleccionan todos los píxeles fuera de un rectángulo de tijera activo.
MultisampleEnable
Tipo: BOOL
Especifica si se deben usar los destinos de representación de antialiasing de varias líneas (MSAA) para usar el algoritmo de suavizado de líneas alfa o cuadrilaterales. Se establece en TRUE para usar el algoritmo de suavizado de contorno de línea cuadrilaterales y en FALSE para usar el algoritmo de suavizado de contorno de línea alfa. Para obtener más información sobre este miembro, consulta Comentarios.
AntialiasedLineEnable
Tipo: BOOL
Especifica si se va a habilitar el suavizado de contornos de línea; solo se aplica si realizar dibujo de líneas y MultisampleEnable es FALSE. Para obtener más información sobre este miembro, consulta Comentarios.
ForcedSampleCount
Tipo: UINT
Recuento de muestras que se fuerza mientras se representa UAV o rasteriza. Los valores válidos son 0, 1, 2, 4, 8 y, opcionalmente, 16. 0 indica que el recuento de muestras no se fuerza.
- No enlace vistas de galería de símbolos de profundidad.
- Deshabilite las pruebas de profundidad.
- Asegúrese de que el sombreador no genera profundidad.
- Si tiene vistas de destino de representación enlazadas (D3D11_BIND_RENDER_TARGET) y ForcedSampleCount es mayor que 1, asegúrese de que cada destino de representación tenga solo un ejemplo.
- No opere el sombreador con frecuencia de muestra. Por lo tanto, ID3D11ShaderReflection::IsSampleFrequencyShader devuelve FALSE.
El estado del rasterizador define el comportamiento de la fase de rasterizador. Para crear un objeto rasterizer-state, llame a ID3D11Device1::CreateRasterizerState1. Para establecer el estado del rasterizador, llame a ID3D11DeviceContext::RSSetState.
Si no especifica algún estado de rasterizador, el tiempo de ejecución de Direct3D usa los siguientes valores predeterminados para el estado de rasterizador.
State | Valor predeterminado |
---|---|
FillMode | Sólido |
CullMode | Atrás |
FrontCounterClockwise | FALSE |
DepthBias | 0 |
SlopeScaledDepthBias | 0.0f |
DepthBiasClamp | 0.0f |
DepthClipEnable | TRUE |
ScissorEnable | FALSE |
MultisampleEnable | FALSE |
AntialiasedLineEnable | FALSE |
ForcedSampleCount | 0 |
Algoritmo de representación de línea | MultisampleEnable | AntialiasedLineEnable |
---|---|---|
Alias | FALSE | FALSE |
Antialiased alfa | FALSE | TRUE |
Cuadrilátero | TRUE | FALSE |
Cuadrilátero | TRUE | TRUE |
La configuración de los miembros MultisampleEnable y AntialiasedLineEnable solo se aplica a destinos de representación de suavizado multiample (MSAA) (es decir, destinos de representación con recuentos de muestras superiores a 1). Debido a las diferencias en el comportamiento de nivel de característica y siempre y cuando no realice ningún dibujo de línea o no tenga en cuenta que las líneas se representan como cuadrilaterales, se recomienda establecer siempre MultisampleEnable en TRUE siempre que se represente en destinos de representación de MSAA.
Cliente mínimo compatible | Windows 8 y Platform Update para Windows 7 [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2012 y actualización de plataforma para Windows Server 2008 R2 [aplicaciones de escritorio | Aplicaciones para UWP] |
Encabezado | d3d11_1.h |