[AR] Web ARアプリを作成したかった話[雑談]
はじめに
こんにちは、ゆきおです。
今日はUnityのARFoundation以外のARライブラリを紹介したいと思います。
とある案件でARアプリを作成することになったのですが、試行錯誤を重ねに重ねて
なかなか大変な思いをしたので振り返りということで書いていこうと思います。
ARアプリで直面した問題
まず大きな問題として、
・期間が短い
・スマホアプリの障壁
この2つがありました。
2ヶ月くらいでリリースしたいってことだったのですが
ARアプリはつまるところスマホアプリですので、AppStoreなどに申請しなければなりませんので時間がかかります。
さらにはユーザーにとってスマホアプリをわざわざダウンロードするという作業を強制するのは好ましくない。
ということでした。
そこで行き着いたのがWeb上でARアプリを構築するというものでした。
これならばQRコードを読み取ってARコンテンツを楽しむことができます。
スターバックスがAR看板というのを以前やっていて、それをたまたま見かけたのでやってみようと思いました。
そこでまた重たい問題が発生します。
AR Foundationの欠点
まずはUnityのAR Foudationで作ってみようかなと思ったのですが
ARFoundationはWebに対応していない
という大問題がありました。前提が覆ります。
最近はニュースで見たのですが、ARコンテンツをWebViewで表示できるとか何とかあるらしいですね?うろ覚えですが…
スマホアプリとしてはリリース出来ない、そんな時間もない。
Webで公開しようとしたらUnity単体では対応していない。
ということで辿り着いたのが「ZapWorks」と「8thWall」の2つでした。
どちらもWebARに特化したサービスです。
ZapWorksに至ってはUnityのSDKが利用できるので願ったり叶ったりでした。
しかも ZapWorksのコンソールからQRコードを生成したり、URLを生成してくれたりとかなり充実したサービスを提供しています。
ということでチュートリアル読んだり公式に問い合わせたりして作って行ったのですが次の問題が発生します。
💰高え💰
無料版ももちろんあるのですが、商用利用だったりアプリの容量をグレードアップするにはプランの変更が当然ながら必要でした。
アプリの内容自体も結構なボリュームで、テクスチャの解像度を下げたりだなんだして最適化を図ったのですがそれでもProプランは必須です。
まあまあなお値段しますし、なんて言ってもドルベースなんです…。
XR業界というのは海外がかなり進歩していて、基本的には海外とのやりとりになります。
料金の壁、言葉の壁、様々問題と手間が発生し難航しました。
幸い英語ペラペラな方が会社にいるのでミーティングに通訳として立ち会ってもらいお話ししたのですがやはり料金問題が大きく、厳しい状況でした。
そこで第二案、8thWallについて調査してみました。
8thWall
AR業界ではお馴染みのNiantic社が買収した会社です。
NianticはポケモンGOとかモンハンNowとか作った会社ですね。
こちらもZapWorks同様、 QRコードを生成してくれてWeb上にサクッとARアプリを構築できるサービスを展開しています。
が、しかしこちらはUnityのSDKがありませんでした。
8thWallの中に既に開発環境が用意されており、画像の登録からコーディングまで完結するという便利なものでした。
がしかし、JavaScriptベースなんですね。
8thWall向けに魔改造されたthree.jsやAR.jsで、結構直感的かつシンプルに記述できます。
とはいえUnityでやっていたようなことが全て出来る保証はなく、案の定3Dモデルの拡張子に指定があって用意してもらったモデルが使えないとか、アニメーションが再生出来ないとか色々難儀しました。
幸い、サンプルプロジェクトが大量にあるのでそれを参考に試行錯誤して何とか実装を進めたのですが最後の最後にトドメの問題発生。
容量デカすぎてクラッシュする
スマホがとんでもない熱を帯び発火するんじゃないかっていうくらいでした。
そもそもスマホアプリでやるようなボリュームをWeb上でやろうというのに無理がありました。
画像検知をベースにしていたのですが、動画と3Dモデルを用いたコンテンツ表示が10個ずつというかなりのボリュームでした。
サンプルアプリなど色々探し回ってもそんなことしてる人がいなかったのでどうにもならず、まさに惨敗でした。
WebARで実現できることって、それこそ「看板の中に空間が広がっている」とか「コーラの缶に動画が流れる」とか、単一コンテンツなんですよね。
XR業界の今後
この経験を通して思ったことは、とにかくARはまだまだ認知度が低いということです。
検知するためのマーカー1つ取っても、「こういうマーカーじゃないと検知は難しい」ということすら伝えるのに時間がかかりました。
そしてぶっちゃけ「ショボい」というのが正直な感想です。
コンテンツを表示しても「おー!!へえ………で?」で終わります。はい。
自分がユーザーだったらすぐ飽きるし、まあ最近何だか未来的なもの出てきたよねーっていう話のタネくらいな気持ちで見てしまいます。
当時はどちらかというとVRChatやClusterなどVRコンテンツの方が取り上げられていました。
しかし正直VRコンテンツも、メタバースとか言ってるけど結局MMOと何が違うん???という思いでした。
アバターを作って仮想世界へ赴き、人と交流する。
それってもうオンラインのゲームでとっくに実現しているし、なんだか新鮮味に欠けているなあと思いました。
今となってはARゴーグルも当たり前に出てきてどんどん普及しています。
昨今のWWDCを見てもVisionOSについての発表や、「空間デザイン」なんて言葉も誕生していて、AR開発者にとってはようやくここまで来たか!というところではないでしょうか。
まだまだ黎明期、これから業界の発展に期待するばかりです。
日本も乗り遅れないよう、頑張っていきたいですね。
ちなみに自動車や医療、建築など産業分野ではUnityもUnrealEngineも既に活用されまくってます。
非常に興味深く、夢のある事例ばかりなので興味のある方は調べてみてください!
いつか我々一般市民に当たり前のように普及する日を夢見て備えましょう。
ではでは、お疲れ様でした。
Discussion