chsch Posted July 18, 2022 Share Posted July 18, 2022 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). Quote Link to comment Share on other sites More sharing options...
Josh Posted July 19, 2022 Share Posted July 19, 2022 Please take a look at this and tell me how well it meets your needs: https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Khronos/KHR_materials_volume/README.md Quote 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 More sharing options...
chsch Posted July 19, 2022 Author Share Posted July 19, 2022 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? Quote Link to comment Share on other sites More sharing options...
Josh Posted July 19, 2022 Share Posted July 19, 2022 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: Quote 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 More sharing options...
chsch Posted July 19, 2022 Author Share Posted July 19, 2022 42 minutes ago, Josh said: yes... I've seen those, that's why I'm here ^-^ 1 Quote Link to comment Share on other sites More sharing options...
Josh Posted July 19, 2022 Share Posted July 19, 2022 All I can say right now is I am interested in this effect, though it probably won't be included in the first release. Quote 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 More sharing options...
Josh Posted July 20, 2022 Share Posted July 20, 2022 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. Quote 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 More sharing options...
chsch Posted July 20, 2022 Author Share Posted July 20, 2022 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) Quote Link to comment Share on other sites More sharing options...
Josh Posted July 20, 2022 Share Posted July 20, 2022 I will need to study this in more detail. 1 Quote 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 More sharing options...
Recommended Posts
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.