Download

mirror material?

no it doesn’t.

Not quite sure why nobody suggested this yet, but you can make a 1:1 mirror with 2d scene capture actor.
Bear in mind that, there’s no material function to blur the texture sample as of now, so getting the reflection to render without jaggies will require quite big resolution.

//
Actually now i see that it has been suggested.
Well, this is as good as it gets for now. With right material setting it is possible to set up 2d RT for a mirror with around 60 to 100% satisfaction rate, depending on usage.
I’ve got it to work very well, but only at bigger than up-close distances and angles weren’t clamped, so if player was looking at a low angle it would just stretch the texture.

Off-topic but your signature fires up my antivirus.

Great, thanks Mars007 - I’ll give it a try at some point, looks solid.

+1 Accurate mirrors for archviz

+1 this is a very important feature to have

Actually, it does.
Surely it isn’t perfect but i still believe that in a controlled environment like archviz it should suffice in most cases (or at least until (if ever) Epic gives us anything better)

Here’s how it looks on my end:
https://youtube.com/watch?v=zegbDL7W7QY

Bear in mind that due to whatever reason, the capture actor does NOT “see” or use the LPV so i have GI shadows whilst mirror reflects pitch black shadows. Though with prebaked lighting this should not be an issue.
Of course there are few drawbacks of this method:
-The mirror reflection “angle” is calculated from the camera location in world space, having wobbly camera as i do results in reflection acting in wobbly way too. Whilst this sounds realistic, the reflection wobble is much more noticeable than actual head bobbing. Still, if your pawn has little-to-none head bobbing then it will be fine (especially if the bobbing is faked - as in, does not actually move the camera).

-the reflection is sampled from one point instead of entire mirror surface, and thus if you get too close to the source point, whole mirror will display the object which obstructs the “viewpoint”. Nonetheless you can still get quite close to it without causing it to artifact.

**then it doesnt! **
just stop with this. this is not a mirror.
i dont want an awful unrealistic looking alternative, i want a solution to this problem. and the solution is to add the SceneCaptureReflectActor in upcoming updates like it was in UDK. again, check the first video in this thread.

Well, the UDK scenecapturereflectactor wasn’t perfect either…
If you want even better solution, then just attach** Scene Capture Cube** to the pawns face and have it capture every frame, this way you have appropriate reflection in all axes/angles. All that’s left is just proper material setup (especially UVs).

In case of non-playable, mostly pre-baked environments such as archviz, you can most likely afford having a dynamic cubemap with decent resolution.

@jazvecina: what’s with the attitude? What about coming with something constructive instead of just ******** about other people that are trying to find a solution?

Yes, hopefully Epic will add an easier solution at some point but you’ll never find an engine that can cover all your needs so how about you learn how to do it yourself?

I was actually thinking about something similar, my main character will have something like this as helmet and I would really love some real-time reflections - in this case I really don’t care about accuracy since the reflection will be heavily deformed by the round shape of the glass but would be great to update in real-time. I hope next week I’ll have some time to research this :slight_smile:

Have as look at what I have been doing with my car paint materials. I created a translucent material which takes advantage of a scene capture actor to produce real time reflections. Hopefully I will have my materials up on the marketplace soon. If you want to give it a shot yourself, you should try using the scene capture actor and the cubemap it produces. It is also possible to use it to produce a convincing mirror. It’s not necessarily efficient for a single flat surface, because the capture actor will be capturing extra content which wouldn’t be rendered on the mirror’s surface, but it should produce some nice results.

Is there a possible bump here?

If anyone is still looking for a solution, my suggestion is to go into the material editor and use constants to set the value of the metallic node to 1 so that it “resembles” a mirror

could you please summarize the current state of mirror material in ue 4.8.1?

is it still the same?

could you please describe what the missing feature SceneCaptureReflectActor does? I never used ue3, I want to see if I can code something in c++.

That is how most, if not all, engines create mirrors.

It’s still the same in 4.8. I managed to get a decent fake mirror though by using blueprints. There were a couple things I didn’t like about other implementations that I changed. I noticed from real life observation that proximity to a mirror changes how much of an environment you can see reflected in it. To fake this I control the Field of View of the 2D scene capture camera based on the chars proximity to the mirror. The trick here is that you have to provide a range over which the FOV values will change. I am still playing with the FOV values but found that in my case when the player is more than 200 units from the mirror the field of view tends to flatten and values around 50 seem to work well. When close to the mirror I use a value of 90. Its all a fake and doesn’t look perfect, but I do think its an improvement.

I also noticed that the reflection in a mirror doesn’t change dramatically if you rotate your head (Yaw). Many Other implementations I found on the forums used the player camera rotation to control the rotation of the 2D scene capture, resulting in a reflection that is constantly rotating. Instead of using the camera rotation to drive the rotation of the 2D scene capture I used the “look at rotation” node. I get the player location and camera location and derive the view angle from this. This way the reflection only changes when the player moves and not just moves their head.

mirror.JPG

Sorry, I left out one important piece in the screenshot above and that is to reverse the direction of the rotation.
Capture.JPG

UPDATE: Unreal supports true mirrors natively now! Here’s a tutorial. If it helps you, please like and share the video to help others.

OLD: I managed to do correct reflections. There’s a catch, though. Read video description for details. https://www.youtube.com/watch?v=wHcGKs0uqLo

Hi, i´m a novice and it´s difficult somethings that for you are easy, how I achieve this:

mirror (2).png

I set a variable from the Lerp, but I couldnt have a “target” slot…