首先我说的openGL/webGL,指的是在cocos creator中创建材质(material),再创建effect文件,然后编写effect中的代码相关的问题。
然后我想问的是,在effect文件中的代码,如果使用 if…else 来做逻辑判断, 和用表达式来进行计算,在性能上会有较大差异吗?
举个简单的例子,比如我想将输出图像中x坐标大于一半的位置输出图像(不透明度=1),另一半设为透明。
如果用if… else 来写:
if(position.x>=0.5) output.a = 1.0;
else output.a = 0.0;
如果用表达式来写:
output.a = step(0.5,x)*1.0
这两种写法性能上有无明显差异?
毕竟用if…else来写各种判断要舒服很多,都改成表达式的话逻辑很绕,感觉脑子不够用。