public SerializedHDShadowInitParameters(SerializedProperty root) { this.root = root; directionalShadowMapDepthBits = root.Find((HDShadowInitParameters s) => s.directionalShadowsDepthBits); serializedPunctualAtlasInit = new SerializedHDShadowAtlasInitParams { shadowMapResolution = root.Find((HDShadowInitParameters s) => s.punctualLightShadowAtlas.shadowAtlasResolution), cachedResolution = root.Find((HDShadowInitParameters s) => s.cachedPunctualLightShadowAtlas), shadowMapDepthBits = root.Find((HDShadowInitParameters s) => s.punctualLightShadowAtlas.shadowAtlasDepthBits), useDynamicViewportRescale = root.Find((HDShadowInitParameters s) => s.punctualLightShadowAtlas.useDynamicViewportRescale) }; serializedAreaAtlasInit = new SerializedHDShadowAtlasInitParams { shadowMapResolution = root.Find((HDShadowInitParameters s) => s.areaLightShadowAtlas.shadowAtlasResolution), cachedResolution = root.Find((HDShadowInitParameters s) => s.cachedAreaLightShadowAtlas), shadowMapDepthBits = root.Find((HDShadowInitParameters s) => s.areaLightShadowAtlas.shadowAtlasDepthBits), useDynamicViewportRescale = root.Find((HDShadowInitParameters s) => s.areaLightShadowAtlas.useDynamicViewportRescale) }; maxShadowRequests = root.Find((HDShadowInitParameters s) => s.maxShadowRequests); shadowResolutionDirectional = new SerializedScalableSetting(root.Find((HDShadowInitParameters s) => s.shadowResolutionDirectional)); shadowResolutionPunctual = new SerializedScalableSetting(root.Find((HDShadowInitParameters s) => s.shadowResolutionPunctual)); shadowResolutionArea = new SerializedScalableSetting(root.Find((HDShadowInitParameters s) => s.shadowResolutionArea)); maxDirectionalShadowMapResolution = root.Find((HDShadowInitParameters s) => s.maxDirectionalShadowMapResolution); maxPunctualShadowMapResolution = root.Find((HDShadowInitParameters s) => s.maxPunctualShadowMapResolution); maxAreaShadowMapResolution = root.Find((HDShadowInitParameters s) => s.maxAreaShadowMapResolution); shadowFilteringQuality = root.Find((HDShadowInitParameters s) => s.shadowFilteringQuality); supportScreenSpaceShadows = root.Find((HDShadowInitParameters s) => s.supportScreenSpaceShadows); maxScreenSpaceShadowSlots = root.Find((HDShadowInitParameters s) => s.maxScreenSpaceShadowSlots); screenSpaceShadowBufferFormat = root.Find((HDShadowInitParameters s) => s.screenSpaceShadowBufferFormat); }
#pragma warning restore 618 public SerializedRenderPipelineSettings(SerializedProperty root) { this.root = root; supportShadowMask = root.Find((RenderPipelineSettings s) => s.supportShadowMask); supportSSR = root.Find((RenderPipelineSettings s) => s.supportSSR); supportSSRTransparent = root.Find((RenderPipelineSettings s) => s.supportSSRTransparent); supportSSAO = root.Find((RenderPipelineSettings s) => s.supportSSAO); supportSSGI = root.Find((RenderPipelineSettings s) => s.supportSSGI); supportSubsurfaceScattering = root.Find((RenderPipelineSettings s) => s.supportSubsurfaceScattering); sssSampleBudget = new SerializedScalableSetting(root.Find((RenderPipelineSettings s) => s.sssSampleBudget)); supportVolumetrics = root.Find((RenderPipelineSettings s) => s.supportVolumetrics); supportLightLayers = root.Find((RenderPipelineSettings s) => s.supportLightLayers); lightLayerName0 = root.Find((RenderPipelineSettings s) => s.lightLayerName0); lightLayerName1 = root.Find((RenderPipelineSettings s) => s.lightLayerName1); lightLayerName2 = root.Find((RenderPipelineSettings s) => s.lightLayerName2); lightLayerName3 = root.Find((RenderPipelineSettings s) => s.lightLayerName3); lightLayerName4 = root.Find((RenderPipelineSettings s) => s.lightLayerName4); lightLayerName5 = root.Find((RenderPipelineSettings s) => s.lightLayerName5); lightLayerName6 = root.Find((RenderPipelineSettings s) => s.lightLayerName6); lightLayerName7 = root.Find((RenderPipelineSettings s) => s.lightLayerName7); colorBufferFormat = root.Find((RenderPipelineSettings s) => s.colorBufferFormat); customBufferFormat = root.Find((RenderPipelineSettings s) => s.customBufferFormat); supportCustomPass = root.Find((RenderPipelineSettings s) => s.supportCustomPass); supportedLitShaderMode = root.Find((RenderPipelineSettings s) => s.supportedLitShaderMode); supportDecals = root.Find((RenderPipelineSettings s) => s.supportDecals); supportDecalLayers = root.Find((RenderPipelineSettings s) => s.supportDecalLayers); decalLayerName0 = root.Find((RenderPipelineSettings s) => s.decalLayerName0); decalLayerName1 = root.Find((RenderPipelineSettings s) => s.decalLayerName1); decalLayerName2 = root.Find((RenderPipelineSettings s) => s.decalLayerName2); decalLayerName3 = root.Find((RenderPipelineSettings s) => s.decalLayerName3); decalLayerName4 = root.Find((RenderPipelineSettings s) => s.decalLayerName4); decalLayerName5 = root.Find((RenderPipelineSettings s) => s.decalLayerName5); decalLayerName6 = root.Find((RenderPipelineSettings s) => s.decalLayerName6); decalLayerName7 = root.Find((RenderPipelineSettings s) => s.decalLayerName7); MSAASampleCount = root.Find((RenderPipelineSettings s) => s.msaaSampleCount); supportMotionVectors = root.Find((RenderPipelineSettings s) => s.supportMotionVectors); supportRuntimeDebugDisplay = root.Find((RenderPipelineSettings s) => s.supportRuntimeDebugDisplay); supportRuntimeAOVAPI = root.Find((RenderPipelineSettings s) => s.supportRuntimeAOVAPI); supportDitheringCrossFade = root.Find((RenderPipelineSettings s) => s.supportDitheringCrossFade); supportTerrainHole = root.Find((RenderPipelineSettings s) => s.supportTerrainHole); supportDistortion = root.Find((RenderPipelineSettings s) => s.supportDistortion); supportTransparentBackface = root.Find((RenderPipelineSettings s) => s.supportTransparentBackface); supportTransparentDepthPrepass = root.Find((RenderPipelineSettings s) => s.supportTransparentDepthPrepass); supportTransparentDepthPostpass = root.Find((RenderPipelineSettings s) => s.supportTransparentDepthPostpass); supportProbeVolume = root.Find((RenderPipelineSettings s) => s.supportProbeVolume); supportRayTracing = root.Find((RenderPipelineSettings s) => s.supportRayTracing); supportedRayTracingMode = root.Find((RenderPipelineSettings s) => s.supportedRayTracingMode); lightLoopSettings = new SerializedGlobalLightLoopSettings(root.Find((RenderPipelineSettings s) => s.lightLoopSettings)); hdShadowInitParams = new SerializedHDShadowInitParameters(root.Find((RenderPipelineSettings s) => s.hdShadowInitParams)); decalSettings = new SerializedGlobalDecalSettings(root.Find((RenderPipelineSettings s) => s.decalSettings)); postProcessSettings = new SerializedGlobalPostProcessSettings(root.Find((RenderPipelineSettings s) => s.postProcessSettings)); dynamicResolutionSettings = new SerializedDynamicResolutionSettings(root.Find((RenderPipelineSettings s) => s.dynamicResolutionSettings)); lowresTransparentSettings = new SerializedLowResTransparencySettings(root.Find((RenderPipelineSettings s) => s.lowresTransparentSettings)); xrSettings = new SerializedXRSettings(root.Find((RenderPipelineSettings s) => s.xrSettings)); postProcessQualitySettings = new SerializedPostProcessingQualitySettings(root.Find((RenderPipelineSettings s) => s.postProcessQualitySettings)); probeVolumeSettings = new SerializedGlobalProbeVolumeSettings(root.Find((RenderPipelineSettings s) => s.probeVolumeSettings)); lightSettings = new SerializedLightSettings(root.Find((RenderPipelineSettings s) => s.lightSettings)); lodBias = new SerializedScalableSetting(root.Find((RenderPipelineSettings s) => s.lodBias)); maximumLODLevel = new SerializedScalableSetting(root.Find((RenderPipelineSettings s) => s.maximumLODLevel)); lightingQualitySettings = new SerializedLightingQualitySettings(root.Find((RenderPipelineSettings s) => s.lightingQualitySettings)); #pragma warning disable 618 // Type or member is obsolete m_ObsoleteincreaseSssSampleCount = root.Find((RenderPipelineSettings s) => s.m_ObsoleteincreaseSssSampleCount); #pragma warning restore 618 }
public SerializedLightSettings(SerializedProperty root) { useContactShadows = new SerializedScalableSetting(root.Find((RenderPipelineSettings.LightSettings s) => s.useContactShadow)); }
public static void ValueGUI <T>(this SerializedScalableSetting self, GUIContent label) { var rect = GUILayoutUtility.GetRect(0, float.Epsilon, 0, EditorGUIUtility.singleLineHeight); // Magic Number !! rect.x += 3; rect.width -= 6; // Magic Number !! var contentRect = EditorGUI.PrefixLabel(rect, label); EditorGUI.showMixedValue = self.low.hasMultipleDifferentValues || self.medium.hasMultipleDifferentValues || self.high.hasMultipleDifferentValues; if (typeof(T) == typeof(bool)) { GUIContent[] labels = { k_Low, k_Med, k_High }; bool[] values = { self.low.boolValue, self.medium.boolValue, self.high.boolValue }; EditorGUI.BeginChangeCheck(); MultiField(contentRect, labels, values); if (EditorGUI.EndChangeCheck()) { self.low.boolValue = values[0]; self.medium.boolValue = values[1]; self.high.boolValue = values[2]; } } else if (typeof(T) == typeof(int)) { GUIContent[] labels = { k_ShortLow, k_ShortMed, k_ShortHigh }; int[] values = { self.low.intValue, self.medium.intValue, self.high.intValue }; EditorGUI.BeginChangeCheck(); MultiField(contentRect, labels, values); if (EditorGUI.EndChangeCheck()) { self.low.intValue = values[0]; self.medium.intValue = values[1]; self.high.intValue = values[2]; } } else if (typeof(T) == typeof(float)) { GUIContent[] labels = { k_ShortLow, k_ShortMed, k_ShortHigh }; float[] values = { self.low.floatValue, self.medium.floatValue, self.high.floatValue }; EditorGUI.BeginChangeCheck(); MultiField(contentRect, labels, values); if (EditorGUI.EndChangeCheck()) { self.low.floatValue = values[0]; self.medium.floatValue = values[1]; self.high.floatValue = values[2]; } } EditorGUI.showMixedValue = false; }