Simulating the visual appearance and lighting of human skin is a difficult task, which has been addressed by researchers for several years now. With the availability of high-performance, programmable graphic-boards, it is possible to use techniques formerly only available for offline rendering. This paper presents solutions to enhance visual quality of human skin and overall appearance of human body parts by using existing computer graphics techniques as well as through enhancing offline techniques to realtime appliance. Thus, subsurface scattering, soft shadows, aging and emotional changes in the appearance of the face are approximated to get results in realtime at interactive frame rates for more immersive virtual environments such as e-learning, cultural heritage and computer games.
The idea of this paper is to present visualization techniques that are able to work at interactive frame rates as well as on a physical basis. To visualize human skin, several phenomena have to be considered. Human skin consists of three major layers: First, the stratum corneum, the top-most layer with a thickness of 0.01 – 0.02 mm and a scaly structure of died skin-cells; second, the epidermis with a thickness of 0.025 – 0.15 mm is colored through the pigment melanin and finally, the dermis 0.6 – 3.0 mm which can be divided in papillar and reticular skin. The dermis is riddled with thinner (papillar) and thicker blood vessels that give the dermis a red appearance.
Human skin does not simply reflect light similar to plastic or metallic materials. The thin layer of hair and moisture on the skin reflects only small amounts of light while a large amount incidents to deeper layers. Therefore bright light shines through ears or similar thin skin. While the meshes for the virtual characters have to be designed and crafted in a pre-production phase, some of the phenomena appearing with skin can be done on a random basis – similar as to what nature presents in real life. One goal of this work is to keep pre-production-time as short as possible.
First, a subsurface-scattering approximation that works without pre-computation and with fully dynamic geometries is presented. This is followed by algorithms which allow dynamic aging with its proposed phenomena. Finally, some techniques for smooth shadows and changing the appearance of a human face depending on emotions are presented. All presented algorithms are developed with special interest on the skin-related physical basis.
The implementation is done using Fraunhofer’s OpenSG-Framework, OpenGL and the GL-Shading Language and is available for Windows and Linux. Because OpenSG was lacking Multipass-Materials when the project was done, most of the implementation had to be done “by hand” in C++