見出し画像

MESONのAR開発ノウハウ満載のフレームワークConekton誕生の裏側

MESONが開発してきたAR開発のノウハウが詰まった『Conekton』。その誕生の背景とどんな機能があるのかその一部をご紹介したいと思います。

MESONはExperience Augmentation Companyとして過去いくつものARプロダクトを作ってきました。中にはiPad向けに作成したプロダクトをNreal LightやMagic Leap 1へ移植することもありました。

こうしたたくさんのプロジェクト開発を通して、今後のAR開発に必要な機能が見えてきたのです。そしてそれらをまとめてAR開発を爆速で行うためのフレームワークとして誕生したのがこの『Conekton』です。

Conektonの主な機能は「クロスプラットフォーム」と「マルチユーザ」

前述のように、ARコンテンツを繰り返し開発して感じたのは『クロスプラットフォーム』と『マルチユーザ』の必要性です。これらふたつの要素は今後の開発において必須だと感じています。理由としては以下です。

・ARプラットフォームはまだ少なく、ひとつに絞っても広めづらい
・コンテンツを移植するケースが増えてきた
・移植を想定していないと細かな違いがありすぎてつらい
・ひとりで体験するコンテンツでは体験の質向上に対して限界がある
・iPadやタブレットでARコンテンツを『覗き見(同期)』させる機能が必須

などが挙げられます。
特に、過去に作ったコンテンツを移植するケースは多くあり、また今後、AppleやGoogle、Facebookらが新しいARデバイスを出してくることは想像に難くありません。

それらが発表された際にも比較的すばやく移植を行うことは重要な課題だと考えています。

クロスプラットフォームの課題

Conekton開発前は各プラットフォーム向けの機能を実装するために、各プラットフォームごとのSDKをインポートし、それぞれの機能を個別に作らないとなりませんでした。

またプラットフォーム間でデバイスの違いもあり、ボタンの数やできることの違いも多くありました。
そのため、同じ機能を実現するためでも新規開発・調整が必要でした。

例えば、ARコンテンツではコントローラを利用しレーザーポインタで操作を行うことが一般的です。
中にはハンドジェスチャ機能を搭載しているデバイスもありますが基本的にはコントローラを利用します。

基本的なこの機能でさえも、Unity側では統一的に扱えるAPIはなく個別に実装しないとなりません。

しかしConektonを利用すればこうした機能は透過的に扱えるように設計されており、プラットフォームを切り替えた際も修正を加える必要はありません。

画像1

上記画像はConektonのドキュメントから引用したレーザーポインタです。このポインタのコントロールはConekton側でプラットフォームに応じて自動的に切り替えられるため配置するだけですぐに使用することができます。

マルチユーザの重要性

ARコンテンツを作っていく上で感じているのが『複数人で体験を共有することの重要性』です。

ソーシャルゲームに代表されるように、人は他人と価値を共有することでその体験がより豊かになります。そうした理由から、ARプロダクトにはマルチユーザの機能は必須だと考えています。

AR Cityから見るマルチユーザの重要性

MESONでは以前、078Kobeという神戸市主催のイベントに『AR City』というARコンテンツを出展しました。本コンテンツはMESONと博報堂DYホールディングスとの共同研究で開発されました。

実際の体験を目の前で見ていましたが、体験者の方みんなが楽しそうに会話をしながら体験していたのは今でも覚えています。中には何回も繰り返し遊んでくれた子どももいました。

このことからも分かるように、マルチユーザは必須機能と言っても過言ではないと思いでしょう。またコンテンツ自体を同時に体験せずとも、ARグラスをかけている人が見ている世界を覗き見ることも重要な要素だと言えます。

これは『オブザーバービュー』などと呼ばれ、MESONでは主にiPadやAndroidタブレットなどを利用してARグラスをかけている人の世界を覗き見れる機能を開発してきました。

このオブザーバービューはAR Foundationを利用していて、iPadやAndroidタブレット上でARモードを起動し、実際に歩き回ってコンテンツを見ることができるようになっています。

次の動画に一瞬写っているのがオブザーバービュー機能です。手前の人がAndoridタブレットを持って体験者を撮影しているのが分かります。

AR/VRにおいて、周りの人が体験者の行っていることを見るというのはとても重要な要素だと感じています。

しかしこうした機能はもちろんUnityには用意されていません。

オブザーバービューは言わばサポート的な位置づけのため、これに工数をさくことは極力したくありません。
そこでConektonではAR Foundationもサポートに入れ、ARグラスに限らずモバイルARもすぐに対応可能なようになっています。

Conektonの構成図は以下のようになっています。

画像2

対応プラットフォームはNreal、Magic Leap、AR Foundation(ARKit, ARCore)、そしてOculusです。

なぜOculusが、と思われた方もいるかもしれませんが、Oculusは『AR in VRプロトタイピング』を行う上で重要な位置づけだと考えています。

mirrプロジェクトでAR in VRの可能性を実感

先日発表された、MESONと博報堂DYホールディングスとで開発を行った『mirr』はConektonを正式採用した初のプロジェクトです。

元々は渋谷キャストの周年記念イベントで公開する予定だったARコンテンツを、新型コロナの影響を受けて急遽、VR内でARをプロトタイピングするという方針に変えて開発を続けてきたものです。

結論から言うと、結果は大成功でした。
渋谷キャストのモデルや点群データがあったことも大きいですが、VRで実装した体験を実際の渋谷キャストでAR体験したところ、ほとんど違いを感じられませんでした。VR内でのプロトタイピングは十分に可能だと実感しています。

余談ですが、Oculus Questで開発を行っていて、お披露目会当日もVRでの体験を想定していたためNrealでのチェックは一切していませんでした。

しかしせっかく現地に行くからと試しにNreal Light向けにビルドしてみたところなんの問題もなくNreal Light向けにビルドでき、コンテンツ自体もコードの改変を一切せずに動作させることができました。

今後MESONではVRでプロトタイピングを行い、それをARに持っていく、という開発フローが一般的になりそうなくらい大成功を収めることができました。

閑話休題。

さて、元々Conektonの開発当初からAR in VRプロトタイピングは視野に入れており、これが実際に問題なく動いたことはConektonの今後の展望も明るくなったと言えるでしょう。

AR <-> VR間の変換がスムーズにいったということは、AR <-> AR間の変換はもっとスムーズになると感じています。
つまり、各プラットフォーム間の移植はとても容易になるということです。

そんなConektonですが、今はOSSとして一般に公開されています。利用も商用・非商用問わず利用可能なので、興味ある方はぜひ利用してみてください。また、バグや機能追加のコントリビュートも絶賛受付中なので、興味がある方はぜひOSSコミュニティにご参加ください。

▼ GitHubのリポジトリはこちら
https://github.com/MESON-inc/Conekton

▼ Slackの招待リンクはこちら

MESONはARのユースケース開拓に取り組んでいる企業なので、一緒にARプロダクトを開発したい、こうしたことに興味があるエンジニアを募集しています。興味がある方はぜひご連絡ください。

https://twitter.com/edo_m18



この記事が気に入ったらサポートをしてみませんか?