开发者社区> 问答> 正文

创建统一的GLSL数组?

我想离开OpenGL的灯,自己做。我希望我的着色器允许可变数量的灯光。

我们可以在GLSL着色器中声明统一数组吗?如果是这样,我们将如何设置这些制服的值? 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-09 11:37:26 499 0
1 条回答
写回答
取消 提交回答
  • 是的,这是可能的。您声明与C中类似的统一数组,例如

    uniform float v[10]; 然后您可以使用 glUniform{1,2,3,4}{f,i}v

    GLfloat v[10] = {...}; glUniform1fv(glGetUniformLocation(program, "v"), 10, v);

    2020-02-09 11:37:35
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
重新定义计算的边界 立即下载
继承与功能组合 立即下载
ui-model,跨框架复用 立即下载