How to make realistic graphics like this?

Like this lake house in Unreal engine:

Can it be done in JMonkkeyEngine?

1 Like

jMonkey is an engine like every other. It can load those models,if they’re supported, of course.

But don’t expect to make a game with that realism. It’s a game, not a movie. The computer need to be able to render the scene at a decent performance to make the game look like it’s moving.

Yep, its mainly about the assets, not the engine.

Can it be done in JMonkkeyEngine?

How to make realistic graphics like this?
By hand.


A lot of things come down to assets, yes, but not all.
It’s most likely rendered with PBR. jME can do that.
The screenshots uses a DOF a lot to simulate a real camera lens. jME can do that.
Reflections are probably a cube map, if so jME can do that. If it’s real-time jME can do that with a bit of shader work.

What I have my doubts about if jME can do is if those are real-time shadows. At least I haven’t been able to produce anything near that. If they are lightmaps, then yes.

In any case it’s definitely not as simple as “drag and drop the awesome assets and behold the result”. UE4 has much more developed tool-sets for achieving visual results. In jME it will require (programming) work and tweaking. However, in some cases it’s possible to go by UE4 tutorials for settings (materials, filters, shaders, etc) and apply them in jME.

Yes. I think everything except lighting of this level is possible.
But you should realise this makes no sense in the real games (in 2016 and in 2017 years).

1 Like

assets + lighting + effects = graphics.
Assets are engine independent - you make them in 3rd party software: models in Blender, 3D Studio etc, textures with other tools, like Substance Painter.
Both lighting and effects needs to be done on engine’s level. By lighting I mean light sources and their influence on objects and surfaces, shadows, reflections etc.
By ‘effects’ I mean all things that can make an image more realistic - blurring, sharpening, AA, god’s rays etc.

In JME you have full access to GPU, all you need is to make proper shaders, its all about coloring pixels, there is no magic in AAA games, just experienced programmers.

1 Like

You have to know that scenes like that are pretty “fake”. They typically need huge hardware requirements that almost nobody has (dual SLI titans for example) and have a huge amount of the scene baked in. Finally a huge amount of hand tweaking the scene with lights, cubemaps and IBL applied in different areas. All carefully tuned and experimented with.

Note the utter lack of moving geometry inside for example!

Can jME do it. With a lot more work i expect. We are only on our first iteration of PBR and IBL. Its good but there are many extra things that Unreal does that we don’t yet. Of course you can put that in yourself. But honestly photo realistic is more work that its worth. Unless your EA or something and can afford 1000s of man hours per art asset! And then you end up with uncanny valley!


1 Like

It only appears with the human-like creatures.

It’s using planar reflections, which if I remember correctly are reflections rendered from the point of view of each plane or something? Pretty cool but expensive feature in Unreal. I imagine that would be possible in JME too if one was willing to put the work in.

Environment maps work fine in jME out of the box (aka reflections). You have to set them up properly however. But that is always the case. Note even with PBR pipeline + IBL you also get reflections btw, but they are at “infinity”.

Hi there,

So the problem could be split into multiple parts.

  1. Realistic materials, such as floor, wood, metal.
  2. Lighting.
  3. Models.

I can create models, that’s not a problem for me, that’s just a matter of time and effort. For 1 and 2 that is more of a problem, especially 1. Are there any realistic materials such as metal, wood, marble floor tiles, etc? I would be willing to pay for such materials.

Alternatively could I export materials from Unreal engine? That would really solve the problem.

I made the following myself in JMonkey Engine but it needs firstly better materials to improve the realism. I used a point light source and an ambient light source and a spot light.
Also in my case, I can afford to only support the very high end and most powerful video cards.

Are there any physically based materials in Jme? delt0r you said there are but where?


It is common and pretty much standard practice that you have a modeler, texture artist and light/scene artist for a scene like this. Often you will also have a technical artist and a coder. I really am not joking. And they would spend quite a bit of time on it.

There are no short cuts with level of detail. Even for the pros, its a lot of work and raw hours. there is reason some AAA games cost 100Million or more to make.

Just look at the shaders of the unreal version and do them yourself… I still doubt that this is completely shader based materials though. But seriously, whats keeping you from using UDK directly if you’re “willing to pay”? They have a store to buy assets, shaders etc.

1 Like

Yea scenes like this are have a lot of details baked. See the latest unity demo real. it is so static i assume a huge amount of the lighting is baked for example.

Would it be hard to get a WebGL shader such as this metal one into JMonkey?

Well I’d like to temper a bit what everyone says. As “great graphics” are usually a matter of assets, there is a bit much more going on in this scene.
First you need to use a PBR pipeline, that is only available in the master branch for now and not yet released. Second unless shadows are baked in the assets, they look REALLY good, and I’m not sure you can achieve this level of realism with JME.
Then they seem to use screen space reflection… that we don’t have.
You probably can have a decent scene out of these assets with JME though. But it shoudln’t come as a surprise that JME is not as good as UE4 when it comes to graphics.

Something as good as this would be good enough.

Hi Nehon, are there any demos of the PBE in JME, if so where are they?

Here you can find jme3test for pbr:

And some screen shots

you can find more at

just search for “image” and click on them, some are related to PBR stuffs.

This is using a distance field to define the geometry and is implemented as a raymarching fragment shader only.
You can copy paste this into jME and it will look exactly the same. I did that with a cloud shader from shadertoy.

The tricky part is to take the process from that shader and apply it to “normal” geometry (triangles).
You’ll end up with something like PBR.