I have been self-teaching myself Java on the mac mostly because the language is cross-platform. Recently, I have been only able to develop 2D games using the Graphics2D class. Now, I want to learn how to make 3D games in Java. I used to model and animate stuff in 3D, so my knowledge of 3-Dimensional stuff is okay.

I have spent the last 3 hours using google to look up ways of making 3D games in java. Apparently the best one to use is OpenGL, so i looked up a tutorial on it and i cannot find a tutorial that shows how to (if there is a way) install JOGL on the Mac platform.

Should i continue to use Java?

How can i make 3D games using Java?

What is the best way to make 3D games on a mac?


I would recommend using LWJGL. It's an OpenGL library for Java that works on Mac, Linux, and Windows.

You can make 3D games in Java just as easily as you would in C or C++ using LWJGL. Although some may complain that Java is slow, modern Java is fast enough for game purposes.

An example of a successful game created using LWJGL: Minecraft. Another: Revenge of the Titans (cannot post link.)

If you're looking for more game-development tutorials, there are many available on the LWJGL wiki / website / forums. Also, you can follow many C or C++ OpenGL tutorials as the OpenGL functions work almost exactly the same on Java.

  • \$\begingroup\$ Thank you, do you know of any good tutorials i could use? \$\endgroup\$ – Steven Rogers Nov 10 '11 at 4:59
  • \$\begingroup\$ LWJGL is not a good place to start for the beginners. \$\endgroup\$ – Quazi Irfan Nov 10 '11 at 8:46
  • \$\begingroup\$ ...unless of course s/he has previous experience with OpenGL. \$\endgroup\$ – Quazi Irfan Nov 30 '11 at 17:23

I would suggest to go for jMonkeyEngine with my eyes closed. Its based on LWJGL. But, starting form pure LWJGL can be quite a lengthy road. jMonkey engine is based on LWJGL and all the necessary things are already done for you. You just need to have a game concept and jump right into programming, which is very easy with jME. As you have mentioned your skill level as beginner in your post, I would suggest not-to-start with LWJGL.

Its on Beta right now. But, don't back of. Its quite stable and full of feature. Most importantly its a shader based engine. There are some fixed function rendering pipeline support, but hey, who should pick an old tech unless s/he has a very specific reason to do so?

Documentations are absolutely fantastic. Very rich and covering a wider variety of concepts. Anyone with a basic java skill can jump right in. Community forum is vibrant. If you stumble upon any bug, its fixed very quickly.

jME isn't just a java library. It comes with a game development environment which is based on NetBeans. All 3rd party tools like, Font Converter, Blender/mesh/obj importer, Scene Editor all are included, they just work!

I can't emphasis it enough. There are lots of other java based game engine out there. But trust me your time with jME, you wont regret it.

oh, did I mention...jME has just announced a Game contest as its stable release is nearing. join it if you can. :)

If you still wish to know about other java engines, just give a knock.


Not the answer you're looking for? Browse other questions tagged or ask your own question.