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導航 以實現完整的設備支援和豐富的產品功能。