今回はゲーム開発初心者の方向けの話題で、タイトルのとおり
を丁寧に解説するという内容になっています。
ゲーム開発初心者の方向けの情報を調べてみると、よく「Unityがオススメ!」というような記事を見かけるので「これからUnityを始めてみようかな」と思っている初心者の方も多いかと思います。ただゲーム開発初心者の方がUnityを始めるにあたっては
- そもそもUnityってどういうソフト?
- どんなゲームを作れるの?
- 使うには知識やPCスペックが必要?
- 効率のいい勉強方法は何かある?
といった疑問があると思います。しかし調べてみても、その辺について明快に答えているサイトはあまりないようなので、なんか分かったような分からないような微妙な感じになってしまいますよね。
そこでここでは、執筆時点でUnity歴5年・かつUnityでゲームを35本以上開発してきた私がUnityの始め方について丁寧に説明し、Unity初心者の方の疑問を解消できるようにしてみますね。
そもそもUnityとは?
まずはじめに、そもそもの部分ですがUnityって何?というところからご説明しようと思います。
Unityは端的に言えば「ゲームエンジン」とよばれるゲーム開発ソフトの一つです。ゲームエンジンとはゲーム開発に必要な機能が一通りそろったソフトのことで、これを使うことによって効率よくゲームを作ることができます。
ゲームエンジンというと色々なものがありますが、その中でもUnityは非常に高性能なプロ仕様のエンジンでありながら、使いやすさも兼ね備えておりアマチュアからプロまで幅広い人に使われているのが特徴です。
Unityの魅力
そんなUnityですが、具体的な魅力としては次の4つが挙げられます。
- 2D/3Dを問わずあらゆるジャンルのゲームを作ることができる
- 色々な環境で動くゲームを作れる
- 海外のソフトだが日本語の情報が多い
- 趣味レベルなら無料で使える
まずはUnityは(得意・不得意はありますが)2D/3Dを問わずあらゆるジャンルのゲームを作ることができるのが大きな魅力です。例えば私がUnityで実際に作ったことがあるジャンルだけを書きだしても
- アクションゲーム
- FPS
- オープンワールドゲーム
- ホラーゲーム
- 脱出ゲーム
- パズルゲーム
- ノベルゲーム
- RPG
- レースゲーム
といったゲームを作ることが可能です。しかも作ったゲームはPC・スマホ・ゲーム機・VRなど色々な環境用に出力できるのでより多くの人に遊んでもらえるチャンスがあります。
またUnityは海外製のソフトですが日本人ユーザーが多く、ネットで調べれば日本語の情報がたくさん出てくるのもかなりのメリットになります。当然ながら日本語の情報が多ければ勉強も捗るので初心者の方には嬉しいポイントです。
あとはUnityは趣味レベル(=具体的には過去12か月の収益・資金が10万ドル未満)の場合は無料で使えるのも非常にありがたいですね。しかも無料で使っても機能制限はほぼ無いに等しいので個人ゲーム開発者にも優しい仕組みになっています(もちろん収益化もできます)。
Unityはどんな人に向いているか?
次に、ゲーム開発においてはゲームエンジンと自分との相性が非常に重要になってくるので、この辺で「どんな人にUnityをお勧めできるか?」という部分を私なりに説明してみようと思います。端的にまとめるとUnityを使いこなせる確率が高い人は次のような方です。
- プログラミングに対してやる気がある人
- 2D/3Dを問わず、色々なジャンルのゲームを作ってみたい人
- 分からないことがあってもめげずに調べられる人
まず、Unityでは「C#」というプログラミング言語を使う必要があるので、プログラミングに苦手意識がなく・やる気がある人はかなりUnity使いとしての素質があります。また上の方に書いた通りUnityを使えば色々なゲームを作ることができることから、ジャンルにとらわれず色々なゲームの開発にチャレンジしたい人もなかなかの素質の持ち主です。あとはプロ仕様のゲームエンジンということを考えるとゲーム開発初心者の方が使うには少々ハードルが高めなので、分からないことがあっても投げずに調べられる人にもお勧めできます。
逆に言えばプログラミングが嫌いな人や特定のジャンルのゲームだけを作りたい人・折れやすい人はUnityを使うのではなく別のゲームエンジンを使ったほうがいいと思います。
余談:ライバルの「Unreal Engine(UE)」との違い
ちなみに余談なのですが、ゲーム業界に詳しい方ならUnityのライバル的な存在である「Unreal Engine」というゲームエンジンをご存じだと思います。ゲーム開発界隈では両者のどちらが優れているかとか、どっちを使うべきなのか?といった議論がよく巻き起こるので「結局何が違って、自分はどっちを使えばいいんだ?」と悩む方も多いのではないでしょうか。
この点についての詳しい話は下記の記事でしているので気になる方は併せてご覧いただきたいのですが…
簡潔に言うと両者の主な違いは次のような感じになっています(下記以外の性能は大体同じです)。
比較項目 | Unity | Unreal Engine |
---|---|---|
使用するプログラミング言語 | C# | C++ |
エディタの重さ | 若干軽い…気がする | 重い |
日本語の情報の多さ | 多い | 少ない |
巷ではよく
- Unityはグラフィックがショボいので2D/スマホゲーム向き
- Unrealはグラフィックがきれいだから写実的な3Dゲーム向き
などと言われていますが、実はUnityでも写実的な美麗グラフィックのゲームを作れますし、Unreal Engineでも2Dゲームを作ることができるので性能的にはほぼ互角だと言えます。まあ細かい部分の違いは色々あるので自分に合っているほうを使うとよい、くらいに思っていただければよいのではないでしょうか。
ただUnityは親しみやすいC#言語が採用されており、日本語の情報も多いため使いやすいという面があります。したがって私としてはゲーム開発初心者の方にはUnityのほうがオススメだと思っています。
必要な知識・PCスペックなど
さてUnityの概要についてご理解頂いたところで、次はUnityでゲーム開発を始めるにあたって
- 必要な知識・スキルはどんなものがあるか
- PCスペックはどれくらいが必要か
といった点についてご説明していきます。
Unityを使うにあたって必要な知識・スキル
まずUnityを使うにあたって必要な知識・スキルとしては次のようなものが挙げられます。
- C#プログラミングの基礎知識(←絶対必要)
- インターネットで必要な情報を収集できるスキル
- 高校レベルの英語力(※あると便利)
真っ先に挙げておきたいのはやはりC#プログラミングの基礎知識ですね。…こう書くと「げ~っ、プログラミングかよ…」と思う方もいらっしゃるかもしれませんが、Unityを使う以上はプログラミングの知識抜きではまともなゲームは作れないと言っても過言ではありません。なのでもし可能であれば、Unityを触る前に最低限C#言語の基本文法くらいは覚えておいていただけるとスムーズにゲームを作り始められると思います(※もちろんUnityを使いながら覚えてもいいです)。
ちなみにC#のオススメの入門書は『確かな力が身につくC#「超」入門』で、この内容を丁寧に勉強していけば基本的な文法がしっかり身につきます。私も初心者の頃はずいぶんお世話になった本です。
次にUnityは非常に多機能なプロ仕様のゲームエンジンですから、初心者の方が使おうものなら分からないことが山ほど出てきます。そこでネット上で欲しい情報を収集できるスキルも必須です。自分でどんどんググって調べる癖がついていないと、分からないことだらけになってゲーム開発が嫌になってくると思いますので調査力も重要です。
あとは必須というほどではないのですが、高校レベルの英語力もあると便利です。Unityは日本語の情報もある程度は充実していますが、高度な情報や最新情報が必要になった場合は英語の文献に当たらないといけない場面も出てくるので英語が得意だとゲーム開発が捗ります。
必要なPCスペック
次にUnityでゲーム開発を行うにあたって必要なPCスペックが気になると思いますが、これは正直作るゲームによって異なるので一概には言えません。ただし目安としては
- 標準的な3Dゲームの開発→デスクトップPCやゲーミングノートが必要
- 写実的・美麗な3Dゲームの開発→最新のデスクトップPCが必要
- 2Dゲーム/スマホゲーム開発→一般的なノートPCで十分
という認識で問題ないと思います。いずれにしても性能がいい方がゲーム開発中にイライラせずに済むに決まっているので、Unityでゲーム開発を始めるついでにPCを買う・交換するという方は予算ギリギリくらいのものを買うことをお勧めします。
次のステップ:使い方講座やチュートリアルで勉強しよう
ここまでの内容をご理解頂けたら、次のステップとしてUnityをインストールして使い方講座サイトで使い方を勉強したり、チュートリアルで実際のゲームを作ってみたりすることをお勧めします。とにかく実際に手を動かしながら勉強するのが上達の近道です。
Unityの使い方やチュートリアルはググって頂ければ色々なサイトが出てくると思いますが、私が運営しているUnity講座サイトがありますのでそちらをご紹介しておきます。
上記の「ゲーム作り方ガイド」では、実際に遊べるゲームの作り方を丁寧に解説しているほか、Unityの使い方やC#プログラミングの基本についてもご説明しています。Unityでのゲーム開発を総合的にサポートするサイトとなっていますので是非ご活用ください。
ゲーム開発のヒント
では最後になりますが、Unityでのゲーム開発で失敗しないためのヒントを一つだけ伝授しようと思います。それは一言でいうと
ということです。
これはなぜか?初心者がすごいゲームを作ろうとすると100%挫折するからです。なので最初は我慢して簡単・シンプルなゲームを作ることから始めましょう。
…実は私も初心者の頃はそうだったのですが、ゲーム開発初心者の人ってなぜか「へへへ…俺ならすごいゲームをサクッと作れるはずだぜ!」っていう謎の自信満々でゲーム開発に挑戦する方が多い気がします。しかしゲーム開発ってそんなに甘くなく、難しいしやることは多いしで大変なので、知識も経験も技術力もない初心者がすごいゲームの開発に挑戦したところであっけなく折れてしまうだけです。
…まあそもそも、普通はゲーム開発って会社規模で何億円もかけてやるものですからね。皆さんが普段触れている高品質なゲームはめちゃくちゃ手間も金もかかってるわけですから、そういうゲームを素人がホイホイ作れるわけがないということは肝に銘じておきましょう。
ただ、そうは言っても「すごいゲームを作りたい」という意気込みそのものや、「面白くて楽しんでもらえるようなゲームを作りたい」という熱意はゲーム開発でとても重要になるのでぜひ大切にしてください。その意気込みや熱意があれば困難に打ち勝ち、ご自身の納得いくゲームが作れると思います。
おわりに
以上、少し長くなってしまいましたがUnityの始め方についてご説明しました。
Unityはゲーム開発初心者の方にとっては少しハードルが高めのゲームエンジンですが、使いこなせればどんなゲームでも作れてしまう最強クラスのエンジンなので勉強しておいて損はないと断言できます。ぜひ上記の内容を参考にしていただき、Unityを始めてみていただければと思います。
この記事がUnity初心者の方のお役に立てば幸いです。