Issue: Unreal Engine incorrectly disables Signed Distance Field (SDF) generation on AMD Strix Halo, leading to flat/washed-out lighting and broken Lumen behavior in SM5.
Root Cause: The issue stems from a legacy hardware check in the engine’s RHI/Distance Field logic. The engine currently uses a blanket check to disable SDFs on integrated GPUs unless they are running Shader Model 6.
While this logic historically protected low-power integrated chips from performance exhaustion, Strix Halo possesses the compute and memory bandwidth to handle SDF generation comfortably. When running in SM5, the engine triggers this branch, returns false, and skips SDF generation entirely
Impact:
- Scenes appear “flat” with no Ambient Occlusion or detailed Lumen shadowing.
- Visual parity is broken between high-end APUs and discrete GPUs of similar compute capability.
Validation / Workarounds tested:
- SM6 Force: Forcing the project to Shader Model 6 resolves the issue, as it bypasses the GMaxRHIFeatureLevel < SM6 check. (Confirmed working on native Linux builds).
- RHI Override: Manually recompiling the engine to force GRHIDeviceIsIntegrated = false restores correct lighting and SDF generation on the hardware.
- Visualization: Using "r.DistanceFieldAO.VisualizeMeshDistanceFields 1" in SM5 shows an empty/missing SDF scene, whereas SM6 shows a fully populated scene.
Ask: Might the Rendering team reconsider this blanket GRHIDeviceIsIntegrated check for high-performance APUs?
Is there a plan to update this logic to use a more granular performance threshold (or an allowlist of Device IDs) so that next-gen integrated silicon isn’t penalized by legacy, SM5 safety checks?
Relevant code snippet:
if (GRHIDeviceIsIntegrated && GMaxRHIFeatureLevel < ERHIFeatureLevel::SM6)
{
// In case of iGPU we use the maximum feature level to differentiate between older and newer more capable iGPU
return false;
}
[Attachment Removed]