Although a quick presentation of the layered media rendering in realtime was done in a previous blogpost, the graphical demonstration was a bit ‘dry’. I’ll use here other 3D material to illustrate the shader.
Oat used a beating heart to demonstrate the ability to render various layers of human tissue.
The original video can be accessed here : http://www.chrisoat.com/movies/Oat_RenderingGooeyMaterials_SIGGRAPH2006.mp4
The inner layer of vessel and tissue is clearly blurred when the heart is expanding.
To show something close to it, I made a quick demonstration, using a free heart 3D model.
The 3D model is properly UV-mapped, but isn’t animated.
Since I needed it only for a quick demonstration of the shader, I ‘animated’ by pulsating it with two sin() combined, giving it a ‘beating heart’ look (!).
The thickness of the inner layer is updated accordingly.
I don’t have any map for the inner tissue with the original 3D model. I used a quickly drawn map with fake vessels to illustrate the shader.
You can see in the following screenshot the comparison between the original heart, staying still.
The second one is beating, but without treatment for the multilayer setup.
The third one use the multilayer shader.
The two heart on the right have a different lighting from the heart on the left : the first one use Unity’s standard shader, while mine don’t take into account anything related to the ambient light, skybox or BRDF.
Here’s a link to a WebGL export of the above scene, in a zip file : https://www.dropbox.com/s/0cthjhq9y77fhp5/heart_layered.zip?dl=0