Freigeben über


Ausdrücke (Direct3D 9)

Ausdrücke sind mathematische oder logische Anweisungen, die auf der rechten Seite eines Gleichheitszeichens verwendet werden. Es gibt viele Arten von Ausdrücken.

Ausdrücke

  1. Variablenverweis

    ( variable ) or<variable >
    
  2. Numerischer Skalar

    scalar 
    
  3. Numerischer Ausdruck

    ( numeric expression )
    

    Hier werden alle standardmäßigen numerischen HLL-Ausdrücke unterstützt.

  4. Konstruktor

    type ( constructor arguments )
    
  5. Liste der Initialisierer

    { scalar value [, scalar value ...  ] }
    
    

    Die Skalar müssen literale Skalarwerte sein.

    Die Anzahl der Initialisierer muss mit der Variablen (Status) auf der linken Seite des Gleichheitszeichens kompatibel sein.

  6. OR-Ausdruck

    token [ | token ... ]
    

    Die Token müssen mit der Variablen (Status) auf der linken Seite des Gleichheitszeichens kompatibel sein.

    Bei den Token wird die Groß-/Kleinschreibung nicht beachtet.

  7. NULL

    NULL
    

    NULL kann nur einem Shader, Sampler oder Texturobjekt zugewiesen werden.

  8. Assemblyblock

    asm { code }
    

    PS-Assemblyblöcke müssen dem PIXELSHADER-Zustand zugewiesen werden.

    VS-Assemblyblöcke müssen dem VERTEXSHADER-Zustand zugewiesen werden.

  9. Sampler-Statusblock

    sampler_state { [ state = expression ; [ state = ... ] ] }
    

    Samplerzustandsblöcke sind Sequenzen von nicht indizierten Sampler-Phasenzuständen oder Texturzuweisungen.

    Samplerzustandsblöcke müssen dem SAMPLER-Effektzustand zugewiesen werden.

  10. Block des Effektzustands

    stateblock_state { [ state [ [index] ] = expression; 
        [ state [ [index] ] = ... ] ] }
    

    Zustandsblöcke sind Sequenzen des allgemeinen Zustands. Zustandsblöcke können geschachtelt werden, aber keine Zirkelverweise enthalten.

    Zustandsblöcke müssen dem STATEBLOCK-Effektzustand zugewiesen werden.

  11. HLSL-Kompilieren

    compile target entrypoint ( [ arguments ] )
    

    Der Vertexshader vs_m_n Ziel gibt D3DVS_VERSION(m, n)-Vertexshaderversion an. Der Pixelshader ps_m_n Ziel gibt D3DPS_VERSION(m, n)-Pixelshaderversion an.

    Allgemeine Kompilierungsausdrücke des Vertexshader-Shaders können nur dem VERTEXSHADER-Effektzustand zugewiesen werden. Allgemeine Sprachkompilierungsausdrücke des Pixelshaders können nur dem PIXELSHADER-Effektzustand zugewiesen werden.

Effektformat