3
$\begingroup$

I am using a plane right below my 3D model as a shadow catcher using Cycles rendering engine.

The plane is casting the shadow perfectly but as you can see on the attached screenshot the plane edges while casting the shadow is too hard. Is there a way to soften the edges? I guess I can not really use transparency on the material since I am using the for Shadow Catcher for the plane.

enter image description here

Render Engine: Cycles I have enabled Transparency under Film > Render Settings. The plane has the Shadow Catcher enabled under Visibility > Object Properties.

$\endgroup$
2
  • 1
    $\begingroup$ Can't you just scale up the circle to catch all of the cube's shadow? Or if you later use compositing to put the cube on top of a cylinder for example, a hard cut-off shadow makes sense, and you don't need to feather it. $\endgroup$
    – Geri
    Commented Oct 18, 2021 at 10:15
  • $\begingroup$ I guess the problem is, especially with people later coming to this question because they explicitly want a feathered shadow (what I guess the OP wants too), answers like scaling it larger or a hard cut-off makes sense won't help much. $\endgroup$ Commented Oct 18, 2021 at 10:47

1 Answer 1

4
$\begingroup$

To achieve a soft or feathered border on your Shadow Catcher object you have to setup a material for it with transparency which increases to the edge. Here is an example how you can do it, first I created a circular gradient from center to edge, there are multiple ways to get it, but anyway. The important thing is, you have to mix the Transparent shader with another one like Diffuse for example, if not the Shadow Catcher will be completely transparent and not show any shadow.

This is the node setup, the rendered preview doesn't look perfect but once you hit F12 it will render correctly:

shadowcatcher setup

Rendered version:

shadow catcher render

This is how the mix factor for Diffuse and Transparent looks like:

shadow mix factor

EDIT: Just a short addition. If you simply just enable Shadow Catcher on an object, it usually still effects the scene via light bounces or maybe reflections - which might be what you want. To show what I mean, in the image below on the left side you can see the red light bounce on the cube (I've set the Diffuse Shader to a red color to make it obvious). If you don't want the Shadow Catcher object to effect the scene, you turn off everything under Ray Visibility except for Camera, so there will be no interaction with other objects (see on the right side).

shadow catcher disabled

$\endgroup$
7
  • $\begingroup$ I could finally set up all the nodes but unfortunately, I could not get the same result as you did here. Do I have to enable the Shadow catcher in the object properties? Either way, it doesn't work. Here is the screenshot. i.postimg.cc/ryBXNjb2/Screenshot-2021-10-18-at-15-32-33.png $\endgroup$ Commented Oct 18, 2021 at 12:41
  • $\begingroup$ Of course you have to enable Shadow Catcher. The difference I can see in your node setup is that in the Distance node you're calculating the distance to 0/0/0, but with the Generated texture coordinates you have to use 0.5/0.5/0.5, but actually you can use anything that creates a gradient like the one in my last screenshot. $\endgroup$ Commented Oct 18, 2021 at 12:57
  • $\begingroup$ Sorry if the Shadow Catcher part was unclear, I'll edit my answer. This was a material for the Shadow Catcher, not instead of a Shadow Catcher. $\endgroup$ Commented Oct 18, 2021 at 13:00
  • $\begingroup$ Yeees, it worked. oh man, you are a blender guru. A lot of respect and gratitude. $\endgroup$ Commented Oct 18, 2021 at 13:09
  • $\begingroup$ @AshkanSharifi I've made an addition at the end of my answer. $\endgroup$ Commented Oct 18, 2021 at 14:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .