【问题标题】:ARCore collider on generated planes生成平面上的 ARCore 对撞机
【发布时间】:2019-06-08 18:47:42
【问题描述】:

我只是在玩 AR 核心,想让一个物体在房间里飞来飞去并能够着陆。我不确定如何根据房间的视觉效果向 ARcore 生成的平面添加对撞机。这会涉及以某种方式在飞机上实例化盒子碰撞器吗?

【问题讨论】:

    标签: unity3d arcore


    【解决方案1】:

    ARCore SDK 的可追踪平面本质上是可识别的平面,例如地面或桌面。

    您可以向 SDK 询问每个可追踪平面的边界多边形的点列表(按顺时针顺序检索),并通过三角剖分从这些点创建网格。准备好网格后,创建一个 GameObject 并添加一个引用它的 MeshCollider 组件。

    我已经创建了一个免费的 Unity 插件来实现这一点。随意使用:https://github.com/jonas-johansson/ARCoreUtils。

    希望对你有帮助!

    【讨论】:

    • 乔纳斯,谢谢你,这工作完美,几乎零努力。
    • @DuncanRoberts,我很高兴听到这个消息 :)。请考虑将问题标记为已回答,以确保其他人找到它。
    【解决方案2】:

    假设您在 Unity 中执行此操作,您可能希望在曲面上使用 Mesh Collider 而不是 Box Collider。

    我不确定 Unity 中的 ARCore,但在其他 AR 框架中,它的工作原理类似于随附的屏幕截图,所以我想它会类似。

    【讨论】:

    • 非常感谢,对不起,我应该说它是在 Unity 中的。我试试看。
    • 恐怕这实际上不起作用。 ARcore 有一个跟踪平面可视化器,我尝试添加一个网格对撞机,但它似乎没有帮助。问题是,如果我在我的对象上添加一个刚体,它就会不断下落,我希望它能够碰撞并降落在 ARcore 注册的任何跟踪平面上。也许对撞机不是最好的方法,但如果有人有任何建议,我很想听。
    【解决方案3】:

    将刚体添加到对象会导致应用重力 将对象刚体上的重力设置为 0。这将阻止它脱落

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-03-15
      • 2016-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多