8
$\begingroup$

I'm making an animation and I would like to make a mirror which reflects only things which I choose. To be more specific, two characters are going to stand in front of the mirror, but there would be reflection of just one of them, like on this picture below:

Enter image description here

Is there an option to make it in Blender?

$\endgroup$
4
  • $\begingroup$ Maybe you can build shaders that don have specular bounces, but the easier way is to take advantage of the compositor. Have you tried that? $\endgroup$ – Carlo Jan 12 at 21:37
  • $\begingroup$ To be honest, I have not tried anything, it's difficult to try while being a noob in compositor :/ $\endgroup$ – FilipBlend Jan 12 at 22:06
  • $\begingroup$ Are you using cycles or eevee? $\endgroup$ – Christopher Bennett Jan 12 at 22:35
  • $\begingroup$ I'm using cycles. @ChristopherBennett $\endgroup$ – FilipBlend Jan 12 at 22:36
8
$\begingroup$

Use this node setup for the material of the object you don't want reflected (in this case the red object). You can also use the "Is Reflection Ray" output of the light path node as a mix factor:

Reflect

$\endgroup$
3
  • $\begingroup$ Yeah, that's exactly what I want to achieve! It works - thank you so much :) $\endgroup$ – FilipBlend Jan 12 at 22:47
  • 1
    $\begingroup$ If animated, you can go a step further with a math>subtract from -1 to 1 between the lightpath and factor to hide/reveal objects, makes an interesting effect in some cases.... $\endgroup$ – Timaroberts Jan 12 at 22:47
  • $\begingroup$ Is the test Reflection Ray or Glossy Ray? $\endgroup$ – atomicbezierslinger Jan 13 at 1:16
10
$\begingroup$

Composite view layers

You can take advantage of view layers and compositing. It's very flexible and collection-driven.

Create a collection with the objects that you don't want to appear in the mirror (s_vampire in this case).

Create two view layer and in one Disable the collection you created before: one with everything enabled called for example ref

enter image description here

And one othe called for example n vis with the collection disabled.

enter image description here

Now, just use cryptomatte layer to pick the mirror plane as a mask in the compositor:

enter image description here

The scene will be rendered 2 times and the mirror will show only the scene where the collection with s_vampire object is disabled. This is the result.

enter image description here

You can download the file here to explore the scene:

$\endgroup$
1
  • $\begingroup$ Wow, nice, it looks good. Thank you. $\endgroup$ – FilipBlend Jan 13 at 11:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.