ゲーム業界に入りたいと思っている大学生です。
夏休みに入り、初めてゲームを制作してみようと考えているのですが、unityとC++のどちらで制作をするか迷っています。どちらのほうがいいでしょうか?
また参考になる書籍などありましたら紹介していただけると嬉しいです。
ゲーム業界に入りたいと思っている大学生です。 夏休みに入り、初めてゲームを制作してみようと考え…

ゲーム業界に入りたいと思っている大学生です。
夏休みに入り、初めてゲームを制作してみようと考えているのですが、unityとC++のどちらで制作をするか迷っています。どちらのほうがいいでしょうか?
また参考になる書籍などありましたら紹介していただけると嬉しいです。
Unityは、クラウドコンピューティングに対応していないので、Unityと言う選択肢は、あまりないと思います。
UnityとC#ではなく、MicrosoftのC#になります。
SONYとMicrosoftが提携して、クラウドゲーム等の共同開発が行われています。
その結果として、来年の2020年からクラウドゲームが本格的に始まります。
よって、Microsoft系のVisual C#.NETか、Visual C++のどちらかの選択にして下さい。
[Microsoftのクラウドコンピューティング技術について]
クラウドコンピューティングの元祖は、クラウドコンピューティングと言うIT用語が作られる前からあるWebサービスです。
MicrosoftとIBMとOracleとHewlett-Packard(略称: HP)と富士通とBEAシステムズとSAPとIntelが手を組んで作られました。
開発環境のベーター版が2000年や2001年に出てきて、正規版は、2002年に出ました。
当時は、企業向けのビジネス系サービスでは成功しましたが、一般ユーザー向けサービス(ゲームや音楽等々)の普及は失敗しました。
一般ユーザー向けクラウドコンピューティングは、ゲームで実力を発揮すると考え、Microsoftが各ゲーム機メーカーにクラウドコンピューティング技術の導入を持ちかけました。
しかし、各ゲーム機メーカーに、「まだクラウドコンピューティングの時代でない」と判断されて断れました。
そこで、Microsoftは、ゲーム機Xboxで、自らゲーム市場に参加しました。
Microsoftのゲーム機Xboxのゲームは、プログラミング言語のC#と、ゲーム作成用ライブラリのXNAで作ります。
XNAは、ゲームソフト会社だけでなくて、一般人もゲームが作れるので、ゲーム作成用ライブラリとしては、結構人気がありました。
しかし、クラウドコンピューティングの時代を迎え入れるほどの人気はありませんでした。
そこで、Microsoftは、XNAの新規バージョンを出すことを断念しました。
XNAの新規バージョンを出すことを止めたとたんに、Unityの人気が上がって行きました。
時間がかかりましたが、XNAに替わるMicrosoft系開発環境が登場しました。
Windows10用の新しいアプリケーションソフトであるユニバーサルWindowsプラットフォーム(略称: UWP)のことです。
開発環境としては、Visual C#.NETやVisual C++やVisual Basic.NET等で作れますが、特にVisual C#.NETとVisual C++が中心になっています。
Linux Foundation(Linuxを支持する企業達が、Linuxを管理する組織)が、Microsoftと手を組んだことによって、普及の見込みが十分にあります。
今は、Linuxで、Microsoft系のC++やC#で、ゲーム開発をするのが、当たり前な世の中になりました。
「KinectをLinuxで使っている動画があったのですが、xboxとWindows版しかないはずですが。なぜ使えるのでしょうか? 」
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13192097778
普及の見込みがあるどころか、IT全体が動き始めています。
Linux FoundationとMicrosoftと手を組んだことによって、IoT機器によるユビキタスの時代を実現させる予定になっています。
また、AIや機械学習にも展開して行く予定になっています。
Microsoftよりも先に、Hewlett-Packard(略称: HP)が先行して動き始めています。
HPとLinux Foundationが手を組んで、工場の電子計測器や産業用ロボットをクラウドコンピューティングで制御するシステムで成功し始めています。
その第二弾として、来年の2020年に、クラウドゲームが本格的に始まります。
クラウドゲームに関しては、SONYとMicrosoftが提携して、共同開発が行われています。
[UWPの開発方法について]
UWPは、C#とマークアップ言語XAMLとを組み合わせて開発する。
もしくは、標準C++とマークアップ言語XAMLとを組み合わせて開発する。
もしくは、標準C++とC++/CLIとを組み合わせて開発する。
UWPの資料は、今はまだ少ないので、従来からのVisual C#.NETやVisual C++での開発から学ばれることをおすすめします。
[よく「ゲーム以外のことを勉強しろ」と言う人がいることについて]
よく「世の中の様々なことを学んで、教養を身に着けろ」と言う人がいます。
しかし、「ゲームプログラミングを学ばずに、世の中の教養を学んできました」と言って、採用するゲーム会社がどこにあるのでしょうか。
まずは、何よりも肝心なゲーム作りを習得するべきですよ。
当たり前なことです。
まずはゲーム作りを学んで、その上で、世の中の教養を学ぶべきです。
>初めてゲームを制作してみようと考えて
まあ、なんて恐ろしい…
初めは人様の作ったものを真似してみるもんだよ。
ゼロベースでいきなり作ろうなんておこがましいにも程がある。
オレは本に載ってたソースを3本読んだとき、いきなりゲームの作り方が分かってしまった。
目の前にゲームプログラミングの神様が降臨したよ。
見ていたのはシューティングソフトだけど、平安京エイリアンが作れてしまった。
結局は何かしらのゲームエンジンを使うか、
ゲームエンジンもどきを自作する事になる。
人は“それ”について知らなければ作れません。
ゲームエンジンやコミュニティには、先人の知恵が詰まっています。
まずは公式ドキュメントを読みましょう。
ゲームは総合芸術なので、プログラミングしたからといって、
それがゲームになる様な単純なものではありません。
PCの前にばかりいないで、世の中の様々な事に興味を持つべきです。
企業も感性豊かな人材を求めています。
最終的にはC++でゲームを作れるようになった方が良いのですがまず、ゲーム開発の体験という意味でUnityやUnreal Engineで開発してみるのはありです。
ゲームエンジンでしか開発出来ないと就職作品としては弱いのでゲームエンジンを使わないで作った作品はどこかで作った方が良いですよ。
今は本を探すよりもネットの方が最新の情報が沢山あるのでネットがオススメです。