GLSL控制流
控制流¶
条件判断¶
循环¶
和C/C++相似,提供for、while、do/while循环方式。提供continue、break控制循环
for (l = 0; l < numLights; l++) {
if (!lightExists[l]) continue;
color += light[l];
}
while (i < num){
sum += color[i];
i++;
}
do{
color += light[lightNum];
lightNum--;
}while (lightNum > 0)
discard¶
片段着色器中有一种特殊的控制流。 使用discard会退出片段着色器,不执行后面的片段着色操作。片段也不会写入缓冲区