A feasibility Study - Need your comments

Hi ,

I am doing a feasibility study for a project on different tools and am quite interested in using JME. The project is about developing a simple game which shows cities with buildings and lightning effects. The lightning effect changes dynamically between frames depending on some input data from a data source ( not an user input).

I am a newbie to graphics but am quite experienced in Java. I need your expert suggestions on the feasibility and performance, particularly, about any inherent problems you could foresee for developing such an application using JME. We are much concerned about the performance of such an application developed using JME as the input data to change lightning effect might come at a fast pace. We would like to get the app to run as quickly as possible and hope JME is ideal for such a development.

It would be great if you could comment on my above queries. Any pointers about similar applications and where to start would be very helpful.

Thanks !!

Have a look at TestTerrainLighting.  Is this similar (in terms of changing lighting anyhow) to what you are looking to do?  Input is no big deal.  You can even integrate into swing and use the swing ui if desired for user input.

It will depend on the type of lighting effect you want to do. jME doesn't do fancy stuff like HDR or soft-shadows. For that matter nor does it yet do any shadows (that's on the roadmap though).

But as long as you stick to the standard per-vertex lighting techniques jME can do it, and about as fast as any other OpenGL/DirectX based engine. There's also support for shaders and lightmaps.

Of course there's no garantuee that Java/jME/LWJGL/OpenGL is the fastest solution for your project. Likely there are other solutions that will be a few percent faste. And in more complex scenes you might benifit even more from using advanced techniques like occlusion culling that jME currently doesn't have, but I doubt they'll have the ease of use for a beginner in graphics, nor will they be in Java.