Substrate - Feedback Thread

Hello,
My engine is 5.4.2
There was a difference in the Lights of DrawCount Stat between
the substrate and non-substrate.
At a basic level, we confirmed this in an environment where only one Directional light was place.
Does this phenomenon have any effect on performance?

Hello,
In an environment where Substrate is enabled, decals are no longer drawn when DBufferDecal is turned OFF.
Is it not possible to disable DBufferDecal if Substrate is enabled?

Hello,

Some answers:

Decal mask
If something is not available without Substrate, then it is expected for it to not also not work with Substrate. So this is independent from substrate and it is current engine status: decal mask is no longer available as reported by the error.

Light DrawCount
Thanks for reporting with repro, I will add a task to investigate what is going on with that counter. (substrate do not add any lights but it does do more passes for the different material complexity tiled on screen so it could be just that).

DBufferDecal
Substrate does require DBufferDecal for decals to work. (this is because the GBuffer is no longer blendable so decals are combined with substrate slabs/closures differently).

that means you will be removing the Scene Texture: Decal Mask ID from the scene texture node?

The bit has been moved a long time ago. So that ID will remain in the UI, unusable for now.

1 Like

Hi,
This is expected. We have 3 extra drawcalls regardless the number of lights for writing/clearing the stencil values. Then for each light we have 3 drawcalls instead of 1 (one for each type of tile. The number of drawcall is not a good metric, as these 3 drawcalls allow us to save some GPU time by using faster shader where it matters.

I hope this helps.

Cheers,

/Charles.

1 Like

Unfortenuately we don’t have access to this project. Would you be able to package a small repro project for investigating this issue? Thank you!

/Charles.

I am working on a post-process material. where I need the following data in the form of scene textures:

  1. Detailed Lighting (Similar to what we have in view mode)
  2. HDR Emissive Color
  3. World Normal without normal texture data.

My question is if I plan to create a plugin. is it possible to expose these data passes in form of scene texture without modifying the source code?

I don’t know much about engine sources so I thought before I start working on it I should ask if it’s possible.

I got access to that asset and I couln’t repro the large difference you saw (I’m testing this in 5.5 so maybe we already fixed part of that issue).

Legacy/Substrate


However I could see small (albedo?) differences between legacy and substrate. This is not as drastic as in your comparison, but there is something to be investigated.

Legacy/Substrate


We will see if we can improve that in 5.5. Thanks for taking the time to report this!

/Charles.

I verify on our mainstream and GPU lightmass works as expected. So this issue should be fixed for 5.5.

Cheers,

/Charles.

@AlexeySidelnikov after disabling Substrate in 5.4.3 only emissive is visible no matter if Static lightning is enabled or not, with Lumen and Nanite enabled. Only happens in certain maps, those who have been edited when Substrate was enabled. The old materials have been updated, Substrate node removed, and in the viewport when not simulating everything looks fine.

The culprit was an outline material which was spawned for the player character and still had the active Substrate node.

Substrate was enabled because a content pack from the Marketplace required it, there was no warning that it could not be easily deactivated and requires manual removal from each single material.

Hi,

Sorry to hear about your adventure with Substrate.

The fact that Substrate is progressively becoming beta as well as it is a one way ticket is described in the documentation.

Not sure what version you are using but, when enabled from the project editor windows, there is a pop up describing the situation of Substrate (also shown in the documentation). If you enabled it via cvar in config file? Then this is something we cannot have pop up as far as I know (explicit choice of settings).

Hi @SebHillaire . Approaching this issue; do you know/think there will be an automatic conversion system, when enabling or disabling Substrate, from/to “standard”? It’s a little uncomfortable to be forced to remake the pin connections in every material when converted.

Regards!

1 Like

Is Substrate currently on-track to be released into Beta for 5.5, or is it still too early to tell?

@SebHillaire @Charles
Hi, I’m facing an issue. How can I use a custom UV for a layer? I’ve been trying different options for the past two months, but nothing seems to work. I have a road in the form of UV atlases that I want to project a texture onto, but the quality is not coming out well enough.
all textures 4k
What I need do to resolve an issue???

@Miguel1900 Substrate is a one way ticket. At some point it will be enabled and that will be it. So we have not spent time on back and forth conversion (which is not possible in lots of cases anyway). If you want to play with substrate today: use a separate project, or a copy.

@jblackwell Still WIP :slight_smile:

@Ingvard Is that substrate specific? How does it look without substrate enable? If it is Substrate related then send a project for use to reproduce pretty please? (Otherwise you can post that in the rendering section of the forum).

3 Likes

@SebHillaire @Charles
Hi, I am facing 2 issues in post-process material.

  1. Custom Depth Mask isn’t working correctly for the groom asset of metahuman.
    Black areas in mask makes it useless.

  1. When I try to pixelate the post-process input 0. it starts flickering. Seem like post process effects flicker at some extent in all kind of effects. in some cases very little in some case to much like this one.
    I am keeping the camera static in scene so it should flicker at all.


Given that groom assets almost always feature subpixel-level detail, is there any chance this is just an anti-aliasing issue?

found a new(?) bug, in scenes that only use static OR stationary lighting, skeletal meshes with SSS (substrate, skin profile) doesnt actually have SSS applied on them, but static meshes does work with SSS (currently using 5.4 with substrate on)

also this isnt related to substrate but i was wondering, does Distance Field Indirect Shadows work for anyone reading this? because for me and some people on my team (3 people who do actually use the project itself) DF indirect shadowing is completely broken and its buffer doesnt seem to follow the scale of the actual viewport scale unless the res is set to something like 110%