由于Mac OS支持我的程序,我无法在OpenGL 3.3中使用兼容性配置文件,因此我无法使用glBegin,glVertex,glEnd进行快速调试。我只想为我的模型绘制边界框,并为调试内容绘制一些线条。我是否应该在每次想要绘制快速内容时准备顶点缓冲区,着色器等,或者是否有任何简单的调试绘图方法?
答案 0 :(得分:3)
如果没有VAO,VBO中的顶点数据等,你真的无法在核心配置文件中绘图。当然还有着色器程序。
从技术上讲,您可以通过顶点着色器代码中的顶点硬连线来绘制没有VAO / VBO的绘图。但这真的不太实际,恕我直言。
如果您经常需要绘制几行进行调试,我会编写一个小助手类来处理它。它可以提供一个界面来添加定义一条线的点对,并绘制所有添加的线。绘制线条所需的一切,如创建一个简单的着色器程序,VAO,VBO,都可以隐藏在实现中。
第一次写这可能需要一个小时。但是一旦你拥有它,你可以简单地将它放入你的项目中,并在你需要的任何地方使用它。