sample_d (sm4 - asm)
Stichprobendaten aus dem angegebenen Element/der angegebenen Textur mit der angegebenen Adresse und dem filterungsmodus, der vom angegebenen Sampler identifiziert wird.
sample_d[_aoffimmi(u,v,w)] dest[.mask], srcAddress[.swizzle], srcResource[.swizzle], srcSampler, srcXDerivatives[.swizzle], srcYDerivatives[.swizzle] |
---|
Element | BESCHREIBUNG |
---|---|
Dest |
[in] Die Adresse der Ergebnisse des Vorgangs. |
srcAddress |
[in] Ein Satz von Texturkoordinaten. Weitere Informationen finden Sie in der Beispielanweisung . |
srcResource |
[in] Ein Texturregister. Weitere Informationen finden Sie in der Beispielanweisung . |
srcSampler |
[in] Ein Samplerregister. Weitere Informationen finden Sie in der Beispielanweisung . |
srcXDerivatives |
[in] Die Ableitungen für die Quelladresse in x-Richtung. Weitere Informationen finden Sie im Abschnitt Hinweise. |
srcYDerivatives |
[in] Die Ableitungen für die Quelladresse in y-Richtung. Weitere Informationen finden Sie im Abschnitt Hinweise. |
Hinweise
Diese Anweisung verhält sich wie die Beispielanweisung , mit der Ausnahme, dass Ableitungen für die Quelladresse in x- und y-Richtung durch zusätzliche Parameter, srcXDerivatives bzw. srcYDerivatives, bereitgestellt werden. Diese Ableitungen befinden sich im normalisierten Texturkoordinatenraum.
Die Komponenten r, g und b von srcXDerivatives (POS-swizzle) stellen du/dx, dv/dx und dw/dx bereit. Die Komponente "a" (POS-swizzle) wird ignoriert.
Die Komponenten r, g und b von srcYDerivativen (POS-swizzle) bieten du/dy, dv/dy und dw/dy. Die Komponente "a" (POS-swizzle) wird ignoriert.
Im Gegensatz zur Beispielanweisung , bei der eine einzelne LOD-Berechnung über einen 2x2-Stempel hinweg freigegeben werden darf, müssen sample_d loD bei Verwendung im Pixel-Shader völlig unabhängig pro Pixel berechnen.
Wenn die abgeleiteten Eingaben für sample_d aus abgeleiteten Berechnungsanweisungen im Pixelshader stammen und die Werte INF/NaN enthalten, stimmt das Verhalten von sample_d möglicherweise nicht mit der Beispielanweisung überein, die implizit die Ableitung berechnet. Die INF/NaN-Werte können die LOD-Berechnung unterschiedlich beeinflussen.
Beim Abrufen aus einem Eingabeslot, an den nichts gebunden ist, wird für alle Komponenten 0 zurückgegeben.
Beschränkungen
- sample_d erbt die gleichen Einschränkungen wie die Beispielanweisung sowie eine weitere Einschränkung für die zusätzlichen Parameter.
- srcXDerivatives und srcYDerivatives müssen temp (r#/x#), constantBuffer (cb#), Eingaberegister (v#) oder sofortige Werte sein.
Diese Anweisung gilt für die folgenden Shaderphasen:
Vertexshader | Geometrie-Shader | Pixelshader |
---|---|---|
X | X | w |
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 |