jMonkeyEngine
Website:
http://jmonkeyengine.com/
Developer:
Kirill Vainer, Erlend Sogge Heggen, Skye Book, Normen Hansen, Ruth Kusterer, Rémy Bouquet, Paul Speed, Brent Owens and hundreds of collaborators.
Launched:
Jun 01, 2003
Status:
Active
Supported Platforms:
Windows, Linux, Mac OS X, Solaris, SunOS, FreeBSD, Browser-based, Google Android, Other
Languages Written In:
Java
Languages Supported:
Java, Ruby, Python, JavaScript, PHP, Tcl/tk, Other
Graphics APIs:
OpenGL
Rating:
(36 reviews)
- Overview
- User Reviews
jMonkeyEngine (jME) is a free development kit for programmers who want to create 3D games following modern technology standards.
Our modular framework is programmed entirely in Java to make it easy for you to deploy 3D games to desktop, web, and mobile platforms.
- jMonkeyEngine is free, open source software.
- Our documentation is one of our most prized possessions and it is frequently updated.
- Java means minimal adaptations required for cross-compatibility. Publish to any OpenGL 2 compatible device running the JVM.
- At its core the engine has been designed with a shader based architecture for current and next generation graphics standards.
- Complete modularity empowers the end-developer, while all game development essentials come straight out of the box.
- A fully extensible IDE (based on NetBeans Platform) with graphical editors and specialized tools for different workflows provides quick access to all of the engine's essential features.
- Screenshots
- Videos
Supported Features
General
- Application States and Controls to implement game logic
- Cinematics and motion paths
- Camera System
- Normal or parallel view
- Multiple views
- Swing canvas (e.g. for Applets)
- Input handling
- Mouse, keyboard, joystick
Lighting
- Per-pixel lighting
- Multi-pass lighting
- Phong Lighting
- Diffuse Map
- Alpha Map
- GlowMap
- Normal Map
- Specular Map
- Parallax Map
- Reflection
- Shadow Mapping
- Screen Space Ambient Occlusion (SSAO)
- Parallel Split Shadow Mapping (PSSM)
Texturing
- Texturing
- Multi-texturing through shaders
- Splat textures
Shaders
- GLSL
- Shader libraries
- Shader editor
- Shader permutations
Meshes
- Asset importing
- Animation
- Meshes
- Textures
- Scenes
- Materials
- Shaders
- Multi-threaded asset loading via HTTP
- Loading scenes from .ZIP files
- Sharable AssetPacks
- Supported formats:
- Models: Ogre Mesh XML, Ogre DotScene
- Models: Wavefront OBJ, MTL
- Textures: DDS, HDR, PFM, TGA, JPG, PNG, GIF
- Font: Bitmap fonts
- Audio: WAV and OGG (OpenAL, Ogg Vorbis)
- Video: OGV (Ogg Vorbis)
- jME3 binary files (objects and scenes): j3o
- jME3 materials: j3m
- jME3 material definitions: j3md
Scene Management
-
Scene graph based architecture
- Octrees
- LOD
- Import Ogre3D dotScene format
Terrain
-
TerraMonkey terrain editor
- Geomipmapped hightmap terrain
- SkyBox and SkyDome
- Terrain lighting
Physics
- Bullet physics binding
- Physical characters
- Physical joints and hinges
- Ray-cast vehicle
- Ragdoll physics
- Multi-threaded physics
- Mesh-accurate collision shapes
Networking
-
SpiderMonkey networking library
- UDP
- TCP
- Compression
- Thread safe
Sound
- 3D Sound
- OpenAL support with 3D position.
Tools & Editors
- jMonkeyEngine SDK (NetBeans Platform)
- TerraMonkey terrain editor
UI
- Orthogonal (Billboard) node
-
Nifty GUI integration
- Text fields
- List boxes
- Drop-downs
- Sliders & scrollbars
- Scrollpanel
Special Effects
- Particles: Smoke, fire, explosions, etc
- Post processing / 2D Filter Effects
- Reflective Water
- High Dynamic Range rendering
- Light Scattering
- Cartoon Effect
- Fog
- Bloom
- Depth of Field Blur
- (SSAO)
- (Shadow Mapping)
Licensing
| License Name | Price in $US | Source Code Included? | Additional information |
|---|---|---|---|
| BSD | Free | Yes | View Details |
| New BSD | |||
People
jME - Great Engine
jME is a fantastic engine. It has an active and extremely supportive developer community, excellent getting started material, and a very straightforward API. The feature set continues to grow at a frantic pace, and enhancements are committed to CVS daily.
jME has matured significantly since its previous releases. The documentation is far more comprehensive, the API has been partitioned into sensible functional sets to allow for smaller distributions, numerous stability and performance issues have been resolved.
I will not claim that jME is perfect. However, despite its occasional glitches, it is a fantastic engine!
Destined for greatness
jME is the first engine I've really got interested in using, mainly because of the simple tutorials and the amazing support from the users! The forum users go out of their way to help newbies (you can find the answer to almost any question about jME you could ask on the forums).
Although it hasn't got the best feature set (yet!), the engine is in very active development, and user code is always happily accepted, in the true spirit of open source!
This engine is destined for great things.
jME - good choice
What i like best on jME is its easyness to use.
ODE gave me the creeps, when i forst tried to use it, but with jME Physics System I have a "8 lines of code and its done" abstraction layer on it.
The Community is mostly forum based and very friendly. The Wiki is empty for the most part.
Great Java-Graphics API, great community
With jME you can code games really fast, as it's code is quite clean and the help from the community is excellent. And you can develop larger games, too, as the design of jME is very good and it's very flexible.
Additionally the project is really lively and is promising extensibility and stability. It does support many features, yet, and most likely will support even more in the future (that's when the 'Features' rate would become 5, too ;).
Very nice indeed
Now when mac support, physics integration through ODE, and ai system is in, I can't see why you wouldn't choose jME for your game!
Because of the poor doc I'm giving it a little minus in Ease of Use. Still, it gets quite compensated due to the swift forum responses.
I simply love the engine and its community.
Getting there
I like the way this is headed. The API is a bit confusing and the features are good but they don't quite feel totally up to date. Not frontline material, in other words. I'd say that this API works, but it doesn't feel complete... Given time to mature, though, it can and probably will become great.
jME is the way to go
As far as Java Scene Graph API's go, jME is the way to go. The community is awesome and the API is very easy to use and straightforward. I believe it performs better than Xith3D and the documenation is better and improving all the time.
See my weblog entry for details. http://radio.javaranch.com/channel/gthought.
Excellent Engine
I love this engine, not only is it very powerful but it is also very flexible, because it is scenegraph based it handles outdoor and indoor scenes equally well, it is very stable, and performance is increasing all the time.
As already stated in previous reviews, this engine is still evolving but it is one of the most rapidly evolving ones ive found, it is constantly being improved and updated. at the moment it probably doesnt have the best graphics here, but now that support for shaders has been added im sure that will change.
Physics and AI are being integrated at the moment, so they should soon be fully functional.
There are lots of tutorials for the noob, so its easy to get to grips with.
Fantastic Engine
In short: jME is a fantastic, java-based, open source gaming engine. The performance is definitely acceptable, and the development community is top notch.
To be fair, it is still growing, and an occasional problem and/or bug are found. But, in almost every case I've seen over the past several months, they are fixed within days (usually one, but sometimes a little longer).
There are a ton of useful features and effects, with more being actively developed. Some of the power of the engine can be seen from one of the large number of demos available on the jME website.
There is a starter's guide and, as mentioned above, numerous examples of how to achieve specific effects. Like many open source projects, the documentation could be better, but it's improving.
To help make up for that, the development team is extremely helpful, and very active. Questions are answered quickly, with people going out of their way to help you figure things out. (Hence the 5 star support rating.)
The website is really pretty good, although the forums have this irritating issue of making you log in twice before you're really logged in. (This may not be an issue if you have your browser remember the login.. I don't know.)
Personally, I had explored Java3D before this. While it has its place, Java3D is really too slow for, and just isn't geared for, game development. Because I wanted to work on games, this caused me to look elsewhere, which led me to the Xith3D project. I went from there to jME, where I have stayed.
What initially attracted me to jME (away from Xith3D) was the highly active development community. I also liked that jME wasn't trying to mimic another API. Whether that's fair or not, it gave me the feeling of additional freedom and alliviated some concerns.
Overall, I have no hesitation in recommending and using jME. Although it's not perfect yet, it is definitely worth looking into if you're after a java scene-graph-based gaming engine.
jME - Outstanding Up and Commer
jME is a great engine for new developers wanting to get up and running quickly. Between the easy to use API and the outstanding developer community that responds quickly to newbie questions you have a real platform to complete projects.
Last edited Jul 07, 2012 at 12:30



