How do you add a planar reflection to a water material?

I’m trying to make my water reflective but SSR won’t do it because it only reflects what’s on the screen, that means it can’t reflect the bottom of an object and when the objects are offscreen. This is what i’m trying to achieve:

e38760a81d.jpg

I’ve heard that it’s not possible in UE4 but how can such an important feature be missing? Or am I mistaken?

You are not mistaken (unfortunately)… realtime planar reflections are apparently too expensive to pull off in deferred rendering, you would essentially need to render the scene twice (therefore half the fps).
If you search the forum a little bit you will find some previous discussions about this.

Still, I wish Epic gave us the option anyway so it can at least be used in archviz or as a high-end graphics option! there are so many situations where screen-space reflections are straight up unusable… so at least having an alternate (even if expensive) option would be extremely useful in my opinion.

Game rendering engines have come a long long way but unfortunately there are a few areas such as this (which btw even engines from over a decade ago such as UE2 and source engine have) that are currently not easy to pull off as in older engines.

That’s a shame, I don’t think it has to be expensive if you only make it render the objects that are being reflected. I’ve done this in Unity and it doesn’t have a very big impact on the fps. It’s very important for my game to have reflective water, do you have any idea when or if this will be implemented?

Working on glasses and mirror shaders, I tried to optimize them, doing what you say: I didn’t see any significant boost in fps.
I even made the scenecapture render only one simple mesh, a sphere, just to see: a few more fps but nothing like you would expect.
I still don’t know why but that’s something I’d really like to know.

Well I’m not sure how it works in unreal engine but in unity I’ve just added all the objects that I wanted to be reflected to a seperate layer and in combination with occlusion culling I made the water reflect only the objects in that layer. It used to render the whole scene which cut my fps in half but since I used this method it only takes off about 10-20 fps.

I would be cool if it did the same in UE4!
In UE4, you have to use the “hide component” function, to make static meshes components invisibles to a scenecapture actor. And occlusion culling is an automatic process…
Maybe someone from Epic’s staff could tell us if there’s a way to really boost fps when hiding objects for a scenecapture actor.

I hope they add some kind of planar reflection solution in the future, even if it is super expensive- SSR really doesn’t cut it for high end renders that need to have reflections that don’t cut off noticeably at either side of the camera. This is especially noticeable when looking out at a vast plain of water, or a wide room with shiny surfaces.

You might want to wait for this solution. The guy is not only working properly looking mirror, but also ground reflections.