max (sm4 - asm)
Komponentenbezogenes Floatmaximum.
max[_sat] dest[.mask], [-]src0[_abs][.swizzle], [-]src1[_abs][.swizzle], |
---|
Element | BESCHREIBUNG |
---|---|
Dest |
[in] Das Ergebnis des Vorgangs. Dest = src0> = src1 ? src0 : src1 |
src0 |
[in] Die Komponenten, die mit src1 verglichen werden sollen. |
src1 |
[in] Die Komponenten, die mit src0 verglichen werden sollen. |
Bemerkungen
= wird anstelle von > verwendet, wenn min(x,y) = x dann max(x,y) = y.
NaN hat eine besondere Handhabung. Wenn ein Quellopernd NaN ist, wird der andere Quellopernd zurückgegeben, und die Auswahl erfolgt pro Komponente. Wenn beide NaN sind, wird eine beliebige NaN-Darstellung zurückgegeben.
Denormale werden mit vor dem Vergleich beibehaltenen Vorzeichen geleert. Das in dest geschriebene Ergebnis kann jedoch entnormt oder nicht gespült werden.
Die folgende Tabelle zeigt die Ergebnisse, die beim Ausführen der Anweisung mit verschiedenen Zahlenklassen erhalten werden, vorausgesetzt, dass weder Überlauf noch Unterlauf auftreten. F bedeutet endliche reelle Zahl.
src0 src1-> | -Inf | F | +inf | NaN |
---|---|---|---|---|
-Inf | -inf | src1 | +inf | -inf |
F | src0 | src0 oder src1 | +inf | src0 |
+inf | +inf | +inf | +inf | +inf |
NaN | -inf | src1 | +inf | NaN |
Diese Anweisung gilt für die folgenden Shaderphasen:
Vertexshader | Geometrie-Shader | Pixelshader |
---|---|---|
x | x | x |
Minimales Shadermodell
Diese Funktion wird in den folgenden Shadermodellen unterstützt.
Shadermodell | Unterstützt |
---|---|
Shadermodell 5 | ja |
Shadermodell 4.1 | ja |
Shadermodell 4 | ja |
Shadermodell 3 (DirectX HLSL) | Nein |
Shadermodell 2 (DirectX HLSL) | Nein |
Shadermodell 1 (DirectX HLSL) | Nein |