0

プレイヤーが 3D 一人称視点で迷路を歩き、物を集めてモンスターから逃げる 3D ゲームを開発します。ゲーム自体は非常にシンプルですが、娯楽用ではなく生物学的実験用であるため、いくつかの特定の機能があります。

  1. グラフィックスを 3 台のプロジェクターで球状のスクリーンに投影します。そのため、グラフィックスは魚眼変換であり、さらに簡単に変換できる必要があります(プロジェクター間のマージに対処するため)。

  2. プレイヤーの移動経路やモンスターが出現した時点などのデータを記録する機能が必要です。すべてのイベントが記録可能でなければなりません。

  3. ゲーム プログラムは、USB 経由で外部デバイスと対話できます。たとえば、プレーヤーが特定のキーを押すたびに、プログラムは Arduino ボードに何かをするように指示します。

調査の結果、このようなゲームを開発するためのツール チェーンの候補が 3 つ見つかりました。

  1. Quake3 エンジン+ Fisheye Quakeで MOD を開発します。問題は、Quake3 が仮想マシンで実行されるため、上記の機能 2 と 3 を実装できるかどうかです。

  2. Panda3D + FisheyeLens API

  3. PyOpenGL . これは最も柔軟な方法ですが、ワークロードが最大になると思います。

C/C++/Python には精通していますが、3D ゲームを開発するのはこれが初めてです。私の質問は、どのツール チェーンがこのプロジェクト (またはその他の適切なオプション) に最も適しているかということです。どのような問題が発生しますか?

4

1 に答える 1

0

まだ答えがないので、ここで私自身の考えを述べさせてください。私は 3D 開発の経験がなく、これらの技術が機能するかどうかわかりません。いくつかの副次的な理由から、私は Panda3D を好みます。

私はまだ他の回答を受け入れることができることに注意してください。


Panda3D を選ぶ理由

  1. それは十分に文書化されています。これは、テクノロジーを選択する際の重要な要素です。
  2. それは私にとってプラスであるPythonにあります。
  3. 汎用です (Quake3 より)。Panda3D はロボティクス シミュレーターなどでも使用でき、私にとっては便利です。

Quake3ではないのはなぜですか?

  1. 仮想マシン (QVM) 上で実行されます。データの記録や外部機器へのアクセスが難しいと思います。
  2. 最初は Quake3 のことを考えていましたが、それは少なくとも非常に古典的なコードを読むためでしたが、現在、Quake3 は FPS のようなゲーム以外は何もできないことに気付きました。読む価値がある場合は、ただ読んでください。作業する必要はありません。
  3. グラフィックスのレンダリングを変換するのはそれほど柔軟ではありません。これは、一般的なグラフィックス処理ライブラリではなく、目的のゲーム エンジンです。

なぜOpenGLではないのですか?

現時点では、Panda3D で十分だと思います。私が必要とするほど柔軟ではないことが判明した場合は、OpenGL に目を向けます。

于 2013-01-12T16:02:48.687 に答える