ビデオゲーム開発のためにどのようなプログラミング言語を学ぶべきですか? -QUORA

AAAゲーム開発では、エンジニアは主にC++

を使用しますが、ゲームデザイナーは主に鉛筆、ホワイトボード、かなりの「宣誓」(チームの理解を促進するための特別な目的で構築された言語)

ゲームデザインチームの中には、いつ何が起こるかを指定するためにコンピュータ言語を使用する場合があります。 GTA5のようなゲームでは、このタイプのコーディングはスクリプトと呼ばれることがあります。 それは筋金入りのプログラミングではありません。 イベント用のスクリプトを書いています。 このボックスは、このイベントをトリガーします。 このことは、彼が死んだ場合、または彼女が屋根を通って落ちた場合に起こります。

スクリプトは、既存の言語で行われることがあります。 時にはそれは社内システムです。

  • luaは一般的にスクリプトに使用されます。

あなたはAAAのゲームをやっていない場合-とに見てモバイル開発を検討しています。

  • C++(AndroidおよびiOS用)
  • Java(Android用)
  • C#(多くのプラットフォーム上のUnityアプリ用)
  • Objective-CまたはSwift(iOS用)
  • Java(Android用)
  • C#(多くのプラットフォーム上のUnityアプリ用)
  • Objective-CまたはSwift(Ios用))

そして、ゲーム開発をスピードアップすることができる様々なApiを学ぶことを見てくださ

  • OpenGL ES(すべてのプラットフォーム用グラフィックスAPI)
  • Unity(3Dおよび2Dゲーム用ゲームエンジンソリューション)
  • Cocoa(すべてのiOSアプリ用)
  • Cocos2D(2D API)
  • Cocos2D(2D API)
  • Cocos2D(3Dおよび2Dゲーム用ゲームエンジンソリューション)
  • Cocos2D(2D)

だから、あなたが学ぶことは、あなたが行きたい場所に依存します。

私が出会ったほとんどの非常に上級のゲームエンジニアは、スープからナッツの方法でコンピュータシステムを知っています。 彼らはすべての爪とレンガは、それが一緒に置く方法を知っている建築家です。

彼らは低レベルのアセンブラでも同様に快適です。 古い学校のCとオブジェクト指向言語、およびシェーダーコードをすべて同じように簡単に書くことができます。

より多くの上級エンジニアは、一見遅いか、制限されたハードウェアから奇跡的な性能を絞ることを任されています。 彼らは直感的に何が動作するか、何が遅くなるか、何がレンダーループから毎秒十フレームを剃るかを知っているので、これを行うことができます。

その最適化スキルは、Cpu ad Gpuプロセッサがハードウェアにどのように実装されているかを実際に理解することから来ています。 ボトルネックと帯域幅の問題がある場所。 そのような理解は言語とはほとんど関係がありません。

この技を学びたいなら……

アセンブラで些細なことを書いて、それがどのようにオペコードになるかを見てください。 そして、メインメモリからCPUレジスタにものをシャント。

Cで何かを書いて、その言語がアセンブラにどのように翻訳されているかを見てください。 いくつかのデータがスタック上に保持されているか、ヒープ上に保持されているか、レジスタ内に保持されているかを参照してください。

C++で何かを書いて、それがどのようにコードに変換されるかを見てください。

頂点シェーダとフラグメントシェーダを必要とするDirect XまたはOpen GLで何かを記述します。

言い換えれば、過去30年間のコンピュータ開発を再生きる。 そして、あなたはそれがすべてどのように動作するかの手掛かりを持っているかもしれません。

このようなものがどのように一緒に収まるかを把握できれば、素晴らしいゲームエンジニアになるために必要なクモの感覚を開発するかもしれません。

しかし、あなたはこのすべてのものを憎む場合。 そして、ちょうどスプライトが画面上を移動し、人々が笑顔にしたい、あなたはおそらく私のアドバイスを無視する必要があります。 そして、あなたが人生を楽にするためにできることは何でもAPIを使用して、ピクセルはあなたの曲に踊ります。

コメントを残す

メールアドレスが公開されることはありません。