estructura D3D10_RASTERIZER_DESC (d3d10.h)
Describe el estado del rasterizador.
Sintaxis
typedef struct D3D10_RASTERIZER_DESC {
D3D10_FILL_MODE FillMode;
D3D10_CULL_MODE CullMode;
BOOL FrontCounterClockwise;
INT DepthBias;
FLOAT DepthBiasClamp;
FLOAT SlopeScaledDepthBias;
BOOL DepthClipEnable;
BOOL ScissorEnable;
BOOL MultisampleEnable;
BOOL AntialiasedLineEnable;
} D3D10_RASTERIZER_DESC;
Miembros
FillMode
Tipo: D3D10_FILL_MODE
Miembro del tipo enumerado D3D10_FILL_MODE que determina el modo de relleno que se va a usar al representar. El valor predeterminado es D3D10_FILL_SOLID.
CullMode
Tipo: D3D10_CULL_MODE
Miembro del tipo enumerado D3D10_CULL_MODE que indica si se dibujan triángulos que se enfrentan a la dirección especificada. El valor predeterminado es D3D10_CULL_BACK.
FrontCounterClockwise
Tipo: BOOL
Determina si un triángulo está orientado hacia delante o hacia atrás. Si este parámetro es TRUE, se considera 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 este parámetro es FALSE, lo contrario es true. El valor predeterminado es FALSE.
DepthBias
Tipo: INT
Especifica el valor de profundidad agregado a un píxel determinado. El valor predeterminado es 0. Para obtener información sobre el sesgo de profundidad, consulta Sesgo de profundidad.
DepthBiasClamp
Tipo: FLOAT
Especifica el sesgo de profundidad máximo de un píxel. El valor predeterminado es 0,0f. Para obtener información sobre el sesgo de profundidad, consulta Sesgo de profundidad.
SlopeScaledDepthBias
Tipo: FLOAT
Especifica un escalar en la pendiente de un píxel determinado. El valor predeterminado es 0,0f. Para obtener información sobre el sesgo de profundidad, consulta Sesgo de profundidad.
DepthClipEnable
Tipo: BOOL
Habilita o deshabilita el recorte en función de la distancia. El valor predeterminado es TRUE.
El hardware siempre realiza el recorte x e y de coordenadas rasterizadas. Cuando DepthClipEnable se establece en el valor predeterminado, el hardware también recorta el valor z (es decir, el hardware realiza el último paso del siguiente algoritmo).
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
Habilite o deshabilite la selección de tijeras o rectángulos. Se seleccionan todos los píxeles fuera de un rectángulo de tijera activo. El valor predeterminado es FALSE. Para obtener más información, vea Establecer el rectángulo scissor.
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. El valor predeterminado es FALSE. 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 cuando la combinación alfa está habilitada, está dibujando líneas y el miembro MultisampleEnable es FALSE. El valor predeterminado es FALSE. Para obtener más información sobre este miembro, consulta Comentarios.
Comentarios
El estado del rasterizador define el comportamiento de la fase de rasterizador. Para crear un objeto rasterizer-state, llame a ID3D10Device::CreateRasterizerState. Para establecer el estado del rasterizador, llame a ID3D10Device::RSSetState.
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 los destinos de representación de antialiasing multisample (MSAA) (es decir, los destinos de representación con recuentos de muestras mayores que 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 le importa que las líneas se representen como cuadrilaterales, se recomienda establecer siempre MultisampleEnable en TRUE siempre que se represente en destinos de representación de MSAA.
Requisitos
Encabezado | d3d10.h |