标签: opengl-es webgl
我想知道用于加载着色器程序的这种API方法是否昂贵或不能调用? 我正考虑在我的3D场景中为每个对象进行此调用。
gl.useProgram(shaderProgram);
感谢
答案 0 :(得分:7)
glUseProgram
glAttachShader
glLinkProgram
所以,结论:适度使用它。如果你没有太多的物体 - 很棒,如果你这样做 - 尝试优化着色器切换,或多次重复使用着色器,或者使用相同的着色器以某种方式利用分支。
useProgram获得了中等性能。它不是超轻的,也不像linkProgram和compileShader那样超重。
useProgram
linkProgram
compileShader
希望这有帮助。