I've implemented PBR for my game engine. Now I'm somehow stuck on the topic of colored shadows. I've got the following test situation:
A simple spot light shines through a transparenc object, in this case a colored glass. Now the light has to be colored while passing through the colored glass. So far this is logic since the colored glass absorbs certain wavelength from the white light leaving behind colored light. I've got though some problems with certain concepts. Maybe somebody can help me out there.
The glass can have different levels of transparency. Let's say 0%, 25%, 50%, 75% or 100%. Obviously with 100% the light should be black since no light can pass through an opaque object and for 0% the light is white as the object is fully transparent. For the other cases though the light should be more or less strongly colored.
But what exactly is the physical basis behind this?
If 0% transparent the color should be white. For 100% transparent the color should be black. How does the transparency level mixing with the light color? Mix against white or black or both?
With PBR the lighting should sum up to one. The reflection and refraction part is governed by Fresnel so that sums up to one. This leaves the refraction part as the part to affect colored shadows (the amount of light refracted/transmitted). But how does the transparency correctly factor in this from a physical point of view?
I googled around already but could not really find a satisfying physical explenation of the problem. I know Blender(Cycles) works with transparency, refraction and transmission so I assume there's something I didn't fully understand yet.