1

PowerVR documentation from Imagination says there's static flow control. (7.9 Flow Contro)

What's the static flow control? Does it mean compiler preprocessor like #if...#endif? And they're saying,

Static flow control can be used to combine many shaders into one big shader.

and what does this mean? Can I instantiate many variants of shaders from one source?

4

1 回答 1

4

根据 7.9 之前的文本:

当条件执行取决于统一变量的值时,这称为静态流控制

因此,您将拥有一个基于制服做出分支决策的着色器。那将是静态流量控制。

他们试图告诉你的是,设置制服可以动态地重新编程着色器——编译后的代码将使用新的制服值进行修补,而不是每次着色器运行时都要查找这些值。因此,在着色器中访问制服的成本与使用常量的成本相同,并且在着色器之外设置制服的成本可能比您想象的要大。

于 2012-08-22T02:11:17.110 回答