A project like this should define API/interfaces for sub-systems that are required by most game engines and create exemplary open source based implementations. There are some fine open source engines out there (there are others, but these are the ones I know about):
- OGRE graphics engine. Someone else develops a Java wrapper for it
- ODE physics engine. There seems to be a plethora physics engines out there lately, but I'm not sure how many are open source. I remember that ODE is one of them. It has a Java wrapper too
- OpenAL 3D audio library. I think there are Java wrappers for this too, but you'll have to find the links yourself.
Other things needed:
- entity/actor system
- a scripting language
- the glue to hold it all together
- 2D graphics engine (start simple)?
- extensions for specific genres
10 comments:
I have been thinking about exactly the same thing, so finding this post was exciting!
Instead of OGRE, I suggest LWJGL. Actually, why don't we make the rendering choice an extension point. Depending on which extension is used, different rendering engines can be used.
I have an engine underway that is heavily MVC and I am learning OSGi/Equinox right now. Once I have my bearings on the stuff, my team may be moving the engine to the Eclipse framework.
Have you made any progress on this?
I haven't actually made any progress beyond what I wrote in here about trying LWJGL in SWT:
http://villane.blogspot.com/2006/11/using-opengl-in-swt-with-java-5.html
I would very much like to work on something like this, but at the moment I don't have much time for it. There's just always so much work to do and so many ideas to put in code :)
But I hope that if I have more time (maybe in 2007 or 2008), I can join whatever project is working on this. Actually, this probably wouldn't be good as an Eclipse project straight away -- I think it should start somewhere else and mature a bit before going into the Eclipse incubator.
Also, my opinion is that this engine wouldn't be useful just as a technology integration/component platform, but it should also provide something new, like a really solid and extensible object-oriented framework for describing game entities (abstractly) for gameplay programming and scripting.
Note: I haven't got that much experience in complex 3D game engines. Actually I have really no 3D skills at all (I'm mostly interested in the areas that don't deal with graphics or physics). I have worked on many small personal projects in the Pascal days, and have worked with UnrealScript quite a lot.
I am in the game field itself, and have a small budget for R&D that I can put to work on the OSGi game engine. We are currently rolling out several games on our jMKGE engine (Java MangoKiwi Game Engine...inventive name, yes?). As those games go into production, we'll be able to start on the OSGi effort. I'm thinking LGPL for now.
btw, how easy/difficult is it to get LWGJL on SWT/Eclipse? jMKGE uses LWGJL and I plan to use LWJGL for future Eclipse work as well.
JOGL might be a good idea besides LWJGL. I have graphics knowledge myself that comes from experience back when I was in the games industry as a game developer, but mainly in C++ though I'm actually interested in trying out what has been mentioned. Diwant, what can you share on the part regarding using a script for game logic. Is jMKGE currently using one and which one?
Hey, I'm one of the developer of ogre4j. We released new versions of the wrapper and we are planning to implement basic eclipse plugins on that wrapper. First one will be a OGRE meshviewer for Eclipse based on a jFace like UI-Toolkit.
Terenceou,
We are employing python for our scripting in jMKGE and will likely use the same in our OSGi efforts.
There are many scripting languages available for java game engines including Lua, Groovy, Rhino, Jython, and JRuby. We use Jython because we knew python. It is simple enough to pick up if you don't know it and offers a lot of power for rather prettiful code.
What else would you like to know about our scripting engine?
Not sure how relevant it is to what you're wanting, but there's a Java Game engine called GTGE (http://goldenstudios.or.id/products/GTGE/) that looks pretty good. I just downloaded it and have been reading the tutorials. It's not nearly as comprehensive as MS's XNA, but it's better than writing it all from scratch. :)
Hi, i'm really interested in this post...I want to know more about "Idea: OSGi based game engine".
Thats exactly what I was searching in this time...
Thanks!!!
Thanks for the information. It would be nice to make a open source game with existing engines but I would like to do mine for the scratch.
Niz, I bought the book you mentioned on trust, but it seems to be mainly about erections with very little content relating to OSGi game development at all :'(. Are you sure this is the right one? Perhaps you have some other suggestions? I eagerly (and turgidly) await further recommendations.
Post a Comment