Substrate - Feedback Thread

This is an absolutely fantastic effect, and something I have been looking forward to for the past several engine versions. Using your description, I’ve managed to enable it in the lumen scene, but not in the primary view (with RT shadows enabled, megalights disabled, and otherwise normal behavior).

Colored shadows are visible in the lumen scene and casting GI as expected, but not in the primary view. r.RayTracing.Shadows.Translucency produces the expected greyscale shadows, is there a means to force them to color as well? There is additional artifacting present in the GBuffer RT shadow that’s not in the lumen scene shadow.

Lumen debug view is something special. For the main view I believe that is still a todo.

1 Like

A wonderful physical technology for processing light.
I am interested in digging into it. I can’t wait for full integration with the landscape material.

So far, I have only managed to make the Auto-material work through different SLABs without the risk of crashing.
I even tried it on Imaс with 5500xt - it works!

When I was studying the technology, a question came to mind - is it planned for this type of material to take into account ultraviolet radiation in the radiation spectrum and re-emission of light at lower frequencies. It seems to me that this is important to increase the physical correctness of the model.

Check their original Substrate talk at SIGGRAPH from 2023- advances in real-time rendering. They do want to get to phenomena like florescence, but I don’t think it’s a major priority atm because they listed bigger priorities like making it more performant.

I for one will absolutely love to watch substrate get built out to handle the next-gen of material rendering, but considering how even one complex substrate material can easily be too much for a scene’s performance, I think speed is a priority.

2 Likes

I’m seeing this problem again in 5.6 and r.VRS.enableSoftware 0 makes it disappear.

1 Like

@SebHillaire Any update on this? Just tried in 5.6 launcher build and still appears to happen. Any commits I can cherry pick into my source build to solve this?

Hello,
I`m wanting to make a river.
I was wondering if there is the equivalent of dielectric priority in substrate.

About how to treat transfers between materials and the light breaking between the ior`s.

In the image above they say it mentions this bahaviour that they want to work on it.
i was wondering if it is already in.

If you’re looking to make a river, I would just use Unreal Engine’s water tools to do so. You get a river that’s performant, with a robust shading model that can be relatively physically accurate.

If you’re looking for light transport behavior that accurate in UE, I’m reasonably sure you’ll have to program it yourself. When you say 'light breaking between the IORs, are you referring to dispersion from light refracting through water?

I would like to note a Clear Coat problem. When using a [0, 0, 1] constant or flat normal map in the “Bottom Normal” slot and another normal map in the “Normal” slot you get artifacts when looking into the directional light direction.

Hello,
a came back here.

everytime i tried to use substrate blending i gort buggy flashing results probably did something wrong so i quicky abandonned trying to use it.

while the standard water shader is fun and it works it looks like a lot of hacky ways to do things and the main problem with it is that the abstract colored blurry sand or whatever you want to call it doesn`t catch shadows making it look unrealistic verry fast.

the substrate water looked like it could do for me what i wanted. with a simpler interface.
here`s what i mean. (probably should have posted that in the first post.


its about how to

  1. I don’t think the PT fully supports substrate materials, so that may be part of your issue.
  2. If you’re trying to physically simulate something as complicated as this (with what the diagram shows to be at least 4 manifold intersections with differing materials), then an offline DCC line Blender is probably your best shot. Even substrate still cannot handle spectral rendering or true dispersion, so I’d just try making this in a renderer that can.
  3. If you’re trying to do something like this in a raster way, you’re going to need to be comfortable with hacks. With up to six surfaces to evaluate in a row, this would be an enormous performance tax.
1 Like

A flat normal map should be 0.5, 0.5, 1 rather than 0, 0, 1. Perhaps that is contributing to the artifacts you are seeing?

Hello,

@NiFirr Yes spectral shading/rendering is something we would like to look at but later as highlighted by @jblackwell .

@That_guy_over_there Refraction is done the same way with/without Substrate so the same limitation applies as compared to before.

@berguina I thought we were done with that but the engine is always evolving with Substrate catching up so I guess we will need to look at that again.

@DMDevil This is still in the backlog. :double_exclamation_mark: EDIT: this is fixed for 5.7. :double_exclamation_mark:

@apfelbaum The bottom normal is of lower quality since it needs to be aggressively packed. This is the same when Substrate is disabled. This is something we would like to improve down the line but we are fine with parity on that side for now.

1 Like

Indeed, VRS should work as expected in 5.6. Would you have a repro to share so that we can investigate this on our side?

Thank you!

/Charles.

Thank you very much for investigating this issue.
Sure, I can make a repro project. Where should I send it?

A very important thing may explain why you didn’t succeeded to reproduce it on 5.6 is that the problem is only on Nanite meshes.

I made a little video to illustrate what I mean

You can see the 2 nanite meshes having the problem while the wall and the floor of the default level don’t because they haven’t nanite activated.

I had this exact problem in UE5.4, everything was working fine in UE5.5, but the problem is back in UE5.6. In both 5.4 and 5.6 disabling the VRS solves it.

@Charles Here a video in the substrate content example level in 5.6. As you can see, until I turn nanite on everything works fine, as soon I turn it on the flares appear.

Perfect! Thank you for the simple repro. I will investigate.

1 Like

A fix has been submitted in our mainline in CL 44927534. This will be part of 5.7.

Thank you for taking the time to report the issue!

/Charles.

1 Like

Thank you very much for looking into this issue and fixing it.

In UE 5.6 there appears to be an issue with ray traced refraction and Substrate Vertical Layer. I have this slab here where refractions are working:

If I combine this with another slab with the same setting using a Substrate Vertical Layer it renders opaque.

This above layered shader works fine in the path tracer.