From 77689a18e512e48b46d38e7e831d9a1b883a6a4e Mon Sep 17 00:00:00 2001 From: Anis Date: Thu, 2 Jul 2020 16:46:00 +0200 Subject: [PATCH] Fixed the transparent SSR dependency not being properly disabled according to the asset dependencies (1260271). --- com.unity.render-pipelines.high-definition/CHANGELOG.md | 1 + .../Editor/RenderPipeline/Settings/FrameSettingsUI.Drawers.cs | 1 + .../Runtime/RenderPipeline/Settings/FrameSettings.cs | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/com.unity.render-pipelines.high-definition/CHANGELOG.md b/com.unity.render-pipelines.high-definition/CHANGELOG.md index 7189925eb13..4f1ee9c1321 100644 --- a/com.unity.render-pipelines.high-definition/CHANGELOG.md +++ b/com.unity.render-pipelines.high-definition/CHANGELOG.md @@ -709,6 +709,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Fixed fallback for ray tracing and light layers (1258837). - Fixed Sorting Priority not displayed correctly in the DrawRenderers custom pass UI. - Fixed glitch in Project settings window when selecting diffusion profiles in material section (case 1253090) +- Fixed the transparent SSR dependency not being properly disabled according to the asset dependencies (1260271). ### Changed - Improve MIP selection for decals on Transparents diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Settings/FrameSettingsUI.Drawers.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Settings/FrameSettingsUI.Drawers.cs index 055b2533ec8..97166762419 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Settings/FrameSettingsUI.Drawers.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Settings/FrameSettingsUI.Drawers.cs @@ -280,6 +280,7 @@ static void Drawer_SectionLightingSettings(SerializedFrameSettings serialized, E var area = OverridableFrameSettingsArea.GetGroupContent(1, defaultFrameSettings, serialized); area.AmmendInfo(FrameSettingsField.Shadowmask, overrideable: () => hdrpSettings.supportShadowMask); area.AmmendInfo(FrameSettingsField.SSR, overrideable: () => hdrpSettings.supportSSR); + area.AmmendInfo(FrameSettingsField.TransparentSSR, overrideable: () => (hdrpSettings.supportSSR && hdrpSettings.supportSSRTransparent)); area.AmmendInfo(FrameSettingsField.SSAO, overrideable: () => hdrpSettings.supportSSAO); // SSS diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Settings/FrameSettings.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Settings/FrameSettings.cs index f77872a1998..b2b8304ecef 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Settings/FrameSettings.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/Settings/FrameSettings.cs @@ -742,7 +742,7 @@ internal static void Sanitize(ref FrameSettings sanitizedFrameSettings, Camera c // No recursive reflections sanitizedFrameSettings.bitDatas[(int)FrameSettingsField.SSR] &= renderPipelineSettings.supportSSR && !msaa && !preview; - sanitizedFrameSettings.bitDatas[(int)FrameSettingsField.TransparentSSR] &= renderPipelineSettings.supportSSRTransparent && sanitizedFrameSettings.bitDatas[(int)FrameSettingsField.SSR]; + sanitizedFrameSettings.bitDatas[(int)FrameSettingsField.TransparentSSR] &= renderPipelineSettings.supportSSRTransparent && renderPipelineSettings.supportSSR && !msaa && !preview; sanitizedFrameSettings.bitDatas[(int)FrameSettingsField.Refraction] &= !preview; sanitizedFrameSettings.bitDatas[(int)FrameSettingsField.SSAO] &= renderPipelineSettings.supportSSAO && !preview; sanitizedFrameSettings.bitDatas[(int)FrameSettingsField.SSGI] &= renderPipelineSettings.supportSSGI && !preview;