[quote]I would personally try to do this in Java2D, OpenGL support is a pain. I would go for a sort of ray-tracing approach. This was done totally in 2D, using an elliptic lens distorted texture.
[/quote]
Actually, I was looking at the code on your website a couple of weeks ago when I was investigating how to do this myself… Unfortunately, was a bit too complex for my simple mind, but if the lighting could be done in Java2D then obviously would be fantastic and loads easier than Java3D…
This is something I put together tonight in Java2D to give you an idea. (36K at the moment, a proper sprite should should be less than 100K would guess).
http://www.bullsquared.com/pool/spriteSheet.png
All the balls are just drawn with g.drawOval(…)… (Of course anti-aliasing turned on). I am creating a texture with the numbers and circles (TexturePaint tp, and g.setPaint(tp) etc…)… I reckon I could fudge the number ovals and number text to make it look like they are spherical… Of course I have missed all the vertical rotations for the striped balls too (I think that covers every angle??).
If anyone has any easy to understand links on how to make these 3D Looking (using Java2D) then let me know and will fix and post the code. The ball shadows can easily be created using a seperate image… Wont really be spending any more time on this till March, other game to finish before I do my pool game.