実景と正確に位置合わせされた 3D コンテンツを作成する
このドキュメントでは、仮想物体を現実空間の特定位置に正確に配置し、AR 体験の中で現実空間と精密に位置合わせする方法を紹介します。
始める前に
- シーン内で Mega エディターツールを有効にする または Mega Go エディターツールを有効にする ことに成功していること。
- Unity プロジェクトで使用する 3D アセットを用意していること。
注記
以下の内容およびツールは、EasyAR Mega を使用して Unity アプリを開発する過程にのみ適用されます。
ミニプログラムを開発している場合は、Unity エディターでアノテーションを作成してアップロードする(ミニプログラム開発) を参照してください。
Unity アプリを開発していないが Mega のマッピング結果を確認したい場合は、Mega 使用ガイドの 3D 実景メッシュをプレビューする を参照してください。
Unity アプリを開発していないが、シミュレーション実行でローカライズ結果を確認する必要がある場合は、Mega 使用ガイドの シミュレーション実行結果プレビュー を参照してください。
この内容では、プロジェクトに次の Unity パッケージがすでにインポートされている必要があります。
com.easyar.sensecom.easyar.mega
block 実景データ
Mega 開発では、3D コンテンツの配置を補助するために複数種類の実景データを使用できます。
block メッシュモデル

パノラマ(空間モデルのオクルージョンを含む)

注記
一部のデータはパノラマをサポートしていません。
LCC 3D ガウシアンスプラッティング

注記
LCC 3D ガウシアンスプラッティングデータは、その領域のデバイスで収集してマッピングを完了した後の使用シーンでのみ利用できます。
block モデルを読み込む
block データ下の最初の選択ボックスをクリックすると、block エディターデータの読み込み処理が開始されます。読み込み後、Scene ウィンドウで現在の block の mesh を確認できます。

ヒント
- block mesh は block トラッキングターゲット空間に位置合わせされており、モデル上に直接 3D コンテンツを配置できます。
- block mesh はカメラ位置に応じて LOD を切り替えます。使用時は LOD 切り替え失敗を避けるため、ネットワーク接続を維持する必要があります。
- block mesh はツールノード下に保存され、エディターモードにのみ存在し、最終アプリにはパッケージされません。
3D コンテンツを block ノード下にマウントする
block モデルを読み込んだ後、3D コンテンツをシーン内の Block ノード下に子ノードとしてマウントします。

注意
- 3D 物体を
EasyAR.Mega.EditorToolノード下に配置してはいけません。このノードはエディターツール専用であり、一部の場合に自動削除または再作成されます。
重要
- 実行時に仮想コンテンツのレンダリング位置を正しくするため、3D 物体は必ず block ノード下に配置する必要があります。
3D コンテンツを正確に配置する
次の手順を完了することで、仮想コンテンツを現実空間に正確に配置できます。
block メッシュモデルに基づいて配置する
シーン内で block mesh に合わせて 3D コンテンツの位置と回転を調整し、期待する位置と向きに合わせます。
ヒント
- エディターが play モードに入った後も block mesh は利用できますが、カメラ位置に応じた LOD 切り替えは行われません。
- block mesh はツールノード下に保存され、エディターモードにのみ存在し、最終アプリにはパッケージされません。
[任意] パノラマに基づいて配置する
Panorama Preview Marker 選択ボックスをクリックすると、パノラママーカーを表示できます。

注記
- 一部のデータはパノラマをサポートしていません。
任意のパノラママーカーをクリックすると、その位置でパノラマ上の配置を行えます。異なるパノラママーカーをクリックしてパノラマを切り替えることで、3D コンテンツが異なる視点でも正確な位置にあることを確認できます。

ヒント
- パノラママーカーを使ってコンテンツを配置する場合も、mesh に基づく空間モデルのオクルージョンは引き続き有効です。
- エディターが play モードに入った後もこの機能は利用できますが、mesh に基づく空間モデルのオクルージョン精度は LOD 切り替え無効化の影響を受けます。
- パノラママーカーおよびパノラマデータはツールノード下に保存され、エディターモードにのみ存在し、最終アプリにはパッケージされません。
[任意] LCC 3D ガウシアンスプラッティングに基づいて配置する
注記
この段落の内容は、その領域のデバイスで収集してマッピングを完了した後の使用シーンに適用されます。他のデバイスによるマッピング結果には LCC 3DGS データは含まれません。
LCC 3D ガウシアンスプラッティング(その領域の LCC)機能を使用している場合、3DGS と照らし合わせてモデル位置を調整できます。LCC データの使用方法については、LCC データを読み込んで Mesh と位置合わせする を参照してください。
実景データの欠陥がコンテンツ配置に与える影響
読み込んだ Block モデルが水平でない場合
Hierarchy パネルで調整したい block ノードを選択し、Inspector パネルで Rotation を変更して、Unity エディター内でモデルの向きが正しく見えるまで調整します。
block ノードのワールド座標系での Transform は、block のローカル座標系に影響しません。そのため、block の子ノードである 3D コンテンツのレンダリング結果にも影響しません。その Transform は最終的な表示結果とは無関係です。
注意
block ノード下の EasyAR.Mega.EditorTool の Transform を変更してはいけません。変更すると、エディターツールが正常に動作しない、またはトラッキング時にコンテンツの表示位置が誤る可能性があります。
読み込んだ Block モデルに破損や欠損部分がある場合
三次元再構築の過程で、収集視点のカバー不足の影響により、生成された稠密モデルに破損または欠損部分が現れることがあります。

不完全なモデルに対して、破損/欠損部分の 3D コンテンツ位置合わせ精度への要求が高くない場合は、パノラママーカーをクリックしてパノラマと照らし合わせる方法で 3D コンテンツを配置できます。その後、付近の異なるパノラママーカー位置をクリックして結果を検証できます。

破損/欠損部分の 3D コンテンツ位置合わせ精度への要求が非常に高い場合は、差分更新 または ロスレス全量更新 によりマップを補足または更新する必要があります。一般に、このような領域は画像収集過程でカバーされていないことを意味し、その領域内部では Mega のローカライズ結果が影響を受けます。エディター内で 3D コンテンツを位置合わせするだけでは不十分です。
次のステップ
- session 検証ツールを使用したシミュレーション実行 により、配置の正確性をさらに検証します。
- シーンに正確な 環境オクルージョン を追加し、AR のリアリティを高めます。





