どうもです。タドスケです。
現役ゲームプログラマーの僕が、
これまでに学生さん・新人さんからいただいた質問をまとめるシリーズ。
どの言語を勉強すればよいですか?
今回はこちらの質問に答えていきます!
回答内容は僕の個人的な見解です。 業界・会社を代表するものではありませんので、ご了承ください。
結論
結論からお伝えしますと、
- C++ができれば大体何とかなる
- 未経験から学ぶならC#/Unity
です。
C++ができれば大体何とかなる
かなり暴論のように聞こえるかもしれませんが、少なくとも僕のいる会社内では新卒向け説明会などでも言われています。
C++はメモリ周りを意識してプログラミングを行う必要があるため、パフォーマンスが重要なゲームプログラミングにおいては重要な経験となります。
UnityでC#が台頭してきた現在でも、コンシューマー向けゲームを作りたいなら必須の言語です。
敷居が高いぶん、「C++が理解できるなら他の言語を習得もできるだろう」という期待を持たれます。
ここにさらにDirectXが加われば、期待は更に高まります。
しかし初心者がここから学び始めるのはオススメしません。
ポインタやアドレスなどの概念は慣れるまでは難しく、メモリリークなどのバグに悩まされることになります。
まずは他の言語を理解した上で、必要であれば学ぶというのが良いのではないかと考えています。
未経験から学ぶならC#/Unity
未経験からゲームプログラミングをやりたい人にオススメなのはC#/Unityです。
ゲームエンジンのUnityを利用して、内部でC#のスクリプトを書いてゲームを作り上げていくワケですが、以下のメリットがあります。
- 日本語のチュートリアルが充実している
- 利用者が多く初心者向けの本やブログも豊富
- 書いたコードがすぐに動く
とりあえずサクッと書いて動かしながら少しずつ進めていくことで、楽しく学習が進められます。
やり方に詰まったらネットで調べればすぐに情報が見つかるので、挫折しにくいです。
初心者の学習においては、楽しく学習を続けられることが何よりも重要です。
スマホゲームやカジュアルゲームならこれで十分な物が作れますし、さらにクオリティを上げたくなった段階で初めてC++に触れたとしても遅くはありません。
以上、参考になれば幸いです。
コメント