Unityエンジニアになるには?技術力の身に着け方と実績の作り方
Unityは無料で使えるゲーム制作エンジンです。アセットストアを活用することによってスクリプトを書かずともゲームが作れる手軽な一面を持っています。ゲーム開発に携われるUnityエンジニアになるために必要なものを、今回の記事では取り上げていきます。併せてUnityの需要にも注目し、実績の作り方も紹介していきます。
コンテンツ [表示]
- 1Unityによるゲーム開発と他分野での需要
- 1.1Unityは無料で試せるゲーム制作エンジン
- 1.2ゲーム開発の需要は伸びる
- 1.3ゲーム開発以外でも活躍するUnity
- 1.4ゲーム分野以外の公式パートナーを見てみよう
- 2Unityエンジニアに必要なもの
- 2.1Unityや開発環境に関する知識
- 2.2最低限C#はおさえる
- 2.3他のプログラム言語も触れておきたい
- 2.4なにより実績が必要
- 2.5学習への意欲
- 3Unityエンジニアの実績作りを考える
- 3.1成果物をポートフォリオに加えよう
- 3.2ゲーム開発であれば全てを作る必要はない
- 3.3学習中でもポートフォリオ作成に意識を
- 3.4実際の案件をのぞいてみよう
- 4ゲーム開発関連の実績作り
- 4.1個人開発であればデザイン系のスキルも欲しい
- 4.2チームによる開発はよい経験に
- 4.3モバイル向け作品の公開はコストが必要に
- 4.4働く形にこだわりすぎない
- 5まとめ
Unityによるゲーム開発と他分野での需要
物理演算を搭載したUnityは2Dや3Dを問わず、様々なゲームの開発に利用されています。3Dモデルをそのまま流用できる利便性の高さから、ゲーム開発以外の分野でも需要が高いです。
まずはUnityの特色である導入のしやすさを見ていきましょう。
Unityは無料で試せるゲーム制作エンジン
Unityは年間10万北米ドル以上の収益がなければ無料で利用できます。その際は個人向けのライセンスを取ることになります。
年間で調達した資金に関する規制もありますが、いまからUnityに触れるという方は気にしなくて良いでしょう。
チュートリアルなどの学習ルートも用意されているので、初心者の方でも気軽にゲーム制作を体験することができます。
また、Unityの強みの一つであるアセットストアをのぞくことによって「どのようなゲームのジャンルにどのようなアセットがあるか」チェックすることができます。
ダウンロードやインストールの段階で面倒くさいと感じ投げ出したい気持ちがあるなら、ゲーム制作につきものの試行錯誤に耐えられないと思いますのでゲーム開発はあきらめた方がいいでしょう。
公式サイトからUnityをダウンロードし、学習用の作品を手掛けるまでの道筋は様々なサイトで取り上げられ紹介されています。「初歩的な情報が無さすぎてつまずく」ということは無いはずです。
ゲーム開発の需要は伸びる
ゲーム開発以外でも力を発揮するとはいえUnityの本領はゲーム開発です。Unityエンジニアへの一歩を踏み出す前に、将来的なゲーム開発の需要について考えてみましょう。
Unityの強みの一つはマルチプラットフォームです。PS4やXbox Series X/S、Switchやモバイル向けのゲームを製作することができます。
コンシューマー向けとモバイル向けのゲーム制作過程が全く同じというわけではありませんが、どちらかの開発経験が無駄になるということはありません。
一部アセットを流用することはあるでしょうし、根幹を成すプログラムの言語がC#であることに変わりはないのです。
需要の面でNFTゲームの存在も忘れてはいけません。筆者が興味のあるNBA Top ShotやCryptoKittiesの内容を見てみると、ランダム性と投資を掛け合わせているような内容で「ゲームの腕に比例して勝てる」イメージはありません。
これからNFTゲームが増えていくにつれよりゲーム性が高く、暗号資産に興味がない人でも遊びたくなるような作品が求められていくでしょう。ゲーム開発の需要は増すばかりです。
NFTにつきましてはこちらにも関連記事がありますので、ご参考ください。
ゲーム開発以外でも活躍するUnity
先ほど触れた通り、Unityにはゲーム開発以外にも活躍の場があります。3Dモデルと相性が良く、読みこんだデータの中をゲーム感覚で動き回れる機能が建築分野のシミュレーションとマッチします。
CADやBIMといった建築関連のデータを専用のアプリでUnityに読みこみ、その中でシミュレーションを行います。データの中を一人称視点で歩き回ったり、内装やライティングを変更してみたり、必要な建築資材の計算を行います。
また、ARやVRとも親和性があるため、アセットストアで検索してみると膨大な数のAR用アセットがヒットします。
もちろん『AR』という文字列にヒットした無関係のアセットもあるでしょうが、4,000件に近いヒット数からはUnityとARの密接な関係がうかがえます。
あらかじめ作成した3Dモデルを読みこむという点では製造業とも縁があります。シミュレーションを行うため、自社で物理演算を搭載したアプリケーションを開発するメーカーもあるでしょうが、一から全て開発するのは専用の人員が必要となり大変です。
Unityが使えるのなら『ライセンス契約+Unityで読みこめる形でのデータ出力+場合によってはアセット購入』という形で済みます。
資金に余裕のある企業でも効率化の観点から自社で開発せずにUnityを使うケースもあるでしょう。
ゲーム分野以外の公式パートナーを見てみよう
公式ページで紹介されているUnityのパートナーを見ていきましょう。ここで取り上げるパートナーは主に製造業関連となっています。
・Configit……日本語の情報が見つからなかったため筆者個人の翻訳となりますが、製造会社向けの設計や設定を行っています。有名なクライアントにはジャガーやフィリップスなどがあります
・Interact……先ほど取り上げたAR/VRに関連しています。ほかにもAR/VR関連の企業は存在しますが、Unityと連携が取れることが分かっていればコストも抑えやすくそれが強みとなります
画像に載っている企業が全てというわけではなく、多くの企業がUnityを使っています。元々Unityは外国の企業なので、パートナー企業も外国のものが多いです。
Unityエンジニアに必要なもの
ゲーム開発に携われるUnityエンジニアに必要なものを考えていきましょう。ここではスクリプトが書け、独力で何らかのゲームが製作できるエンジニアを想定しています。
Unityや開発環境に関する知識
独力にせよチームで開発するにせよ、Unityによるゲーム開発環境を整えないことには話が始まりません。
UnityはWindowsのほかmacやLinuxでも利用できますが、汎用性や初心者における導入のしやすさを考えるとWindows版が良いと思われます。赤い枠で囲んであるところです。
物理演算を搭載している関係上、あまりにも3D描画能力の低いPCではUnityがうまく動かないこともあるので気をつけましょう。
Unity本体のバージョン管理を行うUnityHubの導入も含め、開発環境を整える意識をもっておきましょう。
最低限C#はおさえる
Unityで使われるのはオブジェクト指向言語であるC#です。確かにアセットを組み合わせることによって、スクリプトを作成することなくゲームを作ることも可能ですが、エンジニアを名乗るためにはC#の習得は欠かせません。
先ほど取り上げた開発環境の話にも近いですが、Unityではスクリプトを開く際にどのような形で開くかPreferencesによって設定できます。
C#を扱うのであればMicrosoftのVisual Studioを導入し、連携するようにしておくと良いでしょう。
評価の高いテキストエディタを使うのも良いですが、Visual Studioの補完機能によってかなり楽ができます。タイプミスや書き忘れによるエラーも防いでくれます。
Visual Studioの利用にはマイクロソフトアカウントが必要になりますが、本格的なゲーム開発を始める前に導入しておきたいところです。
他のプログラム言語も触れておきたい
プログラムを触り続けるのであれば、Unityで使うC#だけではなく他の言語にも手を出したいところです。エンジニアとしての仕事の幅が広がります。
上記の画像はオブジェクト指向言語についてざっくりまとめたものです。筆者は「C#で遊んだことのある」程度のスキルなので正確性に欠けるかも知れませんがC#を取り巻くイメージとしてはこんな感じかと思います。
本格的な開発の道に進むのであれば、JavaやC++。Webサービスに関わるのであればPHPやJava Script。
昨今のニーズや学習のしやすさをふまえて選ぶのならRubyやPython。Appleが好きで仕方ないのならSwiftといった感じでしょうか。Pythonは暗号資産やNFTに使われるブロックチェーンとも関係しています。
学習サイトの中にはゲーム感覚でプログラミングを試せるコンテンツを用意しているところもありますので、気になる言語で遊んでみてはいかがでしょうか。
なにより実績が必要
いまからUnityの学習を始めようという方には厳しい言葉となりますが、エンジニアになるためにはなにより実績が必要です。
ここでいう実績とは「○○に何年通った」「〇〇で何年働いた」というものではなく「どれだけ作品を作ったか(携わったか)」となります。
学校や仕事の年数もいくらかの目安となりますが、基本的にはポートフォリオに加えた成果物で判断されると思って下さい。
いくら有名な学校を卒業し企業で勤続年数があっても「手掛けた作品、携わった作品はありません」となっては、ゲーム開発者を求める企業側も判断が困ります。
面接の最中に「それでは20分あげますので作品を作って下さい」みたいな話にはなりません。コードを即興で書いたとしてもその場でコードが読めて良し悪しを判断できる担当者がいないと意味がありません。
Unityエンジニアの実績作りに関してはのちほど詳しく取り上げます。
学習への意欲
Unityエンジニアとしてプログラムに触れる以上、継続的な学習が望まれます。Unityを動かすC#を例にとっても、ラムダ式が途中で追加されるなど仕様は一定ではありません。
独学にせよ何らかの学習サービスを利用するにせよ、スキルアップのために学習を続ける姿勢は欲しいところです。
学習への意欲が低いと自分の可能性をせばめてしまいますし、効率的なやり方が生まれてもそれに気付かず無駄の多いやり方を続けてしまうケースも出てきます。
Unityエンジニアの実績作りを考える
先ほども触れた通り、エンジニアとしての実績は正社員としての勤続年数を意味するわけではありません。
作品を提出したり、携わった作品を紹介したりすれば、採用側は求めているスキルをもっているか判断することができます。
実績として紹介できる作品がなければ採用側は判断することすらできません。たとえあなたが未熟な作品と感じていても、提出することによって「ここまでならできそうだ」と採用側は判断できます。
とにもかくにも作品を提出しなければ、そのスタートラインにすら立てないのです。実際に実績(作品)作りをしていく際に意識したいことを取り上げていきます。
成果物をポートフォリオに加えよう
自身でスクリプトを書くUnityエンジニアを目指すのであれば、実際にゲームとして動作するものを用意しないといけません。
いくらオリジナリティあふれる作品を手掛けていても「エラーのために動かない」のでは意味がありません。場合によっては「なぜエラーまみれの動かない作品を提出したの?」と思われてしまいます。
スクリプト単体のエラー、Unityでのテストプレイ時に出るエラー、作品としてビルドしプレイした時に出るエラーと段階的に問題は浮上し、その全てを解決する必要があります。
エラーを取り除き、作品としてプレイできるゲームができたら自信をもってポートフォリオに加えましょう。作品の判断は採用側がしてくれます。
作品を提出すればたとえ自分の望む結果が生まれなくても、フィードバックがもらえることもあり、エンジニアとしての将来に生かすことができます。
ゲーム開発であれば全てを作る必要はない
あなたが独力でゲーム開発を目指す時、ゲームを構成する全ての要素を作る必要はありません。(サンプル画像は専門性の高いBGMをアセットストアで検索したものです)
専門性の高いグラフィック(特に3D)や音楽まで全てこなせる方もいるかも知れませんが、企業側が求めるのは「独力でゲームを開発できる人」ではなく「担当分野できっちり仕事をしてくれる人」です。
「今からUnityとC#とグラフィックと音楽制作の勉強を一から始めるぞ!」と高すぎるハードルを設定するタイプより「まずはスクリプトを少しずつ理解し書けるようにする」と足元を固めていくタイプの方が企業から好まれるでしょう。
全てを一からやろうとすると、途中で投げ出す可能性がはね上がってしまいます。専門性の高い分野はアセットを利用しても良いでしょう。
ただし利用したアセットに関する申告はポートフォリオに盛りこみましょう。いくら無料のアセットでも「このアセットは自分で作りました」みたいな顔をするのは著作権的な問題が出てきます。
無料アセットに関しては「どこまで無料で使って良いか」ガイドラインが定められているケースが多いですが、入手した無料アセットを自作アセットとして公開するのは間違いなくアウトです。
もしストアで入手したアセットを自作したかのように振る舞う人がいたら、著作権に対する意識の低さを企業側が問題視するでしょう。
学習中でもポートフォリオ作成に意識を
チュートリアルや学習用のコンテンツを利用している間に、いくつか作品ができると思います。ガイド通りに作れば誰でも作れるような代物なので、基本的にはポートフォリオに追加することはできません。
ただし、学習用のテンプレート的な素材でもオリジナルの味付けをし、独自のスクリプトを書き、新たなゲーム性を追加できればその発想は評価対象となるでしょう。
また、学習用の作品を作りながら「ここに新たな要素を追加すればゲーム性が高まるのでは?」「効果音を差し替えるだけでもコミカルになるのでは?」とオリジナリティを加える意識をもっていると、のちのポートフォリオ作成がはかどるかも知れません。
実際の案件をのぞいてみよう
ランサーズやクラウドワークスなど、アウトソーシングサービスで実際の案件をチェックすると、どのようなスキルがUnityエンジニアに求められるかイメージがしやすいでしょう。(キーワード『Unity』で仕事を検索)
Unityの本分であるゲーム開発もありますし、AR/VR関連の開発があるのも見てとれます。
ランサーズに関するサンプル画像ではプロジェクトと呼ばれる単発の案件を表示しています。
それ以外にも、アウトソーシングながら常駐のような形でクライアントの企業と関わっていく仕事も存在します。
求められるスキルによって価格は様々です。在宅の仕事が中心のアウトソーシングサービスでは価格が抑えられがちですので、実際に勤務地へ向かう形ですとまた収入が変わってきます。
このようなアウトソーシングサービスでは、実際にアカウントを作らなくても案件が調べられますので、気になる方はのぞいてみると良いでしょう。もちろん、このようなサービスの中で発注を受け実績を作っていくこともできます。
案件の内容が全く分からないようでは受注できる水準ではありませんが、クライアントが求める機能が明確に理解できた上で自分のスキルと照らし合わせ「これくらいの日数でできる」と目算が立つようなら案件をこなせる可能性が出てきます。
とはいえ、安易にUnity関連の案件を受け、頓挫した場合クライアントに迷惑がかかりますし、作品も完成しないのでポートフォリオにも加えられません。自信がない状態での受注はやめておきましょう。
ゲーム開発関連の実績作り
Unityの強みであるゲーム開発関連の実績作りに焦点を当ててみます。エラーがなく、スムーズに動く作品をポートフォリオに追加していきましょう。
個人開発であればデザイン系のスキルも欲しい
作品の根幹となるスクリプトも勿論重要ですが、UIの制作や調整をできるとゲームとしての完成度が高まるでしょう。
UIは画像作成やデザインとも関わってきますし、専門で担当する方がいるぐらいセンスが必要になる分野です。
ただ独力でゲームを開発するとなると、アセット頼みではかゆい所に手が届かない状況が生まれがちです。
プレイヤーにストレスを与えるインターフェイスやボタンの配置、統一性のないデザインや色使いは折角開発したゲームのクオリティを下げてしまいます。
他作品のデザインを参考にボタンを作ってみたり、スコア表示の位置を変えてみたり無駄な部分を削って軽くしたりと、UIの中で工夫できる要素は多いです。
エラーが出ないのが一番ですが、余裕があったらUIの機能やデザインをブラッシュアップしていきましょう。
小規模のプロジェクトであれば、UI専門のデザイナーがいないこともあります。UI調整にかかった時間は決して無駄にはなりません。
チームによる開発はよい経験に
単独でのゲーム開発はUnityでスクリプトを書くだけではなく総合力が求められますが、チームによる開発となるとまた勝手が違ってきます。
Unityエンジニアを志望される方は、恐らくスクリプトを担当すると思います。製作するゲームのコンセプトを理解し、それに応じたプログラムを準備します。単独での開発と違いコミュニケーション能力が求められます。
たとえ製作したものが商業ベースではなくても、チームとしてのゲーム開発は良い経験になるでしょう。企業側も同じ条件であればチームによる開発の経験者を優先して採用するでしょう。
エンジニアとしてのスキルを磨き、実績を作りたいのであれば積極的にチームへ加わりたいところです。
たとえ作品が完成せずチームが解散になったとしても、その経験はのちほど生きてきます。
モバイル向け作品の公開はコストが必要に
実際にUnityでモバイル向けゲームを作り終えていざ公開となった場合、iOS向けにせよAndroid向けの作品にせよコストが必要になります。
プラットフォーム | 初回登録料 | 年間登録料 | アプリ審査基準 |
iOS | なし | 99北米ドル | 厳しい |
Android | 25北米ドル | なし | ゆるい |
たとえ無料で公開する作品であっても、表のようなコストがディベロッパーとして発生します。
特にiOS向けのディベロッパー登録は年に一回かなりの額をとられるので敷居が高いです。アプリの審査基準も厳しく、せっかく作った作品がうまく公開できないケースも出てきます。
ただ、世界に向けてモバイル向けのゲームを公開しておけば、売り上げがどうであれしっかりとした実績になります。
モバイル向けゲームが公開できたということは、
・ゲームを完成までこぎつける力がある
・AppleやGoogleのガイドラインに従い、場合によっては内容を修正する力がある
・英語を苦にしていない(国外向けアプリ公開時)
・ニーズを読む力がある(ダウンロード数がある場合)
・登録料というリスクを負った経験がある
などの能力をもっていると予想されるため、評価されやすいでしょう。
ディベロッパーとしての登録などゲーム開発以外の苦労が伴いますが、良い経験になります。将来的にモバイル向けゲームを開発したい人は、ディベロッパーとしての登録及び自作の公開を視野に入れておきましょう。
働く形にこだわりすぎない
正社員として働き実績を積むことが一番ですが、ゲーム開発は基本的にプロジェクトごとに進むため「プロジェクト中だけ適した人員が必要な分だけ欲しい」というのが開発側の本音です。
プロジェクトごとに欲しい人員が増減するという事情が企業側にあるため、正社員にこだわるとなかなか求人が見つからないことも。そんな時は雇用形態にこだわらず、どんな形でもゲーム開発に携わり実績を作っていきたいところです。
独力でゲームを開発できず、チームとしての開発に携われなければ実績はゼロのままです。実績ゼロの人を正社員に採用できるのは、新人を育成する余裕のある企業だけです。ほとんどのゲーム会社は即戦力(やそれに準じる人)を求めています。
単独でのゲーム開発、成果物ができる同人活動、自分に見合った案件を受けられるアウトソーシング、次回プロジェクト参加への保証はないもののゲーム開発に参加できる派遣社員など、実績を積むルートはいくつか用意されています。
派遣社員として実績を築き、その実力が認められれば継続的にプロジェクトに呼ばれるようになり「この人がいないと困る!」と企業に判断されれば正社員として登用されるでしょう。
たとえば今ではスクウェア・エニックスの取締役となり、FF14のプロデューサー兼ディレクター及びFF16のプロデューサーを務めている吉田直樹氏も当初は契約社員でした。
どんな形であれゲーム開発に携わり、実績を作っていかなければ評価の対象外となってしまいます。働く形にこだわりすぎず実績作りを優先していきましょう。
まとめ
Unityエンジニアのなり方について、実績作りに主眼を置き解説してきました。独力にせよチームでの開発にせよ、積極的に作品開発に関わらないと実績作りが難しいことをお分かりいただけたかと思います。
ポートフォリオに何も加えてない状態では、ゲーム開発者を求める企業側も判断しようがありません。どんな形であれゲーム開発に参加すれば実績として紹介できますし、開発で得た経験も無駄にはなりません。
「いまの自分ならここまでならできる」という判断ができるようになったら積極的にゲーム開発の世界に飛びこんでいきましょう。
自信がないうちは「どこを変更すればゲーム性が高まるか」「オリジナリティを加えるにはどうすれば良いか」意識しながら学習用の作品を制作していくと良いでしょう。
ゲーム業界で働くならコンフィデンス!
なかなか転職先が見つからない…
ゲーム業界に就職したいけど未経験でも大丈夫?
ゲーム業界に特化したコンフィデンスの人材派遣なら
- 最短1週間で就業可能!
- 有名ゲーム会社の案件多数!
- 安心の正社員採用
まずはお気軽にお問い合わせください。
コンフィデンスメンバーや会社情報を発信する「QOGL+」
- ゲーム業界への人材派遣でできるお仕事の内容は?
- 残業はどのくらい?休みは取りやすいの?
- 社内制度は充実している?
- どんな人たちがコンフィデンスで働いているの?
コンフィデンスで働くメンバーのインタビューをお届けする採用メディア「QOGL+」。
募集要項やコーポレートサイト、採用ページだけではわからない働く現場の情報を見ることができます!
https://assetstore.unity.com/?locale=ja-JP