Porting GameBlender projects


13-03-2009 01:04:38

I'm hitting a road block. Love the engaging tutorials for beginners and the example files. There's a few things I can't grasp, though. One thing I noticed is a lack of information on porting projects created entirely in GameBlender. My general perception is that there aren't Blender users that have or are converting.

I've been using the Blender software as a rendering choice for prototyping a simulation project. I have made a decision to migrate production off the GameBlender platform to another environment possibly Ogre. The software will remain in the pipeline for cosmetics.

The architecture of creating content in Blender has the propensity to skew a persons thought process away from what the rest of the world is doing. I think I've been coddled with the Blender environment having everything wrapped up into a package. My project is completely encased in the Blender platform. When I press 'P' it bundles it up and spits it out graphically, but I am completely oblivious to what is really happening in the backend. Everything under the hood is hidden away from my eyes. You can imagine how confusing it is for me to learn basic concepts that have been trashed by the thought process of having a "P" button. :)

My main premise for this thread is to learn from anyone out there how well concepts found in GameBlender port to Python-Ogre. I describe a couple of my concerns below:

Logic System. Every object in GameBlender can be controlled by logic. For instance I can spawn child objects from its parent if the parent sees another object. In my project I typically make this happen in Python and attach the script to the object. Objects can own scripts. Does this general concept port over well to Ogre and if so, how? Can I attach Python scripts to individual objects (or in the case of Ogre, entities) that let me manipulate how it exists in Ogre? I use this heavily in GameBlender.

Hierarchy. I get the gist of Python-Ogre, but not the hierarchy. Do I have a single .py to act as the root game loop the place to call all my objects and everything?

Any response is greatly appreciated!


13-03-2009 23:37:17

Hi !...

Well, i'm a blender user too, like you, emigrating from blender game engine to ogre, that you mentioned (root game loop) seems to be the most common way to get the structure game...

For example :

You start in a mansion, the mainhall (root.py)

if ent1 touchs left_door():
import left_door

elif ent1 touchs right_door():
import right_door

elif ent1 touchs out_door():
import out_door

Of course !, all of this with its correct syntax... ;)

Where left_door, is a separated module, this must be located at the same directory than this one (root.py)
the filename for importation should be left_door.py , where in this file you load the scripts for the scene.

that is the great in ogre, you have a root module that can call submodules, all is more structured...
Like you say, in blender, big quantity of scripts are for objects, filters, and is a little confused to get a game works structured..

I guess Blender Game Engine is a little poor yet, because is a little impossible to make a descent commercial game in it. Of course, is growing up so fast, but not at level to make games like silent hill, pro evolution soccer... etc.. etc..

Now, there are exporters from blender to ogre, for scenes and meshes, they make really easy the work, but seems to have some problems with the dimensions, Blender Workspace is too small for Ogre....