VRとAR

VRもどきの動作デモとARの動作デモを作る機会があったので、その二つを連結してみました。

ユニティちゃん

デモプロジェクトの関係者より「ユニティちゃん」を使うようにリクエストがあったので、モデルデータ等はユニティちゃんを使用しました。

ユニティーちゃん

「ユニティちゃん」は、ゲーム開発プラットフォームのUnity3Dで作り出されたキャラクターで、一定の条件下で自由に使うことができるモデルデータや音声データが提供されています。
最新の動きではUnity上で動くVOCALOIDプラグインへの、ユニティちゃんのボイスデータ供給が予定されているそうです。
また、一部のスマホゲームでコラボも行われているようです。

その辺は公式サイトに情報があるので こちらへ。

ユニティちゃんライセンス

このコンテンツは、『ユニティちゃんライセンス』で提供されています

Vuforia

ARを実現するのおなじみのVuforia。昔はQCARって名前でした。 もともとはそのQCARの名前の通りQualcommのモバイルチップのSnapDragonに最適化されたARエンジンだったものですが、iOS版も作られて非常に使いやすいARエンジンとなりました。 基本的には無料で使えるのも、すごくありがたいです。 Qualcomm Vuforia 公式ページ

制作

もともとはVRとAR両方のデモを別々に作る予定でした。 ですが、作っているうちに一体化できそうかも、と思い至り、くっつけちゃいました。 VRモードでは、ジャイロセンサーを使って本体の角度をカメラの動きに連動させて、全周を見渡せるように作りました。 しかしこのままだと一箇所でしか周辺を見渡せないので、カメラ位置を変更できる仕掛けを仕込みました。 この辺は昔からあるVRを知っている人にはおなじみの視点切り替えボタンになりますが、全体がリアルタイムの3DCGであることを活かしカメラ位置が滑らかに飛ぶように移動します。

ひとしきりぐるぐる見渡したら、AR用のマーカーを設置、これはユニティーちゃんのロゴを使用してみました。 ARマーカーの方向に本体カメラを向ければ、カメラがARでのカメラ位置に滑らかに移動し、背景が消えARモードに突入します。

追加制作

もういっこ追加で、簡単なVRゴーグル対応を施しました。 UIを追加しメニューで通常モードとサイドバイサイド方式の表示モードを切り替えられるようにしました。 さしあたり簡易的なものなのでバレルディストーションは省略。

サイドバイサイドモード画像

ARモードでもサイドバイサイドで維持するので、表示された3Dモデルは立体視できます。 ちょっとした難点はカメラからの映像は単眼カメラからの映像ですので、どうしてもモデルと立体感がずれることで、モデルが微妙に浮き上がります。 また、背景の本体カメラの映像を全て入れる様に表示しているので、上下に黒いスペースが発生します。 これはVuforiaのロゴ表示の位置が左下スミなので致し方なしですが、角度によっては背景映像からドーンとモデルがはみ出すのでダイナミックな絵にはなります。

サイドバイサイドモードAR画像

今後の課題

課題としてVRゴーグル装着時に画面をタッチ出来ないのでなんらかの操作の手段を考える必要があるかと考えています。