ゲームデザイナーが利用できるさまざまなプログラミング言語のまとめは、いつも少し奇妙です。一般に、人は言語を選択し、その言語を使いこなすことで、構文エラー、高慢で反抗的なコンパイラ、そして何を言っても何もしないように見える機能に対して何年も頭をぶつけた後、熟練するようになります。もちろん、前の言語よりも優れていると自分自身に納得できない限り、別の言語を習得するという考えはひどいことのように思えます。
私の経験では、アプリケーションを破壊する新しくてエキサイティングな方法に遭遇するだけです。はっきり言っておきますが、これは有益な演習ですが、一般的に最適なプログラミング言語はありません。その代わりに、最も広く採用されており、最も多くのサポートを受けている言語があります。一部の言語は特定の目的に最適化されており、1 か月かけてコーディングする前にどれがどれであるかを知ることは良い考えです。
以下にトップ 5 を示します。そのうちの 1 つは新人です。これらの言語のいずれかに熟達すれば、プログラマーはある程度まともなビデオ ゲームを作成できるようになります。クリエイティビティは別売りです。
5.ジャイ
正直、ジェイについてはあまり知りません。私はその名前と、その開発に最も明白な責任を負っている人物が気に入っています。 Braid や The Witness で有名な Jonathan Blow は、新しいプログラミング言語の作成に注力しました。この言語に関して彼が掲げた目標は、C++ を上回るパフォーマンスを実現することであり、これまでに試みられましたが、成功したとしてもほとんど成功しませんでした。美的センスに少しこだわる変わり者である彼は、プログラミングを楽しくしたいとも主張しています。私は自分で何かをコーディングすることに大きな喜びを感じたことがないので、これが何を意味するのか完全にはわかりません。でも私はほとんど味付けされていません。私の仕事は主にコードを無効にすることに重点が置かれており、コードを作成することにあまり時間をかけていません。
Jai のサンプルがあり、消費して試すことができます。必要に迫られていないのでまだ行っていませんが、ブロウ氏の活動を宣伝する機会を逃すつもりはありません。それが広く採用されていることが判明した場合、それを理解するよりも悪いことをする可能性があります。しかし、それが実現するかどうかはまだ誰にも分かりません。注目すべきこと。あまり犠牲にすることなく C++ よりも優れたパフォーマンスを実現できれば、おそらくそうなるでしょう。私が最後に聞いたのは、6 か月前の時点で、Blow 氏がそのコンパイラの開発に取り組んでいたということです。それが事になったら、私はそれを間引きすることを楽しみにしています。
彼は時々 YouTube でディスカッションやチュートリアルを公開し、進捗状況を私たちに知らせてくれます。
- 利用可能な言語の中で最もパフォーマンスが高い C++ を上回るパフォーマンスを目指しています。
- それが何を意味するにせよ、コードを書くのが楽しくなるように意図されています。初めてコンパイルするのは私にとって嬉しいことです。
- 明らかにゲームが大好きなゲームメーカーによって開発されました。これはタランティーノが映画を作るのと同じです。
4. パイソン
私は Python について詳しく調べ始めたばかりですが、かなり簡単に進められるようです。少なくともプログラミング言語に関する限り。これらの複雑さは、17 世紀の大陸の実存主義者を混乱のショックに陥らせる可能性があります。スピノザはプログラミング言語を習得する可能性が高いが、デカルトは完全に道を失ってしまうでしょう。私にとって Python は今のところ問題ないと思われますが、日々より多くの開発者がそれを採用しています。
私の Python に関する知識の一部は、C++ の経験から来ています。これらは両方ともオブジェクト指向であるため、一部の意欲的な開発者は、前述の実存主義者のような混乱に陥る可能性があります。したがって、このこぶを克服することは、一見小さなことのように見えますが、非常に有益であり、Python または C++ のいずれかで行うことができます。場合によっては、一方を理解することが他方の理解に役立ちます。
Python はスクリプト作成にも非常に適しています。したがって、ソフトウェアのテストやサービス マシンの大規模なバンクの管理に興味がある場合は、まずそれを始めるのが良いでしょう。
- スクリプト言語とプログラミング言語の両方。
- C++ などの他の言語と比較すると、不思議なくらいシンプルです。
- 優れた初心者向け言語。
3.C#
C# は、Unity エンジンを使用する人に推奨されるプログラミング言語です。これは .NET との連携が容易なためだと言われていますが、私はそう信じています。マシン上に C# 開発用のリソースがある人は、必然的に .NET ライブラリを持っていることになります。 Unity はこれに組み込まれており、主に .NET フレームワークを介して実行されるため、C# を少し習得すれば開発者はすぐに進むことができます。
私はまだ Unity について学んでいますが、通常は必要な場合にのみ学んでいます。しかし、私は C# に少しだけ手を出し、World of Warcraft を遊びすぎたときにどのギアを手に入れるべきかを教えてくれるコンソール アプリケーションをいくつか作成しました。私自身、数値を処理することにうんざりしており、スプレッドシートは扱いにくく、管理できなくなりました。そこで、それを行うためのアプリケーションをコーディングしました。ヴェントリロで初心者に叫ぶ合間に、チートスとショットガンのマウンテンデューを食べる時間が増えました。
- やや単純な言語。もう一度 C++ と比較します。
- Unity エンジンおよびマルチプレイヤー ネットワーキングとうまく連携します。
- コンソール アプリケーションを簡単に組み合わせて、数値を素早く処理できます。
2.ジャワ
これらのことを考慮すると、Java は通常、非常に使いやすいです。残念ながら、長年にわたり、このソフトのリリースが繰り返されることで、追いつくことは、X-Com 2 のアイアンマン モードを完了しようとするのと同じくらい楽しいものになりました。つまり、楽しくありません。全然楽しくない。
とは言え、それでもかなりしっかりしています。これはプログラミング言語というよりもスクリプト言語です。つまり、実行する前にコンパイルする必要はありません。しかし、それは確かに両方のことです。解釈され、コンパイルされます。これを使ってゲームを作成し、あれこれ調整して、わずかな所要時間でどうなるかを確認することができます。大量の Web ゲームは、完全ではないにしても、ほぼ完全に Java を使用しています。ブラウザはほとんど困難なく Java を強化できるため、ちょっとした Web ゲームをいくつか実行したい場合は、これが最適です。
Java のさまざまな完全リリースが、驚くべき規則性で Java の古いリリースを破壊することを理解してください。また、Java はセキュリティの面で深刻な問題を抱えているとも言われていますが、残念ながらそれは私の給与水準をはるかに超えています。したがって、私はその情報を無批判に伝えるだけです。
- Webブラウザで動作します!これはウェブゲームを意味します。
- Java はほとんどのプラットフォームで動作するそうです。また、明示的に許可していない人もいると聞いています。
1.C++
C++ は王者であり、かなり長い間王者であり続けています。私の観点からすると、それは難解で、奇妙で、非常に気難しいものです。ただし、パフォーマンスと速度が優先され、あらゆる種類の消費者向けソフトウェアに求められるものです。私が「ジャンプする」と言うとき、ビデオゲームのキャラクターに時間を取って高さを尋ねることさえしたくありません。すぐにジャンプしてほしい。おそらくこれが、本格的なゲーム開発者が C を理解する最も重要な理由です。お気に入りのゲームが C++ でコーディングされていることに賭けてお金を稼ぐことができました。
おそらく最も人気のあるゲーム エンジンである Unreal Engine にとって、C++ は必須です。お気に入りのゲームのほとんどはそのエンジンで動作します。これが C++ がすでに普及しているためなのか、それとも Unreal Engine の人気がそうさせたのかはわかりません。ここではまさに鶏が先か卵が先かという状況が起こっていますが、いずれにしても、両者はうまく連携しています。ゲームに実装したい関数の多くは、C++ ライブラリにもすでに存在しています。
場合によっては、車輪を発明する必要がないこともあります。ホイールは標準ライブラリにすでに存在しているためです。
- パフォーマンス! C++ で適切にコーディングされたアプリは、より高速に実行されます。
- 世界中のゲーム開発者の間で人気があります。
- それは複雑で難解で難しいこともありますが、その狂気をすべてモジュール化した開発を可能にします。一度コーディングして保存し、後で再利用します。
しかし、実際には、それはあなたが何をしたいかによって異なります。さまざまな言語がさまざまな理由で作成され、使用されます。
プログラミングを始めたばかりの場合は、ここでプログラミング言語の 1 つを選択し、しばらくそれを使い続けると、間違いなく前進できるでしょう。しかし、事前に何をしたいのかをしっかりと考えておくと、かなり役に立ちます。いくつかの小規模な Web ベースのゲームを開発することに興味がある場合は、Python または Java を使用すると、より簡単にそこに到達できます。映画のような巨大な豪華アクション ゲームを作成したい場合は、C++ を習得すれば、眠れない夜やカフェイン中毒への道が加速します。
こちらにも興味があるかもしれません:
現在プレイ中:
トニー・ホークのプロスケーター 1+2
好きなゲーム トップ 3:
ダークソウル 3、ディアブロ、タロスの原理