Mega 微信小程序插件における AR session の概念とフロー
このドキュメントでは、Mega 微信小程序插件における AR session の概念とフローについて説明します。
AR session とは
Mega 微信小程序插件が提供する AR session は、すべての AR 機能のエントリーポイントです。実行プロセスと状態を管理します:VisionKit および微信が提供するセンサー API からのデータ取得、クラウドローカライゼーションとローカル AR トラッカーの結果の融合、シーン内のカメラやその他のオブジェクトの移動・レンダリングの駆動などを含みます。
flowchart LR
Pose(VisionKit カメラポーズ) -- フレーム毎に同期 --> Session[Session]
Image(ポーズ計算に使用されたカメラ画像) -. Mega ローカライゼーション時のみ送信 .-> Session
Sensor(微信センサーデータ) -. 非同期 .-> Session
Session -- 変換 --> Camera(xr-frame カメラ)
AR session のフロー
flowchart LR
Start((" "))
End((" "))
Init[初期化中]
Run[実行中]
Check{成功?}
Start -->|start 呼び出し| Init
Init --> Check
Check -->|はい| Run
Check -->|いいえ / 再試行回数上限| End
Run -->|stop 呼び出し| End
起動:session 状態が「初期化中」に遷移。環境チェック、リソース読み込み、微信 xr-frame の AR システム準備待機を含みます。
実行:session 状態が「実行中」に遷移。この段階で、session はフレーム毎にトラッキング結果を出力し xr-frame カメラの Transform を更新します。
停止:session 状態が「なし」に遷移。リソース解放、状態リセット、MegaTracker の破棄を含みます。
警告
AR 機能は session の起動が成功した後でなければ使用できません。
AR session の状態:
| 状態 | 説明 |
|---|---|
| なし | 初期状態。session 未起動または初期化失敗 |
| 初期化中 | 初期化プロセス中 |
| 実行中 | 動作状態。session 起動済みかつ初期化完了 |
[オプション] 微信小程序插件の AR session と Unity の AR session
注記
Unity プロジェクト移行開発者向け。
Mega 微信小程序插件の AR session は、Unity の AR session を簡略化したものです。他のアルゴリズムコンポーネントの同時使用がサポートされていないため、微信小程序版では予め統合されたデータソースコンポーネントとアルゴリズムコンポーネントを使用します。ユーザーはデータソースの選択やコンポーネントの組み立てができません。
また、Mega 微信小程序插件は Block をターゲットとし、ターゲット中心モードを使用するケースのみサポートすると考えてください。