Hinode LaboBlog技術VR/ARプロジェクトを海外のリモート開発で行うときの進め方や、困ったこと、テストなど

VR/ARプロジェクトを海外のリモート開発で行うときの進め方や、困ったこと、テストなど

プロジェクトの概要

ベトナムでも2年ほど前まではVRなどを開発する会社はそこまで多くありませんでしたが、ここ1年でVRなどの開発をする会社が増えてきた印象があります。
私は過去にOculus、Vive、あとはアメリカの特殊MR機器や最近では某アミューズメントパークで使用されたMRやARのゲームの開発を行いました。
VRやARシステムは非常に多くの問い合わせがあります。
問い合わせの種類としては
・実際の現場でできない危機管理シミュレーションなどの研修をVRでできるシステムを作りたい
・不動産の建築イメージをARでお客様に見せたい
・理科の授業で使えるMRシステムを作りたい
などどちらかというとゲームというより実用的な利用での相談が非常に多いです。

VR/ARの開発はどのようにして行われる?デバイスやテスト

主にVR/ARのシステム開発には2つのフェーズがあり、3Dモデル制作とシステム開発です。

主にこのようなメンバーがシステム開発に携わります。
システム開発の責任者(日本人)
3Dモデル制作の責任者(日本人)
日本語ができるブリッジエンジニア
3Dモデル制作するデザイナー
システム開発するプログラマー
テスター

日本人が間に入ることによって品質を担保します。
特に3Dモデルなどに関しては感性の違いがある為、日本人が間に入って品質を管理していくことがとても大切です。

開発の流れは

1. 設計
日本人システム担当者とクライアントによる要件のすり合わせを行います。

2. 開発フローへの落とし込み
この段階から日本語ができるブリッジエンジニアが参画します。
ブリッジエンジニアは日本語もシステム開発もできる為、開発者に要件を伝える為に非常に重要な役割を担います。

3. 3Dモデル制作
Mayaや3D Maxなどのシステムを使用して制作を行います。
モデルを作ったり、アニメーションを作ったりすることを3Dモデル制作で行います。

4. システム開発
システム開発は主にUnityという開発エンジンを使って開発をしていきます。
スマホゲーム開発ツールとしてのシェア率の50%はUnityが占めていると言われています。
近年では、映画などの高品質化に伴い映画などもUnityで開発するケースもあります。

5. テスト
完成したシステムのテストを日本語ができるテスターやBrSEが行っていきます。
その後、日本人のシステム担当者が最終チェックします。

VRなどの開発のフローは基本的には他のシステムの開発と大きく変わりません。
しかし、開発の途中で発生する問題は他のシステム開発より複雑です。

VR/AR開発で、オフショア特有の困ったこと

テストすると不自然な部分がたくさんある
完成したシステムを見てみると「あれ?」っと思うことがたくさんあります。
特にVRやMRの場合デバイスを使っている本人しか確認できない為、「ここがおかしいよ!」とリアルタイムで伝えるのが非常に難しいです。
その為、ゲーム中の映像を録画して開発者に伝えるしかないです。
録画を忘れると再度再現のやり直しです。
特に難しいのがサウンドです。「おはよう」と話してほしい場面で「さようなら」っとなっていることは多々あります。
このミスはベトナム人の開発者ではわからないので日本語ができる人のテストが必須となりますね。

端末がない
実機が日本で先行して発売されているがベトナムではまだ発売されていないが開発をするケースがあります。
その場合日本から機材を取り寄せるのですが、なぜか届かなかったり、届いたが欠陥品だったりして機材なしでシステム開発を始めるケースもありました。
ある程度は開発はできるもののやはり機材がないと難しい部分があります。

想定外の不具合
VRなどの最新機器の場合、それぞれの開発者キット(SDK)が存在しています。
システム開発をしていると解決できない難題があります。
その際に自分たちのシステムの調査をひたすらしてもBugが見つからないことがありました。
「結局Bugの原因はSDK側の不具合だった」、というケースもありました。
SDKの開発元がクリスマス休暇に入り数日間解決出来なかったときは大変でした。

VR/AR開発で技術的なTips

VR/AR開発の技術的なコツとしては1つまずはシステム開発を経験してみることだと思います。
Oculusで開発ができるようになればViveでもHololensでもなんでも開発ができるようになります。
なのでまずは1つ経験してみるのもいいかな?っと思っています。

そして、一番は開発者に新しい端末に慣れてもらうことです。
一定期間、研究開発の意味合いである程度自由に触ってもらうことが大切と考えています。
その中で端末について詳しくなってもらうことでその後の開発を円滑に進めることができます。

今後もVR/AR市場は増々伸びてくると言われています。
しかしVR/ARの開発できる人材はまだまだ限られています。そこでオフショア開発に着眼するのも一つの選択肢としてありなのではと考えています。