Hmm, lots of great discussion on whether or not Java3D cuts the cake.  I thought
I would add in some of my own info here as well.

Performance:
        Yes, Java3D can be slow for some things, if you do a brute force
approach.  If you have spent time building games and visualizations with OpenGL,
you find that you have to do a lot of clipping, bounds checking, etc. yourself
to get things working fast.  Java3D let's you easily create objects and add them
to the scene along with behaviors and such, but you must also make sure you
watch clipping and bounding areas.  I, for one, was tripped up by this when I
first worked with Java3D. We have a whole bunch of behaviors running animations
and my pc was dog slow.  Well, it just so happened that I was not setting the
bounds correctly, nor did I have any clipping going for the whole scene.  I
fixed those things up and the scene ran wonderfully.  So, even though we have
this nice new way of creating scenes, we must also make sure that we are doing
everything we can to eliminate the number of polygons that need to be rendered
each frame, just like with OpenGL/other libraries.

Platforms:
        I have been working with Magician(a java wrapper for OpenGL) and Java3d
for quite some time now.  I love OpenGL, because ... well.. it rocks.  Almost
every pc/unix/mac box has it installed, and almost all graphics cards support
it.  Yet, OpenGL is inherently procedural and not object oriented.  Java3D uses
both OpenGL and DirectX via native libraries.  Why? because you need to be able
to do hardware acceleration.  If you think about it, a lot of the java routines
that you call all of the time are native calls.  System.arraycopy() for one.  I
think that it is about time that we have a robust, platform independant,
object-oriented, free graphics library for us to use.  I know I like a lot of
the OpenGL game libraries out there, that do fast collision detection, and
shadows, but those cost about 30k.  I could build my own libraries from Java3D
for that much and I could then own the IP and exclusive rights.

Open Source:
        I would agree that the Java3D needs to be open sourced.  Not yet though.
Let them get to a semi-stable point, possibly after december, and then start
opening things up.  I for one would love to change how the behavior scheduler
works as well as the renderer, but for now I can wait and help move along this
new venture into the 3-D world.  The java3D team might also be holding off on
the open source stuff to wait and see if they should try selling this library
instead of giving it away for free.  That would be bad.  I mean, Fahrenheit is
pretty much dust-balled, and who knows when OpenGL 2 will ever come out.  VRML97
is a far cry from being able to do what Java3D can.  So, as far as I can see,
Java3D is the only real player when it comes to cross-platform graphics now.  I
think Javasoft and the OpenGL board should have a tighter connection and get
more things interlinked.  That would be cool.

Scott


Scott Decker
Research Scientist
Pacific Northwest National Labs
[EMAIL PROTECTED]
please feed the squirrels

===========================================================================
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".

Reply via email to