gamebryo提供了2中Pick的方法。
1.从屏幕打一条射线进去。和指定的node包围体碰撞。如果打中了就返回。
优点:可以得到而外的查询数据,比如打到的顶点法线。颜色等等。
缺点:如果精确到三角形那会非常慢。不精确又有可能导致打空。
2.为每一个需要被检查碰撞的物体使用 ObjectPickMaterial 材质。他的做法是为物体使用一个很小的16*16的纹理做基本的一次渲染。渲染后的的写入是你自己定义的数据。这样只要判断这个数据是那个就知道你拾取了那一个。很快很精确。因为他只用了一个很小的纹理。
优点:快速。精确。缺点:不能返回一些信息。比如法线。位置。等等