Game Engine Attention

Are there any major plans in the works for the game engine? From the .org site, the interactive facet to Blender seems to be the Cinderella equivalent of Blender’s features. If the same energy that is put into the un-real-time portion was put into the game engine I feel it could be really something. Note though, I’ve seen what it takes to create from scratch what Blender does and it isn’t pretty so the game engine is no small feat. However, it would be nice to see some modern features like:

Vertex/Pixel Shaders

Real-time Shadows

(Integrated) Rag-doll Physics Calculations

Switching Between Rendering APIs

Blender is great middleware between creating your own engine and of course buying a finished game. The programmable interface and extensibility (Python) is also very appealing. The game engine allows artist and designers alike to manifest there imaginations with less effort and less technical know how than other packages such as Torque. Allowing everything to placed in a single ‘.blend’ file is also quite nice. Basically, I use Blender to create games because it allows me to do it that much faster, easier, and more enjoyable. It just to bad that the real-time engine doesn’t get the attention it deserves in my opinion. However, I’m sure this will change and I am therefore eager to await new releases. If anything at all, it would be nice if Blender could incorporate OGRE into its real-time rendering arsenal. I am not sure of the ramifications of this, however, but I think the Blender developers could do it for they have done so much all ready. Since Blender can stand toe-to-toe with suites like 3D Studio MAX, I think it could stand up against technologies such as Unreal.

yeah, it would be nice to see such features, but it takes time…

The first two of those are in development, the api is possible if someone whos really good at coding and wants to write a direct3d version comes along (although opengl shoudl be fine for most people, ID seems to use opengl just fine), ragdoll is a bit complicated and would need a refocus back on ODE physics, which there were issues with.

The reason the game engine doesn’t get a lot of attention is because there are a very small amount of coders interested in it. The users of the engine in general use it because they lack the coding skills to program an engine. Those with the skills to code that are working on other engines elsewhere.

And the blender codebase is still a large untamed beast that is not easy to dive into.

The best thing we can do is continue making games and providing feedback, and showing the world what can be done with the engine, to get it more attention.

Why not gather some money (just like with SAVE BLENDER!) and hire professionals to do it?

I dont mean that the blender programmers aren’t skilled, but someone who has made a great realtime engine for their game could help, or at least sell the engine.

Think about what you could do with the Doom III or Half-life 2 engine! Of course that would probably be REALLY expensive, so the unreal 2 motor would be great too! I dont know anything about how much you have to pay to use those engines, I’m just offering possibilities! :smiley:

We can’t use those engines because the source for them is not released. But using something like Ogre is a possibility. It’s not that the programmers aren’t skilled, it’s that there is only one :slight_smile: Makes development on the GE take a lot longer than the other parts, that have many developers.

If you would like those features as soon as possible then why not help Kester code the game engine, the more helping him the better :slight_smile:

is there any way to export models from blender to ogre? I can’t find enough documentation on the blender game engine and the api reference doesn’t help. I’m trying to make an arkanoid like game using the mouse as control for the paddle and I can’t figure out how to do it… maybe I could use ogre for that?

Yeah, there’s a blender import for ogre on their site. There’s even a tutorial for using it. Crystal space also has a blend2cs which imports game worlds and everything.

sweet, thanks. I have never used ogre but I’m thinking about trying it out… I don’t have enough money to buy the blender game manual so maybe I can find enough docs on ogre to help me out with making my game in ogre.

Don’t expect Ogre to be as easy to use as the Blender game engine. Essentially what it is is a collection of libraries, headers, DLLs, etc. to add to projects. You still have to have knowledge of VC++. I’m not sure if Visual Basic is supported. I think I did see something on the site about Python, though.

I downloaded it last night myself (3 hours 19 minutes for 27.5 megs) and I’m currently trying to figure out where to extract everything to and how to configure VC++.

Vertex/pixel shaders and realtime shadows are supported in the Tuhopuu2 version of Blender.

If you make a game using vertex and pixel shaders though, keep in mind that not everyone will be able to play it. (Like me.)

The shadows in Tuhopuu2 only work on some graphics cards, but they could be made to work on more cards. (Like mine.) Hopefully that’ll happen in the near future.

