Metodo ID3D12GraphicsCommandList5::RSSetShadingRate (d3d12.h)
Imposta la frequenza di ombreggiatura di base e i combinatori per l'ombreggiatura a velocità variabile (VRS). Per altre informazioni, vedere Ombreggiatura a frequenza variabile (VRS).
Sintassi
void RSSetShadingRate(
D3D12_SHADING_RATE baseShadingRate,
const D3D12_SHADING_RATE_COMBINER *combiners
);
Parametri
baseShadingRate
Tipo: D3D12_SHADING_RATE
Costante dell'enumerazione D3D12_SHADING_RATE che descrive la frequenza di ombreggiatura di base da impostare.
combiners
Tipo: const D3D12_SHADING_RATE_COMBINER*
Puntatore facoltativo a una matrice costante di D3D12_SHADING_RATE_COMBINER contenente i combinatori di frequenza di ombreggiatura da impostare. Il numero di elementi D3D12_SHADING_RATE_COMBINER nella matrice deve essere uguale alla costante D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT, uguale a 2.
Poiché vrs basato su immagini basate su immagini primitive e dello spazio dello schermo non è supportato in Livelli1 Ombreggiatura a frequenza variabile (VRS), per questi valori deve essere significativo, l'adattatore richiede il supporto VRS di Livello2. Vedere D3D12_FEATURE_DATA_D3D12_OPTIONS6 e D3D12_VARIABLE_SHADING_RATE_TIER.
Un puntatore NULL equivale ai combinatori di ombreggiatura predefiniti, che sono entrambi D3D12_SHADING_RATE_COMBINER_PASSTHROUGH.
L'algoritmo per la velocità di ombreggiatura finale è determinato dal seguente.
postRasterizerRate = ApplyCombiner(Combiners[0], CommandListShadingRate, Primitive->PrimitiveSpecifiedShadingRate);
finalRate = ApplyCombiner(Combiners[1], postRasterizerRate, ScreenSpaceImage[xy]);
dove 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;
}
}
Valore restituito
nessuno
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 Build 20348 |
Server minimo supportato | Windows 10 Build 20348 |
Intestazione | d3d12.h |