New fully integrated "game" engine
Moderators: jesterKing, stiv
New fully integrated "game" engine
Hi,
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.
(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.
(bandoler)
Hi,
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 projects.blender.org. 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...
j.
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 projects.blender.org. 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...
j.
images
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!
(bandoler)
P.S. By the way "Girona" is a temp code name of the engine.
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!
(bandoler)
P.S. By the way "Girona" is a temp code name of the engine.
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.

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...joeri wrote: Did you hyjack the Enji window?
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...
(bandoler)
-
- Posts: 2
- Joined: Sat Jul 05, 2003 1:03 am
- Contact:
-
- Posts: 18
- Joined: Fri Oct 25, 2002 9:32 am
- Contact:
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. 
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...

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...
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!
Mal
Keep up the work, it looks great!
Mal
contact
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
girona@erwincoumans.com
I'm interested to see if the can be some kind of collaboration with other projects, like CrystalBlend etc.
cheers,
Erwin
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
girona@erwincoumans.com
I'm interested to see if the can be some kind of collaboration with other projects, like CrystalBlend etc.
cheers,
Erwin
Weekly update
Hi,
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?
(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?
(bandoler)