How to chose between Java3D and JOGL ?

I am going to start learning a 3D programming language, and I decide to do it with Java, but I am new in 3D and I don’t have any idea about Java3D or JOGL, I want to see which one is more powerful and worth to spend time, I want to make a 3D program and I don’t need sound, and I don’t know how to compare these two, and make decision,

Navid.

you can start here: http://fivedots.coe.psu.ac.th/~ad/jg/
this is killer game programming book and there are chapters about java 3d and jogl (now only one)

Java3d is heavy weight 3d package and if you do not know much about 3d programming you should choose to learn jogl, at start just learn basics how to initalize jogl etc (from book above) and then start learning more advanced opengl features from for example : http://nehe.gamedev.net/ , at the end of almost all tutorials in nehe there i s also jogl version available (but you will have to make in that code some changes becouse latest version of jogl has changed since those tutorials were made), and as programming 3d in general you should read about 3d math from gamedev.net. I think that jogl is the best choice

Thanks kylix999,
I think I \will start with Killer Game…
I found this too, http://genedavissoftware.com/books/jogl/ it has 3 free chapters, (not for you for beginners :wink: )

You really can’t. Java3D is a SceneGraph while JOGL is a graphics library. A SceneGraph is usually implemented using a graphics library. You can compare JOGL with DirectX while Java3D is more comparable with a Game-Engine (at least conceptual) and is designed to hide the lower level aspects like actually drawing something. In JOGL you would write code to draw a triangle while in Java3D you would specify a Triangle object and place it in the scene which is organized as an object tree (roughly comparable to a hierarchical file system).

So ask yourself if you want to get your hands dirty for full control and flexability (JOGL) or use a ready made framework, which can result in more productivity (once you’ve overcome it’s learning curve) but is more or less fixed in it’s featureset. (Java3D)

If you know 3D graphics from modeller-applications you might better get along with a SceneGraph. If you want to know the fundamental mechanics of 3D graphics, use JOGL.