Using r.Shaders.Optimize=0 with native metal libs results in a crash of the packaged build at runtime.

Workarounds is to either not use native metal libs for text shaders or in MetalShaders.cpp comment out the lines:

        if (bForceTextShaders)
            bHasShaderSource = (GetSourceCode() != nil);

This needs a bit more investigation to before making changes so raising this bug.

Steps to Reproduce

1. Sync SunTemple project with engine.
2. Run GenerateProjectFiles command
3. Open workspace in Xcode and in ConsoleVariables.ini set r.Shaders.Optimize=0 for text shaders
4. Compile and run the editor load the SunTemple project.
5. Package for iOS or MacOS.
6. Run packaged build observe crash.

Have Comments or More Details?

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

Login to Vote

ComponentUE - Rendering Architecture - RHI
Affects Versions4.24.2
Target Fix4.25
Fix Commit12466532
Main Commit14151001
Release Commit12466532
CreatedMar 17, 2020
ResolvedMar 27, 2020
UpdatedSep 7, 2023
View Jira Issue