相交选择Ray与OpenGL中的形状

时间:2011-07-26 15:11:18

标签: xcode macos opengl 3d picking

我正在尝试在OpenGL中进行挑选,并在1中有3个问题。

  1. 我使用两次Unproject命令,一次使用0,一次使用1作为near / end plane。 有些文章说0和1都没问题,有些人说我应该用计算的深度。我应该选哪一个?

  2. 然后,假设我可以减去两个结果,这给了我一条光线(光线从我的“相机”到指示为x,y,z的方向,对吗?x,y,z是绝对的值或相对于我的“相机”?

  3. 现在我有了光线,我怎么能把它与形状相交?顺便说一句,我如何列出现有的形状并计算它们与射线的坐标?

1 个答案:

答案 0 :(得分:2)

2 - 您的光线将相对于相机,只需将其与反相机变换相乘。

3 - 对于几乎所有目的,您需要一个空间细分算法(二进制空间分区,边界体积层次结构等)。您应该维护一个已创建的形状列表...