Table of Contents

导航场景最佳实践

在导航场景中,提供流畅、精准的用户体验至关重要。EasyAR Mega 提供了多种 xDoF 模式来适应不同的设备能力和环境需求。理解这些模式的差异,并结合平台特性进行选择,是构建优秀导航应用的关键。

提示

参考阅读: 不同设备上的体验差异

正确选择跟踪模式

在 Mega 定位的基础上,我们可以根据设备提供的传感器能力和应用需求,选择不同的跟踪模式来增强导航体验。

对于具备 ARKit 或者 ARCore 的手机来说,您只需使用默认的 6DoF 跟踪模式,结合 Mega 空间定位即可实现稳定、平滑的连续路径导航,提供最佳的用户导航体验。

但是,针对 ARKit 或 ARCore 支持情况不够明确、或者用户群体最广泛的中低端机型,选择合适的 xDoF 模式至关重要。因为不同的 xDoF 工作模式,将直接影响终端的跟踪效果。

对于这类机型,您需要按照以下顺序优先测试、并选择它们的工作模式:

  • 惯导 / 5DoF 模式

    • 描述:它利用设备的传感器,通过 EasyAR 内建的惯导算法实现 5DoF 跟踪,在一定程度上提供稳定、平滑的连续路径导航。
    • 行为:当用户行走时,虚拟的路径指示(如地面上的箭头)会稳定地贴合在地面上,即使用户短暂地晃动或改变朝向,指示也不会发生大的跳动。但如果有高度方向上的爬升或下降时(如上下楼梯),虚拟内容将不再贴合而是浮在空中或位于地面之下。
    • 要求:需要设备具备高质量的陀螺仪和加速度计。
    • 适用场景:绝大多数室内外导航场景,作为 6DoF 不可用时的首选降级方案。
  • 3DoF 模式

    • 描述:当设备没有加速度计但有陀螺仪时,可以降级到 3DoF 模式。
    • 行为:在 3DoF 模式下,导航指示会根据设备的朝向(俯仰、偏航、滚转)进行旋转,但当用户平移(前进、后退、侧移)时,指示物在空间中的位置不会更新。它会像一个指南针一样,始终指向正确的方向,但不会跟随用户的脚步在地图上移动。
    • 要求:设备至少需要有陀螺仪。
    • 适用场景:作为 5DoF 都不可用时的降级方案。可以用于简单的方向指引,但不适合需要精确路径跟随的复杂导航。
  • 0DoF 模式

    • 描述:这是最基础的模式,几乎适用于所有设备,但用户体验也最有限。
    • 行为:在 0DoF 模式下,设备无法感知自身的任何移动或旋转。导航指示会固定在屏幕的某个位置(例如,屏幕中央的箭头),仅指示目标的相对方向(例如,目标在您的左前方)。
    • 要求:无特殊传感器要求。
    • 适用场景:作为最终降级方案,或用于简单的“找方向”功能,类似于传统导航中的罗盘。

体验对比总结:

跟踪模式 用户移动时的行为 用户体验 推荐度
6DoF 虚拟路径稳定地跟随用户在真实空间中的各种移动 最佳,沉浸感强,精准 ⭐⭐⭐⭐⭐
5DoF (惯导) 虚拟路径稳定地跟随用户的移动,但当高度变化时会失效 次佳,6DoF 失效时的降级首选 ⭐⭐⭐⭐
3DoF 路径指示随设备朝向旋转,但不跟随用户移动 一般,可以指示方向,但缺乏空间跟随感 ⭐⭐⭐
0DoF 指示固定在屏幕上,仅显示目标的方向 基础,仅能提供方向信息

微信小程序平台的特殊说明

重要提示:微信小程序平台的 Mega WeChat MiniProgram Plugin 尚未完全发布支持5DoF (惯导)、3DoF、0DoF 的功能。

在微信小程序中,当前阶段主要支持的是 6DoF 模式的导航体验。

  • 当前行为:用户在小程序中启动基于 Mega 的导航后,如果运行的设备本身并不支持 6DoF 模式,则 ARSession 会无法启动,并在终端报错。
  • 开发建议:在微信小程序上规划导航功能时,请以 6DoF 模式作为前提进行设计。查看 微信官方文档 获取设备支持列表,或者通过我们的 API 调用检查设备是否支持。
const easyarPlugin: easyar.EasyARWechatMiniprogramPlugin = requirePlugin("easyar-wechat-miniprogram") as easyar.EasyARWechatMiniprogramPlugin;

if (easyarPlugin.isMegaTrackerSupported() === false) {
    const message = `当前设备不支持 VK v1 和 v2,请参考微信官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/visionkit/plane.html`;
    wx.showModal({
        title: "设备不支持",
        content: message,
        showCancel: false,
    });
    console.error(message);
}

微信小程序平台的替代方案

对于需要在微信小程序中实现拥有完整设备支持的导航应用的开发者,我们强烈推荐您直接使用我们的 视+ AR 导航 产品。

该导航产品是专门为小程序生态优化的解决方案,具备以下优势:

  • 开箱即用:无需复杂的 Mega SDK 集成,通过简单的 API 调用即可快速接入。
  • 广泛兼容:广泛兼容各种终端设备,支持从 0DoF 到 6DoF 的几乎所有设备。
  • 功能完整:支持完整的路径规划、偏航纠正、转弯提示、数字人指引等高级导航功能。
  • 配套完善:配套完备的信息管理、路网部署、POI 调整、路算服务等实用后台和工具。
  • 体验优化:针对微信小程序的性能和交互特点进行了深度优化,确保流畅的用户体验。

如何开始?
请访问 AR 导航官方页面,了解如何快速集成和使用我们的导航产品来构建您的小程序应用。

最佳实践总结

  • 在 Android/iOS 设备上开发 App 或在支持 6DoF 的头显设备上,请优先使用 Mega + 6DoF 模式,以获得最佳导航体验。根据运行设备的实际情况,降级成 5DoF、3DoF 和 0DoF 以最大化的获得广泛的设备兼容性。
  • 微信小程序 平台,现阶段仅支持在 6DoF 模式的设备上运行,或直接接入 视+ AR导航 以实现完整的设备支持和丰富的产品功能。