I've spent about a month writing a pretty detailed model exporter for Java3D games, which I intended to use as a substitute for VRML/jX3D. I designed it to be optimized for use in for games, and specificly Java3D games. Unfortunately, I find my employment situation shifting, and am not sure if I can go the next step and develop a game with my engine. I'm writing to this list to get suggestions about what I should do next.
Some nice things my engine can do: - Tag geometry in your editor to be visual, collision and/or sensor geometry. The loader generates three seperate trees, so the collision tree is seperate from the visual tree which makes picking against it a snap. It even shares the geometry data, so no data is duplicated. - Animate with true keyframes. My engine interpolates between keyframes, where as VRML seems to draw from a static list of values. - Skinned bone models. I've implemented in software a realtime skinning algorithm. - Multiple animation channels. Drawing from the Maya notion of 'characters' and 'channels', one can have multiple animation channels per exported model. So you could create one model with one animaiton of the character walking, and another running, and switch to the appropriate animation in game code. - Shared memory for instanced geometry. If you instance geometry in your source scene, only one copy of the geometry is kept in memory. So if you create a street with eight identical lampposts (each an instance), you only have a memory hit for one model. - No link nodes. I found that link nodes caused odd behaviour in my Java3D programs. This was the primary reason that I decided to abandon jX3D. - Low level. My engine avoids using behaviours and instead provides it's own threading for animation. It also provides seperate trees for visual, collision and sensor geometry, so wakeup behaviours are not necessary and picking can be done fairly directly. While it does not currently use JOGL or similar, it should be easy to adapt it to do so. - Includes level of detail, fog, cone lights and other neat nodes like that.
Some drawbacks: - Uses my own XML based file format to save scenes/models - Currently an exporter only exists for Maya.
I call my new file format Salamander3D. Let me know if this is something that would interest folks.
Mark McKay
=========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA3D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".