loop (sm4 - asm)
指定迴圈,在遇到中斷指令之前逐一查看。
loop |
---|
備註
迴圈 可以無限期地逐一查看,雖然執行某些指令之後,可能會強制終止著色器的整體執行。
每個副程式和主要流程式控制制區塊最多可以巢狀化 64 個深度。 HLSL 編譯器不會產生超過此限制的副程式。 未定義每個副程式深度超過 64 層的控制流程指令行為。
權杖格式包含著色器中對應 endloop 指令的位移,方便起見。
下列範例示範如何使用 迴圈指令。
loop
// example of termination condition
if_nz r0.x
break
endif
...
endloop
本指示適用于下列著色器階段:
頂點著色器 | 幾何著色器 | 像素著色器 |
---|---|---|
x | x | x |
最小著色器模型
下列著色器模型支援此函式。
著色器模型 | 支援 |
---|---|
著色器模型 5 | 是 |
著色器模型 4.1 | 是 |
著色器模型 4 | 是 |
著色器模型 3 (DirectX HLSL) | 否 |
著色器模型 2 (DirectX HLSL) | 否 |
著色器模型 1 (DirectX HLSL) | 否 |
相關主題