ナビゲーションシーンにおけるベストプラクティス
ナビゲーションシーンでは、スムーズで正確なユーザー体験を提供することが重要です。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デバイスでのアプリ開発、または6DoFをサポートするヘッドマウントデバイスでは、最適なナビゲーション体験を得るために Mega + 6DoF モードを優先して使用してください。実行デバイスの実際の状況に応じて、5DoF、3DoF、0DoFに代替し、幅広いデバイス互換性を最大化します。
- 微信小程序 プラットフォームでは、現段階では 6DoF モードをサポートするデバイスでのみ実行するか、视+ ARナビゲーション を直接統合して、完全なデバイスサポートと豊富な製品機能を実現してください。