0

見栄えの良いグラフィックスを備えた、適度にシンプルなゲームを作りたいと思っています。

OpenGL サンプルを作成するためのチュートリアルをいくつか実行しました。コアオブジェクトは点と三角形であることを理解しています。テクスチャのマッピングと照明の適用も理解しています。概念的な何かが欠けているに違いありません。

単純な車の例を見てみましょう。車をあらゆる角度から 3D で見る必要があります。つまり、数学的に車を 3D で構築する必要があるということですか? 文字通り、その表面全体を表す何千もの三角形を作成して保存する必要がありますか? 次に、それらの三角形に色/テクスチャを追加しますか?

公園内のナビゲーションをアニメーション化したいとしたら、木、小道、他の人々など...それぞれのユニークなタイプのオブジェクトを一度だけモデル化したとしても、それには何年もかかる可能性があります?!

商用ゲーム開発者はどのようなアプローチを使用していますか?

4

2 に答える 2

2

これを行うにはいくつかの方法があります。最初の方法は、すべてのオブジェクトを自分で設計することです。これはプロのゲームデザイン会社が行っていることであり、部門全体がこれに専念しています。Blender(無料!)、Maya3DS MaxModo、または任意の数の3Dモデリングプログラムを使用してこれを行うことができます。

2番目の方法は、これらすべてのオブジェクトの手続き型生成を行うことです(正直なところ、より楽しいです)。手続き型生成とは、プログラムが必要なすべてのオブジェクトをその場で生成することです。これにより、ディスクスペースの使用量が最小限に抑えられ、読み込み時間が完全になくなります。多くの場合、手続き型生成アルゴリズムは、フレームレートを損なわないように、別のスレッドで実行されます。

現実的には、両方を少し実行することをお勧めします。植物と環境を手続き的に生成しますが、キャラクターと車をモデル化します。

これは、手続き型生成アルゴリズムの優れたリソースです。

乾杯、ネッド

于 2012-09-29T07:53:18.197 に答える
1

つまり、数学的に車を 3D で構築する必要があるということですか? 文字通り、その表面全体を表す何千もの三角形を作成して保存する必要がありますか? 次に、それらの三角形に色/テクスチャを追加しますか?

確かにそうです。ただし、ファイルに数値を入力してモデルをハードコーディングする人はいません。人々は、3DS、SoftImage、Blender、Milkshape、Maya などの 3D モデラーを使用します。これらのモデラーは通常、三角形テッセレート メッシュの原理で動作します。つまり、モデルを三角形のメッシュとして表現します。

公園内のナビゲーションをアニメートしたい場合はどうなるでしょうか?木、小道、他の人々...それぞれのユニークなタイプのオブジェクトを一度だけモデル化したとしても、

アニメーションは通常、1 つのメッシュのみの動的変更として発生します。または、車などの複合オブジェクトの場合は、コレオグラフィーの個々のメッシュの変更として発生します。

それには何年もかかる可能性がありますか?

一人の場合:はい、あります。そのため、ゲーム スタジオは多数のアーティストを雇用しており、一緒に働いていても、大規模なプロダクション ゲームを完成させるには数か月から数年を必要とします。

平均的なゲーム スタジオでは、プログラマーの 10 倍から 20 倍のアーティストを見つける可能性が非常に高くなります。プログラマーの仕事は複雑ですが、ゲーム全体に遍在しています。新しい機能やバグ修正は、多くの場合、ゲーム全体に利益をもたらします。ただし、ゲーム内のほとんどのアートワークはローカルで使用されます。つまり、一部または 1 つのマップでのみ使用されます。ノンプレイヤー キャラクターのアニメーション (歩行サイクル、アクション、攻撃/防御のアニメーションなど) などの一部のアートワークは再利用される場合がありますが、それらも多様性を維持するために各キャラクターごとに個別化される傾向があります。また、一般的な小道具は再利用できます。しかし、ゲームのすべてのアートワークを行うことは、非常に時間のかかる退屈な作業です。

于 2012-09-29T14:38:04.220 に答える