Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个声明了以下制服的着色器:
均匀的 highp 浮动 fr;
在我的渲染方法中,它被相应地设置:
GLfloat num = 1.0f; glUniform1f(glGetUniformLocation(self.Program, "fr"), num);
但它根本没有设置。这些看起来很基本,所以我不明白为什么它不起作用。我使用了正确的语法吗?
也许你没有在着色器代码中使用这个 fr 值?然后编译器会使其处于非活动状态,并且不会真正将其包含在编译程序中,glGetUniformLocation 会返回 -1 左右的索引。检查您的着色器以及 glGetUniformLocation 返回的值。
干杯, Krzysztof Zabłocki
我发现了我的问题。
在调用使用程序之前,我正在设置制服。对于找到此答案的任何人,请确保在为该程序设置制服之前致电使用程序。