Freigeben über


sample_d (sm4 - asm)

Beispieldaten aus dem angegebenen Element/der angegebenen Textur mithilfe der angegebenen Adresse und des vom angegebenen Sampler identifizierten Filtermodus.

sample_d[_aoffimmi(u,v,w)] dest[.mask], srcAddress[.swizzle], srcResource[.swizzle], srcSampler, srcXDerivatives[.swizzle], srcYDerivatives[.swizzle]
Gegenstand BESCHREIBUNG
dest
[in] Die Adresse der Ergebnisse des Vorgangs.
srcAddress
[in] Eine Reihe 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.

Bemerkungen

Diese Anweisung verhält sich wie die Beispielanweisung , mit der Ausnahme, dass Ableitungen für die Quelladresse in der x-Richtung und die y-Richtung durch zusätzliche Parameter, srcXDerivatives bzw. srcYDerivatives bereitgestellt werden. Diese Ableitungen befinden sich im normalisierten Texturkoordinatenbereich.

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 srcYDerivatives (POS-swizzle) liefern du/dy, dv/dy und dw/dy. Die Komponente "a" (POS-Swizzle) wird ignoriert.

Im Gegensatz zu der Beispielanweisung , die eine einzelne LOD-Berechnung über einen 2x2-Stempel freigeben darf, muss sample_d LOD vollständig unabhängig pro Pixel berechnen, wenn sie im Pixelshader verwendet wird.

Wenn die abgeleiteten Eingaben für sample_d aus abgeleiteten Berechnungsanweisungen im Pixelshader stammen und die Werte INF/NaN enthalten, entspricht das Verhalten von sample_d möglicherweise nicht der Beispielanweisung , die implizit die Abgeleitete berechnet. Die INF/NaN-Werte können sich auf die LOD-Berechnung unterschiedlich auswirken.

Das Abrufen von einem Eingabeplatz, der nichts an ihn gebunden hat, gibt 0 für alle Komponenten zurück.

Einschränkungen

  • sample_d erbt die gleichen Einschränkungen wie die Beispielanweisung sowie eine zusätzliche Einschränkung unten 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:

Vertex-Shader Geometrie-Shader Pixel-Shader
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
Shader Model 3 (DirectX HLSL) nein
Shadermodell 2 (DirectX HLSL) nein
Shadermodell 1 (DirectX HLSL) nein

Shadermodell 4-Assembly (DirectX HLSL)