x3d loader/writer

xj3d implements a java3D loader for the x3d specification. Is there any port for xith3d? If one was to try to port it, would it be too difucult? (for a xith newbie)

thanks,
pedro

I was planning on attempting an x3d loader for Xith3D after I have a “stable” version of my Xith3D specific XML code. Might save me a bunch of time to do a port of xj3d instead.

i’d like to help out with writing the x3d loader/writer

As one of the maintainers of Xj3D, we’d certainly welcome you adding an official renderer to the system that used Xith3D.

Porting of the Java3D renderer code over to Xith3D should actually be quite easy as we don’t make use of a lot of the extended features of Java3D. We only use a single behaviour (WakeupOnElapsedFrames) and the rest we do ourselves within that area. In fact, since the APIs are almost identical, except for that, I would guess it is almost just a cut and paste, then run PERL through it to change the import statements to the Xith3D versions. Anything after that would probably be dealing with non-implemented parts of Xith3D. We went to great pains to separate out the X3D/VRML runtime code from renderer specific parts, so with just the above changes you should be just about up to full capabilities of Xj3D with little work.

To start, you’ll need to grab everything from the org.web3d.vrml.renderer.j3d package and below. You will also need to copy the org.web3d.j3d package and below too. If you guys are serious about it and want to keep a current port up to date in the CVS archives, shoot me a PM or email. Once you get an initial port done and send it to me to have a play with, I can then give you write access to CVS so you can do your own maintenance from then on.

If you do that, just be aware that we work on it as part of a paid professional development, so it’s we’re changing something in CVS as an almost daily activity and you’ll need to be rather committed to keep up with us as we swing through with the architectural changes (I have at least one major one coming through shortly). Also, I tend to be quite a nazi about having functional javadoc too, so watch out for that :slight_smile: