Why should I choose to use JMonkey?

I am not a game developer. Though I have tinkered with Unity, godot and even lib gdx. I am planning to teach Java programming to school kids (It is part of there curriculum) and wanted to make a few mini games in Java to get them interested.
However I could not think of any reason (apart from Java) to justify use of JMonkey. Could you please help me out here?

Not saying those other frameworks don’t have these thing (I’ve not used them) but for me:

  • JMonkey blends both low level and high level really nicely. You’ve got the intuitive scene graph and materials for getting started really quickly but then you can directly edit buffers and write your own shaders when you want to do something unusual. And its not either-or, your game specific shader rendered custom mesh can be positioned simply within the scene graph. So you don’t invest in the engine and then find out that what you want to do just isn’t possible.

  • JMonkey Targets loads of platforms, partially this is being Java but there aren’t many engines that can target Windows, Linux, Mac, Android & VR.

  • JMonkey is code first, this isn’t exactly an advantage or a disadvantage, its simply a property of it. I personally love code first and hate “drag and drop” editors. So JMonkey is ideal for people like me. (It does have an SDK that does have some of those things, so JMonkey isn’t closed to you if you don’t like all code)

  • The underlying engine is in the same language as game level code and is all open source, so if you find something needs improving you can improve it yourself

  • There is an active community building new functionality on top of the engine


Pretty much this is your only choice if you want 3d, source code and some work already done for you.

1 Like