New Core in CVS

Next generation of jME is now officially in CVS. Right now it is living with the older source, but starts at com.jme rather than jme. I will slowly be merging the older source in with the new until the new version can replace the old. I’m not worried about getting everything into the new version, although MD3 loader may take some time. I’ll be creating my own model format, where the loaders will translate different models into the custom one. It will probably be closer to Milkshape than MD3 so some issues may come up.

Also and exciting thing you might like. All models descend from TriMesh. This includes Terrain. The renderer knows how to render TriMesh’s well, and will be able to handle dynamic LOD on all TriMeshes. That means not only will terrain have level of detail but so will models. This includes at the lowest level of detail impostering. Should provide the ability to put MANY objects on the screen and still have a good frame rate.

I got some tutorials up, check them out if you will. I have a couple more (camera and scene graph) that will bring the tutorials up to date with the new code in the repository. After those are written I will start with render state. Render states will allow things like: Alpha blending, dithering, fog, lighting, materials, shading, texturing, color, wireframe rendering and z buffer writing.

What’s nice about the method of render states is the scene graph handles state changes in OpenGL and will do it minimally. So you won’t lose any frames do to excessive state changes. Also, it is easy to add special effects. For example, if I wanted to implement bump mapping I’d just add a new bump mapping state. No other changes will need to be made.

So, the basic states are my immediate goal. Then I will get going on the input handlers so the mouse and keyboard work like they do now. Only issues there is I have to allow support for any input library JInput or LWJGL for example.

It will still be awhile before the new jME has the same amount of functionality as the current, but once it does, it will blow it out of the water.

Like the idea of a custom model converter for the models in JME. :slight_smile: Will this also include your own image format for the models? For example SPGL has its own.

All sounds v. exciting! :slight_smile:

I hadn’t thought about a custom image type. If you guys want it, I don’t see any reason not to do it.

I must admit I haven’t really thought about it either way. I’m happy to use whatever existing formats work best really.

It might be nice in the future to bundle image files into one file for use with models. What does anybody else think :?

Great idea. I like that a lot. I’ll get that into the next version. DisplaySystem will change from an Interface to an abstract class with the only method implemented getDisplaySystem(String). That should make things a little cleaner for the user.

Thanks for the idea.

Both techniques have been implemented, and the use no longer has to reference a camera or renderer directly.

Release 0.2 is coming soon. I’m finishing up the input and will be adding additional TriMeshes such as boxes, pyramids etc.

Release 0.2 noteable additions:

  • Render states
  • Input controllers
  • Text output
  • Initial Sound system

    Release 0.3 will contain:

  • Picking and Collision Detection

Input system is finished and documented. In CVS now. I am starting with extending TriMesh. I’m going to limit it to two models, box and pyramid for now. This will provide enough for generating some shapes. But will allow me to release 0.2 and move on to collision detection and picking.

Ok, now that I am back, and things have the symblance of normalcy, I am going to try to get back to work. I am going to get 0.2 out the door real soon. Just need to get Pyramid taken care of.

Pyramid and Box are now both in CVS. This basically constitutes version 0.2. I’ll be adding one final test and that is it.

Here’s my plan for the release. I’ll be making a jme.jar file available for download, but keep a link to the older jme available. This is because version 0.2 still doesn’t have terrain and models to make it particularly interesting yet.

I will also be replacing the javadocs with the new stuff, but I’ll add a file that contains the older javadocs.

This should be complete by tomorrow.

0.3 will have collisions and picking. Some people may be excited about that.

I promise interesting stuff like terrain and models are coming, I just need to get the core nice and solid before adding the frosting.

It’s been released!

Good stuff! :slight_smile:

Should I still be looking to test my Spag stuff on this like I did with version 0.1 or is the GUI going to go in another direction in terms of its jME?

Hmmmmm time to find that lwjgl 0.8 jar now.

Feel free to test Spag with it. I have made no decision regarding GUI yet, and probably won’t for awhile. In fact, I’m hoping one of you guys will decide to tackle the GUI for jME. XD