Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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:
- Wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT festgelegt ist, werden Steckplätze = 2; andernfalls Slots = 1.
- Wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT festgelegt ist und die Textur eine Würfelzuordnung ist, stellen = 4; andernfalls Steckplatz = 1.
- Wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT festgelegt ist, werden Steckplätze = 6; andernfalls Slots = 1.
- Wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT nicht festgelegt ist, werden Steckplätze = 1; sonst:
- wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT festgelegt ist und die Textur eine Cubezuordnung ist, stellen = 4.
- wenn D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT festgelegt ist und die Textur keine Würfelzuordnung ist, stellen = 3.
Verwandte Themen