我需要在两个创建的网格之间画一条线。每个网格与不同的模型矩阵相关联。我一直在思考如何做到这一点,我想这:OpenGL:在两个元素之间画线
glMatrixMode(GL_MODELVIEW);
glLoadMatrixf(first_object_model_matrix);
glBegin(GL_LINES);
glVertex3f(0, 0, 0); // object coord
glMatrixMode(GL_MODELVIEW);
glLoadMatrixf(first_object_model_matrix);
glVertex3f(0, 0, 0); // ending point of the line
glEnd();
但问题是,我不能叫glMatrixMode
和glLoadMatrixf
glBegin
和glEnd
之间。我也在使用着色器和可编程管线,所以用我的场景渲染返回到固定管线的想法并不令人兴奋。
你能:
- 建议我正是如何绘制两个筛网(我有自己的模型矩阵)着色器之间的线路。
或
- 推荐我如何写一个类似于上面的代码来绘制具有两个网格模型矩阵的线。
我完成它的唯一方法是将坐标乘以各自的矩阵,然后使用标识模型视图矩阵绘制线条。 – 2012-07-21 14:44:43
是否有任何理由不能在渲染阶段之前计算并存储线条点? – Aesthete 2012-07-21 14:54:03