Share via


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

Assembly des Shadermodells 4 (DirectX HLSL)