【问题标题】:How to place objects on a Sceneform plane randomly?如何将对象随机放置在 Sceneform 平面上?
【发布时间】:2019-01-07 22:51:33
【问题描述】:

我想使用 Sceneform 构建一个 AR 游戏,其中一个对象在计时器上放置在平面上(例如:每 1 秒放置一个对象)。我还希望将其放置在检测到的平面上的随机位置。

我只知道如何使用 HitTest 放置对象,但这只会将其放置在用户点击的位置和时间。我希望展示位置由应用控制,因为这是一款游戏。

【问题讨论】:

    标签: android android-studio augmented-reality arcore sceneform


    【解决方案1】:

    当你检测到平面时,你需要在平面的中心点(或随机位置)创建一个锚点。

    DetectedPlane planeDetected = _newPlanes[0]
    Anchor anchor = plane.CreateAnchor(plane.CenterPose);
    

    之后,使用锚点变换来渲染环境中的对象。

    我不是 Android 开发人员,我将 ARCore 与 Unity 一起使用,但我认为这将是相同的解决方案。

    【讨论】:

    • 我认为只有你增加时间并在另一个位置创建另一个对象,我认为它在 ARCore 环境中没有问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-14
    相关资源
    最近更新 更多