if-else 语句和 for 语句

优质
小牛编辑
146浏览
2023-12-01

着色器语言GLSL中关于if语句、for语句的使用,和javascript语言、C语言中的if语句、for语句执行逻辑规则基本一致,这里默认你已经有一定的编程基础,也就不做过多讲解,只是简单说明一下。

单独使用if

if(x>100){
  gl_FragColor = vec4(1.0,0.0,0.0,1.0);//红色
}

if-else形式

bool colorBool;
// 根据布尔值设置片元的像素值
if(bool){
  gl_FragColor = vec4(1.0,0.0,0.0,1.0);//红色
}else {
  gl_FragColor = vec4(0.0,0.0,1.0,1.0);//蓝色
}

if-else if-else if-...else形式

if(x<10){
}else if (x<20) {
}else if (x<30) {
}else {
}

continuebreak关键字

continue:直接跳到for循环的下一个循环 break:for循环终止执行

for (int i = 0; i < 20; i++) {
  ...
  if(i==15){
    continue;//进行下次循环,执行i=16对应的循环
  }
  ...
}
for (int i = 0; i < 20; i++) {
  ...
  if(i==15){
    break;//直接终止循环执行,i=16、17等后面的循环不再执行
  }
  ...
}