ゲームエンジニア、プログラマーを目指す学生(主に高校生、大学生)が
「高校、大学においてやっておくべきこと」
「具体的に何を学んでおけばよいか」
「進路や具体的なアプローチについて」
解説していきます。
一通り読んでいただくことで、効果的にゲームエンジニアを目指すことが出来るようになります!!!
理系知識は必要
まず結論を述べると「ゲームエンジニア・プログラマーに数学・物理的知識は必要」です。
オブジェクトを意図通りに動かしたり、オブジェクト同士の衝突判定や物理法則に基づき様々に動かす場合など、ゲーム開発にはたくさんの数学・物理の知識が使われています。確かにゲームエンジンやライブラリを利用すれば、理系知識がなくとも簡単なゲームは作れます。
しかし、さらにオリジナルを極めたい機能を求める時や、プロジェクトの制約などでゲームエンジンが使えないフルスクラッチの時はどうでしょうか?
やはり、どうしてもベースとしての数学や物理の知識が必要になってくるのです。ゲームエンジニアとして困らないためにも、数学・物理はしっかりと学習しておいた方が良いでしょう。
例えば3Dゲームを開発する際、数理的知識は必要不可欠です。具体的には、三角関数、線形代数、力学などがよく使われます。逆説的にこのあたりの知識があればゲームエンジニアとして応用力がある人材として活躍していけると思われます。
では、ゲームの作り込みの部分ではどうでしょうか。ゲーム制作では表に見えない部分(ファイルアクセス、メモリ管理、ストレージ、通信、物理エンジンなど)の理解も必要になってきます。
その際に必要なのはPCの基本的な知識です。また、物理エンジンなどは流体力学分野なども幅広く備えていないと務まりません。数列や確率などもエンジニアとしては持っていたいスキルです。
とはいえ、ゲームエンジニアは数学者ではありません。数式を解くことが目的ではなく、数理的知識を使って仕事をするのが目的です。そのため数式が解けるに越したことはないですが、必ずしも解けなくても大丈夫です。仕事の場で「ああ、これはこの数式が必要だな…」ということを理解して、必要な時に使いこなせればよいのです。
やっておくべき勉強とは
あなたが高校生であれば、まず数学分野(数学ⅠA、数学ⅡB)、物理分野を一通り学習しておきましょう。
2Dゲームであれば高校レベルの数学・物理の知識が必要となります。大学入学共通テストの数学分野で例えるのであれば、正答率70%程度以上取得しておくことがひとつの目標目安となるでしょう。
確認:理系スキル
- 基礎数学、数学Ⅰ、数学Ⅱ、数学ⅠA、数学ⅡB
特に数列、確率、三角関数、線形代数、行列計算 - 物理全般
- PCの基本的知識
オススメの書籍
ゲーム開発のための数学・物理学入門(SBクリエイティブ)
https://www.amazon.co.jp/dp/4797356774
こういった本をセクションごとにしっかり進めていくことで、一通りの知識を備えるとよいでしょう。本書はゲーム開発に必要最低限な数学・物理素養が詰まっている評価の高い本です。
ゲームエンジニアにおける英語の重要性
これも結論から述べますが、ゲームエンジニアにとって英語は必要です。プログラミング言語自体が英語ベースで構成されていることも当然ながら、その他にも英語を学んでおくメリットは沢山あります。それをいくつか挙げてみましょう。
海外の最新情報が入手できる
ゲーム業界は変化に富んでいます。常に新しいテクノロジーやサービスがリリースされ、その情報の殆どが英語で発信されています。多くは日本語にも訳されますが、当然それには遅れが生じます。海外の生の情報を先取りするためには、直接英語で仕入れておく必要があります。これによって他者よりも高いアドバンテージを持つことができるのです。
また、問題解決を求められる多くの場合、海外の最新の情報へのアクセスが必要になります。確かにグーグル翻訳は便利ですが、自力に勝るものはありません。
海外のエンジニアとコミュニケーションを交わせる。海外で働くことが出来る
今やゲームの開発現場はボーダレス。日本のアニメやゲームコンテンツは世界中で高い人気を誇ります。そのため、ゲーム業界は日本人のみならず海外の人にとっても人気で、海外のエンジニアと一緒に働くことも決して珍しくありません。
英語でコミュニケーションが取れるということは、そのまま海外のエンジニアとも十分に仕事が出来ることにつながるので、自身のスキルアップに直結し、仕事の出来る幅が広がる可能性が高くなります。また、英語が自在に使いこなせるようになれば、自ずと海外のゲーム開発現場で働くチャンスが生まれてくるでしょう。
これは自身のキャリアにとってのチャンスアップと大きな飛躍につながりますので、英語はできるに越したことが無いのは言うまでもありません。
海外に向けて発信できる
英語ができるゲームエンジニアになれば、海外に向けて情報発信がしやすくなるでしょう。
たとえば、「E3」のような海外の大きなカンファレンスイベントでも情報のやり取りができるようになります。その他、新サービスのリリースを海外向けに告知も可能ですし、話題のゲームなど英語でレビューもできます。
英語での情報発信は、日本人以外からのフィードバックがもらえるため、ゲームエンジニアとしての知見が広げられますし、世界に向けてのアピールにもなるので、SNSなどを介して人脈も広げやすくもなるでしょう。チャンスが広がります。
英語のマスターに向けて必要な要素
リーディングが最重要
英語をマスターするにあたって、まず最優先で必要なスキルはリーディングです。エンジニアが主に収集する海外の情報は仕様書、オープンソース、ゲームリリースの情報などがありますが、いずれもベースは英語の文章となります。他にも海外クライアントや開発現場で海外のエンジニアとメールやチャットなどのやり取りをすることもあります。そんな時、まず文書を読めないと仕事になりません。まずは英単語のリーディングからマスターすることをおすすめします。
リスニング&ライティング
今は5Gの普及などもあり、動画コンテンツが充実しています。特にYouTubeではホットな海外コンテンツが手軽に視聴できるため、リスニング力があればさらに濃い情報が直接入手できます。ライティング力があれば英語での表現や発信が可能となります、結果として世界に向けダイレクトかつ広く認知させる手段となります。
SNSやブログで自身のレビューなどを英語で発信することで、興味をもってくれた海外のエンジニアからコンタクトが届くことも珍しくありません。
スピーキング
日本において英語が話せるエンジニアは非常に需要があります。海外のクライアントとのやり取りもできますし、海外の開発現場との円滑なコミュニケーションを取ることも、海外に向けたプレゼンテーションや動画配信等も可能です。これは、他のエンジニアと大きく差別化することにつながります。更に英語力を活かす場合、スピーキングの必要性は非常に高くなります。英語でのスピーキングまで出来る場合、英語はさらに強力な武器となることは間違いありません。
今は参考書や公式問題集などの本だけではなく、アプリや動画など独学で勉強できる環境が充実しています。移動中などスキマ時間を有効に活用して英語学習に充てましょう。
英語スキル習得の目安
仮に志望企業の面接の場などで特技などについて問われた際、自分で「英語の勉強がんばりました!」と言っても、採用する側である会社はそれでは判断が出来ません。それなりの客観的指標が必要です。英語語学スキルとして必修の目安としては、実用英語技能検定(英検)2級以上、もしくはTOEIC 750点程度以上の取得を目標にして勉強に励むとよいでしょう。
確認:英語スキル
- 実用英語技能検定二級以上
- TOEIC 750点程度以上
高校からの進学、学校選びについて
ゲーム会社に就職する多くの方々は、大学、専門学校、高等専門学校のいずれかを卒業して入社します。それぞれの学校ごとに企業が求める人物像が異なってくるため、どこが良いかではなく、それぞれにどんなメリットがあるのか見てみましょう。
専門学校からの業界就職
専門学校では、ゲームエンジニアやプログラマーに必要な専門知識やスキルが実践的に学べます。
例えば4年制の学校ではフルスクラッチを目標に
- クライアントサイドとサーバーサイドのゲームプログラミング
- 3DCG
- ライブラリ開発
- 実機を使ったVRゲームの開発
にまで至ります。
2年制の学校ではゲームエンジン中心など、ある程度現場で直接要求されることが多いスキルにフォーカスしながら学びます。ソーシャルゲームに特化した学科を設置する学校などもあるので、即戦力となりうる技術を身に着けることが出来るでしょう。
専門学校のメリット
専門学校のメリットは、ゲームエンジンを使用した開発方法からDirectXやOpenGLを学べる機会も用意されている点です。実際の開発現場では様々な手法・ツールで開発が行われています。専門学校ではゲームエンジンを用いた開発からネイティブ環境での開発といった幅広い開発方法を学ぶことができるため、開発現場で活かせる技術を学ぶことができます。
また、専門学校は大学よりも学ぶ目的がより明確なため、概して仲間意識が強くなります。ゲーム制作や業界就職などの情報も共有しやすいでしょう。同期の人脈がそのまま就職後も活かされやすいですし、同門の先輩の人脈形成もできます。ゲーム業界に限ったことではないですが、スキルと同じくらいコネクションも大事で、そのコネクション形成の一部を専門学校が補完しています。自然にコネクション形成ができるのは、大学と違い専門学校の強みと言えるでしょう。
専門学校内では共同開発テーマなど、チームで制作を行うような課題もあります。仕事で開発する際は原則複数人での開発がメインとなるため、チーム制作を経験しておくことも役に立つでしょう。こういった共同作業の経験も大学にはない強みです。他にはゲーム業界とのコネクション、インターンシップ、業界著名クリエイターの学内講演の聴講など、貴重なチャンスは往々にしてあります。また、専門学校では卒業作品(制作物)の提出を求められることがあります。学生としてはアピールのチャンス、企業は求めている人材の技術レベル判断の場として活用しています。このように専門学校では沢山のチャンスに恵まれていると言えるでしょう。
専門学校のデメリット
逆にデメリットについてですが、専門学校は事実上の全入の為、ただ何となく無目的に入ってくるやる気のない人もいます。そういった人たちと共同で制作する課題提出などでは足を引っ張られるおそれもあり、学習効果や効率も落ちてしまいます。これが専門学校最大のデメリットです。
また、入学した生徒に未経験が多いため、授業は基本的には基礎的な内容に寄せられます。難易度や競争率の高い人気ゲームメーカーでエンジニアを目指すのであれば、授業以外の個人の努力も必要となります。目安としてはクラスのトップであり続けることがひとつの目標ともいえるでしょう。
有名クリエイターと言われる人にも専門学校卒の人はいます。ですから、どこに入るかで全てが決まるというものでもありません。つまるところ、最終的には本人の能力、やる気や情熱によって進路が決まってきます。
高等専門学校からの業界就職
高等専門学校(高専)の場合では、ゲーム業界との親和性から、情報系学科が特に評価を得やすいと言われています。この場合も専門学校卒業者と同様に、持っているスキルや制作物などの課題を積極的にアピールするとよいでしょう。高専情報系学科の卒業者は、企業側から見る評価は専門学校よりも上であることが多いです。
戦力的位置づけも大学卒業者に近い知識を有すると評価されるケースもあります。さらに企業にとっては、大学卒業者並の十分なスキルを持ちつつ「若い」人を採用できるというメリットも享受できます。そのような意味で情報系の高専生であれば、「エンジニアとして即戦力性が高いスキルを持つ伸びしろのある人材」と優遇してくれる会社もあるので、優位性は高いといえます。
また、多くは国公立の為学費的にコストパフォーマンスが高い場合が多いです。
大学進学からの業界就職
大学からゲーム業界への就職を考える場合はどうでしょうか。
理系のコンピュータサイエンス、総合情報、情報工学、機械工学、電気工学などの学部学科では、将来のエンジニアリーダー候補やポテンシャル採用を旨としたコア人材に焦点を当てています。ゲーム開発が学べることを掲げている特化型大学より、ブランド大学の方が総合的に見て評価が高い傾向にあります。また、包括性の高さから国公立理系が評価される場合もあります。
大学の理系学部では専門学校に比べ研究時間がたっぷりあるため、よりアカデミックにコンピュータサイエンスなどを学問として究めることができます。より高い目標をもって「成りたい自分」を目指すことができるでしょう。コア人材向けのエンジニアになりたい方は、大学進学をめざしていくとよいでしょう。
逆に自分のやりたいことや、やるべきことをしっかり持っていないと大事な4年間が無駄になってしまうリスクもあります。また、通学する期間が4年と長い分、出費が増えてしまう点も大学のデメリットとして大きくのしかかります。
進学先の学校は様々
このようにゲームエンジニアを目指す学生にとって、進学先の学校は実に様々です。高専、大卒では情報系での履修課題実績、ゲーム系専門学校では即戦力が求められます。大学では専門特化した内容ではなく、学究的に広く情報工学やコンピュータサイエンスなどを学んでいるため汎用性が高くなります。つまり、様々な課題解決能力といった「つぶし」が利きやすいということです。このため、ゲーム業界ではなくとも、ITエンジニアやWebエンジニアなどとしてゲーム業界以外に就職することなども往々にしてあります。
また大学では入った学科などにもよりますが、具体的、専門的にプログラミング、ゲームエンジンなどに特化した内容を教えるようなことはまずありません。大学はプログラミングを「学問」として研究することが目的だからです。プログラミングそのものは、個々人が独学、通信教育、ダブルスクールなどで習得します。また大学ではエンジニアになることを前提として、ユーザーニーズやトレンド把握に必要なマーケティングやプロジェクト推進のためのマネジメントスキルといった他のビジネススキルを学ぶことも重要になってきます。
企業のネームバリューや規模に囚われず、まずは業界に就職して経験を得る
ゲーム業界のエンジニアは大幅な人材不足ですが、教育コストを掛けたがらないため未経験者の場合新卒カードを使わないと業界に入るのは難しい状態です。狭き門ですので希望の会社に入れるとは限りません。
しかし、どうしても大手企業や好きなゲームタイトルをリリースしているゲーム会社に入りたいという情熱のある方は、まず企業の規模や知名度にこだわらずゲーム業界内の会社に入り、実績を積んでからキャリアアップする形で大手企業に転職するという方法もあります。
中小のデベロッパーでは大企業では上げにくい実績を早い段階で挙げることが出来る可能性があります。多くの業務を兼務しながら遂行し、一定規模のプロジェクトに早い段階で参加し経験を積めるのもデベロッパーのメリットと言えるでしょう。卒業後、学歴を積み直すことは時間的コスト的にもかなり困難ですが、デベロッパーへ入社することで給料をもらいつつっ実戦経験を積み、スキルや実績を挙げることができます。
また、大手企業では人材募集を常時盛んに行っているので、経験者採用枠としての採用チャンスも十分にあります。
いずれかの学校に進学したら
ゲームエンジニアを目指すべく、無事に志望する学校に入学できたからと言って安心してはいけません。そこはあくまでスタートラインであり、ゴールではありません。入学後は学校の授業での学習だけでなく、ゲームジャムなどのイベントへ参加したり、ポートフォリオの制作などでしっかりと基礎力を身に着けましょう。
自身の能力を高め、学生時代のゲーム制作の実績や経験、スキルを適切に企業側にアピールできるように「自分の作品集」をまとめることで、学校卒業後のあなたのエンジニアとしてのキャリアの選択肢は広がることでしょう。