我有一个用于在3D中显示对象的应用程序。现在我想改进我的应用程序。如果我在我的aillage区域中双击,我想要检索它们被捕获并在此区域中存在表面,以便再细分这个区域。是否有可能收到它们?感谢。
答案 0 :(得分:0)
将视口上的单击转换为世界空间中的光线。
然后使用光线查询场景以找到相交的对象(基于使用场景的octtree进行轴对齐的边界框搜索,如果有的话)。
然后,如果需要检测三角形,请针对场景查询找到的对象中的所有三角形测试光线。如有必要,可以通过为对象的网格构建一个octtree来优化此步骤。最接近射线原点的是击中点。
对于每个对象,您可以将光线转换为自己的局部坐标系。