所以我使用python中的gloo包来运行一些基本的GL着色器。
对于一个着色器,我需要传递一个10 vec3s数组的制服:
uniform vec3 u_warps[10];但是,当我试图在python中设置此值时:
program['u_warps'] = warps // or gloo.VertexBuffer(warps)我知道错误:
KeyError:“未知制服或属性u_warp”
这说明这个图书馆不认识数组制服?如果我在“warps”("warps10 -> warps")之后删除方括号,则会找到制服,但无法正确设置(因为我正在传递一个值为数据的数组)。
我遗漏了什么吗?有没有人知道是否有办法在全球范围内设置整齐的制服?
发布于 2015-03-18 06:26:49
为了子孙后代,我给那些保持粘性的人发了电子邮件,得到了答案:
“目前唯一的解决办法是单独传递统一数组的元素:”
program['u_warps[0]'] = warps[0]
program['u_warps[1]'] = warps[1]
...维护人员说他们希望尽快解决这个问题。
https://stackoverflow.com/questions/29114754
复制相似问题