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 | sì |
Modello shader 4.1 | sì |
Modello shader 4 | sì |
Modello shader 3 (DirectX HLSL) | no |
Modello shader 2 (DirectX HLSL) | no |
Modello shader 1 (DirectX HLSL) | no |