标签: opengl graphics
我创造了许多不同颜色和材料的管道(阀门,人孔)的三维场景。现在我想用鼠标来挑选它们并获得它们的属性(颜色,材质)。我尝试使用了由OpenGL API提供的方法glupushmatrix,它在视点几乎就在管道前面时起作用。但是当从不同的视点观察时,例如从(0,1,1)到(0, 0,0),它做不到。更重要的是,我没有在glupushmatrix之前找到glulookat函数的任何投影设置。我还尝试使用基于光线跟踪的数学拾取,但我发现很难使用蛮力对每个管道进行相交测试。
答案 0 :(得分:0)
OpenGL提供了一种特殊的渲染模式(GL_SELECT)来帮助实现拾取。
GL_SELECT
要实现它,你必须:
编辑了链接:
关注this tutorial...