Table of Contents

Mega WeChat Mini Program プラグインにおける AR Session の概念とフロー

このドキュメントでは、Mega WeChat Mini Program プラグインにおける AR Session の概念とフローを紹介します。

AR Session とは

Mega WeChat Mini Program プラグインが提供する AR Session は、すべての AR 機能の入口です。実行プロセスと状態を管理し、VisionKit および WeChat が提供するセンサー API からのデータ取得、クラウドローカライゼーションとローカル AR tracker 結果の融合、シーン内のカメラやその他のオブジェクトの移動とレンダリングの駆動などを含みます。

flowchart LR
    Pose(VisionKit カメラ pose) -- 毎フレーム同期 --> Session[Session]
    Image(このフレームのカメラ pose の計算に使用されたカメラ画像) -. Mega localization 時のみ送信 .-> Session
    Sensor(WeChat センサーデータ) -. 非同期 .-> Session
    Session -- Transform --> Camera(xr-frame カメラ)

AR Session のフロー

flowchart LR
    Start((" "))
    End((" "))

    Init[Initializing]
    Run[Running]

    Check{成功?}

    Start -->|start を呼び出す| Init
    Init --> Check

    Check -->|はい| Run
    Check -->|いいえ / retry 回数が上限を超過| End

    Run -->|stop を呼び出す| End

開始: session 状態は Initializing に変わります。環境チェック、リソース読み込み、WeChat xr-frame の AR システムが準備完了になるまでの待機を含みます。

実行: session 状態は Running に変わります。この段階で、session は毎フレーム tracking 結果を出力し、xr-frame カメラの Transform を更新します。

停止: session 状態は None に変わります。リソースの解放、状態のリセット、MegaTracker の破棄を含みます。

警告

AR 機能は session が正常に開始された後でのみ使用できます。

AR Session の状態:

状態 説明
None 初期状態。session は開始されていない、または初期化に失敗しています
Initializing 初期化中
Running 実行状態。session は開始され、初期化が完了しています

[任意] WeChat Mini Program プラグイン上の AR Session と Unity 上の AR Session

注記

Unity プロジェクトを移行する開発者のみ対象です。

Mega WeChat Mini Program プラグイン上の AR Session は、Unity 上の AR Session の簡略版です。他のアルゴリズムコンポーネントの同時使用をサポートしていないため、WeChat Mini Program 上の AR Session は事前統合されたデータソースコンポーネントとアルゴリズムコンポーネントを使用します。ユーザーはデータソースを選択したり、アルゴリズムコンポーネントを組み立てたりすることはできません。

さらに、Mega WeChat Mini Program プラグインは Block を target とし、target 中心の center mode を使用する場合のみサポートすると考えることができます。

次のステップ

関連トピック