Description

As per the steps to reproduce, the Substrate Add node only adds the first Substrate Slab's Emissive value when "Use Parameter Blending" is enabled. Leaving "Use Parameter Blending" unchecked on the Substrate Add node will cause the material to evaluate correctly.

This is potentially due to a bug in the SubstrateAddParameterBlending function of Engine/Shaders/Private/Substrate/Substrate.ush where

BSDF_SETEMISSIVE(ResultBSDF, BSDF_GETEMISSIVE(ABSDF) + BSDF_GETEMISSIVE(ABSDF));

should be:

BSDF_SETEMISSIVE(ResultBSDF, BSDF_GETEMISSIVE(BBSDF) + BSDF_GETEMISSIVE(ABSDF));

Steps to Reproduce
  • Create a new UE 5.5.1 project
  • Enable Substrate via the project settings
  • Create a new material
  • Add two Substrate Slabs to the material
  • Add a constant Vector 3 to the Emissive Color pin in each Slab
  • Make the two colors obviously different, e.g. Red and Green
  • Pin the result of each Slab into a Substrate Add node
  • Pin the result of the Add node into the Front Material
  • Observe that with Use Parameter Blending unchecked the material preview shows a correctly blended output, e.g. Yellow
  • Observe that with Use Parameter Blending checked the material preview only shows the first Slab's color, e.g. Red

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-237558 in the post.

1
Login to Vote

Fixed
ComponentUE - Graphics Features - Substrate
Affects Versions5.5.15.5
Target Fix5.6
Fix Commit39155554
CreatedJan 10, 2025
ResolvedJan 13, 2025
UpdatedJan 13, 2025
View Jira Issue