1

如何在 openGL 3.x 中实现 glPopName 和 glPopName 的功能?

4

1 回答 1

2

OpenGL-3 不再具有选择模式。几乎没有 OpenGL 实现有硬件加速的选择模式。一个总是陷入软件仿真模式。

相反,您可以实现其中之一:

  • 用不同的颜色渲染每个对象,用作索引。然后读回感兴趣的区域,然后像往常一样重新渲染场景。这与选择模式非常接近。

  • 回读感兴趣区域中的深度缓冲区值,投影回世界位置并根据场景数据确定哪个对象位于所选位置。

或者完全没有 OpenGL:

  • 实施光线场景相交测试。使用八叉树或 Kd 树等空间细分结构进行加速。
于 2011-08-25T07:17:45.340 回答