Método ID3D12GraphicsCommandList5::RSSetShadingRate (d3d12.h)
Define a taxa de sombreamento base e os combinadores para VRS (sombreamento de taxa variável). Para obter mais informações, consulte VRS (sombreamento de taxa variável).
Sintaxe
void RSSetShadingRate(
D3D12_SHADING_RATE baseShadingRate,
const D3D12_SHADING_RATE_COMBINER *combiners
);
Parâmetros
baseShadingRate
Tipo: D3D12_SHADING_RATE
Uma constante da enumeração D3D12_SHADING_RATE que descreve a taxa de sombreamento base a ser definida.
combiners
Tipo: const D3D12_SHADING_RATE_COMBINER*
Um ponteiro opcional para uma matriz constante de D3D12_SHADING_RATE_COMBINER que contém os combinadores de taxa de sombreamento a serem definidos. A contagem de elementos D3D12_SHADING_RATE_COMBINER na matriz deve ser igual à constante D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT, que é igual a 2.
Como o VRS baseado em imagem por primitivo e de espaço na tela não tem suporte no VRS (sombreamento de taxa variável) de Camada1, para que esses valores sejam significativos, o adaptador requer suporte a VRS de Camada 2. Confira D3D12_FEATURE_DATA_D3D12_OPTIONS6 e D3D12_VARIABLE_SHADING_RATE_TIER.
Um ponteiro NULL é equivalente aos combinadores de sombreamento padrão, que são ambos D3D12_SHADING_RATE_COMBINER_PASSTHROUGH.
O algoritmo para taxa de sombreamento final é determinado pelo seguinte.
postRasterizerRate = ApplyCombiner(Combiners[0], CommandListShadingRate, Primitive->PrimitiveSpecifiedShadingRate);
finalRate = ApplyCombiner(Combiners[1], postRasterizerRate, ScreenSpaceImage[xy]);
onde ApplyCombiner
é
UINT ApplyCombiner(D3D12_SHADING_RATE_COMBINER combiner, UINT a, UINT b)
{
MaxShadingRate = options6.AdditionalShadingRatesSupported ? 4 : 2;
switch (combiner)
{
case D3D12_SHADING_RATE_COMBINER_PASSTHROUGH: // default
return a;
case D3D12_SHADING_RATE_COMBINER_OVERRIDE:
return b;
case D3D12_SHADING_RATE_COMBINER_MAX:
return max(a, b);
case D3D12_SHADING_RATE_COMBINER_MIN:
return min(a, b);
case D3D12_SHADING_RATE_COMBINER_SUM:
return min(MaxShadingRate, a + b);
case default:
return a;
}
}
Retornar valor
Nenhum
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10 Build 20348 |
Servidor mínimo com suporte | Windows 10 Build 20348 |
Cabeçalho | d3d12.h |