Download

Separable Subsurface Scattering in UE4 ?

Greetings everyone. My thread is adressed to Epic devs mainly. In fact Mr Chance Ivey told me to make a thread about it so devs will look into it. Many of you surely know Jorge Jimenez: the creator of SMAA and SSSSS (Screen Space SubSurface Scattering) which was included in 4.5 update. Well this genius never stops his advancements and created with other geniuses a better version of SSS (Screen-Space being the least perfect in approximations) and called it Separable SubSurface Scattering. Here is his tech explained in those two videos:

https://youtube.com/watch?v=P0Tkr4HaIVk

https://www.youtube.com/watch?v=mU-5CsaPfsE

Research papers are available here at Károly Zsolnai’s page : http://cg.tuwien.ac.at/~zsolnai/gfx/separable-subsurface-scattering-with-activision-blizzard/

I hope Epic staff take note about it and try to contact him and get it in UE4.

Edit : Oh what? The explanatory video has been put to private. It explains everything about the new tech. In his site it says: "Talk (unofficial) – temporarily disabled, it may be back soon!

UPDATE: Separable SSS is officially released now

https://vimeo.com/36048029

https://vimeo.com/iryoku/separable-sss

http://www.iryoku.com/separable-sss-released

Source code available on GitHub: https://github.com/iryoku/separable-sss

Okay…somehow, only the first video was working, but man, I have to admitt though that this looks really impressive! I would love to see this in Unreal, but…

two things come into my mind, that I have to ask, mainly also to the devs:

  • I would love to see this integrated, but only if it perfroms better in terms of gpu performance than the current implementation does. I tested 10 characters in a IBL lit environment with one directional light, and those characters had only shorts on, so quite a lot of skin to see. The ss profile shader was between 10 to 12ms slower than the default ss shader. So almost an unacceptable performance drop in a real use case.
  • If this one is not performing better, I would really prefer making the current version run better, than going for a not optimized protoype kinda thing.

Please dont get me wrong, this is really just honest feedback about my performance concerns. Let me know if you have any cool ideas for this.

Cheers! :slight_smile:

Oh what? The explanatory video has been put to private. It explains everything about the new tech. In his site it says: “Talk (unofficial) – temporarily disabled, it may be back soon!”

I remember hearing Martin Mittring talk about this on one of the recent streams (couple months back). He was going over the new SSSS and ways to improve it in the future… I don’t have time to re-watch the whole thing, but here is the stream if you are interested: https://www.youtube.com/watch?v=DQt_OopZadI&index=17

Martin is definitely one of the ones to talk to about this though, hopefully he can add more info once the weekend is over. :slight_smile:

This article writer claims he got in touch with the dev of this tech and that this can be added to all engines: http://www.dsogaming.com/news/ssss-new-skin-technique-can-be-added-to-all-engines-with-ease-can-run-on-pretty-much-anything/

Please Epic, add it to UE4.

I would also love to see this implemented. Hope that Epic looks into this.

Seeing how they made the code freely available to everyone, and it being a post-effect, shouldn’t be much of a task for some wiz at Epic. :slight_smile:

Here is the full interview : http://www.dsogaming.com/interviews/doctoral-researcher-karoly-zsolnai-talks-about-separable-subsurface-scattering-its-benefits/

Now Epic really needs to contact this dev and implement this in UE4 !

My issue with making SSS a post-process effect is it softens details along the skin that it shouldn’t. Yes, interscattering does occur beneath the skin, but on top of the skin is a layer of oil that gives it a well-defined shine separate from the SSS effect. And other surfaces like marble also have a nicely-polished clear-coat effect, so sharp texture detail on top of the surface, and interscattering underneath. I really don’t like how the subsurface profile shader will deliberately blur textures and surface detail. If this method has to be a post process effect, it would be nice to mask it out based off of textures on the model so you don’t have to sacrifice sharp detail to get it.

UPDATE: Separable SSS is officially released now

http://www.iryoku.com/separable-sss-released

Source code available on GitHub: GitHub - iryoku/separable-sss: Separable Subsurface Scattering is a technique that allows to efficiently perform subsurface scattering calculations in screen space in just two passes.

Wow ! And I was trying to cook up one for myself :smiley: Lol that is just great man ! And I know many of these people from.

I swear, this forum is just like a one great family re-union :smiley: :smiley: :smiley:

EDIT: Can we get this on Roadmap on trello ? Really ? I want this.

mk.jpg

OK, yes, I want this. Also, that face was insanely epic.

Anybody knows How to implement or work with this shader inside UE4?. Many thanks