public override void OnInspectorGUI() { //sky.Profile = EditorGUILayout.ObjectField("Profile", sky.Profile, typeof(JSkyProfile), false) as JSkyProfile; sky.Profile = JEditorCommon.ScriptableObjectField <JSkyProfile>("Profile", sky.Profile); profile = sky.Profile; if (sky.Profile == null) { return; } DrawSceneReferencesGUI(); EditorGUI.BeginChangeCheck(); DrawSkyGUI(); DrawStarsGUI(); DrawSunGUI(); DrawMoonGUI(); DrawHorizonCloudGUI(); DrawOverheadCloudGUI(); DrawDetailOverlayGUI(); DrawUtilitiesGUI(); if (EditorGUI.EndChangeCheck()) { profile.UpdateMaterialProperties(); } DrawAddDayNightCycleGUI(); }
private void DrawSunGUI() { string label = "Sun"; string id = "sun" + profile.GetInstanceID();; JEditorCommon.Foldout(label, false, id, () => { profile.EnableSun = EditorGUILayout.Toggle("Enable", profile.EnableSun); if (profile.EnableSun) { profile.UseBakedSun = EditorGUILayout.Toggle("Baked", profile.UseBakedSun); } if (profile.EnableSun && !profile.UseBakedSun) { profile.SunTexture = JEditorCommon.InlineTexture2DField("Texture", profile.SunTexture, -1); profile.SunColor = EditorGUILayout.ColorField(new GUIContent("Color"), profile.SunColor, true, true, true); profile.SunSize = EditorGUILayout.Slider("Size", profile.SunSize, 0f, 1f); profile.SunSoftEdge = EditorGUILayout.Slider("Soft Edge", profile.SunSoftEdge, 0f, 1f); profile.SunGlow = EditorGUILayout.Slider("Glow", profile.SunGlow, 0f, 1f); } if (profile.EnableSun && profile.UseBakedSun) { profile.SunCubemap = JEditorCommon.InlineCubemapField("Cubemap", profile.SunCubemap, -1); } if (profile.EnableSun) { profile.SunLightColor = EditorGUILayout.ColorField("Light Color", profile.SunLightColor); profile.SunLightIntensity = EditorGUILayout.FloatField("Light Intensity", profile.SunLightIntensity); } }); }
private void DrawOverheadCloudGUI() { string label = "Overhead Cloud"; string id = "overhead-cloud" + profile.GetInstanceID();; JEditorCommon.Foldout(label, false, id, () => { profile.EnableOverheadCloud = EditorGUILayout.Toggle("Enable", profile.EnableOverheadCloud); if (profile.EnableOverheadCloud) { profile.CustomCloudTexture = JEditorCommon.InlineTexture2DField("Texture", profile.CustomCloudTexture, -1); profile.OverheadCloudColor = ColorField("Color", profile.OverheadCloudColor, true, true, false, nameof(profile.OverheadCloudColor)); profile.OverheadCloudAltitude = FloatField("Altitude", profile.OverheadCloudAltitude, nameof(profile.OverheadCloudAltitude)); profile.OverheadCloudSize = FloatField("Size", profile.OverheadCloudSize, nameof(profile.OverheadCloudSize)); if (profile.AllowStepEffect) { profile.OverheadCloudStep = EditorGUILayout.IntField("Step", profile.OverheadCloudStep); } profile.OverheadCloudAnimationSpeed = FloatField("Animation Speed", profile.OverheadCloudAnimationSpeed, nameof(profile.OverheadCloudAnimationSpeed)); profile.OverheadCloudFlowDirectionX = Slider("Flow X", profile.OverheadCloudFlowDirectionX, -1, 1, nameof(profile.OverheadCloudFlowDirectionX)); profile.OverheadCloudFlowDirectionZ = Slider("Flow Z", profile.OverheadCloudFlowDirectionZ, -1, 1, nameof(profile.OverheadCloudFlowDirectionZ)); profile.OverheadCloudRemapMin = FloatField("Remap Min", profile.OverheadCloudRemapMin, nameof(profile.OverheadCloudRemapMin)); profile.OverheadCloudRemapMax = FloatField("Remap Max", profile.OverheadCloudRemapMax, nameof(profile.OverheadCloudRemapMax)); profile.OverheadCloudCastShadow = EditorGUILayout.Toggle("Cast Shadow (Experimental)", profile.OverheadCloudCastShadow); if (profile.OverheadCloudCastShadow) { profile.OverheadCloudShadowClipMask = EditorGUILayout.Slider("Clip Mask", profile.OverheadCloudShadowClipMask, 0f, 1f); } } }); }
private void DrawMoonGUI() { string label = "Moon"; string id = "moon" + instance.GetInstanceID();; JEditorCommon.Foldout(label, false, id, () => { instance.EnableMoon = EditorGUILayout.Toggle("Enable", instance.EnableMoon); if (instance.EnableMoon) { instance.UseBakedMoon = EditorGUILayout.Toggle("Baked", instance.UseBakedMoon); } if (instance.EnableMoon && !instance.UseBakedMoon) { instance.MoonTexture = JEditorCommon.InlineTexture2DField("Texture", instance.MoonTexture, -1); instance.MoonColor = EditorGUILayout.ColorField(new GUIContent("Color"), instance.MoonColor, true, true, true); instance.MoonSize = EditorGUILayout.Slider("Size", instance.MoonSize, 0f, 1f); instance.MoonSoftEdge = EditorGUILayout.Slider("Soft Edge", instance.MoonSoftEdge, 0f, 1f); instance.MoonGlow = EditorGUILayout.Slider("Glow", instance.MoonGlow, 0f, 1f); } if (instance.EnableMoon && instance.UseBakedMoon) { instance.MoonCubemap = JEditorCommon.InlineCubemapField("Cubemap", instance.MoonCubemap, -1); } if (instance.EnableMoon) { instance.MoonLightColor = EditorGUILayout.ColorField("Light Color", instance.MoonLightColor); instance.MoonLightIntensity = EditorGUILayout.FloatField("Light Intensity", instance.MoonLightIntensity); } }); }
public override void OnInspectorGUI() { sky.Profile = JEditorCommon.ScriptableObjectField <JSkyProfile>("Profile", sky.Profile); profile = sky.Profile; if (sky.Profile == null) { return; } dnc = sky.GetComponent <JDayNightCycle>(); DrawSceneReferencesGUI(); EditorGUI.BeginChangeCheck(); DrawSkyGUI(); DrawStarsGUI(); DrawSunGUI(); DrawMoonGUI(); DrawHorizonCloudGUI(); DrawOverheadCloudGUI(); DrawDetailOverlayGUI(); DrawUtilitiesGUI(); if (EditorGUI.EndChangeCheck()) { profile.UpdateMaterialProperties(); EditorUtility.SetDirty(sky); EditorUtility.SetDirty(profile); } DrawAddDayNightCycleGUI(); }
private void DrawMoonGUI() { string label = "Moon"; string id = "moon" + profile.GetInstanceID();; JEditorCommon.Foldout(label, false, id, () => { profile.EnableMoon = EditorGUILayout.Toggle("Enable", profile.EnableMoon); if (profile.EnableMoon) { profile.UseBakedMoon = EditorGUILayout.Toggle("Baked", profile.UseBakedMoon); } if (profile.EnableMoon && !profile.UseBakedMoon) { profile.MoonTexture = JEditorCommon.InlineTexture2DField("Texture", profile.MoonTexture, -1); profile.MoonColor = ColorField("Color", profile.MoonColor, true, true, true, nameof(profile.MoonColor)); profile.MoonSize = Slider("Size", profile.MoonSize, 0f, 1f, nameof(profile.MoonSize)); profile.MoonSoftEdge = Slider("Soft Edge", profile.MoonSoftEdge, 0f, 1f, nameof(profile.MoonSoftEdge)); profile.MoonGlow = Slider("Glow", profile.MoonGlow, 0f, 1f, nameof(profile.MoonGlow)); } if (profile.EnableMoon && profile.UseBakedMoon) { profile.MoonCubemap = JEditorCommon.InlineCubemapField("Cubemap", profile.MoonCubemap, -1); } if (profile.EnableMoon) { profile.MoonLightColor = ColorField("Light Color", profile.MoonLightColor, true, false, false, nameof(profile.MoonLightColor)); profile.MoonLightIntensity = FloatField("Light Intensity", profile.MoonLightIntensity, nameof(profile.MoonLightIntensity)); } }); }
public override void OnInspectorGUI() { cycle.Profile = JEditorCommon.ScriptableObjectField <JDayNightCycleProfile>("Profile", cycle.Profile); profile = cycle.Profile; if (cycle.Profile == null) { return; } DrawSceneReferencesGUI(); DrawTimeGUI(); EditorGUI.BeginChangeCheck(); DrawSkyGUI(); DrawStarsGUI(); DrawSunGUI(); DrawMoonGUI(); DrawHorizonCloudGUI(); DrawOverheadCloudGUI(); DrawDetailOverlayGUI(); DrawEnvironmentReflectionGUI(); if (EditorGUI.EndChangeCheck()) { EditorUtility.SetDirty(profile); } }
public static void ShowBusinessEmailEditor() { JEditorCommon.OpenEmailEditor( JCommon.BUSINESS_EMAIL, "[Jupiter] SHORT_MESSAGE_HERE", "YOUR_MESSAGE_IN_DETAIL"); }
public static void ShowSupportEmailEditor() { JEditorCommon.OpenEmailEditor( JCommon.SUPPORT_EMAIL, "[Jupiter] SHORT_QUESTION_HERE", "YOUR_QUESTION_IN_DETAIL"); }
private void DrawExportGUI() { string label = "Export"; string id = "export" + GetInstanceID(); JEditorCommon.Foldout(label, true, id, () => { CameraPosition = JEditorCommon.InlineVector3Field("Position", CameraPosition); CameraNearPlane = EditorGUILayout.FloatField("Near Plane", CameraNearPlane); CameraFarPlane = EditorGUILayout.FloatField("Far Plane", CameraFarPlane); CameraClearFlag = (CameraClearFlags)EditorGUILayout.EnumPopup("Clear Flags", CameraClearFlag); if (CameraClearFlag == CameraClearFlags.Color) { CameraBackgroundColor = EditorGUILayout.ColorField("Background Color", CameraBackgroundColor); } Resolution = EditorGUILayout.IntPopup("Resolution", Resolution, ResolutionLabels, ResolutionValues); ExportFaceTextures = EditorGUILayout.Toggle("Export Face Textures", ExportFaceTextures); string dir = Directory; JEditorCommon.BrowseFolder("Directory", ref dir); Directory = dir; GUI.enabled = !string.IsNullOrEmpty(Directory); if (GUILayout.Button("Export")) { Export(); } GUI.enabled = true; }); }
private void DrawUtilitiesGUI() { string label = "Utilities"; string id = "utilities" + profile.GetInstanceID();; JEditorCommon.Foldout(label, false, id, () => { profile.AllowStepEffect = EditorGUILayout.Toggle("Allow Step Effect", profile.AllowStepEffect); }); }
public static bool Foldout(string label, string prefkeys, bool defaultValue = true) { string prefKey = JEditorCommon.GetProjectRelatedEditorPrefsKey("foldout", prefkeys); bool expanded = EditorPrefs.GetBool(prefKey, defaultValue); expanded = EditorGUILayout.Foldout(expanded, label); EditorPrefs.SetBool(prefKey, expanded); return(expanded); }
private void DrawSceneReferencesGUI() { string label = "Scene References"; string id = "scene-ref" + cycle.GetInstanceID(); JEditorCommon.Foldout(label, false, id, () => { cycle.Sky = EditorGUILayout.ObjectField("Sky", cycle.Sky, typeof(JSky), true) as JSky; cycle.SunOrbitPivot = EditorGUILayout.ObjectField("Orbit Pivot", cycle.SunOrbitPivot, typeof(Transform), true) as Transform; }); }
private void DrawSceneReferencesGUI() { string label = "Scene References"; string id = "scene-references"; JEditorCommon.Foldout(label, false, id, () => { sky.SunLightSource = EditorGUILayout.ObjectField("Sun Light Source", sky.SunLightSource, typeof(Light), true) as Light; sky.MoonLightSource = EditorGUILayout.ObjectField("Moon Light Source", sky.MoonLightSource, typeof(Light), true) as Light; }); }
private void OnDisable() { EditorPrefs.SetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_POS_X), CameraPosition.x); EditorPrefs.SetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_POS_Y), CameraPosition.y); EditorPrefs.SetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_POS_Z), CameraPosition.z); EditorPrefs.SetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_NEAR_PLANE), CameraNearPlane); EditorPrefs.SetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_FAR_PLANE), CameraFarPlane); EditorPrefs.SetInt(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_CLEAR_FLAG), (int)CameraClearFlag); EditorPrefs.SetString(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_BG_COLOR), ColorUtility.ToHtmlStringRGB(CameraBackgroundColor)); EditorPrefs.SetInt(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, RESOLUTION), Resolution); EditorPrefs.SetBool(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, EXPORT_FACE_TEXTURES), ExportFaceTextures); EditorPrefs.SetString(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, DIRECTORY), Directory); }
private void DrawDetailOverlayGUI() { string label = "Detail Overlay"; string id = "detail-overlay" + profile.GetInstanceID(); JEditorCommon.Foldout(label, false, id, () => { DisplayAddedProperties("Detail Overlay"); if (GUILayout.Button("Add")) { DisplayAllPropertiesAsContext("Detail Overlay"); } }); }
private void DrawOverheadCloudGUI() { string label = "Overhead Cloud"; string id = "overhead-cloud" + profile.GetInstanceID(); JEditorCommon.Foldout(label, false, id, () => { DisplayAddedProperties("Overhead Cloud"); if (GUILayout.Button("Add")) { DisplayAllPropertiesAsContext("Overhead Cloud"); } }); }
private void DrawHorizonCloudGUI() { string label = "Horizon Cloud"; string id = "horizon-cloud" + instance.GetInstanceID(); JEditorCommon.Foldout(label, false, id, () => { DisplayAddedProperties("Horizon Cloud"); if (GUILayout.Button("Add")) { DisplayAllPropertiesAsContext("Horizon Cloud"); } }); }
private void DrawStarsGUI() { string label = "Stars"; string id = "stars" + profile.GetInstanceID(); JEditorCommon.Foldout(label, false, id, () => { DisplayAddedProperties("Stars"); if (GUILayout.Button("Add")) { DisplayAllPropertiesAsContext("Stars"); } }); }
private void DrawMoonGUI() { string label = "Moon"; string id = "moon" + instance.GetInstanceID(); JEditorCommon.Foldout(label, false, id, () => { DisplayAddedProperties("Moon"); if (GUILayout.Button("Add")) { DisplayAllPropertiesAsContext("Moon"); } }); }
private void DrawTimeGUI() { string label = "Time"; string id = "time" + cycle.GetInstanceID(); isTimeFoldoutExpanded = JEditorCommon.Foldout(label, false, id, () => { cycle.StartTime = EditorGUILayout.FloatField("Start Time", cycle.StartTime); cycle.TimeIncrement = EditorGUILayout.FloatField("Time Increment", cycle.TimeIncrement); GUI.enabled = !cycle.AutoTimeIncrement; cycle.Time = EditorGUILayout.Slider("Time", cycle.Time, 0f, 24f); GUI.enabled = true; cycle.AutoTimeIncrement = EditorGUILayout.Toggle("Auto", cycle.AutoTimeIncrement); }); }
private void DrawEnvironmentReflectionGUI() { string label = "Environment Reflection"; string id = "env-reflection"; JEditorCommon.Foldout(label, false, id, () => { cycle.ShouldUpdateEnvironmentReflection = EditorGUILayout.Toggle("Enable", cycle.ShouldUpdateEnvironmentReflection); if (cycle.ShouldUpdateEnvironmentReflection) { cycle.EnvironmentReflectionResolution = EditorGUILayout.IntPopup("Resolution", cycle.EnvironmentReflectionResolution, resolutionLabels, resolutionValues); cycle.EnvironmentReflectionTimeSlicingMode = (ReflectionProbeTimeSlicingMode)EditorGUILayout.EnumPopup("Time Slicing", cycle.EnvironmentReflectionTimeSlicingMode); EditorGUILayout.LabelField("Realtime Reflection Probe must be enabled in Quality Settings.", JEditorCommon.WordWrapItalicLabel); } }); }
private void DrawDetailOverlayGUI() { string label = "Detail Overlay"; string id = "detail-overlay" + profile.GetInstanceID();; JEditorCommon.Foldout(label, false, id, () => { profile.EnableDetailOverlay = EditorGUILayout.Toggle("Enable", profile.EnableDetailOverlay); if (profile.EnableDetailOverlay) { profile.DetailOverlayTintColor = ColorField("Color", profile.DetailOverlayTintColor, true, true, false, nameof(profile.DetailOverlayTintColor)); profile.DetailOverlayCubeMap = JEditorCommon.InlineCubemapField("Cubemap", profile.DetailOverlayCubeMap, -1); profile.DetailOverlayLayer = (JDetailOverlayLayer)EditorGUILayout.EnumPopup("Layer", profile.DetailOverlayLayer); profile.DetailOverlayRotationSpeed = FloatField("Rotation Speed", profile.DetailOverlayRotationSpeed, nameof(profile.DetailOverlayRotationSpeed)); } }); }
private void DrawRightPane() { Color separatorColor = JEditorCommon.boxBorderColor; JEditorCommon.DrawLine( new Vector2(RightPaneRect.min.x - 2, RightPaneRect.min.y - 2), new Vector2(RightPaneRect.min.x - 2, RightPaneRect.max.y), separatorColor); GUILayout.BeginArea(RightPaneRect); rightPaneScrollPos = EditorGUILayout.BeginScrollView(rightPaneScrollPos); OnRightPaneScrollViewGUI(); EditorGUILayout.EndScrollView(); GUILayout.EndArea(); }
private void DrawSkyGUI() { string label = "Sky"; string id = "sky" + instance.GetInstanceID();; JEditorCommon.Foldout(label, false, id, () => { instance.SkyColor = EditorGUILayout.ColorField("Sky Color", instance.SkyColor); instance.HorizonColor = EditorGUILayout.ColorField("Horizon Color", instance.HorizonColor); instance.GroundColor = EditorGUILayout.ColorField("Ground Color", instance.GroundColor); if (instance.AllowStepEffect) { instance.HorizonStep = EditorGUILayout.IntField("Horizon Step", instance.HorizonStep); } instance.HorizonExponent = EditorGUILayout.FloatField("Horizon Exponent", instance.HorizonExponent); instance.HorizonThickness = EditorGUILayout.Slider("Horizon Thickness", instance.HorizonThickness, 0f, 1f); }); }
private void OnEnable() { float x = EditorPrefs.GetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_POS_X), 0); float y = EditorPrefs.GetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_POS_Y), 0); float z = EditorPrefs.GetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_POS_Z), 0); CameraPosition = new Vector3(x, y, z); CameraNearPlane = EditorPrefs.GetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_NEAR_PLANE), 0); CameraFarPlane = EditorPrefs.GetFloat(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_FAR_PLANE), 1000); CameraClearFlag = (CameraClearFlags)EditorPrefs.GetInt(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_CLEAR_FLAG), 0); string htmlColor = EditorPrefs.GetString(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, CAM_BG_COLOR), "FFFFFF"); Color c = Color.white; ColorUtility.TryParseHtmlString("#" + htmlColor, out c); CameraBackgroundColor = c; Resolution = EditorPrefs.GetInt(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, RESOLUTION), 512); ExportFaceTextures = EditorPrefs.GetBool(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, EXPORT_FACE_TEXTURES), false); Directory = EditorPrefs.GetString(JEditorCommon.GetProjectRelatedEditorPrefsKey(PREF_PREFIX, DIRECTORY), "Assets/"); }
private void DrawAddDayNightCycleGUI() { JDayNightCycle cycle = sky.GetComponent <JDayNightCycle>(); if (cycle != null) { return; } string label = "Day Night Cycle"; string id = "day-night-cycle" + sky.GetInstanceID(); JEditorCommon.Foldout(label, false, id, () => { if (GUILayout.Button("Add Day Night Cycle")) { sky.gameObject.AddComponent <JDayNightCycle>(); } }); }
private void DrawMoonGUI() { string label = "Moon"; string id = "moon" + profile.GetInstanceID(); JEditorCommon.Foldout(label, false, id, () => { cycle.UseMoonPivot = EditorGUILayout.Toggle("Custom Pivot", cycle.UseMoonPivot); if (cycle.UseMoonPivot) { cycle.MoonOrbitPivot = EditorGUILayout.ObjectField("Pivot", cycle.MoonOrbitPivot, typeof(Transform), true) as Transform; } JEditorCommon.Separator(); DisplayAddedProperties("Moon"); if (GUILayout.Button("Add")) { DisplayAllPropertiesAsContext("Moon"); } }); }
private void DisplayAddedProperties(string group) { EditorGUI.indentLevel -= 1; JAnimatedProperty toRemoveProp = null; List <JAnimatedProperty> props = profile.AnimatedProperties.FindAll(p => p.DisplayName.StartsWith(group)); for (int i = 0; i < props.Count; ++i) { EditorGUILayout.BeginHorizontal(); JAnimatedProperty p = props[i]; if (GUILayout.Button("▬", EditorStyles.miniLabel, GUILayout.Width(12))) { toRemoveProp = p; } string itemLabel = p.DisplayName.Substring(p.DisplayName.IndexOf("/") + 1); itemLabel = ObjectNames.NicifyVariableName(itemLabel); if (p.CurveOrGradient == JCurveOrGradient.Curve) { p.Curve = EditorGUILayout.CurveField(itemLabel, p.Curve); } else { p.Gradient = EditorGUILayout.GradientField(itemLabel, p.Gradient); } EditorGUILayout.EndHorizontal(); } if (props.Count > 0) { JEditorCommon.Separator(); } if (toRemoveProp != null) { profile.AnimatedProperties.Remove(toRemoveProp); } EditorGUI.indentLevel += 1; }
private void DrawSkyGUI() { string label = "Sky"; string id = "sky" + profile.GetInstanceID();; JEditorCommon.Foldout(label, false, id, () => { profile.SkyColor = ColorField("Sky Color", profile.SkyColor, true, true, true, nameof(profile.SkyColor)); profile.HorizonColor = ColorField("Horizon Color", profile.HorizonColor, true, true, true, nameof(profile.HorizonColor)); profile.GroundColor = ColorField("Ground Color", profile.GroundColor, true, true, true, nameof(profile.GroundColor)); if (profile.AllowStepEffect) { profile.HorizonStep = EditorGUILayout.IntField("Horizon Step", profile.HorizonStep); } profile.HorizonExponent = FloatField("Horizon Exponent", profile.HorizonExponent, nameof(profile.HorizonExponent)); profile.HorizonThickness = Slider("Horizon Thickness", profile.HorizonThickness, 0f, 1f, nameof(profile.HorizonThickness)); profile.FogSyncOption = (JFogSyncOption)EditorGUILayout.EnumPopup("Fog Sync", profile.FogSyncOption); if (profile.FogSyncOption == JFogSyncOption.CustomColor) { profile.FogColor = ColorField("Fog Color", profile.FogColor, true, true, false, nameof(profile.FogColor)); } }); }