ps _ 2 _ x

Ein programmierbarer Pixelshader besteht aus einer Reihe von Anweisungen, die mit Pixeldaten arbeiten. Registriert Datenübertragungen in und aus der ALU. Es kann ein zusätzliches Steuerelement angewendet werden, um die Anweisung, die Ergebnisse oder die geschriebenen Daten zu ändern.

Dynamisches Flow-Steuerelement

DynamicFlowControlDepth stellt die Schachtelungstiefe dynamischer Ablaufsteuerungsanweisungen dar: , wenn , wenn _ comp, wenn vor _ , break - ps, und break comp - _ ps. Der Wert entspricht der Schachtelungstiefe des if _ comp-Blocks. Wenn diese Obergrenze 0 (null) ist, unterstützt das Gerät keine Anweisungen zur dynamischen Flusssteuerung.

Anzahl temporärer Register

Die Anzahl der vom Gerät unterstützten temporären Register. Der Bereich liegt zwischen 12 und 32.

Schachtelungstiefe für statische Flow-Steuerelement

StaticFlowControlDepth stellt die Schachtelungstiefe von zwei Typen statischer Ablaufsteuerungsanweisungen dar: / Schleifenreplik und Aufruf / von callnz. Schleifenanweisungen /rep können bis zu StaticFlowControlDepth deep geschachtelt werden. Unabhängig davon können Aufrufanweisungen von /callnz bis zu StaticFlowControlDepth deep geschachtelt werden.

Anzahl der Anweisungsslots

Die Anzahl der Anweisungsslots kann zwischen 96 und maximal 512 liegen und wird von MaxPixelShaderInstructionSlotsangegeben. Die Gesamtzahl der Anweisungen, die ausgeführt werden können, wird von MaxPixelShaderInstructionsExecuted definiert. Dies kann aufgrund von Schleifen- und Unterroutinenaufrufen größer als die Anzahl der Anweisungsslots sein.

Beliebiger Swizzle

Wenn D3DD3DPSHADERCAPS2 _ 0 _ ARBITRARYSWIZZLE festgelegt ist, wird beliebige Swizzle unterstützt. Weitere Informationen finden Sie unter Source Register Swizzling.

Farbverlaufsanweisungen

Wenn D3DD3DPSHADERCAPS2 _ 0 _ GRADIENTINSTRUCTIONS festgelegt ist, werden Farbverlaufsanweisungen unterstützt. Siehe dsx – ps, dsy – psund texldd – ps.

Prädikation

Wenn D3DD3DPSHADERCAPS2 _ 0 _ PREDICATION festgelegt ist, wird die Anweisungsprädikation unterstützt. Weitere Informationen finden Sie unter Prädikatregister.

Abhängiger Lesegrenzwert

Wenn D3DD3DPSHADERCAPS2 _ 0 _ NODEPENDENTREADLIMIT festgelegt ist, gibt es keine abhängigen Leselimits.

Grenzwert für Texturanweisung

Wenn D3DD3DPSHADERCAPS2 _ 0 _ NOTEXINSTRUCTIONLIMIT festgelegt ist, gibt es keine Beschränkung für Texturanweisungen.

Sampleranzahl

Die Anzahl der verfügbaren Textur-Sampler beträgt 16.

Pixelshader