Originally posted by Barry Andrews:
I have a more basic question than this. How do you know when to use an OpenGL implementation or a higher level API such as Java 2D or 3D? Does it depend on how much control you need to have over the images? What else does it depend on? I have seen some pretty cool looking games that were built with 2D and 3D.
thanks,
B
Java 2D only uses the Opengl pipeline with version 1.5+. Java3D used Opengl or directx depending on the implementation you chose. Java3D was put on the back burner because of JOGL development. Developers who use Opengl typically don't want a higher level API. Java3D didn't allow you any access to OpenGL calls directly. So you were at the mercy of Sun's implementation.
2D vs 3D is just that. Do you want to create a 2D game or a 3D game? However, you can still create 2D games using Opengl. And this is what I prefer to do.
I have seen some pretty cool looking games that were built with 2D and 3D What games? And what do you mean by saying "built with 2D and 3D"? 2D and 3D what?
The real question is not do you do 2D or 3D but rather what do you use for either? And there is really only 3 choices. DirectX, SDL, or Opengl.
All 3 API's will do 2D and 3D. But DirectX and SDL provide a lot of wrappers and special libraries for things like loading images/textures, sound, etc.
I'll stand behind this statement though. If you want the most power and flexability, using Opengl is the way to go. Funny, now that brings us right back to my question. Which Java GL Wrapper do you prefer and why?