Search Unity

AR Foundation と MARS を連携させ、インタラクティブでマルチプラットフォームな AR 体験を実現する方法

, 5月 11, 2020

Unity は、あらゆる環境にインテリジェントに適応し、デバイスをまたいで動作する、インタラクティブな拡張現実(AR)体験を構築する力をクリエイターに与えるツールを提供しています。AR Foundation と MARS がどのように連携して、デジタルと物理の世界の境界線を曖昧にする AR 体験をクリエイターに提供するのかを見てみましょう。

モバイル AR 開発の基本コンセプト

拡張現実(AR)コンテンツを本当に現実世界の一部であるかのように感じさせるには、3 つの基本的なコンセプトを理解する必要があります。

  • モーショントラッキングにより、デバイスは 6 つの自由度を持つことができます。これは、モバイルデバイスが空間内を移動する際に、位置と回転の両方がトラッキングされることを意味します。
  • 環境理解は、デバイスに垂直面と水平面の平面を見つける能力を与えます。これにより、現実世界を理解し、それらの表面上に AR オブジェクトやコンテンツを配置することができるようになります。
  • 光源推定により、開発者は現実世界の環境の照明や現在の状況を理解し、その情報を AR 体験に取り入れることができるようになります。これを出発点にして、AR コンテンツは、現実世界の照明条件により正確に適合するように、明るくしたり、陰影をつけたりすることができます。

プラットフォームプロバイダーは、これらの基本的な機能をネイティブ SDK に統合することで、開発者がプラットフォーム上でリッチな AR 体験を簡単に構築できるようにしています。

Unity の AR Foundation

Unity パッケージがデータを AR Foundation にフィードする。

私たちは、複数のモバイルおよびウェアラブル AR プラットフォームへのデプロイを容易にするために AR Foundation を構築しました。AR Foundation は、マルチプラットフォームの AR 体験を実現するために特別に設計された、弊社のコア AR フレームワークです。

データは、各プラットフォーム SDK の上に構築されたパッケージを介して AR Foundation に供給されます。そのため、ターゲットとするデバイスに関係なく、AR Foundation を使用してアプリを構築すれば、各プラットフォームでサポートされているすべての機能を利用することができます。

ある機能があるプラットフォームでは使えるのに、別のプラットフォームでは使えないという場合でも、裏でフックを用意して、後から使えるようにしておきます。新しいプラットフォームで特定の機能が有効になった場合は、パッケージを更新することで簡単に統合できます。1 からアプリを再構築する必要はなくなります。

Unity の Mixed and Augmented Reality Studio(MARS)

MARS は、柔軟性がありカスタマイズが可能で、どんな場所でも、どんな種類のデータでも動作する AR 体験をより迅速に作成することを可能にする、Unity のデザインおよびシミュレーションのためのツールのスイートです。

MARS は、今日の AR 開発者にとって最も困難な課題を解決するために設計されました。

複雑なデータ指向のアプリを視覚的に作成
AR アプリを使用する人が、環境内のどこでどのような物理的なオブジェクトを使用するかをあらかじめ正確に知ることは不可能です。特定の環境、例えば博物館など、管理された環境向けに構築したとしても、フロアプランや設置場所は変わる可能性があり、AR 体験を見る人は様々な角度から見たり、様々な高さから見たりします。考えられる変数とその組み合わせはほとんど無限で、アプリを作成する際に手動で定義することはほぼ不可能です。手作業で寸法をコーディングするという退屈な作業もさることながら、コーディングに一生を費やしても、考えられるすべての変数を考慮することはできないほどの複雑さになる恐れがあります。

苦痛のない効率的な方法で体験をテストする
アプリを開発している物理的な空間が、アプリを実行しているときにユーザーがいる空間と同じであるということはまずないでしょう。日本以外の国で東京の空港で使うロケーションベース環境(LBE)体験を構築しているとして、東京にテレポートして開発することはできません。また、ジオロケーションゲームの場合、アプリは世界中のあらゆる屋外環境で使われる可能性がありますが、そのすべての環境をテストすることにはまったく実現性がありません。これは、モバイル体験を構築する際の開発サイクル全体に共通する問題です。それに、ビルドを待って、動作させたいデバイスごとにテストするのは時間がかかるという問題もあります。

現実の世界にレスポンシブに適応し、プラットフォームをまたいで動作するランタイムロジックを備えたアプリを配信する
ユーザーが AR コンテンツを実行しているとき、そのコンテンツは実世界の環境にあるオブジェクトに反応する必要がありますが、これを実行するのは難しいことです。また、ユーザー体験の出来が良くなければ、開発者はユーザーを失う危険性があります。離れたユーザーは二度と戻ってこないかもしれません。

MARS は、環境とセンサーデータを AR オーサリングワークフローに持ち込むことで、AR 開発者が直面するこれらの重要な問題点をすべて緩和し、最終的には、より複雑で堅牢な AR アプリケーションを構築することを可能にします。

AR Foundation と MARS を連携させる方法

MARS は Unity で AR アプリケーションを構築するための好ましいソリューションとなりうる。

MARS は Unity エディターを基礎として構築され、AR Foundation と連携して動作します。MARS は、AR Foundation や他のカスタムデータプロバイダーからのデータを利用する追加レイヤーとして存在し、クリエイターがより合理化された直感的な方法で複数のプラットフォーム向けにビルドできるようにします。

基本的にMARS は AR アプリを効率的に作成、テスト、および配信するためのツールを提供するものであり、AR Foundation は皆さんの AR アプリを様々なプラットフォームで動作させることを可能にするものです。AR Foundation と MARS を組み合わせて使うことで、AR 開発者が実世界の環境とスマートな方法でインタラクトする、よりインタラクティブなアプリを迅速に作成し、デプロイすることが容易になります。

さらに詳しく知りたい方へ

MARS と AR Foundation についてさらに知りたい方は、好評を博した Unite Now セッション「How to Creative Captivating, Deeply Interactive Mobile AR Games in Unity」で、ゲームスタジオが最新のモバイル AR ゲームを作成するためにこの 2 つのツールをどのように使用しているかをご覧ください。

AR の開発についてさらに知りたい方は、Augmented World Expo の次回開催となる、AWE USA 2020 にオンライン参加されることをお勧めします。コード「UNITY2020」を使用すると、AWE のチケットが 50%割引になります。私たちが取り組んできたことを共有できることを楽しみにしています。

9 replies on “AR Foundation と MARS を連携させ、インタラクティブでマルチプラットフォームな AR 体験を実現する方法”

A great piece that sheds much needed light on some of the great theoretical/ideological debates in the contemporary crypto space. At CleanApp Foundation, we appreciate the emphasis on pragmatism, and emphasis on Blockchain/DTL/Crypto projects that offer real social utility. Looking forward to engaging more with your crew!

A great piece that sheds much needed light on some of the great theoretical/ideological debates in the contemporary crypto space. At CleanApp Foundation, we appreciate the emphasis on pragmatism, and emphasis on Blockchain/DTL/Crypto projects that offer real social utility. Looking forward to engaging more with your crew!

we are also trying to search for some tutorials to get started with MARS. Where do I find one? I hope it gets released soon.

Thanks for the info.

I am trying to search for some tutorial or some official documentation to get started with MARS. Where do I find one?

Hey Rajat, MARS is currently in closed beta, so there aren’t any tutorials or documentation available currently.

I am trying to find some tutorials or documentation to get started as well. I hope it gets released soon.

Comments are closed.