Latest: sound, particles etc

Some of the latest stuff I've been working on:

  1. Particle support:






  2. J3P format - an efficient archive packaging format for game files, with faster retrieval than JAR, support for NIO API, and fast compression/decompression with LZMA. Of course, it should be smart, so it doesn't compress files that are already in a compressed form, like JPG and OGG.
  3. DDS loader now supports depth/volume maps.
  4. Added PFMLoader. For reading portable floating maps, used for HDR images. Since PFMs usually take lots of space, I hope that they'll be used in the engine for mostly converting into "J3I", the image format. Since the other HDR format, Radiance .hdr, is stores in RGBE 32 bits which has much less information than Floating-point RGB 96 bits.



    Features that hopefully will be added soon:
  5. Support for more model formats, primarily I am hoping for Mesh.XML/Ogre3D so we have animated models.
  6. A "Special Effect" system, which will incorporate particles, ribbons, and models to create an animated effect. This will be done with a file format similar to the current material script.
  7. Collision detection and collision response. I know jME1/2 use a simple method of splitting the mesh's triangles on the buffer level. I am hoping to use a more efficient, Octree structure for this instead.
  8. Improvements for the JOGL renderer, and in general making the renderer framework more flexible/less complex than right now.
  9. Sound system? I looked at some libraries available online, I found J-Ogg, JVorbis and JSpeex to be quite interesting. Maybe we could have some sort of VoIP system for transferring audio from microphone, encoding it with speex then sending down the network  :slight_smile: In addition, I plan to have all existing jME1/2 sound system features, which is 3D audio, environmental ambient, and music queue.
Momoko_Fan said:

Support for more model formats, primarily I am hoping for Mesh.XML/Ogre3D so we have animated models.

Yes, I agree. But I think the best option is to make JME skeletal animation system and then write an exporters for all popular 3D modeling environments like 3D studio max, Maya, Blender and other. It's better if you can manage your own format then depend on 3rd formats.

I wrote an exporter for 3D studio max that exports static meshes and animated models (vertex keyframe animations only). I have tried to export skeletal animations but the bone system that is already in JME seems to be working only with collada :) or I haven't spend much time for this :(
Momoko_Fan said:

4) Improvements for the JOGL renderer, and in general making the renderer framework more flexible/less complex than right now.

Can you be more precise please? Using JOGL 2 and newt could be interesting.

Momoko_Fan said:

5) Sound system? I looked at some libraries available online, I found J-Ogg, JVorbis and JSpeex to be quite interesting. Maybe we could have some sort of VoIP system for transferring audio from microphone, encoding it with speex then sending down the network  :) In addition, I plan to have all existing jME1/2 sound system features, which is 3D audio, environmental ambient, and music queue.

Why not using PaulLamb's 3D Sound System? It even works with JavaSound, it still supports OpenAL.
Momoko_Fan said:

Why support OpenGL2 only? Well, don't you think it's time to move on? OpenGL2 has been around for years and now OpenGL3 is out.


Eh... you do know that all MacBooks have OpenGL 1.2?

Hey Momoko, just thought I would pop in and say hi and check out your handy work. Very nice job so far.



As for the sound, I like the potential VoIP path. The key, my opinion at least, is to keep the voice (other non-critical data) in a seperate data path from the game critical data. That way you can even prioritize the packet differently.



Geerzo