breakc (sm4 - asm)

Sposta in modo condizionale il punto di esecuzione nell'istruzione dopo il successivo endloop o endwitch.

breakc{_z|_nz} src0.select_component
Elemento Descrizione
src0
[in] Componente in cui testare la condizione.

Commenti

Il formato del token contiene l'offset dell'istruzione endloop corrispondente nello shader per praticità.

Nell'esempio seguente viene illustrata l'istruzionebreakc .

                loop
                    // example of termination condition
                    breakc_z  r0.x // break if all bits in r0.x are 0
                    breakc_nz r1.x // break if any bit in r1.x is nonzero
                    ...
                endloop

Questa istruzione deve essere visualizzata all'interno di un ciclo/endloop o switch/endwitch.

Il registro a 32 bit fornito da src0 viene testato a livello di bit. Se un bit è diverso da zero, breakc_nz eseguirà l'interruzione. Se tutti i bit sono zero, breakc_z eseguirà l'interruzione.

Questa istruzione si applica alle fasi dello shader seguenti:

Vertex shader Geometry shader Pixel shader
x x x

Modello minimo shader

Questa funzione è supportata nei modelli di shader seguenti.

Modello di shader Supportato
Modello shader 5
Modello shader 4.1
Modello shader 4
Modello shader 3 (DirectX HLSL) no
Modello shader 2 (DirectX HLSL) no
Modello shader 1 (DirectX HLSL) no

Assembly del modello shader 4 (DirectX HLSL)