Which Engine should I use?

Hi,

I’m looking for a 3D Java gaming engine that has the following features:

  • Portable across Windows and Linux
  • Clean API and solid documentation
  • Mature (3+ years old)
  • Active community
  • License allows commercial use
  • (Optional) Commercial support is available
  • Decent performance (our environment is 2.5D… it is rather simple)

I look forward to your suggestions.

Thank you,
Gili

javamonkeyengine (jme)
xith3d

less mature but uses some jme code: ardor3d

Wow, thanks for the heads up Matzon. I didn’t realize there was such a mature 3d platform for Java.

This topic reminded me of Ogre. I hadn’t looked at it in a while now so I took a peek. I might get yelled at for proposing something JNI-based, but Ogre3d has a Java bridge by way of http://ogre4j.sourceforge.net/

Matzon,

JMonkeyEngine: http://www.jmonkeyengine.com/jmeforum/index.php?topic=9247.msg71503#msg71503
-> “Official developer activity has been incredibly low. Also, there is no clear, cohesive future direction for the technology.”

Xith3D
-> No commercial support, decent API (but not great), and I have seen some documentation holes in the Javadoc.

Ardor3D
-> Looks very promising but seems to be immature at this point.

Please excuse my pessimism. Both JME and Xith3d are excellent engines, I’m just pointing out the problems I’ve found with them. Are there any other engines I should take a look at?

Thanks,
Gili

What about jPCT?
It isn’t full of features like JME, but its powerful enough in most cases. Its light, stable,software/hardware render and easy to learn.

TBH I doubt you’ll find many other options. What do you need, that the existing engines can’t deliver? I would think JME is mature enough for any non-bleeding-edge game and xith is small enough to fix bugs as you’ll find them. Also if you really need “commercial” support, I am a freelance programmer, so hire me 8) If you really book comercial support we would branch a version just for you…

Aviatrix3D might be the best java 3d scenegraph at the moment. From what I can gather it is being maintained and there are commercial projects using it.

It has a nice api and is open source. But I don’t think it has an active community. You can probably buy support from the company that created it, if that is an option.

you say that you are making 2.5D wich for me means 2D, so maybe ou should rather look for 2D API, no ?

wait, waht does 2.5 even mean, is half a dimension possible? or is he reffering to something else?

2.5D = isometric.
D1 and D2 was 2.5D. D3 is now 3d.

lwjgl is probably not the easiest to use but seems to offer really good performance - and often that is where your bottleneck ends up being.

2.5D can also be used to refer to games such as Doom, with 3D environment but 2D characters. Also it can be used to refer games where the graphics are rendered in 3D, but the player movement is restricted to 2D, for example as in Super Smash Bros. Some more usages: http://en.wikipedia.org/wiki/2.5D

Oh ok, so like age of empires. where the people are 3d, but you only see from top down?

Yes 1 and 2 were 2.5D
3 was 3d iirc.

2.5d usually mean 2d that look 3d, maybe the easiest would be to start with jogl or lwjgl because high end 3d engine functionalities may not help a lot for 2.5d