Color Discrepancy with Alpha Transparency

Hi All,
I’m trying to create a plane that can “catch” shadows of an object. The purpose of this is to avoid any manual photo-editing to keep the shadows in a specific area of the rendered image.

I thought that by applying an alpha to the opacity channel of a PBR material, and then rendering with a transparent background would achieve the desired result, but for some reason there is color discrepency along the edge of my custom ground plane surface that I can’t account for.

The material is white, but for some reason it is rendering with a bit of balck on the edges. This is ruining the visual effect of the shadows.

If anyone could share a known solution for this I would be greatful! Reference files are attached.



alpha_test.3dm (1.2 MB)

This looks correct to me

You created your file with Rhino 7.9. You may want to update to the latest 7.11 service release to ensure you have all the latest published fixes to rendering.

Hi Nathan,

Thanks for taking a look at this. I may be making some incorrect assumptions about how the material should behave.

Essentially what I’m trying to do is automatically clip the shadow to a specific area but in a way were the shadow feathers a bit at the edge. Sometimes in a render the ground plane will pick up some shading from the skylight which I typically would have to remove in photo editing. For a lot of images this can take a bit of time.

Do you know of a good way to achieve that effect?

Thank you for the suggestion to move to the latest release. Unfortunately I don’t have admin rights to my license, so everything is installed through a package deployed by our IT department.—so I’m at the mercy of their cadence on that.

Thanks for the help. Much appreciated!

-David

Here a render with the geometry duplicated. On the left with your material that has the alpha channel texture in, on the right only diffuse color in pbr

As you can see the shadow of the sphere is the same in both. On the left you have the surface with the middle of the circle fully opaque and outward increasing alpha until fully invisible. You can see the shadow under the sphere on the plane.

The shadow is very similar to the one on the right, minor deviation, because the geometries are not in exactly the same place. But it should give you an idea of what happens.

The alpha channel seems to be doing what you ask it to do: show material where the material is still fully opaque and gradually fade out until alpha is set to full 1.0.

I don’t understand what you mean here. If an object is close enough to the ground plane to cause a shadow when having only skylight, then there will be a shadow. What kind of shading are you talking about? Maybe an annotated render example result would help me understand what you mean.

Here one more render with the custom planes removed and the shadows-only ground-plane enabled:

Is this not what you are looking for?

Hi Nathan,

Yeah the shadows are correct. The alpha behaves differently than I would expect.

Essentially I’m trying to create rendered images for easy cropping to use for presentations. I need the object and shadows rendered, but I’m trying to smoothly “crop” the shadows to a specific location on a plane so they fade out and don’t end harshly.

In this image you can see that there is a very light shadow that extends into the distance on the ground plane.

If I render the image with a transparent background and ‘shadows only’ on the ground plane. I’m able to composite the image with a different background (in this case the same white) and it looks correct. See below.

If I create a custom ground plane surface and apply the alpha, when I render with a transparent background the edges of the ground plane change color to be darker. If the surface is white with an alpha, I would expect the surface to approach 100% transparency and no color along the edge. I had assumed that the shadows under the sphere should fade to 100% white after compositing.

Thanks,

David

There is currently no provision for making custom geometry work as a shadow catcher, that has been only exposed to the Rhino ground plane.

The approach you take has still the problem that there will be some material in the render, and that is going to mess with your compositing. It is the material you see, not just the shadow.

I don’t have any good suggestions on how to handle this, other than render at larger resolution so that your object is relatively smaller in the image, then you have more room to to handle the shadow.

Another way to get smooth shadows, but control their size a bit better is through using rectangular lights instead of skylight.

Ah that makes sense. Ok thanks for the explaination.

-DD

So…you’re trying to control the area of the shadow? It would seem the solution there is indeed to not use the skylight, you need to use a ‘fake’ light you can control that stuff with.

Or…render out–maybe you’ll have to do a couple passes to get the final result to look best–using a color key background instead of the alpha channel, and then in Photoshop you can easily adjust things to blow out the areas of slight shadow you don’t want?