THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 08/11/2006 at 15:44, xxxxxxxx wrote:
you see a plane with a mapped circular gradient on it (from inner white to outer black. the gradient shader is in the alpha channel).
Usually the inner part (as you can see in the picture) is visible and fades out radially. That works of course.
Now I have a volumetric environment shader that works as described in the pseudocode.
I hit the plane, then I check the surface transparency with GetSurfaceData() and if it´s fully opaque, I do my calculations and return. If it´s transparent, I do the calculations and keep on tracing forward. if it´s fully transparent (sd->trans==0.f) then I don´t do any calculations and keep on tracing forward.
Now, the edges of the plane in the image are fully transparent (sd->trans==0.f) and therefore they should be invisible. But when you look closely, the edges shine a little white (you can identify them in front of the background).
My environment shader is based on distance of the intersection point to the eye. When there is no background, this effect doesn´t come up. Only when I keep on tracing and hit another object this happens.
I first thought, it´s a bug in my code, but when I do the same with the environment object´s fog, the same effect happens.
Find an example scene of the fog problem here:
Fog Bug
How can I solve this problem?
Thanks
Samir