<p>There are lots of ways to fake SSS with greater or lesser fidelity. A few recent-ish methods:</p>

<ul>
<li>Screen-space blurring of object lighting (described in detail <a href="http://www.iryoku.com/sssss/" rel="noreferrer">here</a>)</li>
</ul>

<p><img src="https://i.sstatic.net/WyOYZ.png" alt="screen-space light blurring"></p>

<ul>
<li>Using “interior” ambient-occlusion maps generated from a normal-flipped version of the geometry to approximate local thickness, providing an easy way to fake light transmission (more information <a href="https://colinbarrebrisebois.com/2011/03/07/gdc-2011-approximating-translucency-for-a-fast-cheap-and-convincing-subsurface-scattering-look/" rel="noreferrer">here</a>, with an addendum <a href="https://colinbarrebrisebois.com/2011/04/04/approximating-translucency-part-ii-addendum-to-gdc-2011-talk-gpu-pro-2-article/" rel="noreferrer">here</a>)</li>
</ul>

<p><img src="https://i.sstatic.net/NFG3W.png" alt="local thickness map"></p>

<p>There’s also the assortment of techniques in the GPU Gems article PaulHK linked to. One thing I’d add is about the light-falloff-texture approach mentioned at the beginning of it, which Valve used for a couple of interesting effects in Source games in addition to fake SSS—see their <a href="https://developer.valvesoftware.com/wiki/$lightwarptexture" rel="noreferrer"><code>$lightwarptexture</code></a> documentation for some information about that.</p>

<p><img src="https://i.sstatic.net/0AXjk.png" alt="Team Fortress 2 illustrative rendering"></p>

CC BY-SA 3.0
2017-04-21T20:27:42.410Z
Another good one is [Pre-Integrated Skin Shading](http://advances.realtimerendering.com/s2011/Penner%20-%20Pre-Integrated%20Skin%20Rendering%20(Siggraph%202011%20Advances%20in%20Real-Time%20Rendering%20Course).pptx) from SIGGRAPH a few years ago.
Nathan Reed
CC BY-SA 3.0
2017-04-21T17:53:45.463Z
2017-04-21T17:53:45.463Z
Noah Witherspoon
<p>Some games claim to use subsurface scattering but my current understanding of sss is only achieved with ray tracing. How would you sub surface scatter without ray tracing? Do some claim to use sss but really use some approximation trick that doesn't use rays. I can't even imagine doing the below real time.
<a href="https://i.sstatic.net/U6i0v.png" rel="noreferrer"><img src="https://i.sstatic.net/U6i0v.png" alt="enter image description here"></a></p>

CC BY-SA 3.0
2017-04-21T05:54:21.453Z
One approach can be to render the back faces of a mesh to a depth buffer to compute an 'optical depth' which won't work so well for highly concave meshes but looks decent enough. http://http.developer.nvidia.com/GPUGems/gpugems_ch16.html
PaulHK
<raytracing><real-time><rasterizer><subsurface-scattering>
Subsurface Scattering Without Rays?
Andrew Wilson
# Subsurface Scattering Without Rays?

(Asked by: username_0 on 2017-04-21)

Some games claim to use subsurface scattering but my current understanding of sss is only achieved with ray tracing. How would you sub surface scatter without ray tracing? Do some claim to use sss but really use some approximation trick that doesn't use rays. I can't even imagine doing the below real time.
[![enter image description here](https://i.sstatic.net/U6i0v.png)](https://i.sstatic.net/U6i0v.png)

**Tags:** raytracing, real-time, rasterizer, subsurface-scattering

> **Comments:**
> **username_1**: One approach can be to render the back faces of a mesh to a depth buffer to compute an 'optical depth' which won't work so well for highly concave meshes but looks decent enough. http://http.developer.nvidia.com/GPUGems/gpugems_ch16.html  

---

## 1 answers

### Answer by username_2 on 2017-04-21. Score: 8 | Accepted answer

There are lots of ways to fake SSS with greater or lesser fidelity. A few recent-ish methods:

* Screen-space blurring of object lighting (described in detail [here](http://www.iryoku.com/sssss/))

![screen-space light blurring](https://i.sstatic.net/WyOYZ.png)

* Using “interior” ambient-occlusion maps generated from a normal-flipped version of the geometry to approximate local thickness, providing an easy way to fake light transmission (more information [here](https://colinbarrebrisebois.com/2011/03/07/gdc-2011-approximating-translucency-for-a-fast-cheap-and-convincing-subsurface-scattering-look/), with an addendum [here](https://colinbarrebrisebois.com/2011/04/04/approximating-translucency-part-ii-addendum-to-gdc-2011-talk-gpu-pro-2-article/))

![local thickness map](https://i.sstatic.net/NFG3W.png)

There’s also the assortment of techniques in the GPU Gems article username_1 linked to. One thing I’d add is about the light-falloff-texture approach mentioned at the beginning of it, which Valve used for a couple of interesting effects in Source games in addition to fake SSS—see their [`$lightwarptexture`](https://developer.valvesoftware.com/wiki/$lightwarptexture) documentation for some information about that.

![Team Fortress 2 illustrative rendering](https://i.sstatic.net/0AXjk.png)

> **Comments:**
> **username_3**: Another good one is [Pre-Integrated Skin Shading](http://advances.realtimerendering.com/s2011/Penner%20-%20Pre-Integrated%20Skin%20Rendering%20(Siggraph%202011%20Advances%20in%20Real-Time%20Rendering%20Course).pptx) from SIGGRAPH a few years ago.  

---

