【发布时间】:2017-09-20 15:30:49
【问题描述】:
我正在使用 OpenGL 3.3 编写我的第一个 3D 程序,但我发现为不同对象设置不同材质时遇到问题。我设法绘制了 3 个球体(顶点存储在一个 VAO 中,然后平移和绘制)并使用制服从顶点着色器更改了它们的外观。现在的问题是球体应该有不同的材料,但我不知道如何为每个球体设置不同的制服。最好的方法是什么?
【问题讨论】:
-
材质在某种程度上相当于一个着色器程序。您可以绑定不同的纹理和制服,并且在渲染对象时只需使用 GlUseProgram() 即可。因此,在渲染每个球体之前,请绑定程序并统一您的材质属性(即纹理等)
标签: c++ opengl 3d lighting shading