SCNPhysicsBody性能不佳

时间:2018-08-14 11:27:34

标签: ios swift scenekit augmented-reality arkit

我正在开发一个增强现实应用程序,该应用程序使用网格进行物理和遮挡。网格是不规则形状的几何体,由围绕相机的许多顶点组成。

要使网格具有正确的物理形状,我必须在创建SCNPhysicsShape.ShapeType.concavePolyhedron时添加SCNPhysicsShape选项,其他选项是在形状周围绘制边界框,这使得物理不可能,因为相机位于内部网格。

这很好,但是性能很差。有什么办法可以提高这一过程的效率?

1 个答案:

答案 0 :(得分:0)

对于物理引擎而言,针对多个简单(凸)几何体进行碰撞测试要比对单个,大型,复杂,凹形几何体进行碰撞测试要容易得多。

让问题看起来更简单:如果要为碰撞检测的典型空间建模,则不要创建中间具有凹长方体形状的几何图形,而是创建四面墙,一面地板和一顶天花板,分别使用429 Too Many RequestsSCNPlane

对于相机周围的一组更复杂的物理交互表面,只需扩大此想法即可。建立大致与您的视觉几何形状匹配的冒名顶替者形状的排列(理想情况下使用SCNBoxSCNBox或其他原始几何形状),然后使用init(node:options:)将其变成物理形状。< / p>