在OpenGL中选择方面最简单的方法是什么?

时间:2009-02-04 20:36:05

标签: opengl

我想在OpenGL应用程序中找出鼠标光标下的哪个方面。使用选择缓冲区对我来说似乎非常不准确。还有其他解决方案吗?

3 个答案:

答案 0 :(得分:4)

使用光线交叉手动完成。使用相机矩阵(如果不明确,可以从OpenGL查询),使用它在世界空间中生成拾取光线,并查看它是否与您的特定面相交。在深度(t)上对交点进行排序,您在光标下面具有最近的面。

根据您的数据结构(层次结构等)和大小,这可能非常慢或非常有效。

答案 1 :(得分:2)

一个常见的技巧是将每个构面以不同的颜色(简单地为0x000001到n)绘制在屏幕外渲染并获得鼠标点下的颜色。

答案 2 :(得分:0)

另请参阅OpenGL常见问题解答this section