From 73c919c2fdb0448021f9711b0e7eb0f134be0281 Mon Sep 17 00:00:00 2001 From: Anis Benyoub Date: Wed, 3 Feb 2021 10:30:17 +0100 Subject: [PATCH 1/4] Added the default quality settings to the HDRP asset for RTAO, RTR and RTGI (case 1304370). --- .../CHANGELOG.md | 1 + .../RenderPipeline/HDRenderPipelineUI.Skin.cs | 31 ++++ .../RenderPipeline/HDRenderPipelineUI.cs | 143 +++++++++++++++++- .../SerializedLightingQualitySettings.cs | 52 +++++++ .../GlobalLightingQualitySettings.cs | 2 - 5 files changed, 221 insertions(+), 8 deletions(-) diff --git a/com.unity.render-pipelines.high-definition/CHANGELOG.md b/com.unity.render-pipelines.high-definition/CHANGELOG.md index 8894bdd2505..d5526efa0ee 100644 --- a/com.unity.render-pipelines.high-definition/CHANGELOG.md +++ b/com.unity.render-pipelines.high-definition/CHANGELOG.md @@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Added UV manipulation for Decals (edit mode). - Added color and intensity customization for Decals. - Added a history rejection criterion based on if the pixel was moving in world space (case 1302392). +- Added the default quality settings to the HDRP asset for RTAO, RTR and RTGI (case 1304370). ### Fixed diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.Skin.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.Skin.cs index 60c9efe25b8..0c5bfb6a4ec 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.Skin.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.Skin.cs @@ -64,6 +64,7 @@ public class GeneralSection public static readonly GUIContent dofPhysicallyBased = EditorGUIUtility.TrTextContent("Physically Based"); public static readonly GUIContent maxSamplesQuality = EditorGUIUtility.TrTextContent("Max Samples"); + // SSAO public static readonly GUIContent SSAOQualitySettingSubTitle = EditorGUIUtility.TrTextContent("Screen Space Ambient Occlusion"); public static readonly GUIContent AOStepCount = EditorGUIUtility.TrTextContent("Step Count"); public static readonly GUIContent AOFullRes = EditorGUIUtility.TrTextContent("Full Resolution"); @@ -71,12 +72,42 @@ public class GeneralSection public static readonly GUIContent AODirectionCount = EditorGUIUtility.TrTextContent("Direction Count"); public static readonly GUIContent AOBilateralUpsample = EditorGUIUtility.TrTextContent("Bilateral Upsample"); + // RTAO + public static readonly GUIContent RTAOQualitySettingSubTitle = EditorGUIUtility.TrTextContent("Ray Traced Ambient Occlusion"); + public static readonly GUIContent RTAORayLength = EditorGUIUtility.TrTextContent("Ray Length"); + public static readonly GUIContent RTAOSampleCount = EditorGUIUtility.TrTextContent("Sample Count"); + public static readonly GUIContent RTAODenoise = EditorGUIUtility.TrTextContent("Denoise"); + public static readonly GUIContent RTAODenoiserRadius = EditorGUIUtility.TrTextContent("Denoiser Radius"); + public static readonly GUIContent contactShadowsSettingsSubTitle = EditorGUIUtility.TrTextContent("Contact Shadows"); public static readonly GUIContent contactShadowsSampleCount = EditorGUIUtility.TrTextContent("Sample Count"); public static readonly GUIContent SSRSettingsSubTitle = EditorGUIUtility.TrTextContent("Screen Space Reflection"); public static readonly GUIContent SSRMaxRaySteps = EditorGUIUtility.TrTextContent("Max Ray Steps"); + // RTR + public static readonly GUIContent RTRSettingsSubTitle = EditorGUIUtility.TrTextContent("Ray Traced Reflections (Performance)"); + public static readonly GUIContent RTRMinSmoothness = EditorGUIUtility.TrTextContent("Min Smoothness"); + public static readonly GUIContent RTRSmoothnessFadeStart = EditorGUIUtility.TrTextContent("Smoothness Fade Start"); + public static readonly GUIContent RTRRayLength = EditorGUIUtility.TrTextContent("Ray Length"); + public static readonly GUIContent RTRClampValue = EditorGUIUtility.TrTextContent("Clamp Value"); + public static readonly GUIContent RTRFullResolution = EditorGUIUtility.TrTextContent("Full Resolution"); + public static readonly GUIContent RTRDenoise = EditorGUIUtility.TrTextContent("Denoise"); + public static readonly GUIContent RTRDenoiserRadius = EditorGUIUtility.TrTextContent("Denoiser Radius"); + public static readonly GUIContent RTRSmoothDenoising = EditorGUIUtility.TrTextContent("Smooth Denoising"); + + // RTGI + public static readonly GUIContent RTGISettingsSubTitle = EditorGUIUtility.TrTextContent("Ray Traced Global Illumination (Performance)"); + public static readonly GUIContent RTGIRayLength = EditorGUIUtility.TrTextContent("Ray Length"); + public static readonly GUIContent RTGIFullResolution = EditorGUIUtility.TrTextContent("Full Resolution"); + public static readonly GUIContent RTGIClampValue = EditorGUIUtility.TrTextContent("Clamp Value"); + public static readonly GUIContent RTGIUpScaleRadius = EditorGUIUtility.TrTextContent("Upscale Radius"); + public static readonly GUIContent RTGIDenoise = EditorGUIUtility.TrTextContent("Denoise"); + public static readonly GUIContent RTGIHalfResDenoise = EditorGUIUtility.TrTextContent("Half Resolution Denoiser"); + public static readonly GUIContent RTGIDenoiserRadius = EditorGUIUtility.TrTextContent("Denoiser Radius"); + public static readonly GUIContent RTGISecondDenoise = EditorGUIUtility.TrTextContent("Second Denoiser"); + + // Fog public static readonly GUIContent FogSettingsSubTitle = EditorGUIUtility.TrTextContent("Volumetric Fog"); public static readonly GUIContent FogSettingsBudget = EditorGUIUtility.TrTextContent("Volumetric Fog Budget"); public static readonly GUIContent FogSettingsRatio = EditorGUIUtility.TrTextContent("Volumetric Fog Ratio"); diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs index cb3b9be9310..8d7a7277f17 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs @@ -43,7 +43,10 @@ enum Expandable VirtualTexturing = 1 << 27, FogQuality = 1 << 28, Volumetric = 1 << 29, - ProbeVolume = 1 << 30 + ProbeVolume = 1 << 30, + RTAOQuality = 1 << 31, + RTRQuality = 1 << 32, + RTGIQuality = 1 << 33 } static readonly ExpandedState k_ExpandedState = new ExpandedState(Expandable.CameraFrameSettings | Expandable.General, "HDRP"); @@ -92,9 +95,12 @@ static HDRenderPipelineUI() ), CED.FoldoutGroup(Styles.lightingQualitySettings, Expandable.LightingQuality, k_ExpandedState, CED.FoldoutGroup(Styles.SSAOQualitySettingSubTitle, Expandable.SSAOQuality, k_ExpandedState, FoldoutOption.Indent | FoldoutOption.SubFoldout | FoldoutOption.NoSpaceAtEnd, Drawer_SectionSSAOQualitySettings), + CED.FoldoutGroup(Styles.RTAOQualitySettingSubTitle, Expandable.RTAOQuality, k_ExpandedState, FoldoutOption.Indent | FoldoutOption.SubFoldout | FoldoutOption.NoSpaceAtEnd, Drawer_SectionRTAOQualitySettings), CED.FoldoutGroup(Styles.contactShadowsSettingsSubTitle, Expandable.ContactShadowQuality, k_ExpandedState, FoldoutOption.Indent | FoldoutOption.SubFoldout | FoldoutOption.NoSpaceAtEnd, Drawer_SectionContactShadowQualitySettings), CED.FoldoutGroup(Styles.SSRSettingsSubTitle, Expandable.SSRQuality, k_ExpandedState, FoldoutOption.Indent | FoldoutOption.SubFoldout | FoldoutOption.NoSpaceAtEnd, Drawer_SectionSSRQualitySettings), - CED.FoldoutGroup(Styles.FogSettingsSubTitle, Expandable.FogQuality, k_ExpandedState, FoldoutOption.Indent | FoldoutOption.SubFoldout | FoldoutOption.NoSpaceAtEnd, Drawer_SectionFogQualitySettings) + CED.FoldoutGroup(Styles.RTRSettingsSubTitle, Expandable.RTRQuality, k_ExpandedState, FoldoutOption.Indent | FoldoutOption.SubFoldout | FoldoutOption.NoSpaceAtEnd, Drawer_SectionRTRQualitySettings), + CED.FoldoutGroup(Styles.FogSettingsSubTitle, Expandable.FogQuality, k_ExpandedState, FoldoutOption.Indent | FoldoutOption.SubFoldout | FoldoutOption.NoSpaceAtEnd, Drawer_SectionFogQualitySettings), + CED.FoldoutGroup(Styles.RTGISettingsSubTitle, Expandable.RTGIQuality, k_ExpandedState, FoldoutOption.Indent | FoldoutOption.SubFoldout | FoldoutOption.NoSpaceAtEnd, Drawer_SectionRTGIQualitySettings) ), CED.FoldoutGroup(Styles.materialSectionTitle, Expandable.Material, k_ExpandedState, Drawer_SectionMaterialUnsorted), CED.FoldoutGroup(Styles.postProcessSectionTitle, Expandable.PostProcess, k_ExpandedState, Drawer_SectionPostProcessSettings), @@ -811,10 +817,6 @@ static void Drawer_SectionChromaticAberrationQualitySettings(SerializedHDRenderP } } - static private bool m_ShowAOLowQualitySection = false; - static private bool m_ShowAOMediumQualitySection = false; - static private bool m_ShowAOHighQualitySection = false; - static void DrawAOQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOStepCount.GetArrayElementAtIndex(tier), Styles.AOStepCount); @@ -824,6 +826,14 @@ static void DrawAOQualitySetting(SerializedHDRenderPipelineAsset serialized, int EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOBilateralUpsample.GetArrayElementAtIndex(tier), Styles.AOBilateralUpsample); } + static void DrawRTAOQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + { + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAORayLength.GetArrayElementAtIndex(tier), Styles.RTAORayLength); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAOSampleCount.GetArrayElementAtIndex(tier), Styles.RTAOSampleCount); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAODenoise.GetArrayElementAtIndex(tier), Styles.RTAODenoise); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAODenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTAODenoiserRadius); + } + static void CheckFoldoutClick(Rect foldoutRect, ref bool foldoutFlag) { var e = Event.current; @@ -836,6 +846,10 @@ static void CheckFoldoutClick(Rect foldoutRect, ref bool foldoutFlag) } } + static private bool m_ShowAOLowQualitySection = false; + static private bool m_ShowAOMediumQualitySection = false; + static private bool m_ShowAOHighQualitySection = false; + static void Drawer_SectionSSAOQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { m_ShowAOLowQualitySection = EditorGUILayout.Foldout(m_ShowAOLowQualitySection, Styles.lowQualityContent); @@ -863,6 +877,37 @@ static void Drawer_SectionSSAOQualitySettings(SerializedHDRenderPipelineAsset se } } + static private bool m_ShowRTAOLowQualitySection = false; + static private bool m_ShowRTAOMediumQualitySection = false; + static private bool m_ShowRTAOHighQualitySection = false; + + static void Drawer_SectionRTAOQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) + { + m_ShowRTAOLowQualitySection = EditorGUILayout.Foldout(m_ShowRTAOLowQualitySection, Styles.lowQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTAOLowQualitySection); + if (m_ShowRTAOLowQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.Low; + DrawRTAOQualitySetting(serialized, quality); + } + + m_ShowRTAOMediumQualitySection = EditorGUILayout.Foldout(m_ShowRTAOMediumQualitySection, Styles.mediumQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTAOMediumQualitySection); + if (m_ShowRTAOMediumQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.Medium; + DrawRTAOQualitySetting(serialized, quality); + } + + m_ShowRTAOHighQualitySection = EditorGUILayout.Foldout(m_ShowRTAOHighQualitySection, Styles.highQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTAOHighQualitySection); + if (m_ShowRTAOHighQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.High; + DrawRTAOQualitySetting(serialized, quality); + } + } + static private bool m_ShowContactShadowLowQualitySection = false; static private bool m_ShowContactShadowMediumQualitySection = false; static private bool m_ShowContactShadowHighQualitySection = false; @@ -925,6 +970,49 @@ static void Drawer_SectionSSRQualitySettings(SerializedHDRenderPipelineAsset ser } } + static private bool m_ShowRTRLowQualitySection = false; + static private bool m_ShowRTRMediumQualitySection = false; + static private bool m_ShowRTRHighQualitySection = false; + + static void DrawRTRQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + { + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRMinSmoothness.GetArrayElementAtIndex(tier), Styles.RTRMinSmoothness); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRSmoothnessFadeStart.GetArrayElementAtIndex(tier), Styles.RTRSmoothnessFadeStart); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRRayLength.GetArrayElementAtIndex(tier), Styles.RTRRayLength); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRClampValue.GetArrayElementAtIndex(tier), Styles.RTRClampValue); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRFullResolution.GetArrayElementAtIndex(tier), Styles.RTRFullResolution); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRDenoise.GetArrayElementAtIndex(tier), Styles.RTRDenoise); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRDenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTRDenoiserRadius); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRSmoothDenoising.GetArrayElementAtIndex(tier), Styles.RTRSmoothDenoising); + } + + static void Drawer_SectionRTRQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) + { + m_ShowRTRLowQualitySection = EditorGUILayout.Foldout(m_ShowRTRLowQualitySection, Styles.lowQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTRLowQualitySection); + if (m_ShowRTRLowQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.Low; + DrawRTRQualitySetting(serialized, quality); + } + + m_ShowRTRMediumQualitySection = EditorGUILayout.Foldout(m_ShowRTRMediumQualitySection, Styles.mediumQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTRMediumQualitySection); + if (m_ShowRTRMediumQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.Medium; + DrawRTRQualitySetting(serialized, quality); + } + + m_ShowRTRHighQualitySection = EditorGUILayout.Foldout(m_ShowRTRHighQualitySection, Styles.highQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTRHighQualitySection); + if (m_ShowRTRHighQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.High; + DrawRTRQualitySetting(serialized, quality); + } + } + static private bool m_ShowFogLowQualitySection = false; static private bool m_ShowFogMediumQualitySection = false; static private bool m_ShowFogHighQualitySection = false; @@ -971,6 +1059,49 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser } } + static private bool m_ShowRTGILowQualitySection = false; + static private bool m_ShowRTGIMediumQualitySection = false; + static private bool m_ShowRTGIHighQualitySection = false; + + static void DrawRTGIQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + { + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIRayLength.GetArrayElementAtIndex(tier), Styles.RTGIRayLength); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIFullResolution.GetArrayElementAtIndex(tier), Styles.RTGIFullResolution); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIClampValue.GetArrayElementAtIndex(tier), Styles.RTGIClampValue); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIUpScaleRadius.GetArrayElementAtIndex(tier), Styles.RTGIUpScaleRadius); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIDenoise.GetArrayElementAtIndex(tier), Styles.RTGIDenoise); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIHalfResDenoise.GetArrayElementAtIndex(tier), Styles.RTGIHalfResDenoise); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIDenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTGIDenoiserRadius); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGISecondDenoise.GetArrayElementAtIndex(tier), Styles.RTGISecondDenoise); + } + + static void Drawer_SectionRTGIQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) + { + m_ShowRTGILowQualitySection = EditorGUILayout.Foldout(m_ShowRTGILowQualitySection, Styles.lowQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTGILowQualitySection); + if (m_ShowRTGILowQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.Low; + DrawRTGIQualitySetting(serialized, quality); + } + + m_ShowRTGIMediumQualitySection = EditorGUILayout.Foldout(m_ShowRTGIMediumQualitySection, Styles.mediumQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTGIMediumQualitySection); + if (m_ShowRTGIMediumQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.Medium; + DrawRTGIQualitySetting(serialized, quality); + } + + m_ShowRTGIHighQualitySection = EditorGUILayout.Foldout(m_ShowRTGIHighQualitySection, Styles.highQualityContent); + CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowRTGIHighQualitySection); + if (m_ShowRTGIHighQualitySection) + { + int quality = (int)ScalableSettingLevelParameter.Level.High; + DrawRTGIQualitySetting(serialized, quality); + } + } + static void Drawer_SectionRenderingUnsorted(SerializedHDRenderPipelineAsset serialized, Editor owner) { EditorGUILayout.PropertyField(serialized.renderPipelineSettings.colorBufferFormat, Styles.colorBufferFormatContent); diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Settings/SerializedLightingQualitySettings.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Settings/SerializedLightingQualitySettings.cs index 1844d13fbcb..a484827a0c5 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Settings/SerializedLightingQualitySettings.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/Settings/SerializedLightingQualitySettings.cs @@ -14,12 +14,38 @@ class SerializedLightingQualitySettings public SerializedProperty AODirectionCount; public SerializedProperty AOBilateralUpsample; + // Ray Traced Ambient Occlusion + public SerializedProperty RTAORayLength; + public SerializedProperty RTAOSampleCount; + public SerializedProperty RTAODenoise; + public SerializedProperty RTAODenoiserRadius; + // Contact Shadows public SerializedProperty ContactShadowSampleCount; // SSR public SerializedProperty SSRMaxRaySteps; + // Ray Traced reflections + public SerializedProperty RTRMinSmoothness; + public SerializedProperty RTRSmoothnessFadeStart; + public SerializedProperty RTRRayLength; + public SerializedProperty RTRClampValue; + public SerializedProperty RTRFullResolution; + public SerializedProperty RTRDenoise; + public SerializedProperty RTRDenoiserRadius; + public SerializedProperty RTRSmoothDenoising; + + // Ray Traced Global Illumination + public SerializedProperty RTGIRayLength; + public SerializedProperty RTGIFullResolution; + public SerializedProperty RTGIClampValue; + public SerializedProperty RTGIUpScaleRadius; + public SerializedProperty RTGIDenoise; + public SerializedProperty RTGIHalfResDenoise; + public SerializedProperty RTGIDenoiserRadius; + public SerializedProperty RTGISecondDenoise; + // Fog public SerializedProperty VolumetricFogBudget; public SerializedProperty VolumetricFogRatio; @@ -35,12 +61,38 @@ public SerializedLightingQualitySettings(SerializedProperty root) AODirectionCount = root.Find((GlobalLightingQualitySettings s) => s.AODirectionCount); AOBilateralUpsample = root.Find((GlobalLightingQualitySettings s) => s.AOBilateralUpsample); + // RTAO + RTAORayLength = root.Find((GlobalLightingQualitySettings s) => s.RTAORayLength); + RTAOSampleCount = root.Find((GlobalLightingQualitySettings s) => s.RTAOSampleCount); + RTAODenoise = root.Find((GlobalLightingQualitySettings s) => s.RTAODenoise); + RTAODenoiserRadius = root.Find((GlobalLightingQualitySettings s) => s.RTAODenoiserRadius); + // Contact Shadows ContactShadowSampleCount = root.Find((GlobalLightingQualitySettings s) => s.ContactShadowSampleCount); // SSR SSRMaxRaySteps = root.Find((GlobalLightingQualitySettings s) => s.SSRMaxRaySteps); + // Ray Traced reflections + RTRMinSmoothness = root.Find((GlobalLightingQualitySettings s) => s.RTRMinSmoothness); + RTRSmoothnessFadeStart = root.Find((GlobalLightingQualitySettings s) => s.RTRSmoothnessFadeStart); + RTRRayLength = root.Find((GlobalLightingQualitySettings s) => s.RTRRayLength); + RTRClampValue = root.Find((GlobalLightingQualitySettings s) => s.RTRClampValue); + RTRFullResolution = root.Find((GlobalLightingQualitySettings s) => s.RTRFullResolution); + RTRDenoise = root.Find((GlobalLightingQualitySettings s) => s.RTRDenoise); + RTRDenoiserRadius = root.Find((GlobalLightingQualitySettings s) => s.RTRDenoiserRadius); + RTRSmoothDenoising = root.Find((GlobalLightingQualitySettings s) => s.RTRSmoothDenoising); + + // Ray Traced Global Illumination + RTGIRayLength = root.Find((GlobalLightingQualitySettings s) => s.RTGIRayLength); + RTGIFullResolution = root.Find((GlobalLightingQualitySettings s) => s.RTGIFullResolution); + RTGIClampValue = root.Find((GlobalLightingQualitySettings s) => s.RTGIClampValue); + RTGIUpScaleRadius = root.Find((GlobalLightingQualitySettings s) => s.RTGIUpScaleRadius); + RTGIDenoise = root.Find((GlobalLightingQualitySettings s) => s.RTGIDenoise); + RTGIHalfResDenoise = root.Find((GlobalLightingQualitySettings s) => s.RTGIHalfResDenoise); + RTGIDenoiserRadius = root.Find((GlobalLightingQualitySettings s) => s.RTGIDenoiserRadius); + RTGISecondDenoise = root.Find((GlobalLightingQualitySettings s) => s.RTGISecondDenoise); + // Fog VolumetricFogBudget = root.Find((GlobalLightingQualitySettings s) => s.Fog_Budget); VolumetricFogRatio = root.Find((GlobalLightingQualitySettings s) => s.Fog_DepthRatio); diff --git a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/GlobalLightingQualitySettings.cs b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/GlobalLightingQualitySettings.cs index 1c8f2f15d20..7fc9f7cdc9b 100644 --- a/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/GlobalLightingQualitySettings.cs +++ b/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/GlobalLightingQualitySettings.cs @@ -219,8 +219,6 @@ internal GlobalLightingQualitySettings() public float[] RTGIDenoiserRadius = new float[s_QualitySettingCount]; /// Flag that enables the second denoising pass. public bool[] RTGISecondDenoise = new bool[s_QualitySettingCount]; - /// Flag that defines the radius of the second denoiser. - public float[] RTGISecondDenoiserRadius = new float[s_QualitySettingCount]; // Ray Traced Reflections /// Controls the minimal smoothness. From 43c583dcd68a8bdd9db1c0938a227c822347cffc Mon Sep 17 00:00:00 2001 From: Remi Chapelain Date: Wed, 3 Feb 2021 20:16:13 +0100 Subject: [PATCH 2/4] Consistency between overrides and settings in terms of labels and order --- .../RenderPipeline/HDRenderPipelineUI.Skin.cs | 14 +++++++------- .../Editor/RenderPipeline/HDRenderPipelineUI.cs | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.Skin.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.Skin.cs index 0c5bfb6a4ec..7f87546e022 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.Skin.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.Skin.cs @@ -74,7 +74,7 @@ public class GeneralSection // RTAO public static readonly GUIContent RTAOQualitySettingSubTitle = EditorGUIUtility.TrTextContent("Ray Traced Ambient Occlusion"); - public static readonly GUIContent RTAORayLength = EditorGUIUtility.TrTextContent("Ray Length"); + public static readonly GUIContent RTAORayLength = EditorGUIUtility.TrTextContent("Max Ray Length"); public static readonly GUIContent RTAOSampleCount = EditorGUIUtility.TrTextContent("Sample Count"); public static readonly GUIContent RTAODenoise = EditorGUIUtility.TrTextContent("Denoise"); public static readonly GUIContent RTAODenoiserRadius = EditorGUIUtility.TrTextContent("Denoiser Radius"); @@ -87,25 +87,25 @@ public class GeneralSection // RTR public static readonly GUIContent RTRSettingsSubTitle = EditorGUIUtility.TrTextContent("Ray Traced Reflections (Performance)"); - public static readonly GUIContent RTRMinSmoothness = EditorGUIUtility.TrTextContent("Min Smoothness"); + public static readonly GUIContent RTRMinSmoothness = EditorGUIUtility.TrTextContent("Minimum Smoothness"); public static readonly GUIContent RTRSmoothnessFadeStart = EditorGUIUtility.TrTextContent("Smoothness Fade Start"); - public static readonly GUIContent RTRRayLength = EditorGUIUtility.TrTextContent("Ray Length"); + public static readonly GUIContent RTRRayLength = EditorGUIUtility.TrTextContent("Max Ray Length"); public static readonly GUIContent RTRClampValue = EditorGUIUtility.TrTextContent("Clamp Value"); public static readonly GUIContent RTRFullResolution = EditorGUIUtility.TrTextContent("Full Resolution"); public static readonly GUIContent RTRDenoise = EditorGUIUtility.TrTextContent("Denoise"); public static readonly GUIContent RTRDenoiserRadius = EditorGUIUtility.TrTextContent("Denoiser Radius"); - public static readonly GUIContent RTRSmoothDenoising = EditorGUIUtility.TrTextContent("Smooth Denoising"); + public static readonly GUIContent RTRSmoothDenoising = EditorGUIUtility.TrTextContent("Affect Smooth Surfaces"); // RTGI public static readonly GUIContent RTGISettingsSubTitle = EditorGUIUtility.TrTextContent("Ray Traced Global Illumination (Performance)"); - public static readonly GUIContent RTGIRayLength = EditorGUIUtility.TrTextContent("Ray Length"); - public static readonly GUIContent RTGIFullResolution = EditorGUIUtility.TrTextContent("Full Resolution"); + public static readonly GUIContent RTGIRayLength = EditorGUIUtility.TrTextContent("Max Ray Length"); public static readonly GUIContent RTGIClampValue = EditorGUIUtility.TrTextContent("Clamp Value"); + public static readonly GUIContent RTGIFullResolution = EditorGUIUtility.TrTextContent("Full Resolution"); public static readonly GUIContent RTGIUpScaleRadius = EditorGUIUtility.TrTextContent("Upscale Radius"); public static readonly GUIContent RTGIDenoise = EditorGUIUtility.TrTextContent("Denoise"); public static readonly GUIContent RTGIHalfResDenoise = EditorGUIUtility.TrTextContent("Half Resolution Denoiser"); public static readonly GUIContent RTGIDenoiserRadius = EditorGUIUtility.TrTextContent("Denoiser Radius"); - public static readonly GUIContent RTGISecondDenoise = EditorGUIUtility.TrTextContent("Second Denoiser"); + public static readonly GUIContent RTGISecondDenoise = EditorGUIUtility.TrTextContent("Second Denoiser Pass"); // Fog public static readonly GUIContent FogSettingsSubTitle = EditorGUIUtility.TrTextContent("Volumetric Fog"); diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs index 8d7a7277f17..68fa135eb2b 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs @@ -1066,8 +1066,8 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser static void DrawRTGIQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIRayLength.GetArrayElementAtIndex(tier), Styles.RTGIRayLength); - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIFullResolution.GetArrayElementAtIndex(tier), Styles.RTGIFullResolution); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIClampValue.GetArrayElementAtIndex(tier), Styles.RTGIClampValue); + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIFullResolution.GetArrayElementAtIndex(tier), Styles.RTGIFullResolution); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIUpScaleRadius.GetArrayElementAtIndex(tier), Styles.RTGIUpScaleRadius); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIDenoise.GetArrayElementAtIndex(tier), Styles.RTGIDenoise); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIHalfResDenoise.GetArrayElementAtIndex(tier), Styles.RTGIHalfResDenoise); From a50d16a7d2e85982d3e665ea04f32255535cf2d2 Mon Sep 17 00:00:00 2001 From: Remi Chapelain Date: Thu, 4 Feb 2021 12:00:27 +0100 Subject: [PATCH 3/4] Indented properly all quality settings (including PP) To match PR comment and what is done with DoF Quality settings --- .../RenderPipeline/HDRenderPipelineUI.cs | 133 +++++++++++------- 1 file changed, 85 insertions(+), 48 deletions(-) diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs index 68fa135eb2b..bf08ecc1b9c 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs @@ -293,7 +293,7 @@ static void Drawer_SectionProbeVolume(SerializedHDRenderPipelineAsset serialized --EditorGUI.indentLevel; } - + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.supportProbeVolume, Styles.supportProbeVolumeContent); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.probeVolumeTextureSize, Styles.probeVolumeMemoryBudget); } @@ -727,6 +727,13 @@ static void Drawer_SectionDepthOfFieldQualitySettings(SerializedHDRenderPipeline static private bool m_ShowMotionBlurMediumQualitySection = false; static private bool m_ShowMotionBlurHighQualitySection = false; + static void DrawMotionBlurQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + { + ++EditorGUI.indentLevel; + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.MotionBlurSampleCount.GetArrayElementAtIndex(tier), Styles.sampleCountQuality); + --EditorGUI.indentLevel; + } + static void Drawer_SectionMotionBlurQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { m_ShowMotionBlurLowQualitySection = EditorGUILayout.Foldout(m_ShowMotionBlurLowQualitySection, Styles.lowQualityContent, true); @@ -734,22 +741,22 @@ static void Drawer_SectionMotionBlurQualitySettings(SerializedHDRenderPipelineAs if (m_ShowMotionBlurLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.MotionBlurSampleCount.GetArrayElementAtIndex(quality), Styles.sampleCountQuality); - } + DrawMotionBlurQualitySetting(serialized, quality); + } m_ShowMotionBlurMediumQualitySection = EditorGUILayout.Foldout(m_ShowMotionBlurMediumQualitySection, Styles.mediumQualityContent, true); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowMotionBlurMediumQualitySection); if (m_ShowMotionBlurMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.MotionBlurSampleCount.GetArrayElementAtIndex(quality), Styles.sampleCountQuality); - } + DrawMotionBlurQualitySetting(serialized, quality); + } m_ShowMotionBlurHighQualitySection = EditorGUILayout.Foldout(m_ShowMotionBlurHighQualitySection, Styles.highQualityContent, true); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowMotionBlurHighQualitySection); if (m_ShowMotionBlurHighQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.High; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.MotionBlurSampleCount.GetArrayElementAtIndex(quality), Styles.sampleCountQuality); - } + DrawMotionBlurQualitySetting(serialized, quality); + } } static private bool m_ShowBloomLowQualitySection = false; @@ -758,10 +765,12 @@ static void Drawer_SectionMotionBlurQualitySettings(SerializedHDRenderPipelineAs static void DrawBloomQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.BloomRes.GetArrayElementAtIndex(tier), Styles.resolutionQuality); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.BloomHighPrefilteringQuality.GetArrayElementAtIndex(tier), Styles.highQualityPrefiltering); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.BloomHighFilteringQuality.GetArrayElementAtIndex(tier), Styles.highQualityFiltering); - } + --EditorGUI.indentLevel; + } static void Drawer_SectionBloomQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -792,6 +801,13 @@ static void Drawer_SectionBloomQualitySettings(SerializedHDRenderPipelineAsset s static private bool m_ShowChromaticAberrationMediumQualitySection = false; static private bool m_ShowChromaticAberrationHighQualitySection = false; + static void DrawChromaticAberrationQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + { + ++EditorGUI.indentLevel; + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.ChromaticAbMaxSamples.GetArrayElementAtIndex(tier), Styles.maxSamplesQuality); + --EditorGUI.indentLevel; + } + static void Drawer_SectionChromaticAberrationQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { m_ShowChromaticAberrationLowQualitySection = EditorGUILayout.Foldout(m_ShowChromaticAberrationLowQualitySection, Styles.lowQualityContent, true); @@ -799,40 +815,46 @@ static void Drawer_SectionChromaticAberrationQualitySettings(SerializedHDRenderP if (m_ShowChromaticAberrationLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.ChromaticAbMaxSamples.GetArrayElementAtIndex(quality), Styles.maxSamplesQuality); - } + DrawChromaticAberrationQualitySetting(serialized, quality); + } m_ShowChromaticAberrationMediumQualitySection = EditorGUILayout.Foldout(m_ShowChromaticAberrationMediumQualitySection, Styles.mediumQualityContent, true); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowChromaticAberrationMediumQualitySection); if (m_ShowChromaticAberrationMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.ChromaticAbMaxSamples.GetArrayElementAtIndex(quality), Styles.maxSamplesQuality); - } + DrawChromaticAberrationQualitySetting(serialized, quality); + } m_ShowChromaticAberrationHighQualitySection = EditorGUILayout.Foldout(m_ShowChromaticAberrationHighQualitySection, Styles.highQualityContent, true); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowChromaticAberrationHighQualitySection); if (m_ShowChromaticAberrationHighQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.High; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.ChromaticAbMaxSamples.GetArrayElementAtIndex(quality), Styles.maxSamplesQuality); - } + DrawChromaticAberrationQualitySetting(serialized, quality); + } } + + static void DrawAOQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOStepCount.GetArrayElementAtIndex(tier), Styles.AOStepCount); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOFullRes.GetArrayElementAtIndex(tier), Styles.AOFullRes); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOMaximumRadiusPixels.GetArrayElementAtIndex(tier), Styles.AOMaxRadiusInPixels); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AODirectionCount.GetArrayElementAtIndex(tier), Styles.AODirectionCount); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOBilateralUpsample.GetArrayElementAtIndex(tier), Styles.AOBilateralUpsample); - } + --EditorGUI.indentLevel; + } static void DrawRTAOQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAORayLength.GetArrayElementAtIndex(tier), Styles.RTAORayLength); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAOSampleCount.GetArrayElementAtIndex(tier), Styles.RTAOSampleCount); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAODenoise.GetArrayElementAtIndex(tier), Styles.RTAODenoise); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAODenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTAODenoiserRadius); - } + --EditorGUI.indentLevel; + } static void CheckFoldoutClick(Rect foldoutRect, ref bool foldoutFlag) { @@ -912,6 +934,13 @@ static void Drawer_SectionRTAOQualitySettings(SerializedHDRenderPipelineAsset se static private bool m_ShowContactShadowMediumQualitySection = false; static private bool m_ShowContactShadowHighQualitySection = false; + static void DrawContactShadowQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + { + ++EditorGUI.indentLevel; + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.ContactShadowSampleCount.GetArrayElementAtIndex(tier), Styles.contactShadowsSampleCount); + --EditorGUI.indentLevel; + } + static void Drawer_SectionContactShadowQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { m_ShowContactShadowLowQualitySection = EditorGUILayout.Foldout(m_ShowContactShadowLowQualitySection, Styles.lowQualityContent); @@ -919,30 +948,37 @@ static void Drawer_SectionContactShadowQualitySettings(SerializedHDRenderPipelin if (m_ShowContactShadowLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.ContactShadowSampleCount.GetArrayElementAtIndex(quality), Styles.contactShadowsSampleCount); - } + DrawContactShadowQualitySetting(serialized, quality); + } m_ShowContactShadowMediumQualitySection = EditorGUILayout.Foldout(m_ShowContactShadowMediumQualitySection, Styles.mediumQualityContent); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowContactShadowMediumQualitySection); if (m_ShowContactShadowMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.ContactShadowSampleCount.GetArrayElementAtIndex(quality), Styles.contactShadowsSampleCount); - } + DrawContactShadowQualitySetting(serialized, quality); + } m_ShowContactShadowHighQualitySection = EditorGUILayout.Foldout(m_ShowContactShadowHighQualitySection, Styles.highQualityContent); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowContactShadowHighQualitySection); if (m_ShowContactShadowHighQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.High; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.ContactShadowSampleCount.GetArrayElementAtIndex(quality), Styles.contactShadowsSampleCount); - } + DrawContactShadowQualitySetting(serialized, quality); + } } static private bool m_ShowSSRLowQualitySection = false; static private bool m_ShowSSRMediumQualitySection = false; static private bool m_ShowSSRHighQualitySection = false; + static void DrawSSRQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + { + ++EditorGUI.indentLevel; + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.SSRMaxRaySteps.GetArrayElementAtIndex(tier), Styles.contactShadowsSampleCount); + --EditorGUI.indentLevel; + } + static void Drawer_SectionSSRQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { m_ShowSSRLowQualitySection = EditorGUILayout.Foldout(m_ShowSSRLowQualitySection, Styles.lowQualityContent); @@ -950,24 +986,24 @@ static void Drawer_SectionSSRQualitySettings(SerializedHDRenderPipelineAsset ser if (m_ShowSSRLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.SSRMaxRaySteps.GetArrayElementAtIndex(quality), Styles.contactShadowsSampleCount); - } + DrawSSRQualitySetting(serialized, quality); + } m_ShowSSRMediumQualitySection = EditorGUILayout.Foldout(m_ShowSSRMediumQualitySection, Styles.mediumQualityContent); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowSSRMediumQualitySection); if (m_ShowSSRMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.SSRMaxRaySteps.GetArrayElementAtIndex(quality), Styles.contactShadowsSampleCount); - } + DrawSSRQualitySetting(serialized, quality); + } m_ShowSSRHighQualitySection = EditorGUILayout.Foldout(m_ShowSSRHighQualitySection, Styles.highQualityContent); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowSSRHighQualitySection); if (m_ShowSSRHighQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.High; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.SSRMaxRaySteps.GetArrayElementAtIndex(quality), Styles.contactShadowsSampleCount); - } + DrawSSRQualitySetting(serialized, quality); + } } static private bool m_ShowRTRLowQualitySection = false; @@ -976,6 +1012,7 @@ static void Drawer_SectionSSRQualitySettings(SerializedHDRenderPipelineAsset ser static void DrawRTRQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRMinSmoothness.GetArrayElementAtIndex(tier), Styles.RTRMinSmoothness); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRSmoothnessFadeStart.GetArrayElementAtIndex(tier), Styles.RTRSmoothnessFadeStart); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRRayLength.GetArrayElementAtIndex(tier), Styles.RTRRayLength); @@ -984,7 +1021,8 @@ static void DrawRTRQualitySetting(SerializedHDRenderPipelineAsset serialized, in EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRDenoise.GetArrayElementAtIndex(tier), Styles.RTRDenoise); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRDenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTRDenoiserRadius); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRSmoothDenoising.GetArrayElementAtIndex(tier), Styles.RTRSmoothDenoising); - } + --EditorGUI.indentLevel; + } static void Drawer_SectionRTRQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -1017,6 +1055,18 @@ static void Drawer_SectionRTRQualitySettings(SerializedHDRenderPipelineAsset ser static private bool m_ShowFogMediumQualitySection = false; static private bool m_ShowFogHighQualitySection = false; + static void DrawVolumetricFogQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + { + ++EditorGUI.indentLevel; + var budget = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogBudget.GetArrayElementAtIndex(tier); + EditorGUILayout.PropertyField(budget, Styles.FogSettingsBudget); + budget.floatValue = Mathf.Clamp(budget.floatValue, 0.0f, 1.0f); + var ratio = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogRatio.GetArrayElementAtIndex(tier); + EditorGUILayout.PropertyField(ratio, Styles.FogSettingsRatio); + ratio.floatValue = Mathf.Clamp(ratio.floatValue, 0.0f, 1.0f); + --EditorGUI.indentLevel; + } + static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { m_ShowFogLowQualitySection = EditorGUILayout.Foldout(m_ShowFogLowQualitySection, Styles.lowQualityContent); @@ -1024,12 +1074,7 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser if (m_ShowFogLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - var budget = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogBudget.GetArrayElementAtIndex(quality); - EditorGUILayout.PropertyField(budget, Styles.FogSettingsBudget); - budget.floatValue = Mathf.Clamp(budget.floatValue, 0.0f, 1.0f); - var ratio = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogRatio.GetArrayElementAtIndex(quality); - EditorGUILayout.PropertyField(ratio, Styles.FogSettingsRatio); - ratio.floatValue = Mathf.Clamp(ratio.floatValue, 0.0f, 1.0f); + DrawVolumetricFogQualitySetting(serialized, quality); } m_ShowFogMediumQualitySection = EditorGUILayout.Foldout(m_ShowFogMediumQualitySection, Styles.mediumQualityContent); @@ -1037,12 +1082,7 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser if (m_ShowFogMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; - var budget = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogBudget.GetArrayElementAtIndex(quality); - EditorGUILayout.PropertyField(budget, Styles.FogSettingsBudget); - budget.floatValue = Mathf.Clamp(budget.floatValue, 0.0f, 1.0f); - var ratio = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogRatio.GetArrayElementAtIndex(quality); - EditorGUILayout.PropertyField(ratio, Styles.FogSettingsRatio); - ratio.floatValue = Mathf.Clamp(ratio.floatValue, 0.0f, 1.0f); + DrawVolumetricFogQualitySetting(serialized, quality); } m_ShowFogHighQualitySection = EditorGUILayout.Foldout(m_ShowFogHighQualitySection, Styles.highQualityContent); @@ -1050,12 +1090,7 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser if (m_ShowFogHighQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.High; - var budget = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogBudget.GetArrayElementAtIndex(quality); - EditorGUILayout.PropertyField(budget, Styles.FogSettingsBudget); - budget.floatValue = Mathf.Clamp(budget.floatValue, 0.0f, 1.0f); - var ratio = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogRatio.GetArrayElementAtIndex(quality); - EditorGUILayout.PropertyField(ratio, Styles.FogSettingsRatio); - ratio.floatValue = Mathf.Clamp(ratio.floatValue, 0.0f, 1.0f); + DrawVolumetricFogQualitySetting(serialized, quality); } } @@ -1065,6 +1100,7 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser static void DrawRTGIQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIRayLength.GetArrayElementAtIndex(tier), Styles.RTGIRayLength); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIClampValue.GetArrayElementAtIndex(tier), Styles.RTGIClampValue); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIFullResolution.GetArrayElementAtIndex(tier), Styles.RTGIFullResolution); @@ -1073,7 +1109,8 @@ static void DrawRTGIQualitySetting(SerializedHDRenderPipelineAsset serialized, i EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIHalfResDenoise.GetArrayElementAtIndex(tier), Styles.RTGIHalfResDenoise); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIDenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTGIDenoiserRadius); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGISecondDenoise.GetArrayElementAtIndex(tier), Styles.RTGISecondDenoise); - } + --EditorGUI.indentLevel; + } static void Drawer_SectionRTGIQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { From e536748ea5e689791a0f3ae6d6ee53ec09812172 Mon Sep 17 00:00:00 2001 From: sebastienlagarde Date: Fri, 5 Feb 2021 01:34:12 +0100 Subject: [PATCH 4/4] Formatting --- .../RenderPipeline/HDRenderPipelineUI.cs | 132 +++++++++--------- 1 file changed, 65 insertions(+), 67 deletions(-) diff --git a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs index bf08ecc1b9c..2cfff073660 100644 --- a/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs +++ b/com.unity.render-pipelines.high-definition/Editor/RenderPipeline/HDRenderPipelineUI.cs @@ -293,7 +293,7 @@ static void Drawer_SectionProbeVolume(SerializedHDRenderPipelineAsset serialized --EditorGUI.indentLevel; } - + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.supportProbeVolume, Styles.supportProbeVolumeContent); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.probeVolumeTextureSize, Styles.probeVolumeMemoryBudget); } @@ -727,12 +727,12 @@ static void Drawer_SectionDepthOfFieldQualitySettings(SerializedHDRenderPipeline static private bool m_ShowMotionBlurMediumQualitySection = false; static private bool m_ShowMotionBlurHighQualitySection = false; - static void DrawMotionBlurQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + static void DrawMotionBlurQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.MotionBlurSampleCount.GetArrayElementAtIndex(tier), Styles.sampleCountQuality); - --EditorGUI.indentLevel; - } + ++EditorGUI.indentLevel; + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.MotionBlurSampleCount.GetArrayElementAtIndex(tier), Styles.sampleCountQuality); + --EditorGUI.indentLevel; + } static void Drawer_SectionMotionBlurQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -741,22 +741,22 @@ static void Drawer_SectionMotionBlurQualitySettings(SerializedHDRenderPipelineAs if (m_ShowMotionBlurLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - DrawMotionBlurQualitySetting(serialized, quality); - } + DrawMotionBlurQualitySetting(serialized, quality); + } m_ShowMotionBlurMediumQualitySection = EditorGUILayout.Foldout(m_ShowMotionBlurMediumQualitySection, Styles.mediumQualityContent, true); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowMotionBlurMediumQualitySection); if (m_ShowMotionBlurMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; - DrawMotionBlurQualitySetting(serialized, quality); - } + DrawMotionBlurQualitySetting(serialized, quality); + } m_ShowMotionBlurHighQualitySection = EditorGUILayout.Foldout(m_ShowMotionBlurHighQualitySection, Styles.highQualityContent, true); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowMotionBlurHighQualitySection); if (m_ShowMotionBlurHighQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.High; DrawMotionBlurQualitySetting(serialized, quality); - } + } } static private bool m_ShowBloomLowQualitySection = false; @@ -765,12 +765,12 @@ static void Drawer_SectionMotionBlurQualitySettings(SerializedHDRenderPipelineAs static void DrawBloomQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.BloomRes.GetArrayElementAtIndex(tier), Styles.resolutionQuality); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.BloomHighPrefilteringQuality.GetArrayElementAtIndex(tier), Styles.highQualityPrefiltering); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.BloomHighFilteringQuality.GetArrayElementAtIndex(tier), Styles.highQualityFiltering); - --EditorGUI.indentLevel; - } + --EditorGUI.indentLevel; + } static void Drawer_SectionBloomQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -801,12 +801,12 @@ static void Drawer_SectionBloomQualitySettings(SerializedHDRenderPipelineAsset s static private bool m_ShowChromaticAberrationMediumQualitySection = false; static private bool m_ShowChromaticAberrationHighQualitySection = false; - static void DrawChromaticAberrationQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + static void DrawChromaticAberrationQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.ChromaticAbMaxSamples.GetArrayElementAtIndex(tier), Styles.maxSamplesQuality); - --EditorGUI.indentLevel; - } + ++EditorGUI.indentLevel; + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.postProcessQualitySettings.ChromaticAbMaxSamples.GetArrayElementAtIndex(tier), Styles.maxSamplesQuality); + --EditorGUI.indentLevel; + } static void Drawer_SectionChromaticAberrationQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -815,46 +815,44 @@ static void Drawer_SectionChromaticAberrationQualitySettings(SerializedHDRenderP if (m_ShowChromaticAberrationLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - DrawChromaticAberrationQualitySetting(serialized, quality); - } + DrawChromaticAberrationQualitySetting(serialized, quality); + } m_ShowChromaticAberrationMediumQualitySection = EditorGUILayout.Foldout(m_ShowChromaticAberrationMediumQualitySection, Styles.mediumQualityContent, true); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowChromaticAberrationMediumQualitySection); if (m_ShowChromaticAberrationMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; DrawChromaticAberrationQualitySetting(serialized, quality); - } + } m_ShowChromaticAberrationHighQualitySection = EditorGUILayout.Foldout(m_ShowChromaticAberrationHighQualitySection, Styles.highQualityContent, true); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowChromaticAberrationHighQualitySection); if (m_ShowChromaticAberrationHighQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.High; DrawChromaticAberrationQualitySetting(serialized, quality); - } + } } - - static void DrawAOQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOStepCount.GetArrayElementAtIndex(tier), Styles.AOStepCount); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOFullRes.GetArrayElementAtIndex(tier), Styles.AOFullRes); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOMaximumRadiusPixels.GetArrayElementAtIndex(tier), Styles.AOMaxRadiusInPixels); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AODirectionCount.GetArrayElementAtIndex(tier), Styles.AODirectionCount); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.AOBilateralUpsample.GetArrayElementAtIndex(tier), Styles.AOBilateralUpsample); - --EditorGUI.indentLevel; - } + --EditorGUI.indentLevel; + } static void DrawRTAOQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAORayLength.GetArrayElementAtIndex(tier), Styles.RTAORayLength); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAOSampleCount.GetArrayElementAtIndex(tier), Styles.RTAOSampleCount); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAODenoise.GetArrayElementAtIndex(tier), Styles.RTAODenoise); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTAODenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTAODenoiserRadius); - --EditorGUI.indentLevel; - } + --EditorGUI.indentLevel; + } static void CheckFoldoutClick(Rect foldoutRect, ref bool foldoutFlag) { @@ -934,12 +932,12 @@ static void Drawer_SectionRTAOQualitySettings(SerializedHDRenderPipelineAsset se static private bool m_ShowContactShadowMediumQualitySection = false; static private bool m_ShowContactShadowHighQualitySection = false; - static void DrawContactShadowQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + static void DrawContactShadowQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.ContactShadowSampleCount.GetArrayElementAtIndex(tier), Styles.contactShadowsSampleCount); - --EditorGUI.indentLevel; - } + --EditorGUI.indentLevel; + } static void Drawer_SectionContactShadowQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -948,8 +946,8 @@ static void Drawer_SectionContactShadowQualitySettings(SerializedHDRenderPipelin if (m_ShowContactShadowLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - DrawContactShadowQualitySetting(serialized, quality); - } + DrawContactShadowQualitySetting(serialized, quality); + } m_ShowContactShadowMediumQualitySection = EditorGUILayout.Foldout(m_ShowContactShadowMediumQualitySection, Styles.mediumQualityContent); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowContactShadowMediumQualitySection); @@ -957,7 +955,7 @@ static void Drawer_SectionContactShadowQualitySettings(SerializedHDRenderPipelin { int quality = (int)ScalableSettingLevelParameter.Level.Medium; DrawContactShadowQualitySetting(serialized, quality); - } + } m_ShowContactShadowHighQualitySection = EditorGUILayout.Foldout(m_ShowContactShadowHighQualitySection, Styles.highQualityContent); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowContactShadowHighQualitySection); @@ -965,19 +963,19 @@ static void Drawer_SectionContactShadowQualitySettings(SerializedHDRenderPipelin { int quality = (int)ScalableSettingLevelParameter.Level.High; DrawContactShadowQualitySetting(serialized, quality); - } + } } static private bool m_ShowSSRLowQualitySection = false; static private bool m_ShowSSRMediumQualitySection = false; static private bool m_ShowSSRHighQualitySection = false; - static void DrawSSRQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + static void DrawSSRQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; - EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.SSRMaxRaySteps.GetArrayElementAtIndex(tier), Styles.contactShadowsSampleCount); - --EditorGUI.indentLevel; - } + ++EditorGUI.indentLevel; + EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.SSRMaxRaySteps.GetArrayElementAtIndex(tier), Styles.contactShadowsSampleCount); + --EditorGUI.indentLevel; + } static void Drawer_SectionSSRQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -987,15 +985,15 @@ static void Drawer_SectionSSRQualitySettings(SerializedHDRenderPipelineAsset ser { int quality = (int)ScalableSettingLevelParameter.Level.Low; DrawSSRQualitySetting(serialized, quality); - } + } m_ShowSSRMediumQualitySection = EditorGUILayout.Foldout(m_ShowSSRMediumQualitySection, Styles.mediumQualityContent); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowSSRMediumQualitySection); if (m_ShowSSRMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; - DrawSSRQualitySetting(serialized, quality); - } + DrawSSRQualitySetting(serialized, quality); + } m_ShowSSRHighQualitySection = EditorGUILayout.Foldout(m_ShowSSRHighQualitySection, Styles.highQualityContent); CheckFoldoutClick(GUILayoutUtility.GetLastRect(), ref m_ShowSSRHighQualitySection); @@ -1003,7 +1001,7 @@ static void Drawer_SectionSSRQualitySettings(SerializedHDRenderPipelineAsset ser { int quality = (int)ScalableSettingLevelParameter.Level.High; DrawSSRQualitySetting(serialized, quality); - } + } } static private bool m_ShowRTRLowQualitySection = false; @@ -1012,7 +1010,7 @@ static void Drawer_SectionSSRQualitySettings(SerializedHDRenderPipelineAsset ser static void DrawRTRQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRMinSmoothness.GetArrayElementAtIndex(tier), Styles.RTRMinSmoothness); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRSmoothnessFadeStart.GetArrayElementAtIndex(tier), Styles.RTRSmoothnessFadeStart); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRRayLength.GetArrayElementAtIndex(tier), Styles.RTRRayLength); @@ -1021,8 +1019,8 @@ static void DrawRTRQualitySetting(SerializedHDRenderPipelineAsset serialized, in EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRDenoise.GetArrayElementAtIndex(tier), Styles.RTRDenoise); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRDenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTRDenoiserRadius); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTRSmoothDenoising.GetArrayElementAtIndex(tier), Styles.RTRSmoothDenoising); - --EditorGUI.indentLevel; - } + --EditorGUI.indentLevel; + } static void Drawer_SectionRTRQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -1055,17 +1053,17 @@ static void Drawer_SectionRTRQualitySettings(SerializedHDRenderPipelineAsset ser static private bool m_ShowFogMediumQualitySection = false; static private bool m_ShowFogHighQualitySection = false; - static void DrawVolumetricFogQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) + static void DrawVolumetricFogQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; - var budget = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogBudget.GetArrayElementAtIndex(tier); - EditorGUILayout.PropertyField(budget, Styles.FogSettingsBudget); - budget.floatValue = Mathf.Clamp(budget.floatValue, 0.0f, 1.0f); - var ratio = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogRatio.GetArrayElementAtIndex(tier); - EditorGUILayout.PropertyField(ratio, Styles.FogSettingsRatio); - ratio.floatValue = Mathf.Clamp(ratio.floatValue, 0.0f, 1.0f); - --EditorGUI.indentLevel; - } + ++EditorGUI.indentLevel; + var budget = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogBudget.GetArrayElementAtIndex(tier); + EditorGUILayout.PropertyField(budget, Styles.FogSettingsBudget); + budget.floatValue = Mathf.Clamp(budget.floatValue, 0.0f, 1.0f); + var ratio = serialized.renderPipelineSettings.lightingQualitySettings.VolumetricFogRatio.GetArrayElementAtIndex(tier); + EditorGUILayout.PropertyField(ratio, Styles.FogSettingsRatio); + ratio.floatValue = Mathf.Clamp(ratio.floatValue, 0.0f, 1.0f); + --EditorGUI.indentLevel; + } static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) { @@ -1074,7 +1072,7 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser if (m_ShowFogLowQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Low; - DrawVolumetricFogQualitySetting(serialized, quality); + DrawVolumetricFogQualitySetting(serialized, quality); } m_ShowFogMediumQualitySection = EditorGUILayout.Foldout(m_ShowFogMediumQualitySection, Styles.mediumQualityContent); @@ -1082,7 +1080,7 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser if (m_ShowFogMediumQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.Medium; - DrawVolumetricFogQualitySetting(serialized, quality); + DrawVolumetricFogQualitySetting(serialized, quality); } m_ShowFogHighQualitySection = EditorGUILayout.Foldout(m_ShowFogHighQualitySection, Styles.highQualityContent); @@ -1090,7 +1088,7 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser if (m_ShowFogHighQualitySection) { int quality = (int)ScalableSettingLevelParameter.Level.High; - DrawVolumetricFogQualitySetting(serialized, quality); + DrawVolumetricFogQualitySetting(serialized, quality); } } @@ -1100,7 +1098,7 @@ static void Drawer_SectionFogQualitySettings(SerializedHDRenderPipelineAsset ser static void DrawRTGIQualitySetting(SerializedHDRenderPipelineAsset serialized, int tier) { - ++EditorGUI.indentLevel; + ++EditorGUI.indentLevel; EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIRayLength.GetArrayElementAtIndex(tier), Styles.RTGIRayLength); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIClampValue.GetArrayElementAtIndex(tier), Styles.RTGIClampValue); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIFullResolution.GetArrayElementAtIndex(tier), Styles.RTGIFullResolution); @@ -1109,8 +1107,8 @@ static void DrawRTGIQualitySetting(SerializedHDRenderPipelineAsset serialized, i EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIHalfResDenoise.GetArrayElementAtIndex(tier), Styles.RTGIHalfResDenoise); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGIDenoiserRadius.GetArrayElementAtIndex(tier), Styles.RTGIDenoiserRadius); EditorGUILayout.PropertyField(serialized.renderPipelineSettings.lightingQualitySettings.RTGISecondDenoise.GetArrayElementAtIndex(tier), Styles.RTGISecondDenoise); - --EditorGUI.indentLevel; - } + --EditorGUI.indentLevel; + } static void Drawer_SectionRTGIQualitySettings(SerializedHDRenderPipelineAsset serialized, Editor owner) {