Description

The log output in ValidateStaticUniformBuffer, lists hashes that do not correspond to the actual shader name which makes it difficult to track down problem shaders.

 

The current log output code is:

checkf(    false,    TEXT("Shader attempted to bind uniform buffer '%s' at slot %s with hash '%u', but the shader expected '%s' with hash '%u'."),    *Layout.GetDebugName(), *SlotRegistry.GetDebugDescription(Slot), ExpectedHash, ExpectedStructMetadata->GetShaderVariableName(), Layout.GetHash()); 

But the ExpectedHash corresponds with the shader from ExpectedStructMetaData->GetShaderVariableName() which makes sense, given ExpectedStructMetaData is found based on the ExpectedHash.

 

The log message should be updated to make it more clear how to find the shader at fault.

Steps to Reproduce

n/a

Have Comments or More Details?

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

0
Login to Vote

Unresolved
ComponentUE - Rendering Architecture - Shaders
Affects Versions5.4
Target Fix5.6
CreatedMay 9, 2024
UpdatedOct 18, 2024
View Jira Issue