Graphics Reference
In-Depth Information
over depth to keep the scattering amount over depth as smooth as possible and
make sure to keep the amount values subtle and natural looking.
3.7.2 Compositing Transparent Objects
Our solution to composite transparent objects to the scene works well for trans-
parent objects close to the camera. However, when volumetric light effects are
close to transparent objects and being viewed at larger distances, the intensity
curve is not accurate enough to correctly determine the amount of volumetric
light in front of the transparent surface. In these cases transparent objects can
look darker or lighter than they should. The fading artifact described earlier
can also be seen on transparent objects when moving the camera back or forth.
However, the integration of transparent objects in the scene is still better than
when not accounting for volumetric light at all. Better algorithms to store the
values over depth and/or increasing the depth resolution of our 3D textures can
reduce these artifacts.
Also, the technique cannot distinguish different volumetric light sources, which
can cause problems. If we would have a red, green, and blue volumetric light be-
hind each other, then the final volumetric-light-buffer color would be white. The
transparent objects will blend with the final volumetric-light-buffer color and thus
blend with the white color, while they should actually be aware of different colors
at different depths. This causes artifacts where transparent objects placed within
a volumetric light can show strange color differences caused by other volumet-
ric lights at larger distances, which shouldn't affect the transparent object at all.
Storing the red, green, and blue intensities separately in the intensity buffer could
potentially solve this; however, due to our performance and memory limitations,
we did not investigate this subject further. As long as the light colors within a
scene don't vary too much, the artifact is hardly noticeable.
3.8 Future Improvements
3.8.1 Curve Compression Methods
The accuracy and range of the scattering amount and volume light intensity
buffers could be improved by storing the values over depth differently using some
form of curve compression algorithm instead of storing the values directly in a
3D texture.
Other articles related to rendering of transparent shadow casting objects pro-
pose other alternatives to store values over depth [Lokovic and Veach 00, Salvi
et al. 11]. They describe how to store a light transmittance function over depth.
Our solution could benefit from this research. Alternatively the use of discreet
cosine transforms (DCT) or fast fourier transforms (FFT) to store the amount of
scattering and volume light intensity could also be valuable subjects to research.
Search WWH ::




Custom Search