Condividi tramite


Espressioni (Direct3D 9)

Le espressioni sono istruzioni matematiche o logiche usate sul lato destro di un segno di uguale. Esistono molti tipi di espressioni.

Espressioni

  1. Informazioni di riferimento sulle variabili

    ( variable ) or<variable >
    
  2. Scalare numerico

    scalar 
    
  3. Espressione numerica

    ( numeric expression )
    

    Tutte le espressioni HLL numeriche standard sono supportate qui.

  4. Costruttore

    type ( constructor arguments )
    
  5. Elenco di inizializzatori

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

    I scalari devono essere valori scalari letterali.

    Il numero di inizializzatori deve essere compatibile con la variabile (stato) sul lato sinistro del segno di uguale.

  6. Espressione OR

    token [ | token ... ]
    

    I token devono essere compatibili con la variabile (stato) sul lato sinistro del segno di uguale.

    I token non sono distinzione tra maiuscole e minuscole.

  7. NULL

    NULL
    

    NULL può essere assegnato solo a uno shader, a un sampler o a un oggetto trama.

  8. Blocco assembly

    asm { code }
    

    I blocchi di assembly PS devono essere assegnati allo stato PIXELHADER.

    I blocchi di assembly VS devono essere assegnati allo stato VERTEXSHADER.

  9. Blocco stato sampler

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

    I blocchi di stato del sampler sono sequenze di assegnazioni di stato o trama non indicizzate.

    I blocchi di stato del sampler devono essere assegnati allo stato dell'effetto SAMPLER.

  10. Blocco stato effetto

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

    I blocchi di stato sono sequenze di stato generale. I blocchi di stato possono essere annidati, ma non possono contenere riferimenti circolari.

    I blocchi di stato devono essere assegnati allo stato dell'effetto STATEBLOCK.

  11. Compilazione HLSL

    compile target entrypoint ( [ arguments ] )
    

    Il vertex shader vs_m_n destinazione indica D3DVS_VERSION(m, n) versione del vertex shader. Il pixel shader ps_m_n destinazione indica D3DPS_VERSION(m, n) versione del pixel shader.

    Le espressioni di compilazione del linguaggio di alto livello del vertex shader possono essere assegnate solo allo stato dell'effetto VERTEXSHADER. Le espressioni di compilazione del linguaggio di alto livello pixel shader possono essere assegnate solo allo stato dell'effetto PIXELHADER.

Formato effetto