I suspect the thread title might be causing some confusion, at a glance on the front page I assumed it was a thread about monochrome rendering
Disclaimer: Hopefully this is a constructive list for the betterment of JME. I base it on my experience working with jME and what I think would be ideal or some app that does something well. Not necessarily Java or even a game engine (examples Unity, GROME, DAZ). ie the criticism isn't relative to something else – obviously, jME is good
Pros
For a Java coder, JME makes it quick to start working with 3D and using many advanced features. Saves a huge amount of time compared to using lower level libraries directly.
Able to produce very nice games, demos and apps with good graphics and performance. No showstoppers.
Fairly straightforward to add features. Few limits to what you can do if you are prepared to implement some algorithms yourself.
Doesn't dictate how you code. Design, structure and code your app in your preferred way using any Java methods and API's.
The API is generally easy to work with.
The community is generally friendly and helpful for the competent beginner to intermedate developer. The forum history forms a pretty good set of documentation for many common problems.
Source code is generally easy to understand and modify.
Decent performance, ability to implement your own case-specific optimisations (albeit because JME doesn't
Cons
Lack of emphasis on the engine's ability to help you produce finished, polished games or apps.
Resource management is very poor.
Critical features left below par and/or out of date and/or outside the core (sound, gui, physics, animation, splatting etc etc.)
Lacks game engine features, such as spatial partitioning, scripting, terrain handling, foliage.
Lacks tools support.
Lacks advanced graphical effects, poor shader support (presume JME 3 to remedy this).
Things (features, tools) too often don't get into the core project, and miss the benefits of open source software as a consequence.
Lack if stuff to show off the engine that will really impress. Most of what there is developed in isolation and often screenshots or video only. Reflects the engine itself as per the above.
Feature requests
Much improved resource and memory management (textures, sounds in particular). Threaded loading.
Redo the soud system or integrate another one.
Integrate key tools into the core like the particle editor is. Examples, a scene editor, model/entity/character importer/editor.
Make very common effects such as texture splatting and bump mapping, very easy to add with only core code.
Won't just rewrite my cons list!
Rating