I may sound like I am trying to start a flame war, but I will proceed anyway. Why oh why would you want to use Java for 3D. I love Java, I use it for applications, serverside apps, and even applets, but I draw the line at 3D. Java is great, but it does not have the raw efficency needed to make an awesome 3D engine. OpenGL and C (not even C++) is best suited for the needs of a hyper efficeint 3D engine.