shader入门基础知识七

cg 流程控制与循环

在前面的章节中shader 入门基础知识五提到过,cg 不支持
switch ,break,default,goto 等关键字,这里不再尝试,下面对 if else 和 for while 进行尝试。

image
image

如图,我们对于模型坐标小于 0 的地方给与红色,大于 0 的地方给与绿色,得到的是渐变从红到绿的颜色。
原因是片元着色器的输入是对着色器输出插值后的结果,因此结果是渐变的。

image
image

如图,count=30 的时候我们把颜色赋值成红色,否则绿色,显示红色则说明前面的循环都得到了有效的执行。
这里前面提过 cg 支持 bool,和相关的运算符,三目运算符也是支持的。

posted @ 2025-07-22 10:59  晓叔  阅读(5)  评论(0)    收藏  举报