ID3D12GraphicsCommandList5::RSSetShadingRate-Methode (d3d12.h)
Legt die Basisschattierungsrate und Kombinatoren für die Schattierung mit variabler Rate (VRS) fest. Weitere Informationen finden Sie unter Schattierung mit variabler Rate (VRS).
Syntax
void RSSetShadingRate(
D3D12_SHADING_RATE baseShadingRate,
const D3D12_SHADING_RATE_COMBINER *combiners
);
Parameter
baseShadingRate
Typ: D3D12_SHADING_RATE
Eine Konstante aus der D3D12_SHADING_RATE-Enumeration , die die festzulegende Basisschattierungsrate beschreibt.
combiners
Typ: const D3D12_SHADING_RATE_COMBINER*
Ein optionaler Zeiger auf ein konstantes Array von D3D12_SHADING_RATE_COMBINER , die die festzulegenden Schattierungsratenkombiner enthalten. Die Anzahl der D3D12_SHADING_RATE_COMBINER Elemente im Array muss gleich der konstanten D3D12_RS_SET_SHADING_RATE_COMBINER_COUNT sein, die gleich 2 ist.
Da die bildbasierte VRS pro Grundtyp und Bildschirmraum in Tier1-Schattierung mit variabler Rate (VRS) nicht unterstützt wird, benötigt der Adapter Unterstützung von Tier2 VRS, damit diese Werte aussagekräftig sind. Weitere Informationen finden Sie unter D3D12_FEATURE_DATA_D3D12_OPTIONS6 und D3D12_VARIABLE_SHADING_RATE_TIER.
Ein NULL-Zeiger entspricht den Standardmäßigen Schattierungskombinatoren, die beide D3D12_SHADING_RATE_COMBINER_PASSTHROUGH sind.
Der Algorithmus für die endgültige Schattierungsrate wird durch Folgendes bestimmt.
postRasterizerRate = ApplyCombiner(Combiners[0], CommandListShadingRate, Primitive->PrimitiveSpecifiedShadingRate);
finalRate = ApplyCombiner(Combiners[1], postRasterizerRate, ScreenSpaceImage[xy]);
wobei ist,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;
}
}
Rückgabewert
Keine
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10 Build 20348 |
Unterstützte Mindestversion (Server) | Windows 10 Build 20348 |
Kopfzeile | d3d12.h |