I am new to Blender and I cannot wrap my head around this:
The issue: I have a planet (icosphere) with a noise texture and a small noise bump map. Above it is a slightly larger icosphere with a mix shader consisting of a transparent shader and a Principled BSDF, the factor being defined by another noise texture (to create clouds). Rendered in Cycles with the clouds invisible, I get a nice and crisp division between light and shadow. This line is also exactly where it is supposed to be when I render only the cloud material. However, when I render both in Cycles together, there is a small perimeter within the shadow region where specks of the planet are lit and visible instead of being in the shadow as one would expect. I have created an image for this, the individual renders are also linked below.
The effect is much more apparent in the picture with the full planet rendered with both clouds and planet: Image of planet
What I have found out:
- The effect is not visible in Eevee.
- The effect is visible in both viewport render and final render. It is not changed when looking at the object from different angles.
- The width of the perimeter in which the effect occurs is related to the distance between the two icospheres. Scaling the cloud icosphere to exactly the size of the planet icosphere makes it vanish. The greater the scaling difference however, the wider the perimeter in which the effect occurs is.
- The spots of unwanted light coincide with the position of dense clouds, i.e. with those spots where the factor of the mix shader is rather high and therefore the resulting shader is dominated by the Principled BSDF.
- On a related note, making the noise texture more black, i.e. reducing the factor of the mix shader, does remedy the effect, but of course it also makes the clouds less visible.
- The effect does not seem to be simple reflection off the bottom of the clouds onto the planet. Changing the roughness, specular or sheen changes nothing.
- Changing the color of the clouds (i.e. the base color of the Principled BSDF) changes the color of the spots (see image below). The planet texture beneath only shines through when the base color of the clouds is white. So I suspect is has something to do with the mix shader doing something unexpected.
- I have tampered with the light path settings to no avail, the effect remains.
Below are pictures of my node setup for both materials as well as an image showing the effect of changing the base color of the Principled BSDF.
Any pointer as to what is causing this and what I can do to fix it would be appreciated!