3時間でスマホゲームクリエイターに?
ゲームを遊んでいて『Unity』の名前に見覚えのあるプレイヤーは多いのではないだろうか。
『Unity』は、ユニティ・テクノロジーズが開発したゲーム開発用エンジン。ゲーム開発用エンジンとは、3DCGを動かしたり、ゲーム開発を効率化したりするためのツールがつまったソフトであり、現代のゲーム開発の現場では必須といってもいいソフトだ。
そんな、ゲーム開発エンジンの中でも、『Unity』は2015年にはユーザー数600万人を達成するなど世界トップのシェアを誇っている。
このロゴに見覚えはあるだろうか。Unityは『白猫プロジェクト』のような大手メーカーのゲームから『ひとりぼっち惑星』のような個人制作のインディーゲームまで、幅広い現場で使用されている
手軽にゲーム開発環境を入手できる
Unityはプロのゲーム開発の現場だけではなく、一般の人でも手軽に入手することが可能だ。
Unityには業務用のプランのほか、無料でダウンロードできる「Unity Personal」が用意されており、こちらのサイトでダウンロードできる。
また、Unity自体は下記の要件を満たしていれば、PCでも動作させられる。
ただし、スマホゲームをビルドするために使用する「Xcode」がMacにしか対応していないため、作ったゲームをiOSの端末で動かしたい場合は注意してほしい。
Unity(5.3)の動作環境
- OS: Windows 7 SP1以降、Windows8、Windows10、Mac OS X 10.8以降
- GPU: DX9相当の性能を持つビデオカード
初心者でも3時間でゲームが作れる!?
ゲーム開発に必要な環境は整ったところで、続いて立ちはだかるのは「プログラム知識がない初心者でもゲームは作れるのだろうか」という点。
道具はあっても使いこなせないようでは、ゲームクリエイターへの道は遠いだろう。
ということで、実際にユニティ・テクノロジーズ・ジャパンにて学術・教育方面を担当するクリエイティブ・ストラテジストの簗瀬洋平氏に、実際に初心者でもUnityでゲームを作れるのか伺ってみた。
ユニティ・テクノロジーズ・ジャパンの簗瀬洋平氏。ゲームデザイナー・シナリオライターとして『ワンダと巨像』『魔人と失われた王国』などの開発に携わり、現在はユニティ・テクノロジーズ・ジャパンにて学術・教育方面を担当するほか、慶應義塾大学大学院にて研究者としても活動している
――さっそくですが、本当に初心者でもUnityを使ってゲームを作れるんでしょうか?
簗瀬氏(以下、簗瀬):簡単なゲームからであれば、初心者でも作れます。
ゲーム作りは、ゲーム開発会社などの整った環境じゃないとできないようなものじゃなくて、絵を書いたり、小説を書いたりするのと同じように、気軽に始められる創作活動だと思っています。
私は高校や大学などで学生向けにUnityの使い方を講義しているのですが、シンプルなゲームなら3時間で作っています。
――3時間で!? でも、プログラミング言語とか専門的知識は必要ないのですか?
簗瀬:高度なゲームを作るのであれば、プログラムの知識が必要になりますが、Unityではスクリプトリファレンスが豊富にそろっており、サンプルコードも公開しているので、初心者の方でもスクリプトを学びながら作ることができますよ。
――それは心強いですね。
簗瀬:私も専門的なプログラマーではありませんが、プライベートでちょっとした時間に簡単なゲームを作ったり、ゲームジャムに参加してゲームを作ったりしています。
ちなみに、学生向けに開催しているUnityインターハイでは小学生からの応募もありますよ。
簗瀬氏が実際に制作したゲームの例。2Dシューティングの難易度調整システムについての研究発表のために制作した「誰でも神プレイできるシューティングゲーム」
――小学生から!? では、私も『ひとりぼっち惑星』のような大ヒットゲームを作ったり、3Dがぐりぐり動くようなアクションゲームを作るのも夢じゃない!?
簗瀬:ヒットするかどうかは保証しませんよ(笑)
でも、3Dのゲームを作りたいということでしたら、まずは入門として玉転がしゲームを作ってみませんか?
――玉転がしですか。割りと地味ですね。
簗瀬:まずは何より基本が肝心ですよ(笑)
玉転がしゲームは、シンプルですがUnityで3Dゲームを作る基本が学べますよ。
ゲーム制作スタート
というわけで、簗瀬氏の指導のもと、ゲーム制作をスタート。ここからは制作の様子と初心者から見たUnityの使用感についてダイジェストでお伝えしよう。
まず、Unityを起動した最初の段階ではプレイヤーの視点になるメインカメラと光源しか3D空間には存在しない。
そのため、最初はプレイヤーが立つ地面とプレイヤーが転がす玉を作成していく。
3D空間にオブジェクトを設置したり、メイン画面での操作はさわってみると簡単で、やり方さえわかってしまえばすぐに慣れることが可能だ。
こちらがUnityのメイン画面。「Window」-「Layouts」からカスタマイズが可能で、今回は簗瀬氏おすすめの「2 by 3」のレイアウトにしている
球や立体など簡単なオブジェクトならば、3D空間に簡単に呼び出せる。作成したオブジェクトの位置や角度、大きさは、マウスで直接動かしたり、数値を変えることもでき、操作性が高い
真っ白な大地と空中に浮かぶ「玉」。本作の主人公である
3Dゲームに重要な物理演算エンジンも入っている。「Rigidbody」の設定を追加すれば、重力などに従って動くよう設定でき、空中に配置した球がゲーム開始と同時に地面に落ちるようになる
Unityでプログラミング入門
オブジェクトの配置と設定ができたところで、コントローラーの入力で球を動かせるように設定をすることに。
コントローラーの設定はスクリプト言語で入力するのだが、プログラミングの知識がない人にとって、このスクリプトが不安に感じるポイント。
今回の玉転がしゲームでは、簗瀬氏にサンプルのコードを教えてもらいながら進めた。
どの関数がどんな挙動を設定しているのか、コードの記述について説明を聞いてみると、想像していたものよりも取っつきやすいものであるように感じた。
なお、Unityでは「C#」「JavaScript」「Boo」の3つのプログラミング言語を使用しているので、より高度なゲームを作るのを目指すのであれば、これを機にゲームを動かしながら学んでみるといいだろう。
スクリプトはUnityに内蔵されたエディター「MonoDevelop」を使い編集する
「キャラクターを動かせるだけでは、まだゲームとは言えません。クリアを目指す目標を設定しましょう」という簗瀬氏のアドバイスにより、今回は黄色いエサのキューブを配置し、拾い集めるゲームを作ることになった
集めたキューブの数やクリアを示すUIなども設定。少しはゲームらしい形になってきたか。3Dのオブジェクトと同じように、UIも座標の指定以外にマウスでドラッグして動かすことができる
やっぱり自分のスマホで動作させたい!
簗瀬氏の指導を受けながら、球転がしゲームが形になってきた。しかし、せっかく、作ったならば自分のスマホ上で作ったゲームを動かしたいもの。
残り時間を使って、スマホ上でプレイするために、アレンジを施すことにした。
現状のままではジョイパッドに接続しないと操作できない状態なので、スマホ上で操作できるようジョイスティックを画面上に表示させてみた
スマホ上で動かすためのジョイスティックも追加され、基本となるゲームはできた。あとは実際に自分のスマホで動かしてみたい。
iOSで動くアプリを書き出すためには、UnityからビルドしたソフトをXcodeというツールを使う。Xcodeは以前は有料のApple Developer Programに登録する必要があったが、2015年6月から無料での登録でも利用できるようになった
こうして実際に完成したゲームがこちらである。
まだゲームクリエイターとしての第一歩に過ぎない
――なんとかゲームができましたね。レシピがあるからできたという部分もありますが、プログラムの知識がなくても動かせそうですね。
簗瀬:Unityでは、ゲーム開発初心者のためにチュートリアルを公開しています。
まだ日本語訳されていないものがほとんどですが、動画とスクリプトのサンプルがちゃんとついているので、動画を見ながら進めれば言葉がわからなくても作れますよ。
初めてという方はチュートリアルのゲームを作りながら、技術や知識を身に着けていくのがおすすめです。
8種類のチュートリアルが公開中。自分が作りたいゲームのジャンルに近いものを選んで、作ってみよう
――この玉転がしゲーム、もっと面白くしたいですね。
簗瀬:プレイヤーが操作できて、クリアがあるという点ではゲームですが、本当にゲームの基本という状態です。
ここから先は、どうやったら面白くなるか考えながら、改造してみてください。マップを迷路にしたり、タイムアタックの要素をつけたりと、ゲームを改造するところがゲーム開発者としての第一歩です。
Unityには「Asset Store」という利用者がゲーム用の素材を販売するストアがあります。ユニティちゃんの3Dモデルなど無料で配布している素材もあるので、慣れてきたらインポートしてみて、3Dキャラクターがぐりぐり動くゲームにもチャレンジしてみてください。
Asset Storeでは3Dモデルやテクスチャー以外にもスクリプトや機能拡張なども取り扱っている。実は今回使った画面上にジョイスティックを表示するも、無料で配布されている「Standard Assets」を利用している
玉転がしゲームは日本語マニュアル公開中
今回作成した玉転がしゲームは、こちらで日本語のマニュアルが公開されている。
動画によるレクチャーはないが、Unityの機能や動かし方など丁寧に記載されているので、こちらを参照しながら、玉転がしゲームを作ってみてほしい。
ちなみに、スマホ上でプレイするために施した改造は筆者オリジナルで、チュートリアルのマニュアルには載っていないので要注意
(C) Unity Technologies Japan G.K.
(C) Unity Technologies
(C) Apple Inc.