【kobakoの学習内容】プロ向けのゲーム開発、Unityを学ぶ

プログラミング教室kobakoでは、プロ向けのゲーム開発エンジン、Unity(ユニティ)をサポートしています。

非常に難易度の高いプログラミング言語ではあるのですが、kobakoでは現役のUnityエンジニアが講師としているため、カリキュラムとして実現できています。

ですが、kobakoでUnityを学ぶには1つ条件が存在します・・・。

Unity(ユニティ)とは?

Unityとは、スマホゲームからや家庭用ゲーム機までに対応した、総合的なゲーム開発環境です。

Unityはプログラミング言語というわけではなく、実際にはC#(シーシャープ)と呼ばれるプログラミング言語を使うソフトウェアです。

Unityのすごいところ

何よりもスマホゲームとしてリリースできてしまうことでしょう。

ライセンス料はかかりますが、年間1万円前後でiPhoneアプリやAndroidアプリが実際にストアで配信できます。

Unityのすごくないところ

これは仕方がないことですが、難しすぎることです。

例えば、以下のコードは、C#でUnity用に書いたプログラムで、キャラクターなどをコントローラーで操作するときのプログラムです。

移動だけでもこれだけの難解なプログラミングが必要になります。

void Update(){
  float x = Input.GetAxis("Horizontal");
  float y = Input.GetAxis("Vertical");
  Vector3 pos = transform.position + new Vector3(x, y, 0);
  transform.position = pos;
}

Unityを学ぶ条件

kobakoではUnityをサポートしていますが、条件があります。

それは、基本的には自主学習してもらう、ということです。

Unityは覚えることが本当に多く、授業に参加するだけでUnityが使えるようになる、ということはほぼありません。

授業に参加するだけでは、結局なにも覚えられず、いたずらに時間を浪費してしまうことになります。

動画での自主学習

自主学習しましょう!と言っても、何をやったらいいかわかりませんよね。

そこでkobakoではオリジナルの動画教材を作っています。

非常に難易度を簡単に作っていますので、まずは動画での自主学習できた上で、Unityのサポートをしています。

動画教材は、随時追加していく予定です。

サポート方法

「こんなの作ってみたいから作っているんだけど、ここがうまく動かない。どうしたらいいの?」

という具体的な質問にお答えしていきます。

手取り足取りでのサポートではない点にご注意ください。

というのも、Unityは教えることが多すぎて1コマの授業ではスピード感が著しく低下するからです。

Unityは作りながら覚える

Unityは覚えることがたくさんあります。

全てを覚えるのではなく、作りながら必要なものだけをつまみ食いする感覚に近いのがUnityの学習方法です。

ですので、まずは作りたいものが先にあり、学習は後からついてくる、というのがUnityの理想的な学習スタイルです。

こういった、必要なものを必要な分だけ学ぶ学習スタイルを、遅延評価勉強法と呼び、

Unityは遅延評価勉強法でしか学習方法はないと割り切っているのがkobakoの見解です。

作りたいものや、作りやすいもの、そういった提案もkobakoが得意とするところだったりします。

Unityへの誤解

Unityを学びたいという生徒は多く見てきましたが、概ね以下のような誤解をしている場合がほとんどです。

この誤解を解くというのも、割と重要なことかなぁと思ってはいます。

Unityなら簡単にゲームが作れる、という誤解

巷ではUnityなら簡単にゲームが作れるという書籍や情報が多く存在します。

ですが、それらの中身をご覧いただければわかるのですが、ほとんどはUnity物理エンジンを使った玉転がし系です。

物理エンジンを使えばリアルな動きが簡単に作れるので、「Unityなら簡単にゲームが作れる」と誤解されてしまうのですが、

きちんとゲームを完成させようとすると急激に難易度が上昇します。

一言で言えば、「ボールの動きシミュレーターくらいなら簡単に作れるかも?」と思っていただければ良いかなぁと思います。

Unityなら面白いゲームが作れる、という誤解

世の中にはUnityで作られた名作ゲームが存在します。

そこから、「Unityを使えば面白いゲームが作れる」と誤解されることもしばしばあります。

Unityはアニメーションなどの演出が得意なプログラミング言語であり、

kobakoでは、「Unityは、面白いゲームをさらに面白くできる演出が得意」と伝えています。

Unityよりも難易度がとても低いJavaScript

Unityは難易度が非常に高く、覚えることがたくさんです。

どうしてもUnityが良い、その理由がない限りは、JavaScriptでのゲーム開発を推奨しています。

JavaScriptでのゲーム開発は、

家庭用ゲーム機は無理ですが、パソコンやスマホに対応したゲームも作れますし、

世界的にもっとも使われているプログラミング言語ですから、応用性もあります。

(一時はUnityもC#だけでなくJavaScriptでの開発も対応していました)

https://octoverse.github.com

上記グラフは、エンジニア向けのプログラムコード共有サイトGitHubでのプログラミング言語の人気ランキングです。

JavaScriptは2014年からずっと1位をキープしています。

Unityは自主学習が必須ではありますが、

JavaScriptであればkobakoは授業だけで効率的な、再現性のある学習方法を提示できます。

Unityを志した方も一度、kobakoでJavaScriptでのゲーム開発を体験してみませんか?

JavaScriptでたくさんのゲーム作品を作りながら、同時にUnityの自主学習をすることで、逆説的にUnityの効率もあがるとkobakoは考えています。

JavaScriptでの授業はどういうことをやるの?という方は以下のページをご覧ください。

無料体験へのお申し込みはこちらから!

kobakoのゲームプログラミング教材もYouTubeで無料配信中です!

初回の授業料(体験)は無料です。

※現在はオンライン授業でのみ対応しています。通学型ではありません。