Real-time subsurface scattering on the GPU

Technical Report , INRIA - 2007
Download the publication : sap_0327.pdf [169Ko]  
We present a GPU algorithm that computes subsurface light transport in real time on arbitrary animated meshes. We evaluate both single scattering and multiple scattering, by using piecewise linear and ring-based approximations of the surface in the fragment shader. We demonstrate our technique on animated meshes at 60 fps.

Images and movies


See also

A little word about this work:
The paper is an extended abstract that was submitted to the SIGGRAPH07 sketch sessions but not accepted. I put it here as a research report. It is mostly a spin-off on my research on clouds rendering. I doubt I will write more about it, but if you're interested by this work don't hesitate to ask me about it.

Since there is not much detail in the paper, here are a few important things:
About the videos:
Reviewer's comments:
  1. This is a nice incremental contribution to the subsurface scattering toolset. I recommend it for acceptance as a poster. I found the length and chopiness of the videos a little distracting.
  2. I appreciate that there was alot of care in choosing the algorithm based on current hardware performance around certain instructions costs. Although it does run in real-time, its use for the largest percentage of real-time application, games, seems not very practical at present. I wish the video was of higher quality to show off the algorithms full potential....
  3. This sketch provides additional building blocks (specifically the use of rings and mip-mapping) to the community's bag of tricks that can be used to throw at the problem of real-time subsurface scattering. To the trained eye, this technique is generating hard-to-render subsurface scattering effects, but the dataset is so horribly ugly that it's hard to evaluate the merits of the technique. (The per-vertex artifacts, poor shadow map filtering and lack of a compelling ambient term are the main things wrong with the demo. Also, there should be more real-time split-screen or toggling going on.) If accepted, this work could really benefit from better showmanship in this regard.

BibTex references

  author       = "Bouthors, Antoine and Bruneton, Eric and Neyret, Fabrice and Max, Nelson",
  title        = "Real-time subsurface scattering on the GPU",
  institution  = "INRIA",
  year         = "2007",
  url          = ""

Other publications in the database

» Antoine Bouthors : in lab LJK base , in team EVASION base
» Eric Bruneton : in lab LJK base , in team EVASION base
» Fabrice Neyret : in lab LJK base , in team EVASION base
» Nelson Max : in lab LJK base , in team EVASION base