You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
200 lines
13 KiB
200 lines
13 KiB
using System;
|
|
using UnityEngine.Serialization;
|
|
using UnityEngine.Rendering.HighDefinition;
|
|
|
|
namespace UnityEditor.Rendering.HighDefinition
|
|
{
|
|
class SerializedLightSettings
|
|
{
|
|
public SerializedScalableSetting useContactShadows;
|
|
|
|
public SerializedLightSettings(SerializedProperty root)
|
|
{
|
|
useContactShadows = new SerializedScalableSetting(root.Find((RenderPipelineSettings.LightSettings s) => s.useContactShadow));
|
|
}
|
|
}
|
|
|
|
class SerializedRenderPipelineSettings
|
|
{
|
|
public SerializedProperty root;
|
|
|
|
public SerializedProperty supportShadowMask;
|
|
public SerializedProperty supportSSR;
|
|
public SerializedProperty supportSSRTransparent;
|
|
public SerializedProperty supportSSAO;
|
|
public SerializedProperty supportSSGI;
|
|
public SerializedProperty supportSubsurfaceScattering;
|
|
public SerializedScalableSetting sssSampleBudget;
|
|
public SerializedScalableSetting sssDownsampleSteps;
|
|
[FormerlySerializedAs("supportVolumetric")]
|
|
public SerializedProperty supportVolumetrics;
|
|
public SerializedProperty supportVolumetricClouds;
|
|
|
|
// Water
|
|
public SerializedProperty supportWater;
|
|
public SerializedProperty waterSimulationResolution;
|
|
public SerializedProperty supportWaterDeformation;
|
|
public SerializedProperty deformationAtlasSize;
|
|
public SerializedProperty maximumDeformerCount;
|
|
public SerializedProperty supportWaterFoam;
|
|
public SerializedProperty foamAtlasSize;
|
|
public SerializedProperty supportWaterExclusion;
|
|
public SerializedProperty waterScriptInteractionsMode;
|
|
public SerializedProperty waterFullCPUSimulation;
|
|
|
|
public SerializedProperty supportComputeThickness;
|
|
public SerializedProperty computeThicknessResolution;
|
|
public SerializedProperty computeThicknessLayerMask;
|
|
|
|
public SerializedProperty supportLightLayers;
|
|
public SerializedProperty supportedLitShaderMode;
|
|
public SerializedProperty colorBufferFormat;
|
|
public SerializedProperty supportCustomPass;
|
|
public SerializedProperty customBufferFormat;
|
|
public SerializedProperty renderingLayerMaskBuffer;
|
|
public SerializedScalableSetting planarReflectionResolution;
|
|
public SerializedScalableSetting cubeReflectionResolution;
|
|
public SerializedProperty supportDecals;
|
|
public SerializedProperty supportDecalLayers;
|
|
public SerializedProperty supportSurfaceGradient;
|
|
public SerializedProperty decalNormalBufferHP;
|
|
public SerializedProperty supportHighQualityLineRendering;
|
|
public SerializedProperty highQualityLineRenderingMemoryBudget;
|
|
|
|
public SerializedProperty MSAASampleCount;
|
|
public SerializedProperty supportMotionVectors;
|
|
public SerializedProperty supportRuntimeAOVAPI;
|
|
public SerializedProperty supportTerrainHole;
|
|
public SerializedProperty supportRayTracing;
|
|
public SerializedProperty supportVFXRayTracing;
|
|
public SerializedProperty supportedRayTracingMode;
|
|
public SerializedProperty supportDistortion;
|
|
public SerializedProperty supportTransparentBackface;
|
|
public SerializedProperty supportTransparentDepthPrepass;
|
|
public SerializedProperty supportTransparentDepthPostpass;
|
|
internal SerializedProperty lightProbeSystem;
|
|
internal SerializedProperty probeVolumeTextureSize;
|
|
internal SerializedProperty supportProbeVolumeScenarios;
|
|
internal SerializedProperty supportProbeVolumeScenarioBlending;
|
|
internal SerializedProperty probeVolumeBlendingTextureSize;
|
|
internal SerializedProperty supportProbeVolumeGPUStreaming;
|
|
internal SerializedProperty supportProbeVolumeDiskStreaming;
|
|
internal SerializedProperty probeVolumeSHBands;
|
|
|
|
public SerializedProperty supportScreenSpaceLensFlare;
|
|
public SerializedProperty supportDataDrivenLensFlare;
|
|
|
|
public SerializedGlobalLightLoopSettings lightLoopSettings;
|
|
public SerializedHDShadowInitParameters hdShadowInitParams;
|
|
public SerializedGlobalDecalSettings decalSettings;
|
|
public SerializedGlobalPostProcessSettings postProcessSettings;
|
|
public SerializedDynamicResolutionSettings dynamicResolutionSettings;
|
|
public SerializedLowResTransparencySettings lowresTransparentSettings;
|
|
public SerializedXRSettings xrSettings;
|
|
public SerializedPostProcessingQualitySettings postProcessQualitySettings;
|
|
public SerializedLightingQualitySettings lightingQualitySettings;
|
|
public SerializedGPUResidentDrawerSettings gpuResidentDrawerSettings;
|
|
|
|
public SerializedLightSettings lightSettings;
|
|
public SerializedScalableSetting lodBias;
|
|
public SerializedScalableSetting maximumLODLevel;
|
|
|
|
#pragma warning disable 618 // Type or member is obsolete
|
|
[FormerlySerializedAs("enableUltraQualitySSS"), FormerlySerializedAs("increaseSssSampleCount"), Obsolete("For data migration")]
|
|
SerializedProperty m_ObsoleteincreaseSssSampleCount;
|
|
|
|
[FormerlySerializedAs("supportDitheringCrossFade"), Obsolete("Merged with LOD Quality Setting")]
|
|
private SerializedProperty m_ObsoleteSupportDitheringCrossFade;
|
|
#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));
|
|
sssDownsampleSteps = new SerializedScalableSetting(root.Find((RenderPipelineSettings s) => s.sssDownsampleSteps));
|
|
supportVolumetrics = root.Find((RenderPipelineSettings s) => s.supportVolumetrics);
|
|
supportVolumetricClouds = root.Find((RenderPipelineSettings s) => s.supportVolumetricClouds);
|
|
|
|
// Water data
|
|
supportWater = root.Find((RenderPipelineSettings s) => s.supportWater);
|
|
waterSimulationResolution = root.Find((RenderPipelineSettings s) => s.waterSimulationResolution);
|
|
supportWaterDeformation = root.Find((RenderPipelineSettings s) => s.supportWaterDeformation);
|
|
deformationAtlasSize = root.Find((RenderPipelineSettings s) => s.deformationAtlasSize);
|
|
maximumDeformerCount = root.Find((RenderPipelineSettings s) => s.maximumDeformerCount);
|
|
supportWaterFoam = root.Find((RenderPipelineSettings s) => s.supportWaterFoam);
|
|
foamAtlasSize = root.Find((RenderPipelineSettings s) => s.foamAtlasSize);
|
|
supportWaterExclusion = root.Find((RenderPipelineSettings s) => s.supportWaterExclusion);
|
|
waterScriptInteractionsMode = root.Find((RenderPipelineSettings s) => s.waterScriptInteractionsMode);
|
|
waterFullCPUSimulation = root.Find((RenderPipelineSettings s) => s.waterFullCPUSimulation);
|
|
|
|
supportComputeThickness = root.Find((RenderPipelineSettings s) => s.supportComputeThickness);
|
|
computeThicknessResolution = root.Find((RenderPipelineSettings s) => s.computeThicknessResolution);
|
|
computeThicknessLayerMask = root.Find((RenderPipelineSettings s) => s.computeThicknessLayerMask);
|
|
|
|
supportLightLayers = root.Find((RenderPipelineSettings s) => s.supportLightLayers);
|
|
colorBufferFormat = root.Find((RenderPipelineSettings s) => s.colorBufferFormat);
|
|
customBufferFormat = root.Find((RenderPipelineSettings s) => s.customBufferFormat);
|
|
renderingLayerMaskBuffer = root.Find((RenderPipelineSettings s) => s.renderingLayerMaskBuffer);
|
|
supportCustomPass = root.Find((RenderPipelineSettings s) => s.supportCustomPass);
|
|
supportedLitShaderMode = root.Find((RenderPipelineSettings s) => s.supportedLitShaderMode);
|
|
planarReflectionResolution = new SerializedScalableSetting(root.Find((RenderPipelineSettings s) => s.planarReflectionResolution));
|
|
cubeReflectionResolution = new SerializedScalableSetting(root.Find((RenderPipelineSettings s) => s.cubeReflectionResolution));
|
|
|
|
supportDecals = root.Find((RenderPipelineSettings s) => s.supportDecals);
|
|
supportDecalLayers = root.Find((RenderPipelineSettings s) => s.supportDecalLayers);
|
|
supportSurfaceGradient = root.Find((RenderPipelineSettings s) => s.supportSurfaceGradient);
|
|
decalNormalBufferHP = root.Find((RenderPipelineSettings s) => s.decalNormalBufferHP);
|
|
MSAASampleCount = root.Find((RenderPipelineSettings s) => s.msaaSampleCount);
|
|
supportMotionVectors = root.Find((RenderPipelineSettings s) => s.supportMotionVectors);
|
|
supportRuntimeAOVAPI = root.Find((RenderPipelineSettings s) => s.supportRuntimeAOVAPI);
|
|
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);
|
|
lightProbeSystem = root.Find((RenderPipelineSettings s) => s.lightProbeSystem);
|
|
probeVolumeTextureSize = root.Find((RenderPipelineSettings s) => s.probeVolumeMemoryBudget);
|
|
supportProbeVolumeScenarios = root.Find((RenderPipelineSettings s) => s.supportProbeVolumeScenarios);
|
|
supportProbeVolumeScenarioBlending = root.Find((RenderPipelineSettings s) => s.supportProbeVolumeScenarioBlending);
|
|
probeVolumeBlendingTextureSize = root.Find((RenderPipelineSettings s) => s.probeVolumeBlendingMemoryBudget);
|
|
supportProbeVolumeGPUStreaming = root.Find((RenderPipelineSettings s) => s.supportProbeVolumeGPUStreaming);
|
|
supportProbeVolumeDiskStreaming = root.Find((RenderPipelineSettings s) => s.supportProbeVolumeDiskStreaming);
|
|
probeVolumeSHBands = root.Find((RenderPipelineSettings s) => s.probeVolumeSHBands);
|
|
supportRayTracing = root.Find((RenderPipelineSettings s) => s.supportRayTracing);
|
|
supportVFXRayTracing = root.Find((RenderPipelineSettings s) => s.supportVFXRayTracing);
|
|
supportedRayTracingMode = root.Find((RenderPipelineSettings s) => s.supportedRayTracingMode);
|
|
supportHighQualityLineRendering = root.Find((RenderPipelineSettings s) => s.supportHighQualityLineRendering);
|
|
highQualityLineRenderingMemoryBudget = root.Find((RenderPipelineSettings s) => s.highQualityLineRenderingMemoryBudget);
|
|
|
|
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));
|
|
|
|
supportScreenSpaceLensFlare = root.Find((RenderPipelineSettings s) => s.supportScreenSpaceLensFlare);
|
|
supportDataDrivenLensFlare = root.Find((RenderPipelineSettings s) => s.supportDataDrivenLensFlare);
|
|
|
|
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));
|
|
gpuResidentDrawerSettings = new SerializedGPUResidentDrawerSettings(root.Find((RenderPipelineSettings s) => s.gpuResidentDrawerSettings));
|
|
|
|
#pragma warning disable 618 // Type or member is obsolete
|
|
m_ObsoleteincreaseSssSampleCount = root.Find((RenderPipelineSettings s) => s.m_ObsoleteincreaseSssSampleCount);
|
|
m_ObsoleteSupportDitheringCrossFade = root.Find((RenderPipelineSettings s) => s.supportDitheringCrossFade);
|
|
#pragma warning restore 618
|
|
}
|
|
}
|
|
}
|