I’m going to develop a 3D game, that a player walks in a maze with a 3D first-person perspective, collects things and escapes a monster. The game itself is very simple, but as it is not for entertainment, but for a biological experiment, so it has some specific features:
-
We will project the graphics to a spherical screen with 3 projectors, so the graphics should be in a fisheye trasformation, and be easily further transformable (to deal with the merging between projectors).
-
There should be a functionality to record data, like the path of the player, and the time points when the monster appears etc. All the events should be recordable.
-
The game program could interact with external devices via USB. For example, whenever the player press a certain key, the program will tell an Arduino board to do something.
As my invesigation, I found three candidates of tool chain to develop such a game:
-
Develop a MOD on Quake3 engine + Fisheye Quake. The problem I think would be that the Quake3 runs with a virtual machine, so that is it possible to implement the feature 2 and 3 above?
-
Panda3D + FisheyeLens API
-
PyOpenGL. This is the most flexible way, but with the greatest workload I think.
I’m quite familiar with C/C++/Python, but this is my first time to develop a 3D game. My question is which tool chain is fittest for this project (or any other good options) ? What problem would I encounter?
As there’s no answer yet, let me give my own thoughs here. I have no experience on 3D development and don’t know if these technology would work. For some side reasons, I prefer Panda3D.
Please note that I’m still open to accept other answers.
Why Panda3D?
Why not Quake3?
Why not OpenGL?
At this moment I think the Panda3D is bottom enough. If it’s proved to be not as flexible as I need, I would turn to OpenGL then.