我有一个矩形和一个圆圈。在圈子中,我有所有积分'坐标,因为我计算它们使用数学规则绘制它。使用两个三角形绘制矩形,使得4个顶点。现在这些可以在计划中自由翻译和路由,我想确定何时其中一个接触另一个。所以我认为当其中一个坐标与另一个坐标中的一个坐标相同时,就会发生这种情况。问题是我没有矩形的所有坐标数组。是否有一种方法可以返回绘制三角形的所有坐标,而不仅仅是顶点'在OpenGL中?
答案 0 :(得分:0)
有使用模板缓冲区记录提供给OpenGL的coords和命令的方法,但这是一种相当低效的方法,因为你需要在缓冲区内反编译命令。
如果您没有坐标数组,那么您已经使用了最低效的方式为OpenGL提供几何体:
glBegin(...);
glVertex3f(...);
glVertex3f(...);
...
glVertex3f(...);
glEnd();
更有效的方法是使用顶点缓冲区,它自动需要有坐标数组。对于大量顶点,VBO方法比顶点复制快一倍。
OpenGL不会将您提供的坐标存储的时间长于所需的坐标,即直到光栅化。 OpenGL的整个目标是在屏幕上创建图像,而不是解决一些抽象任务。