also zachboy, to my understanding ogre is only a graphics renderer…so therefore you really cant make a game soley with ogre or anything…you would have to use it in combination with a game/physics engine…like blenders. all it would really do for your blender game is give you more sophisticated commercial-standerd visual extras…like bump mapping and shadows…if you can get it to work, it could look great tho!

to my understanding ogre is only a graphics renderer

They have demo’s that use collision detection and physics, although these are add ons. There are python bindings for Ogre, too. So you can program it completely in python with dll’s. There’s no way it would be any where as easy as programming the blender game engine, though.

Does ogre have Ragdoll? Does it support vertex animation and bones?

Orge has radool if you use ODE, and yes it has vertex/pixel shader

Yes, ODE has ragdoll, and you can link ODE with Ogre, but it’s not really accurate to say ogre has ragdoll. Ogre deals with displaying graphics, anything else you have to write on your own or link up to another library. pyOgre + pygame + pyode looks like a pretty sweet combo to me, but you’re still going to be writing a lot of code from scratch.

Oh and sky, I believe it does have skeletal animation, since one of the demos in the demopack shows skeletal animation.

It’s good to hear that some progress is being made. Only one programmer, though, but hey maybe I could help.

The problem with free engines is that they are only pieces to a big technological puzzle. Also, most overlap each other. For instance, OGRE handles graphics but it also creates windows, enumerates devices, and accepts input. Irrlicht is another example of which a very good one, but it isn’t a complete “game engine,” which Blender is. None of these engines, however, have a GUI such as Blender and really are just libraries that assist in the technical burden. For a complete game engine you need most if not all of the following:

Graphics

Input

Sound

Networking

AI

Physics

Scripting

System (OS Messages, Loading/Saving Files, Window Creation, etc.)

Now APIs such as DirectX in addition to the Win32 API handle most (except the scripting of which you could use Python or Lua and embed the interpreter) of these pieces. For data management you could probably use STL to help with binary trees, queues, and linked lists. After that, you need to develop a physics engine but you don’t need to for there is ODE and Tokamak. And last there is AI, which there are engines for as well. The only problem is getting all of these APIs, libraries, and engines working in unison. Furthermore, most deal with C/C++ and are therefore difficult to master. If there were software that could be comparable to Blender in terms of a game engine it would have to be Torque. I have dealt with all of these but switched to Blender because it obviously made things easier. When it comes down to it, it is the making of game that is important to me and not the creation of tools in order to get the job done. Thus, middleware such as Blender is highly appealing and is more realistic for hobbyist and even professionals alike. In the “real world,” most small or even midsize development firms use middleware rather than starting from scratch. For example, just look at how many games use the Unreal Engine, which to my knowledge is a complete game development package (minus content creation of course). You see once the machine is created (the game engine) and the gas manufactured (art, sound) then the scriptwriters, if you will, take over. Usually they place everything graphically (character at XYZ coordinate, adjust terrain height, etc.) and then through a programmable interface (such as Blender’s) they create the punch cards (scripts) that are feed into the machine, which are easier to change then the machine itself. Finally, it’s off to market where, if the game allows it, gamers can create their own punch cards and “mod” the game to their liking.

All in all, Blender’s game engine is pretty decent when compared to what you alone can do or what someone else has done for you for free (OGRE, Irrlicht, Crystal Space, etc.). I do not know how modular Blender is or if its code architecture follows COM but the rendering portion could be eradicated and something like OGRE could take its place. This of course takes time but I do not mind waiting.

Can you export to Ogre so the game created in Blender stays the same as in blender?!?? Then, if I DO export to Ogre AND it works perfectly, then how do I use pixel shaders and ragdoll if I can’t create them in Blender?

man… I should have read all the info on the Ogre site… oops. Anyways, I finally found some tutorials for the python api that I can use, but I’m still having trouble finding a decent tutorial that will explain how to program with python…I have some previous experience with pascal (crappy but a good base) and I’m just looking for something to explain what the errors are that I’m getting and why my paddle isn’t working. I modified the blender demo “walkthrough.blend” so that I could use the mouselook without having to click. It automatically hides the mouse and activates mouselook…but I would like to know how to program this from scratch and this is where my problem comes in.