Download

Reflective Material - resolution and direction issues

I’m new to UE so may well be asking about something that seems obvious but would really appreciate a bump in the right direction on this one to figure it through…

I’m trying to create a scene of a volcaone crater at night time with a lake in the middle of the crater. I’ve done this using a simple terrain/heightmap and then a cube dragged from the basic objects, scaled along x and y and placed in the dip in the terrain with a reflective glass material on it to create a still reflective water surface.

The material properties are as follows:
Blend Mode: translucent
Lighting mode: Surface TranslucencyVolume
Base Color: a dark green/blue
Specular: 10
Roughness: 0
Opacity: 0.8454
All other node inputs left without values.

It’s actually quite near what I want it to be but I’m getting 2 issues:

  1. The reflections on the water don’t seem to match the terrain above them (I want it to be a mirror image, obviously with a bit of blur)
  2. The reflections seem to be blocky, I would like them to be a bit blurred but much sharper than they are (although the roughness is set to 0)

You can see both these ‘issues’ (I’m sure it’s cause I’m not setting it up properly though!) in the attached screenshot.

Would anyone have the time to point out how to correct this material and get the sharper mirror image I’m after?

Cheers :slight_smile:
SkyLake.jpg

Planar reflections are in unreal in the 4.12 branch on github!

But for now you can activate screenspace reflections in your water material. Better than nothing.

This is a test with the new planar reflection actor :

planar.jpg

I also noticed that you can raise the capture probe resolution in 4.12 to a much hiher res than the default 128. like 2k or 4k… dunno if there’s a limit.

Untitled.jpg

It’s a non parallax corrected (infinite) cubemap with size 128px. You should activate screen space reflections for water material (Material-> Translucency->Screen Space Reflections). However ssr has some issues, like a dithering, lack of reflections near the screen border, it works only for visible objects etc. There will be another technique in UE4.12 - planar reflections. Check this threads for details https://forums.unrealengine.com/showthread.php?103076-Water-Material-How-long-will-all-that-bad-And-what-to-do/page2 https://forums.unrealengine.com/showthread.php?39236-Missing-vital-SceneCaptureReflectActor-for-real-time-planar-reflections

Amazing.
I have tried using SSR but the limitations mean they’re not right for the job - I need the full background to reflect even when it’s not visible on screen (it looks weird when for example the top of a tree or mountain doesn’t get reflected when the rest does)
The experience is going to be for VR and it needs to be as believable as possible so when the reflections clip just cause the source object’s not in view it ruins it.

The planar reflections look like they could do the trick once released, I’ll pull the branch tomorrow and have a look.

Thanks!

Cheers fellas - can’t believe the timing on this it looks like this feature’s been sought after for a while!
I’ve grabbed 4.12 and built it and have some reflections going on with the planar actor :slight_smile:
I’m now stuck on the fact that I need to ‘enable the global clip plane in project settings’ however I’ve looked in the project settings and UE docs and can’t seem to find how to do this?
Could you kindly tell me where to enable it?

Took me a while to find it too.

Untitled.jpg

Perfect (must have scanned past it a few times!)
Thanks :slight_smile:

global clip plane? What happens if you have 2 or 3 different heights of water in various areas. Will this be a problem in 4.12 in terms of different bodies of water getting reflections correctly?

Works fine for me. Even more - it seems you may have few planar reflection actors for water and few ones perpendicular to them, for mirrors for example. However there is a little bug with mirrors ScreenShot00000.png In this example reflection on the translucent water behind the mirror is visible through it. In other words - for translucent objects opaque mirror works like a glass. With opaque water everything is as it should be

Very cool! Anyone know of an ETA on 4.12?.. im waiting on it for more improvements that i was told are coming… fixes for some issues im having.

Someone from the Epic’s team said about 3-4 month after the final release of 4.11

Any word on how well the reflections work with VR? Optimized at all?

Your material could be bit more realistic.

Specular is in range of 0-1. Water has specular value of 0.255 so you should change that first. https://docs.unrealengine.com/latest/INT/Engine/Rendering/Materials/PhysicallyBased/index.html

Also opacity isn’t constant. Because of fresnel materials became more reflective when looking from glancing angle this also make them less opaque.(view ray is reflected.) So instead of constant opacity you should plug fresnel node to opacity. Other aspect that changes opacity is water absorption. This should be modelled as exp function that depends on distance and water absorption coefficient. absorbtion = exp(-distance * coef).

Thanks for the input Kalle_H
I have played with more realistic water materials separately using fresnel on both the opacity and refraction inputs as well as moving normal maps etc.
For this post i wanted to keep it simple as possible to just figure out why the environment was reflecting in such a way (which Yura_S explained I think with the fact that

Thanks though

A question for heartlessphil (or anyone else if they know the answer)…

Does changing the ‘Reflection Capture Resolution’ under Project Settings>Rendering>Textures actually do anything at this point?

I have tried changing it to different values and although the reflections on the Planar Reflection object are much better than my original example screenshot above there are still resolution/aliasing issues.
I know this is all from a pre-release branch so maybe it hasn’t been implemented yet but I’m wondering if I’m missing a setting to enable them or have misunderstood what they’re for (I’m assuming they are the texture size to render the scene reflection into before applying to the reflective surface, and therefore the higher the value the sharper the reflection)

As I say - changing the value from 128 -> 256 -> 2048 does nothing as far as I can tell, reflected object surfaces still remain jagged along the edges.

Ideally I would like to be able to create a sharp reflection more akin to a mirror than water.