Page 1 of 4

New fully integrated "game" engine

Posted: Mon Jun 27, 2005 2:45 pm
by Bandoler

I'm currently programming a full new game engine totally integrated in Blender. Oh! Surprise! One more atempt... let's see what's different in this one:
My approach is:
- modular, so extensible by any programmer apart of me. If this engine succeeds will be because other people contributes to it in the near future, and to achieve this. It has to be easy to extend.
- general, for any kind of game/interactive application
- pipleline based: You interactively define the game data flow during the conversion. This way, you can generate ligthmaps, normamaps, environment maps, or whatever you need in your game. You also define the main rendering loop using a pipeline, where you can link materials, render to texture, and add post-processing effects to the rendered image. All this inside and with "harmony" with the blender interface.
- not compatible. Until there are sufficient modules to build pipelines that mimick the previous game engine.
- illogic, meaning that the game logic is not there yet. However, pipelines can be used the same way as more generic system than the previous one. The pipeline editor in Blender is generic and could be used for that.

I didn't wanted to post before showing soe images, but i... ehem... forgot them at home, so i'll post them tomorrow.

The current status is:
- basic pipeline editor: still crashes sometimes, because i haven't fitted it very well inside the blender ui arquitecture
- basic data bulding modules: "ConvertMesh", "ObjectFilter", "ObjectParts" (you will understand when you see them...
- basic game pipline modules: "RenderMesh", "DepthMaterialFactory", "Screen"

I think this is a totally different approach, but time will say if it works or not. Right now, i only have a system that renders the meshes using GL Shading Language simple shaders (no textures, no lighting, only depth coding and things like this).

I'll post images soon, but i warn you they are still very primitive. By the way, Opengl 1.5 and GLSLang are required, but this is not too much nowadays.


Posted: Mon Jun 27, 2005 3:16 pm
by joeri
So what is this? A blender fork or are you in contact with the BF?

In what timespan would your GE be able to play/display games?

Posted: Mon Jun 27, 2005 7:22 pm
by Bandoler

I downloaded the full source code from CVS two weeks ago. It's not official at all, if the thing evolves, i'll contact the "bosses" to see if they are interested and hosting the branch at However as you point out it should be able to run things first.

Right now it runs the construction and rendering pipelines, but there are the minimal modules to show something. There is no interaction processing or game logic yet. There isn't any camera control either.

I just wanted to know how people feels about this approach, because i'm quite proud of it, and maybe i don't see its mistakes and problems. Tomorrow i'll try to post some images...


Posted: Mon Jun 27, 2005 9:25 pm
by zingbat
What do you mean with a pipeline editor ? Are you actualy representing objects like RenderMesh as visual elements, a sort of visual programming ?

Posted: Tue Jun 28, 2005 11:51 am
by calli
Interesting work. I think you should go wit that Open Source word: "Release early. Release often".

Often you get into dead ends while beeing the only developer or even user of a piece of software.



Posted: Tue Jun 28, 2005 3:57 pm
by Bandoler
Hi again,

As promised, i link in some images. I don't have a webpage, so they are on a free server with monthly limited bandwith. If you don't see them, wait one month :P.

Here you are the first ever working pipeline pair:


Next a more complete game data construction pipeline. This one works also, and there is also the material conversion system done. (It is unlinked in this example).


Finally, the first colorful shader. It's only per-vertex phong shading, but is to show that i'm planning to support all shaders in the blender material system (local light, of course) in real time.


I definetly need to implement pipeline Save/Load, because building lal this every test takes too much. So expect a little delay until next week for new images...

Next target : a normal-mapped tombstone with "Ketsji" written on it!


P.S. By the way "Girona" is a temp code name of the engine.

Posted: Tue Jun 28, 2005 4:11 pm
by joeri
Cool. Did you hyjack the Enji window?

Posted: Tue Jun 28, 2005 4:46 pm
by zingbat
Amazing work man. I find it hard to believe someone could come up with this with Blender (i guess i don't understand much about Blender source ;) ). A load/save scheme would definitly come in handy and if i may sugest "black boxes" as way to hide circuits inside a box and exposing only the "black box" and its interface. Really amazing work, i will be looking with interest for more news on this project.

Posted: Wed Jun 29, 2005 5:27 pm
by Bandoler
joeri wrote: Did you hyjack the Enji window?
Not only i have hyjacked its window, but i have captured Enji, and it's been held hostage in the directory "gameengine/old" to be interrogated in the future...

About the "blackboxes", they could be very useful yes, but it something "cosmetic" and i wouldn't address this until there is more actual functionality in the engine.

By the way, basic save/load already works, so back to work on graphics again...


Posted: Thu Jun 30, 2005 10:19 am
by jm
wonderfull :P

I'm just wondering that here is so many people working on BGE.

thanx for your work & i'm really loking forward to new progress.


Posted: Thu Jun 30, 2005 1:27 pm
by Doc_Holiday
That looks very interesting. :shock: That reminds me to Quest3D.

Posted: Thu Jun 30, 2005 7:54 pm
by pildanovak
looks great for the short time you've been working on it. Very nice node-editor. i think it's a pitty that all the game developers cannot join to a common effort, the crystalblend approach should be assumaby very similar to yours, also some kind of this logic. I think it'll be a long way through texturing, physics implementation, and animation/scripting system, but I trust you. :wink:

I think this system could be much faster than blender engine in the future, blender engine never had it's own armature code, that's why it was so slow with them...

Posted: Fri Jul 01, 2005 12:07 am
by malCanDo
I think that, if this UI approach works, and could be open-sourced as a separate "Graphical Logic Block" package, a number of different game engines ( Crystal Space / OGRE ) could take advantage of it, so that non-technical artists could create games with their back-end 3D engines.

Keep up the work, it looks great!


Posted: Wed Jul 06, 2005 12:36 pm
by erwin
Hi Bandoler,

your plans sounds good ! its good to see some motivated people who want to add gameplay to blender.

i try to contact you directly, but I don't have any email etc.
Bandoler, could you mail me at

I'm interested to see if the can be some kind of collaboration with other projects, like CrystalBlend etc.


Weekly update

Posted: Thu Jul 07, 2005 10:45 am
by Bandoler

I have some more images to show. The first one is just three objects with per-pixel phong lighting:


The second one is an example of rendering to offscreen textures to make more complex render pipelines. Two images are rendered, one to the screen and one to a secondary target that is then rendered in a corner of the screen.


I still owe you a normal-mapped tombstone... does anybody know what is the license of ATI's normalmapper tool?