UnityでできるVR開発 モバイルアプリなら個人でも開発可能
VR元年と言われた2016年から多くのデバイスの発売やソフトウエアの対応が進み、いよいよ本格的な実用段階へ進みつつあります。今回は実際にVRアプリを開発するために必要な環境などを簡単にまとめてみました。
ある程度高スペックが求められるハードウェア
VRの開発では、それなりのスペックのPCを準備する必要があります。corei7以上のCPU、メモリも16GB以上、ハードディスクも素早く読み書きができるSSDで十分な容量を準備した方が良いでしょう。様々なツールを画面上に表示するため、大画面が使えるデスクトップPCを利用した開発が普通で、高性能なグラフィックボードも必須です。
ワークステーションやグラフィック処理専用に開発されたハードウエアが必要だったひと昔に比べると敷居は低くなりましたが、ストレスなく作業を進めるのであれば、ある程度のスペックのPCをあらかじめ準備していた方が良いでしょう。メモリやハードディスクは後から増設もききますが、CPU、大画面モニタ、グラフィックボードについては初めからそれなりのものにしておくべきです。
開発環境(ソフトウエア)
現在最も利用されているのはUnityと呼ばれるソフトです。3Dパーツやゲームエンジンなどの豊富なツールが利用できるため、スピーディに開発を進めることができるのが特徴です。また、複雑な制御を必要としないのであれば開発言語を一切使わずにVRコンテンツを制作することができるなど、初心者でも導入しやすいことが大きなメリットで世界中で100万人を超える開発者が利用しています。
C#やJava Scriptなどを使えれば高度な開発も可能ですので、現在のVRゲーム開発には欠かせないソフトになっています。より本格的なアーケードゲームなどでよく利用されているのがUNREAL ENGINEというソフトです。こちらはC++やBluePrintという開発言語が対応しています。目的や最終的な実行環境に合わせて開発ソフトを選択することになります。費用は月額数千円から数万円ぐらいのサブスクリプションが選べます。
テスト用デバイス
ヘッドマウントディスプレイや、スマホでの再生など開発したアプリを再生する環境に合わせてテスト用のデバイスを準備しておく必要があります。Oculus Riftであれば4万円程度、他のヘッドマウントディスプレイでも数万円程度の費用がかかります。複数のデバイスで事項チェックをしようとしたらそれなりにコストがかかってしまいます。スマートフォン用であればiOSとAndroidが実行環境になりますが、Androidの場合ハードの種類が多いのがネックとなっています。
リリースするプラットフォーム
PC向けのVRゲーム配信であれば、例えばSteamというサービスがあります。コミュニティに所属した上で、開発したゲームについて配信する場合ユーザーの支援を得た上でという条件がつきますが比較的敷居は低いのではないでしょうか。iOSであればApple Developer programに登録した上で仕様にしたがって開発し、Apple社の承認を受ける必要があります。仕様を満たさない場合は、英文メールでのやり取りを通じて修正しなければなりませんので、英語に不慣れの方はやや苦労するかもしれません。Android向けであればGoogle Play Developer Consoleへの登録とGoogle Playでの配信になります。手順としてはAppleの場合とほぼ同じですが、事前審査はありませんのでアプリの登録自体はAndroidの方がややスムースに進みます。
個人でもVRコンテンツを開発することが可能
ハードウエア・開発環境・テスト環境・リリースについて、全てを通算するとそれなりに費用も手間もかかりますが、個人でも可能な水準で済ませることができます。一昔前に比べれば格段にこのような開発に取り組むことが容易になってきていることは間違いありません。実際、個人が制作したVRゲームも数多くリリースされており、人気を集めるものも増えてきています。今から取り組むという方でも十分にチャンスがあると言えるのではないでしょうか。
今回はゲーム開発を中心とした記事となりましたが、VRが利用される場面は他にもたくさんあります。医療現場・建設や製造などの産業用・教育コンテンツ・観光・災害訓練など応用できない分野を探す方が難しいぐらいです。こうした専門的な知識と高度な制御が必要とされるVRコンテンツについても今後利用が拡大し、日常的に見かける場面も増えることでしょう。もちろん、企業側としてもPRや社員教育、業務の効率化、効果的な宣伝広告など戦略的に取り入れることで効果を出すことが期待できます。VRコンテンツの制作ができる技術者に対するニーズは今後増加していくでしょう。
Error, group does not exist! Check your syntax! (ID: 1)