如果在顶点着色器中有:
#version 450 core
uniform bool v1;
void main()
{
if(v1 == true)
{
//do something
}
}
由于统一变量在整个着色器运行中是恒定的,因此每帧评估if的次数是多少?一?或者每个顶点一个(因为我们在vs中)?
答案 0 :(得分:1)
每个顶点都会评估一次,或者每次更改该制服时系统都会重新编译着色器(或者可能只有两种形式的着色器)。你应该更喜欢前者和后者。