Subsurface scattering is an important aspect developers have to take
into account when rendering translucent materials like marble, wax or
plastic. Several methods have been proposed by researchers to render
such material for offline to real-time applications. One of them I find
very interesting is the one proposed in the paper “Image Space
Subsurface Scattering for Interactive Rendering of Deformable
Translucent Objects” in IEEE Computer Graphic and Application. This
method uses the dipole diffusion approximation model to compute the
subsurface light scattering inside a 3D object. It uses a splatting
approach taking advantage of the GPU.
I have implemented this method with some ideas from myself to share it
with you :). For instance, I propose an optimization (lower resolution
splat buffer) which require to expand the silhouette of object in
More details, high quality video, source code and executable on my
YouTube video : http://www.youtube.com/watch?v=VBv_b8_cQFM
Feel free to discuss this method here :)
Please log in or register to post a reply.
Im extremely into sss, and this is exactly what im after!
Does this algorythm support multicoloured textured objects?
Because then you could apply it to skin rendering.
I had an idea of how to get sss to work, but havent got the first
project I was supposed to get done to put the scattering on, which is
displacement mapping! Ive nearly got it now as I speak tho, itll only be
a matter of time.
You should make a real pretty game with this! I bet the kids would love
the glowing through objects.
Id like to know how this works, but I cant seem to get at the paper on
your site, it looks like you have to pay to see it…
Thank you rouncer! :)
Yes, this algorithm support textured object. In the video and my
website, you can see the knight with an albedo texture containing a
green belt and the green light can be seen through the knight.
It should work for skin rendering. However, you will need a lot of
sample points: this method is better for highly translucent objects.
Actually, for skin rendering, I would prefer d’Eon algorithm (GPUGems3).
All the details about this method are resumed on my website (I’m still
proofreading the webpage because there is still some mistakes) in the
case you can’t have access to the paper . Maybe you know a researcher
which can give it to you? Or you can have a look on the source code I
provide : the important code is in only one short cpp file.
As a Newbie, I am always searching online for stuff that can help me.
Thank you for your help.