昨今、VRアプリ(仮想現実)という言葉を耳にする機会が増えていませんか? 中にはすでに「VR Zone」や「SEGA VR AREA AKIHABARA」などのアミューズメントパークやPlayStationなどのゲームでVR体験をした方もいるのではないでしょうか?
上記以外にもヘッドマウントディスプレイ(写真1、2)と呼ばれるVRゴーグルを装着してスマートフォンで簡単に体験することができます。
VRアプリを簡単作成できる「Unity」
VR体験した方の中には、「自分でもVRアプリ(ゲーム)を作ってみたい」と思う方もいるかもしれません。
単純にゲーム開発するには、動作をさせるための「プログラミングの知識」、キャラクターを動かすための「グラフィックの知識や行列計算などの数学知識」さらには「効果音やBGMを鳴らす方法」や爆発や炎などの「エフェクト表示」、メニュー画面などの「UI(ユーザーインターフェース)構築」ゲームパッド/スマートフォンからの「入力制御」などが必要になります。さらにそのアプリをVRに対応させるには「VRの知識」が必要となります。
これだけの知識をすべて一から身につけるには、学習やコスト面でも敷居が高く、この時点でゲームを作ることを諦めてしまう人もいるかもしれません。しかし、そんな開発の難しい部分をわかりやすく・使いやすくまとめたのものがUnityなどのゲームエンジンと呼ばれるものです。Unityを利用することで、複雑なことをゲームエンジンがサポートしてくれるため、ゲーム開発を身近なものにしてくれます。
Unityの特徴
Unityのゲームエンジンとしての特徴を以下に示します。
- C#、JavaScript(UnityScript)を利用してスクリプトを記述することで幅広い表現が可能
- 3Dキャラクターのアニメーションを制御する「アニメーションシステム」
- ゲームに欠かせない炎や爆発、竜巻といったエフェクトをパラメータの調整だけで作成可能
- ボタンやリスト、スライドバーなどUIの機能が標準サポート
Unityはゲームエンジンの特徴以外にも以下の特徴があります。
- 3Dモデルやアニメーション、マテリアルなどのアセットがアセットストアで入手可能
- マルチプラットフォームのサポート
- 収益化や生産性の向上など開発者をサポートするサービス(表1)
表1 豊富なサービス
サービス | 説明 |
Unity Ads | ゲーム内に動画広告などを表示 |
Unity Analytics | 継続率やプレイヤー行動などを解析 |
Unity Certification | Unity認定試験 |
Unity Cloud Build | クラウド上でアプリをビルドし共有できる |
Unity Everyplay | ゲーム動画を録画・シェア |
Unity IAP | アプリ内課金 |
Unity Multiplayer | マルチプレイ機能 |
Unity Performance Reporting | アプリケーションエラーを収集・表示 |
このように、Unityはゲームエンジンの機能だけでなく、アセットストアやサービスを含めて総合的にゲーム開発の敷居を下げてくれていることが理解できたのでたのではないでしょうか。
「Unity」を使えば簡単に実現できるということはわかったけれど…
最後にそう言っても、そもそもVRアプリはもとより、Unityも使ったことがない…、そんな方にピッタリの書籍を紹介します。『作って学べるUnity VRアプリ開発入門』は、はじめてVRアプリ開発を体験したい人のための入門書です。身近なスマートフォン、開発環境にVRと親和性の高いUnityを利用することで、VRに必要な知識からVRアプリの開発工程まで一通りの体験ができます。また、3つの異なるVRアプリの作成を通して、Unityの基本的な機能を学ぶことができますので、Unityをはじめて体験する人にもおすすめです。