// The serialized property for color temperature is stored in the build-in light editor, and we need to use this object to apply the update. protected override void SetValueToPreset(SerializedProperty value, LightUnitSliderUIRange preset) { m_Settings.Update(); base.SetValueToPreset(value, preset); m_Settings.ApplyModifiedProperties(); }
/// <summary>Constructor</summary> /// <param name="serializedObject"><see cref="SerializedObject"/> with the light</param> /// <param name="settings"><see cref="LightEditor.Settings"/>with the settings</param> public UniversalRenderPipelineSerializedLight(SerializedObject serializedObject, LightEditor.Settings settings) { this.settings = settings; settings.OnEnable(); this.serializedObject = serializedObject; lightsAdditionalData = CoreEditorUtils .GetAdditionalData <UniversalAdditionalLightData>(serializedObject.targetObjects); serializedAdditionalDataObject = new SerializedObject(lightsAdditionalData); intensity = serializedObject.FindProperty("m_Intensity"); useAdditionalDataProp = serializedAdditionalDataObject.FindProperty("m_UsePipelineSettings"); additionalLightsShadowResolutionTierProp = serializedAdditionalDataObject.FindProperty("m_AdditionalLightsShadowResolutionTier"); lightLayerMask = serializedAdditionalDataObject.FindProperty("m_LightLayerMask"); customShadowLayers = serializedAdditionalDataObject.FindProperty("m_CustomShadowLayers"); shadowLayerMask = serializedAdditionalDataObject.FindProperty("m_ShadowLayerMask"); settings.ApplyModifiedProperties(); }
public void Apply() { serializedLightDatas.ApplyModifiedProperties(); serializedShadowDatas.ApplyModifiedProperties(); settings.ApplyModifiedProperties(); }