Freigeben über


def – ps

Definiert Pixelshader-Gleitkommakonstanten.

Syntax

def dst, fVvalue1, fValue2, fValue3, fValue4

 

Hierbei gilt:

  • dst ist das Zielregister.
  • fValue1 bis fValue4 sind Gleitkommawerte.

Bemerkungen

Pixelshaderversionen 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
def x x x x x x x x x

 

Es gibt zwei Möglichkeiten, eine Gleitkommakonstante in einem Pixelshader festzulegen.

  1. Verwenden Sie def, um die Konstante direkt in einem Shader zu definieren.
  2. Verwenden Sie die API, um eine Konstante mit SetPixelShaderConstantF festzulegen.

def definiert eine Shaderkonstante, deren Wert jedes Mal geladen wird, wenn ein Shader auf ein Gerät festgelegt wird. Diese werden als sofortige Konstanten bezeichnet. Sofortkonstanten haben Vorrang vor konstanten, die von der API-Methode festgelegt werden.

  • Muss vor der ersten Arithmetik- oder Adressierungsanweisung im Shader angezeigt werden.
  • Kann mit dcl-Anweisungen (sm2, sm3 - ps asm) gemischt werden (dies sind die anderen Anweisungstypen, die sich am Anfang eines Shaders befinden).
  • dst register muss ein konstantes Register sein.
  • Schreibmaske muss voll sein (Standard).
  • Wenn ein Konstantenregister mehrmals in einem Shader definiert wird, wird das letzte beibehalten.

Pixelshaderanweisungen