Método ID3D11DeviceContext::OMSetBlendState (d3d11.h)
Establezca el estado de mezcla de la fase de fusión de salida.
Sintaxis
void OMSetBlendState(
[in, optional] ID3D11BlendState *pBlendState,
[in, optional] const FLOAT [4] BlendFactor,
[in] UINT SampleMask
);
Parámetros
[in, optional] pBlendState
Tipo: ID3D11BlendState*
Puntero a una interfaz de estado de mezcla (consulte ID3D11BlendState). Pase NULL para un estado de combinación predeterminado. Para obtener más información sobre el estado de mezcla predeterminado, consulta Comentarios.
[in, optional] BlendFactor
Tipo: const FLOAT[4]
Matriz de factores de mezcla, uno para cada componente RGBA. Los factores de mezcla modulan los valores del sombreador de píxeles, el destino de representación o ambos. Si ha creado el objeto blend-state con D3D11_BLEND_BLEND_FACTOR o D3D11_BLEND_INV_BLEND_FACTOR, la fase de mezcla usa la matriz que no es NULL de factores de mezcla. Si no creó el objeto blend-state con D3D11_BLEND_BLEND_FACTOR o D3D11_BLEND_INV_BLEND_FACTOR, la fase de mezcla no usa la matriz no NULL de factores de mezcla; el tiempo de ejecución almacena los factores de mezcla y, posteriormente, puede llamar a ID3D11DeviceContext::OMGetBlendState para recuperar los factores de mezcla. Si pasa NULL, el tiempo de ejecución usa o almacena un factor de mezcla igual a { 1, 1, 1, 1 }.
[in] SampleMask
Tipo: UINT
Cobertura de ejemplo de 32 bits. El valor predeterminado es 0xffffffff. Vea Notas.
Valor devuelto
None
Observaciones
La fase de fusión de salida usa el estado de mezcla para determinar cómo combinar dos valores de píxelES RGB y dos valores alfa. Los dos valores de píxelES RGB y dos valores alfa son el valor de píxel RGB y el valor alfa que el sombreador de píxeles genera y el valor de píxel RGB y el valor alfa ya en el destino de representación de salida. La opción blend controla el origen de datos que la fase de fusión usa para modular los valores del sombreador de píxeles, el destino de representación o ambos. La operación de mezcla controla cómo la fase de mezcla combina matemáticamente estos valores modulados.
Para crear una interfaz de estado de mezcla, llame a ID3D11Device::CreateBlendState.
Pasar NULL para la interfaz de estado de mezcla indica al tiempo de ejecución para establecer un estado de combinación predeterminado. En la tabla siguiente se indican los parámetros de combinación predeterminados.
State | Valor predeterminado |
---|---|
AlphaToCoverageEnable | FALSE |
IndependentBlendEnable | FALSE |
RenderTarget[0]. BlendEnable | FALSE |
RenderTarget[0]. SrcBlend | D3D11_BLEND_ONE |
RenderTarget[0]. DestBlend | D3D11_BLEND_ZERO |
RenderTarget[0]. BlendOp | D3D11_BLEND_OP_ADD |
RenderTarget[0]. SrcBlendAlpha | D3D11_BLEND_ONE |
RenderTarget[0]. DestBlendAlpha | D3D11_BLEND_ZERO |
RenderTarget[0]. BlendOpAlpha | D3D11_BLEND_OP_ADD |
RenderTarget[0]. RenderTargetWriteMask | D3D11_COLOR_WRITE_ENABLE_ALL |
Una máscara de ejemplo determina qué muestras se actualizan en todos los destinos de representación activos. La asignación de bits en una máscara de ejemplo a muestras en un destino de representación de varias muestras es responsabilidad de una aplicación individual. Siempre se aplica una máscara de ejemplo; es independiente de si el muestreo múltiple está habilitado y no depende de si una aplicación usa destinos de representación de varias muestras.
El método contendrá una referencia a las interfaces pasadas. Esto difiere del comportamiento del estado del dispositivo en Direct3D 10.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | d3d11.h |
Library | D3D11.lib |