ゲーム開発者以外も最低限知っておきたいUnityの基礎知識&無料版Unityのインストールチュートリアルと画面構成:ゲーム開発初心者のためのUnity入門(1)(1/3 ページ)
Unityで3Dゲームを作るまでのいろいろな処理を解説する連載。初回はUnityの特徴を紹介し、開発環境の構築手順や画面の見方を一から解説する【Windows 10、Unity 5.4に対応】。
本連載「ゲーム開発初心者のためのUnity入門」はUnity 5.4の入門として、ゲームを作るまでのいろいろな処理を解説するものだ。実際にゲームを開発する連載ではない。あくまで、ゲームを作るための前段階という認識で読んでいただきたい。この入門編をマスターして、各自思い思いのゲームを作っていただければと思う。
初回は、Unityの特徴を紹介し、Unity 5.4の開発環境の構築手順を一から解説する
なお、筆者がUnityをインストールしているOS環境はWindows 10 Pro 64bit+Anniversary Updateだ。
3Dゲーム開発に革命を起こし、ゲーム以外にも進出する「Unity」とは
主にスマートフォン向けで現在のゲーム開発の定番ツールとなっているUnityとは何なのか、皆さんはご存じだろうか?「よくは分からないが、名前だけは聞いたことがある」という方も多いのではないだろうか。
Unityとは、ユニティ・テクノロジーズ社が提供するゲーム開発プラットフォームだ。Unityの開発ツールは、3Dゲーム開発の手軽さとその物理エンジンが有名だが、2Dゲーム開発にも対応している。公式サイトでは「Game Engine」とあるが、実際にはゲームエンジンのみならず、開発環境や実行環境も含む「ゲーム開発プラットフォーム」と言った方が正しいだろう。
PC、Web、コンソールのマルチプラットフォームに対応
Unityは無料のPersonal版と有料のPlus版とPro版、Enterprise版がある。詳細については下記のURLを参照してほしい。
なお本連載では、無料のPersonal版を使用するが、Unity 4では、Professional版でしか使えなかった機能が、5.4では無料のPersonal版で全て使用可能となっている。
アセットストアで素材を入手
アセットストアを展開しており、キャラクターモデル、プロップ、マテリアル、テクスチャ、背景ペイントツール、ゲーム制作ツール、オーディオエフェクト、音楽、ビジュアルプログラミングソリューション、スクリプト、エディタ機能拡張などを入手・購入できる。また、そこに下記のようなアセットを販売することも可能だ。
コミュニティーやエコシステムを形成。ゲーム以外の分野にも進出
日本を含む世界中で開発者が増え続け、ユーザーコミュニティーが幾つも形成されている。また、Oculus Rift、Leap Motion、Kinect、HoloLens(※)など次世代のデバイスにも素早く対応し、それがまた人気を呼ぶという好循環を生んでいる。上記アセットストアでの販売・購入も盛んでエコシステムを形成している。
さらに、ゲームのみならず建築、医療、自動車、教育、プロジェクションマッピングなどさまざまな分野で活用されるようになってきているので、ゲームが嫌いな人も無視できない存在になりつつあるといっていいだろう(参考:ゲーム嫌いも知っておきたい3D CG/VRのエンタープライズ活用事例〜Unity Solution Conference 2014まとめ)。
※ HoloLensは2016年9月の原稿執筆時点では、日本での発売は未定。米国とカナダの限定販売となっている。
ノンコーディングで3Dゲーム開発のハードルを下げた
なぜUnityは、ここまで人気を得たのだろうか。上記のようなマルチプラットフォーム対応、アセットストアももちろん人気の理由だが、これはあくまでも後から追加されたものだ。初期から続くUnityのすごいところはノンコーディングで3Dキャラクターを動かしたり、3Dのゲームステージを設置したり、専門知識がなくても物理エンジンをすぐに導入できたりすることが可能な点だと考える。
例えば、従来iPhoneアプリで3Dオブジェクトを扱うのは大変な作業が必要だった。詳細は少し古い記事だが、「OpenGL ESが大変な3Dアプリ開発を楽にするUnity」を参照してほしい。
JavaScript、C#、Booで開発できる
この手軽さが従来の「複雑で困難」とされてきた本格的な3Dゲーム開発のハードルを下げ新たな3Dゲーム開発者を次々と生み出したといえるだろう。一方で、ノンコーディングはあくまでも基本的な動作に限られるので、少し複雑な処理をする場合のためにScriptも用意されている。
Scriptつまり、Unityで使えるプログラミング言語は「JavaScript」「C#」「Boo」の3つだ。従来の3Dゲーム開発で必要だったC/C++言語を使ったことがなくてもロジックを実装できるのもまた、Unityが人気を得た要因だろう。
「JavaScript」は通常の「JavaScript」とは多少異なり、「Unity用JavaScript」となっているので、注意が必要なところもある。C#については、2009年にはC#を使ってiPhoneアプリ開発ができるツールとしてUnityが注目を集めたことも覚えておいてほしい(参考:OSS実装「Mono」で広がる.NETの応用〜iPhoneでC#アプリが審査に通るワケ)。Booについては、各自Webの情報を参照してほしい。
これらの中で、今回の連載で使用するプログラミング言語は、C#をメインに解説するが、同時にJavaScriptも併記する。
ただし、コードエディタにはC#の場合はVisual Studio Community 2015を使用するが、Unity用に最適化されたJavaScript(Unity Script)は、Visual Studio Community 2015で開くと、赤い波線ばかりが表示されて使えない。そのため、JavaScript(Unity Script)に関しては、Unityに標準で付属しているMonoDevelopを使うことになる。両者を切り替えて使用するのは面倒なので、どちらかの言語に絞って読み進めることをお勧めする。
基本的にはノンコーディングでゲーム開発するための連載なので、C#を解説する部分はそれほど多くないが、適宜JavaScriptやBooに置き換えてもらっても問題ないだろう。
Unityがどんなものか分かったところで、Unity 5.4の開発環境をセットアップしてみよう。Unityの開発環境はMacとWindowsで使えるが、本連載ではWindowsで開発を行う。
関連記事
- HoloLens用Unity 5のプロジェクトをUWPとして書き出しエミュレータで動かす
拡張現実(AR)用ヘッドマウントディスプレイ「HoloLens」のエミュレーターを使ってHoloLens用アプリの作り方を解説する本連載。今回は、HoloLens用Unity 5で簡単なUnityプロジェクトを作成し、それをUWPに書き出してHoloLens Emulatorに配置する方法について。 - Unityでも使える無料ARライブラリVuforiaの基礎知識とライセンス登録、インストール、簡単な使い方
本連載では、ARを無料で制作できるライブラリVuforiaとUnityを使うことで、誰でも簡単にARのコンテンツを制作できる方法を紹介します。初回は、Vuforiaの概要とライセンス登録の仕方、Unityにセットアップする方法、簡単なARコンテンツの作り方について。 - UnityでWebカメラの画像をリアルタイムで複数テクスチャとして表示する&Kinectセンサーと連動させる
ゲーム開発環境Unity 5の「Personal Edition」では、Unity 4.6以前では有料だった機能が無料で使えるようになった。本連載では、Unity 5で無料になった機能の使い方について解説していく。初回はWebカメラと、「Kinect for Windows v2」を使ったサンプルを紹介する。
Copyright © ITmedia, Inc. All Rights Reserved.