When comparing jMonkey3 vs Esenthel, the Slant community recommends jMonkey3 for most people. In the question“What are the best 3D game engines?” jMonkey3 is ranked 12th while Esenthel is ranked 19th. The most important reason people chose jMonkey3 is:
Java is a well-optimized just-in-time compiled language. It's faster than languages without an effective native-code compiler such as Python or Ruby, similar in speed to other just-in-time compiled languages such as C#, while slightly slower than compiled languages such as C or C++ (with some low-level and numeric [benchmarks](http://benchmarksgame.alioth.debian.org/u64q/java.html) being similar to C++). Java also has a wide variety of high-class IDEs available.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Java is a great development platform
Java is a well-optimized just-in-time compiled language. It's faster than languages without an effective native-code compiler such as Python or Ruby, similar in speed to other just-in-time compiled languages such as C#, while slightly slower than compiled languages such as C or C++ (with some low-level and numeric benchmarks being similar to C++).
Java also has a wide variety of high-class IDEs available.
Pro Multiplatform support
Code can be ported to mobile (iOS is in the works) and other Android supported devices with minor changes to the code (just change some implementations that vary on the platform such as inputs and user interface). It can even run on certain Raspberry Pi devices.
Pro Free and open-source
jMonkey is completely free, meaning it's possible to develop and release a game with no fees or royalties. Because it is open-source, jMonkey has plenty of people fixing bugs and, adding to the engine as well as creating a variety of plugins that can be used in the engine.
Pro Not limited to using its own IDE
Unlike some engines, jMonkey doesn't force its own IDE. You can use its Netbeans-based IDE, but you can also set up a project to work in another IDE such as Eclipse. You can still use the special tools from jMonkey's IDE in such projects.
Pro Engine modifications can be made using Java
Because jMonkey is implemented in Java, the same language its apps are typically developed in, developers will have an easier time modifying the engine to their needs.
Pro Has everything
jMonkey3 handles input from computers and mobile devices. It handles networking, physics, rendering, terrain, and cinematics.
Pro Ease of extensibility
Engine is modifiable.
Pro Freedom of choice for architecture
The user is not compelled to use any programming architecture nor standard in order to make a project working. JME allows the freedom to use what is best for a game.
Pro Offers both low-level and high-level ways of editing shaders
Modifying shaders can be done either via a visual tool called Shader Nodes or via GLSL that allow you to make your own shaders without the engine getting in the way or having to hack around to do so.
Pro Quicker development by using the integrated code editor
Esenthel has a built-in code editor which drastically simplifies the programming process.
Programming with Esenthel is based on C++, however, when using the code editor there's no need to make separate .cpp or .h files. Code can be written once and the editor will be separating definitions and declarations automatically in the background allowing for quicker development.
Pro Can be easily extended
Built in pure C++ so it is easy to use and extend however needed.
Pro Available on Steam
Pro Can be used for collaborative development
Esenthel comes with tools allowing for multiple developers to work on one project at the same time in collaborative mode. Every change made is instantly visible by other team members.
Pro Engine issues are resolved quickly
The author is very device minded and able to handle any problem quickly and effectively and he has a good track record of listening to requests.
Pro Access to full source code
Having easy access to the full source makes it possible for any skilled developer to add features that a project requires.
Pro Attractive licensing
Free to try, with license as cheap as 9.50$/month (with yearly subscription), 11.40$/month (monthly subscription) or full source code license 228$/year.
Pro Incredibly stable
The engine is rock solid and stable which, considering its extensive feature set, is a huge plus for game developers
Pro Helpful and responsive forum
Pro Good support for Android and iOS
Android and iOS support is pretty stable and easy to develop on. It's possible to, for example, develop the entire game on Windows or Mac and then easily compile for Android and iOS.
Pro Can import a wide variety of formats
- 3D - FBX, DAE, OBJ, 3DS, B3D, MS3D, BVH, ASE, PSK/PSA
- 2D - BMP, PNG, JPG, TGA, DDS, TIF, WEBP, PSD, ICO
- Videos - VP9, Theora
- Sounds - OGG, WAV, MP3 (once decoding patents expire)
Pro Constant development and progress
New features or update to features are provided monthly.
Pro Supports in-app purchases
IAP support for both mobile and desktop devices.
Pro Supports multiple compression libraries
LZMA, LZHAM, LZ4, ZLIB, Snappy, RLE
Pro Oculus Rift native support
Oculus Rift API integrated into the engine platform.
Pro Supports modern graphics and sound APIs
- Graphics - DirectX 9/10/11, OpenGL, OpenGL ES, WebGL
- Sound - DirectSound, OpenAL, OpenSL
Pro Rock solid
Cons
Con Terrible API reference
The methods are not defined.
Con Not an engine for total beginners
While it's clear that you need to know Java first before using this engine, it is recommended that you have some programming experience as well. Most performance issues and memory leaks are more due to bad programming practices than the engine itself.
Con Slow release cycle
jMonkey3 lacks manpower to have a fast and decent release cycle.
Con Relies on archaic tool chain
jMonkey Engine uses Apache Ant for build automation, which is archaic and backwards, even by Java standards.
Con Lack of in-depth tutorials
There are plenty of beginner coding tutorials which serve as a basic introduction for a new user to get up to speed, but once having passed that stage there is a real lack of free more advanced tutorials/examples/code snippets demonstrating the finer details of the vast and varied API functions.
Con One-man developer
Although the complete engine is maintained by a single, highly-skilled individual, he can be limited to what he is able to see or perceive, and sometimes he doesn't recognize broken or incomplete features until he sees it firsthand and sometimes doesn't recognize valid reports from his users. But when he does recognize the gap in the engine's feature-set, he is quick to make adjustments and updates.
Con Slow roadmap implementation
Bugs are fixed promptly, but the developer maintains a growing 'roadmap' of features with no indication to users of time frame and priority of feature implementation.
Con Lack of editing tools
Con Web support practically non-existing
Web support exists only on paper. The way it works is that Emscripten is used to convert an entire project to unreadable Javascript. That practically only works for very simple demos, no real-world projects.