我几天前开始学习OpenGL,在理解一件事情上我遇到了一些困难。我按照本教程:https://www.youtube.com/playlist?list=PLEETnX-uPtBXT9T-hD0Bj31DSnwio-ywh直到第五部分,它完美地工作但是当我尝试为它制作另一个单独的三角形和另一个纹理时,这两个三角形具有相同的纹理。我不明白如何将纹理绑定到一个对象,这个程序绑定场景中每个对象的纹理,或者我可能不明白如何正确地做到这一点。 以下是我的来源:https://github.com/deiandrei/blackunity_opengl_alpha 祝你有个美好的一天!
答案 0 :(得分:3)
这些"对象"你在说什么? OpenGL不知道对象是什么"是。 OpenGL只知道点,线和三角形,所有困难的是一个接一个地绘制当前启用的状态。一旦绘制了一些东西,OpenGL就已经忘了它。
因此典型的OpenGL程序绘图结构大致如下所示:
glBindTexture(GL_TEXTURE_2D, texture_A);
draw_triangles(); /* the triangles are drawn using texture_A */
draw_lines(); /* the lines are drawn using texture_A */
glBindTexture(GL_TEXTURE_2D, texture_B);
draw_some_other_triangles(); /* the other triangles are drawn using texture_B */