Java Engine Design

i was wondering if anyone would be interested in doing a port of the Quake 2 engine in java. it wouldnt be so much a port, but more just like an engine that is able to use the Q2 BSP maps, and MD2 models… The engine would be flexible to later support any formats, such as those used in Half-Life/Counter-strike.

Does anyone have any interest in this, i have already worked on loading and rendering MD2 models, and BSP Maps… I am a little stuck on where to go with the actual engine design… looking over the Q2 source has helped a little, but its not very clearly organized.

If anyone is interested in such a project please reply, and i think that being able to get some results would be an excellent achievement…

I havent really done any game proramming before gl4java, and now ive switched to JOGL, but i think that some essential structure to the engine would include:

– A Camera object to store transformations and rotations about a scene, probably using Quaternion math…

– Some sort of general “Entity” class to represent an object to be rendered… all subclasses will share a common method “draw()”

    -- a Model class extending Entity to represent any sort of active objects in a scene, i.e. a character, weapon, or vehicle... Models posess Textures, and also probably have some system to control animation frames

     -- a Map class extending Entity to represent a static Map, such as that loaded from a BSP file, a Map includes data about its structure, textures, and perhaps a skybox...

-- Texture objects, with loaders for specific formats

It would be best to have a flexible virtual “Client/Server” setup so that it would be easy to add internet/lan capabilities later.

I have never really designed a general engine, but always just straightforward demos, so this is new to me… How does one integrate physics/collision into the engine? does the client do this, or is it stupid, and just sends requests to the server, which in turn processes everything and updates the game state…

later to be added would be of course a particle engine (for explosions/bullets/blood), lighting/shadows, perhaps water, and everything else a real game engine has

In the meantime, I am hoping to be able to get a simple system working and render a Map, probably one from CS, and place a character model in it, and have him move through the map with some collision detection… I hope someone can help guide me in this process… i appreciate any comments, thank you.

Did you check this out?

http://www.java-gaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=volunteer;action=display;num=1045336951

I thought that was a pretty neat idea, and I wouldn’t mind getting involved, but I’ve got like negative free time.

yea, i saw that project a while back, there doesnt really seem to be any deveopment on the sourceforge page… anyway, i wasnt really looking to do an explicit port… Does anyone have a name for a jogl based 3d engine? i think i want to open up a SF project…