Jump to content

subsurface scattering


chsch
 Share

Recommended Posts

will there be subsurface scattering in Ultra Engine, and if so, what I'd personally like to see is the option to mix in a texture, rather than just have the separable SSS preintegrated kernel ( https://users.cg.tuwien.ac.at/zsolnai/gfx/separable-subsurface-scattering-with-activision-blizzard/ )  everyone seems to be using. (Parallax-offset that texture and you got yourself some really goodlooking organic surfaces, particularly in VR, where you can actually see the depth).

Link to comment
Share on other sites

though that would be cool, it's not what I meant, sorry. The volume would be great for transmission, i.e., when light and camera are on oppsite sides of an object, but I'm not sure what it would do if light and camera are on the same side, looking at a surface.

I tried to find anything about SSS in the Khronos specifications, but only really found that an SSS extension is still upcoming.

The problem with SSS, separable or not, is that usually it is done by rendering the lighting to a buffer and then convolving it. In a deferred renderer that's not much of an issue - just sample from the lighting pass a few times - but in a forward renderer it needs to be its own pass, as far as I know.

I'm mentioning SSS specifically because unity's universal render pipeline doesn't come with it at all, and all third party assets are a bit clunky to use. I wrote my own SSS at some point, but it ended up just as clunky in practice....

 

btw. - these glTF specifications look quite intense on the shader instructions... how is Ultra-engine performing with these heavy PBR shaders?

Link to comment
Share on other sites

Sorry, I thought that extension was for SSS.

22 minutes ago, chsch said:

btw. - these glTF specifications look quite intense on the shader instructions... how is Ultra-engine performing with these heavy PBR shaders?

Of course it has a cost, but compared to other things the engine does it's not that expensive:

 

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

All I can say right now is I am interested in this effect, though it probably won't be included in the first release. 

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

I think this can be worked into the transparency system pretty easily, because it already operates in a similar manner. The first pass can render backfacing polygons, to get that depth value written, and then the front faces can be rendered in a second pass, and then final transparency in a third. This would also provide easy support for volumetric fog and maybe some other effects.

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

that would be a nice feature to have, to get the lighting from the backface to check whether something is lit from the back or in in the shadow.

But that's translucency, and still not what subsurface scattering actually is meant to do.

SSS means to simulate light bounces under the surface, exiting as reflected light - but not reflected on the surface but somewhere deeper, meaning it's a value that's dependent on a different fragment being lit.

 

here's a rendering with blender's eevee of a cube with SSS on, hovering over a plane without SSS.

there's translucency along the edge, but the interesting part is where the light cone cuts off the light, and you still get that orange-y glow. because some pixels nearby are being lit. Without this, skin looks pasty and dead.

you can actually see the banding from a low number of samples (eevee allows you to increase it, but then, eevee is not designed to hit 60fps or more)

SSS-Cube.jpg

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...