Sunday, July 5, 2009

DigiBahn + Blender Game Engine

Did a quick run-though today of the DigiBahn game with the Blender game engine (BGE). I was able to find a script for mouse/camera control on the Web, although it is using Python 2.5 and many of the functions – its seems – have been deprecated for Python 2.6. Future development in Blender 2.49 and, eventually, 2.5 (both of which will use newer Python releases) will need to take this into consideration and most likely program new code for player interaction with the mouse and screen. I arranged the Blender logic blocks to support a standard WASD key configuration for game movement, although the player movement in the game does not “follow” the mouse; the camera simply pans to where ever the mouse is pointed. Again, something that needs to be addressed in future game prototypes.

Once the BGE is turned on, one can see the physics in effect: The camera drops until it collides with the ground and the camera bounces a bit as it goes down the stairs:



Other than that, the screen capture was done with Blender in a solid viewport draw type as not everything was textured and, accordingly, would not appear in texture draw mode.

While doing the run-through, it occurred to me that future development should focus on these areas:

  1. Player interface. What type of GUI are we going to have? The objects present in the game should also be explained to the player in some fashion as many of them will be immersed in this virtual representation of a foreign sociocultural space for the first time. What about a PDA that the player can access whenever s/he has a question? Perhaps a mashup with Wikipedia that downloads information directly into the game via the PDA screen? This idea sounds promising as a PDA would not interrupt the game flow and many players would have their own PDAs in the real world.

  2. NPCs. Once we get the meshes fleshed out and imported, we'll need to have people to occupy the spaces. The art people on the project probably should focus on character animation and rigging in order to create authentic-looking NPCs.

I'll be spending more time with Blender, making meshes and texturing them. Once I get enough meshes developed in this area, and have developed more competency, I will turn my attention to the BGE and work through some tutorials. I have been using the 2nd edition of The Blender Gamekit, which has been OK (if you overlook the typos), but I have been happier with Mastering Blender as an intermediate introduction to Blender as a 3D content creation suite. Once I got a handle on modeling and the BGE, I'm going to focus more intently on Python as this will be the way to really get the game to do what I want.

No comments:

Post a Comment