Freigeben über


ps_2_x Anweisungen

Dieser Abschnitt enthält Referenzinformationen für die Pixelshaderversion 2_x Anweisungen.

Es gibt mehrere Arten von Pixelshaderanweisungen, wie in der Tabelle dargestellt. Spalten rechts bedeuten Folgendes:

  • Anweisungsplätze – Anzahl der von den einzelnen Anweisungen verwendeten Anweisungsplätze.
  • Setup – Ein Pixelshader muss über eine Versionsanweisung verfügen und muss die erste Anweisung sein.
  • Arithmetisch : Diese Anweisungen stellen die mathematischen Vorgänge in einem Shader bereit.
  • Textur – Diese Anweisungen werden zum Laden und Beispiel von Texturdaten und zum Ändern von Texturkoordinaten verwendet.
  • Ablaufsteuerung – Diese Anweisungen stellen statische und dynamische Flusssteuerung für die Ausführung von Anweisungen bereit.
  • Neu – Diese Anweisungen sind neu in dieser Version.

Befehlssatz

Name Beschreibung Anweisungsplätze Einrichtung Arithmetik Textur Flusskontrolle Neu
abs - ps Absolutwert 1 x
hinzufügen - ps Hinzufügen von zwei Vektoren 1 x
Pause - ps Ausbrechen eines Rep... Endrep-Block 1 x x
break_comp - ps Bedingt aus einer Rep herausbrechen... Endrep-Block mit einem Vergleich 3 x x
Breakp - ps Ausbrechen eines Rep... Endrep-Block basierend auf einem Prädikat 3 x x
Anruf - ps Aufrufen einer Unterroutine 2 x x
callnz bool - ps Aufrufen einer Unterroutine, wenn ein boolesches Register nicht null ist 3 x x
callnz pred - ps Aufrufen einer Unterroutine, wenn ein Prädikatregister nicht null ist 3 x x
cmp - ps Quelle mit 0 vergleichen 1 x
crs - ps Vektorprodukt 2 x
dcl_samplerType (sm2, sm3 - ps asm) Deklarieren der Texturdimension für einen Sampler 0 x
dcl - (sm2, sm3 - ps asm) Deklarieren Sie die Zuordnung zwischen vertex-Shaderausgaberegistern und Pixelshadereingaberegistern. 0 x
def - ps Definieren von Konstanten 0 x
defb - ps Definieren einer booleschen Konstante 0 x x
Defi - ps Definieren einer ganzzahligen Konstante 0 x x
dp2add - ps 2D-Punktprodukt und Hinzufügen 2 x
dp3 - ps 3D-Punktprodukt 1 x
dp4 - ps 4D-Punktprodukt 1 x
dsx - ps Änderungsrate in x-Richtung 2 x x
dsy - ps Rate der Änderung in richtung y 2 x x
sonst - ps Beginnen eines anderen Blocks 1 x x
Endif - ps Beenden sie ein, wenn... else block 1 x x
Endrep - ps Ende eines Wiederholungsblocks 2 x x
exp - ps Volle Genauigkeit 2x 1 x
frc - ps Bruchkomponente 1 x
wenn bool - ps Beginnen eines If-Blocks 3 x x
if_comp - ps Beginnen eines If-Blocks mit einem Vergleich 3 x x
, falls vorhanden - ps Beginnen eines If-Blocks mit Prädication 3 x x
Etikett - ps Etikett 0 x x
Protokoll - ps Protokoll mit voller Genauigkeit(x) 1 x
lrp - ps Lineares Interpolat 2 x
m3x2 - ps 3x2 multiplizieren 2 x
m3x3 - ps 3x3 multiplizieren 3 x
m3x4 - ps 3x4 multiplizieren 4 x
m4x3 - ps 4x3 multiplizieren 3 x
m4x4 - ps 4x4 multiplizieren 4 x
verrückt - ps Multiplizieren und Hinzufügen 1 x
max - ps Maximum 1 x
min - ps Minimum 1 x
mov - ps Bewegen 1 x
mul - ps Multiplizieren 1 x
nop - ps Kein Vorgang 1 x
nrm - ps Normalisieren 3 x
Pow - ps xy 3 x
ps Version 0 x
rcp - ps Gegenseitig 1 x
Rep - ps Wiederholen 3 x x
Ret - ps Ende einer Unterroutine 1 x x
rsq - ps Reziprozien quadratische Wurzel 1 x
setp_comp Festlegen des Prädikatregisters 1 x x
sincos - ps Sinus und Kosinus 8 x
Sub - ps Subtrahieren 1 x
texkill - ps Rendern von Pixeln Siehe Hinweis 1 x
Texld - ps_2_0 und auf Beispiel für eine Textur Siehe Hinweis 2 x
texldb - ps Textursampling mit Abweichung der Detailebene von der w-Komponente Siehe Hinweis 3 x
texldd - ps Textursampling mit vom Benutzer bereitgestellten Farbverläufen 3 x x
texldp - ps Textursampling mit projektivem Dividieren durch w-Komponente Siehe Hinweis 4 x

 

Notizen:

  1. Wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT festgelegt ist, werden Steckplätze = 2; andernfalls Slots = 1.
  2. Wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT festgelegt ist und die Textur eine Würfelzuordnung ist, stellen = 4; andernfalls Steckplatz = 1.
  3. Wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT festgelegt ist, werden Steckplätze = 6; andernfalls Slots = 1.
  4. Wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT nicht festgelegt ist, werden Steckplätze = 1; sonst:

-Pixelshaderanweisungen