public void OnEnable() { this.m_BakeSettings = new LightingWindowBakeSettings(); this.m_BakeSettings.OnEnable(); this.m_ShowOtherSettings = SessionState.GetBool("kShowOtherSettings", true); this.m_ShowDebugSettings = SessionState.GetBool("kShowDebugSettings", false); this.m_ShouldUpdateStatistics = SessionState.GetBool("kUpdateStatistics", false); }
public void OnEnable() { m_BakeSettings = new LightingWindowBakeSettings(); m_BakeSettings.OnEnable(); m_ShowWorkflowSettings = new SavedBool("LightingWindow.ShowWorkflowSettings", true); m_ShowProbeDebugSettings = new SavedBool("LightingWindow.ShowProbeDebugSettings", false); }
public void OnEnable() { m_BakeSettings = new LightingWindowBakeSettings(); m_BakeSettings.OnEnable(); InitLightmapSettings(); m_ShowOtherSettings = SessionState.GetBool(kShowOtherSettings, true); m_ShowDebugSettings = SessionState.GetBool(kShowDebugSettings, false); }
public void OnEnable() { m_BakeSettings = new LightingWindowBakeSettings(); m_BakeSettings.OnEnable(); InitLightmapSettings(); m_ShowOtherSettings = new SavedBool("LightingWindow.ShowOtherSettings", true); m_ShowDebugSettings = new SavedBool("LightingWindow.ShowDebugSettings", false); m_ShowProbeDebugSettings = new SavedBool("LightingWindow.ShowProbeDebugSettings", false); }
private void RealtimeLightingGUI() { if (SupportedRenderingFeatures.IsLightmapBakeTypeSupported(LightmapBakeType.Realtime)) { this.m_ShowRealtimeLightsSettings = EditorGUILayout.FoldoutTitlebar(this.m_ShowRealtimeLightsSettings, LightingWindowBakeSettings.Styles.RealtimeLightsLabel, true); if (this.m_ShowRealtimeLightsSettings) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(this.m_EnableRealtimeGI, LightingWindowBakeSettings.Styles.UseRealtimeGI, new GUILayoutOption[0]); if (this.m_EnableRealtimeGI.boolValue && LightingWindowBakeSettings.PlayerHasSM20Support()) { EditorGUILayout.HelpBox(LightingWindowBakeSettings.Styles.NoRealtimeGIInSM2AndGLES2.text, MessageType.Warning); } EditorGUI.indentLevel--; EditorGUILayout.Space(); } } }
public void OnEnable() { m_BakeSettings = new LightingWindowBakeSettings(); m_BakeSettings.OnEnable(); m_ShowWorkflowSettings = new SavedBool("LightingWindow.ShowWorkflowSettings", true); m_ShowProbeDebugSettings = new SavedBool("LightingWindow.ShowProbeDebugSettings", false); string configDeviceAndPlatform = EditorUserSettings.GetConfigValue("lightmappingDeviceAndPlatform"); if (configDeviceAndPlatform != null) { m_LightmapDeviceAndPlatform = Int32.Parse(configDeviceAndPlatform); } else { EditorUserSettings.SetConfigValue("lightmappingDeviceAndPlatform", "0"); } }
private static bool LightmapParametersGUI(SerializedProperty prop, GUIContent content) { EditorGUILayout.BeginHorizontal(new GUILayoutOption[0]); EditorGUIInternal.AssetPopup <LightmapParameters>(prop, content, "giparams", "Default-Medium"); string text = "Edit..."; if (LightingWindowBakeSettings.isBuiltIn(prop)) { text = "View"; } bool result = false; if (prop.objectReferenceValue == null) { using (new EditorGUI.DisabledScope(true)) { if (GUILayout.Button(text, EditorStyles.miniButton, new GUILayoutOption[] { GUILayout.ExpandWidth(false) })) { Selection.activeObject = null; result = true; } } } else if (GUILayout.Button(text, EditorStyles.miniButton, new GUILayoutOption[] { GUILayout.ExpandWidth(false) })) { Selection.activeObject = prop.objectReferenceValue; result = true; } EditorGUILayout.EndHorizontal(); return(result); }
private void GeneralLightmapSettingsGUI() { this.m_ShowGeneralLightmapSettings = EditorGUILayout.FoldoutTitlebar(this.m_ShowGeneralLightmapSettings, LightingWindowBakeSettings.Styles.GeneralLightmapLabel, true); if (this.m_ShowGeneralLightmapSettings) { EditorGUI.indentLevel++; using (new EditorGUI.DisabledScope(!LightModeUtil.Get().IsAnyGIEnabled())) { using (new EditorGUI.DisabledScope(!LightModeUtil.Get().AreBakedLightmapsEnabled())) { EditorGUILayout.PropertyField(this.m_BakeBackend, LightingWindowBakeSettings.Styles.BakeBackend, new GUILayoutOption[0]); if (LightmapEditorSettings.giBakeBackend == LightmapEditorSettings.GIBakeBackend.PathTracer) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(this.m_PVRCulling, LightingWindowBakeSettings.Styles.PVRCulling, new GUILayoutOption[0]); if (LightmapEditorSettings.giPathTracerSampling != LightmapEditorSettings.PathTracerSampling.Auto) { EditorGUILayout.PropertyField(this.m_PVRDirectSampleCount, LightingWindowBakeSettings.Styles.PVRDirectSampleCount, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_PVRSampleCount, LightingWindowBakeSettings.Styles.PVRIndirectSampleCount, new GUILayoutOption[0]); if (this.m_PVRSampleCount.intValue < 10 || this.m_PVRSampleCount.intValue > 100000) { this.m_PVRSampleCount.intValue = Math.Max(Math.Min(this.m_PVRSampleCount.intValue, 100000), 10); } } EditorGUILayout.IntPopup(this.m_PVRBounces, LightingWindowBakeSettings.Styles.BouncesStrings, LightingWindowBakeSettings.Styles.BouncesValues, LightingWindowBakeSettings.Styles.PVRBounces, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_PVRFilteringMode, LightingWindowBakeSettings.Styles.PVRFilteringMode, new GUILayoutOption[0]); if (this.m_PVRFilteringMode.enumValueIndex == 2) { EditorGUI.indentLevel++; GUILayout.BeginHorizontal(new GUILayoutOption[0]); EditorGUILayout.IntSlider(this.m_PVRFilteringGaussRadiusDirect, 0, 5, LightingWindowBakeSettings.Styles.PVRFilteringGaussRadiusDirect, new GUILayoutOption[0]); GUILayout.Label(" texels", LightingWindowBakeSettings.Styles.LabelStyle, new GUILayoutOption[0]); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(new GUILayoutOption[0]); EditorGUILayout.IntSlider(this.m_PVRFilteringGaussRadiusIndirect, 0, 5, LightingWindowBakeSettings.Styles.PVRFilteringGaussRadiusIndirect, new GUILayoutOption[0]); GUILayout.Label(" texels", LightingWindowBakeSettings.Styles.LabelStyle, new GUILayoutOption[0]); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(new GUILayoutOption[0]); EditorGUILayout.IntSlider(this.m_PVRFilteringGaussRadiusAO, 0, 5, LightingWindowBakeSettings.Styles.PVRFilteringGaussRadiusAO, new GUILayoutOption[0]); GUILayout.Label(" texels", LightingWindowBakeSettings.Styles.LabelStyle, new GUILayoutOption[0]); GUILayout.EndHorizontal(); EditorGUI.indentLevel--; } EditorGUILayout.HelpBox(LightingWindowBakeSettings.Styles.NoTransparencyAndLODInProgressive.text, MessageType.Warning); EditorGUI.indentLevel--; EditorGUILayout.Space(); } } using (new EditorGUI.DisabledScope(LightmapEditorSettings.giBakeBackend == LightmapEditorSettings.GIBakeBackend.PathTracer && !LightModeUtil.Get().IsRealtimeGIEnabled())) { LightingWindowBakeSettings.DrawResolutionField(this.m_Resolution, LightingWindowBakeSettings.Styles.IndirectResolution); } using (new EditorGUI.DisabledScope(!LightModeUtil.Get().AreBakedLightmapsEnabled())) { LightingWindowBakeSettings.DrawResolutionField(this.m_BakeResolution, LightingWindowBakeSettings.Styles.LightmapResolution); GUILayout.BeginHorizontal(new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_Padding, LightingWindowBakeSettings.Styles.Padding, new GUILayoutOption[0]); GUILayout.Label(" texels", LightingWindowBakeSettings.Styles.LabelStyle, new GUILayoutOption[0]); GUILayout.EndHorizontal(); EditorGUILayout.IntPopup(this.m_LightmapSize, LightingWindowBakeSettings.Styles.LightmapSizeStrings, LightingWindowBakeSettings.Styles.LightmapSizeValues, LightingWindowBakeSettings.Styles.LightmapSize, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_TextureCompression, LightingWindowBakeSettings.Styles.TextureCompression, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_AmbientOcclusion, LightingWindowBakeSettings.Styles.AmbientOcclusion, new GUILayoutOption[0]); if (this.m_AmbientOcclusion.boolValue) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(this.m_AOMaxDistance, LightingWindowBakeSettings.Styles.AOMaxDistance, new GUILayoutOption[0]); if (this.m_AOMaxDistance.floatValue < 0f) { this.m_AOMaxDistance.floatValue = 0f; } EditorGUILayout.Slider(this.m_CompAOExponent, 0f, 10f, LightingWindowBakeSettings.Styles.AmbientOcclusionContribution, new GUILayoutOption[0]); EditorGUILayout.Slider(this.m_CompAOExponentDirect, 0f, 10f, LightingWindowBakeSettings.Styles.AmbientOcclusionContributionDirect, new GUILayoutOption[0]); EditorGUI.indentLevel--; } if (LightmapEditorSettings.giBakeBackend == LightmapEditorSettings.GIBakeBackend.Radiosity) { EditorGUILayout.PropertyField(this.m_FinalGather, LightingWindowBakeSettings.Styles.FinalGather, new GUILayoutOption[0]); if (this.m_FinalGather.boolValue) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(this.m_FinalGatherRayCount, LightingWindowBakeSettings.Styles.FinalGatherRayCount, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_FinalGatherFiltering, LightingWindowBakeSettings.Styles.FinalGatherFiltering, new GUILayoutOption[0]); EditorGUI.indentLevel--; } } } EditorGUILayout.IntPopup(this.m_LightmapDirectionalMode, LightingWindowBakeSettings.Styles.LightmapDirectionalModeStrings, LightingWindowBakeSettings.Styles.LightmapDirectionalModeValues, LightingWindowBakeSettings.Styles.LightmapDirectionalMode, new GUILayoutOption[0]); if (this.m_LightmapDirectionalMode.intValue == 1) { EditorGUILayout.HelpBox(LightingWindowBakeSettings.Styles.NoDirectionalInSM2AndGLES2.text, MessageType.Warning); } EditorGUILayout.Slider(this.m_IndirectOutputScale, 0f, 5f, LightingWindowBakeSettings.Styles.IndirectOutputScale, new GUILayoutOption[0]); EditorGUILayout.Slider(this.m_AlbedoBoost, 1f, 10f, LightingWindowBakeSettings.Styles.AlbedoBoost, new GUILayoutOption[0]); if (LightingWindowBakeSettings.LightmapParametersGUI(this.m_LightmapParameters, LightingWindowBakeSettings.Styles.DefaultLightmapParameters)) { EditorWindow.FocusWindowIfItsOpen <InspectorWindow>(); } EditorGUI.indentLevel--; EditorGUILayout.Space(); } } }
private void GeneralLightmapSettingsGUI() { bool flag = SupportedRenderingFeatures.IsLightmapBakeTypeSupported(LightmapBakeType.Baked); if (flag || SupportedRenderingFeatures.IsLightmapBakeTypeSupported(LightmapBakeType.Realtime)) { this.m_ShowGeneralLightmapSettings = EditorGUILayout.FoldoutTitlebar(this.m_ShowGeneralLightmapSettings, LightingWindowBakeSettings.Styles.GeneralLightmapLabel, true); if (this.m_ShowGeneralLightmapSettings) { EditorGUI.indentLevel++; using (new EditorGUI.DisabledScope(!this.m_EnabledBakedGI.boolValue && !this.m_EnableRealtimeGI.boolValue)) { if (flag) { using (new EditorGUI.DisabledScope(!this.m_EnabledBakedGI.boolValue)) { EditorGUI.BeginChangeCheck(); EditorGUILayout.PropertyField(this.m_BakeBackend, LightingWindowBakeSettings.Styles.BakeBackend, new GUILayoutOption[0]); if (EditorGUI.EndChangeCheck()) { InspectorWindow.RepaintAllInspectors(); } if (LightmapEditorSettings.lightmapper == LightmapEditorSettings.Lightmapper.PathTracer) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(this.m_PVRCulling, LightingWindowBakeSettings.Styles.PVRCulling, new GUILayoutOption[0]); if (LightmapEditorSettings.sampling != LightmapEditorSettings.Sampling.Auto) { EditorGUILayout.PropertyField(this.m_PVRDirectSampleCount, LightingWindowBakeSettings.Styles.PVRDirectSampleCount, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_PVRSampleCount, LightingWindowBakeSettings.Styles.PVRIndirectSampleCount, new GUILayoutOption[0]); if (this.m_PVRSampleCount.intValue < 10 || this.m_PVRSampleCount.intValue > 100000) { this.m_PVRSampleCount.intValue = Math.Max(Math.Min(this.m_PVRSampleCount.intValue, 100000), 10); } } EditorGUILayout.IntPopup(this.m_PVRBounces, LightingWindowBakeSettings.Styles.BouncesStrings, LightingWindowBakeSettings.Styles.BouncesValues, LightingWindowBakeSettings.Styles.PVRBounces, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_PVRFilteringMode, LightingWindowBakeSettings.Styles.PVRFilteringMode, new GUILayoutOption[0]); if (this.m_PVRFilteringMode.enumValueIndex == 2) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(this.m_PVRFilterTypeDirect, LightingWindowBakeSettings.Styles.PVRFilterTypeDirect, new GUILayoutOption[0]); LightingWindowBakeSettings.DrawFilterSettingField(this.m_PVRFilteringGaussRadiusDirect, this.m_PVRFilteringAtrousPositionSigmaDirect, LightingWindowBakeSettings.Styles.PVRFilteringGaussRadiusDirect, LightingWindowBakeSettings.Styles.PVRFilteringAtrousPositionSigmaDirect, LightmapEditorSettings.filterTypeDirect); EditorGUILayout.Space(); EditorGUILayout.PropertyField(this.m_PVRFilterTypeIndirect, LightingWindowBakeSettings.Styles.PVRFilterTypeIndirect, new GUILayoutOption[0]); LightingWindowBakeSettings.DrawFilterSettingField(this.m_PVRFilteringGaussRadiusIndirect, this.m_PVRFilteringAtrousPositionSigmaIndirect, LightingWindowBakeSettings.Styles.PVRFilteringGaussRadiusIndirect, LightingWindowBakeSettings.Styles.PVRFilteringAtrousPositionSigmaIndirect, LightmapEditorSettings.filterTypeIndirect); using (new EditorGUI.DisabledScope(!this.m_AmbientOcclusion.boolValue)) { EditorGUILayout.Space(); EditorGUILayout.PropertyField(this.m_PVRFilterTypeAO, LightingWindowBakeSettings.Styles.PVRFilterTypeAO, new GUILayoutOption[0]); LightingWindowBakeSettings.DrawFilterSettingField(this.m_PVRFilteringGaussRadiusAO, this.m_PVRFilteringAtrousPositionSigmaAO, LightingWindowBakeSettings.Styles.PVRFilteringGaussRadiusAO, LightingWindowBakeSettings.Styles.PVRFilteringAtrousPositionSigmaAO, LightmapEditorSettings.filterTypeAO); } EditorGUI.indentLevel--; } EditorGUI.indentLevel--; EditorGUILayout.Space(); } } } using (new EditorGUI.DisabledScope(LightmapEditorSettings.lightmapper == LightmapEditorSettings.Lightmapper.PathTracer && !this.m_EnableRealtimeGI.boolValue)) { LightingWindowBakeSettings.DrawResolutionField(this.m_Resolution, LightingWindowBakeSettings.Styles.IndirectResolution); } if (flag) { using (new EditorGUI.DisabledScope(!this.m_EnabledBakedGI.boolValue)) { LightingWindowBakeSettings.DrawResolutionField(this.m_BakeResolution, LightingWindowBakeSettings.Styles.LightmapResolution); GUILayout.BeginHorizontal(new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_Padding, LightingWindowBakeSettings.Styles.Padding, new GUILayoutOption[0]); GUILayout.Label(" texels", LightingWindowBakeSettings.Styles.LabelStyle, new GUILayoutOption[0]); GUILayout.EndHorizontal(); EditorGUILayout.IntPopup(this.m_LightmapSize, LightingWindowBakeSettings.Styles.LightmapSizeStrings, LightingWindowBakeSettings.Styles.LightmapSizeValues, LightingWindowBakeSettings.Styles.LightmapSize, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_TextureCompression, LightingWindowBakeSettings.Styles.TextureCompression, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_AmbientOcclusion, LightingWindowBakeSettings.Styles.AmbientOcclusion, new GUILayoutOption[0]); if (this.m_AmbientOcclusion.boolValue) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(this.m_AOMaxDistance, LightingWindowBakeSettings.Styles.AOMaxDistance, new GUILayoutOption[0]); if (this.m_AOMaxDistance.floatValue < 0f) { this.m_AOMaxDistance.floatValue = 0f; } EditorGUILayout.Slider(this.m_CompAOExponent, 0f, 10f, LightingWindowBakeSettings.Styles.AmbientOcclusionContribution, new GUILayoutOption[0]); EditorGUILayout.Slider(this.m_CompAOExponentDirect, 0f, 10f, LightingWindowBakeSettings.Styles.AmbientOcclusionContributionDirect, new GUILayoutOption[0]); EditorGUI.indentLevel--; } if (LightmapEditorSettings.lightmapper == LightmapEditorSettings.Lightmapper.Radiosity) { EditorGUILayout.PropertyField(this.m_FinalGather, LightingWindowBakeSettings.Styles.FinalGather, new GUILayoutOption[0]); if (this.m_FinalGather.boolValue) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(this.m_FinalGatherRayCount, LightingWindowBakeSettings.Styles.FinalGatherRayCount, new GUILayoutOption[0]); EditorGUILayout.PropertyField(this.m_FinalGatherFiltering, LightingWindowBakeSettings.Styles.FinalGatherFiltering, new GUILayoutOption[0]); EditorGUI.indentLevel--; } } } } bool flag2 = SupportedRenderingFeatures.IsLightmapsModeSupported(LightmapsMode.CombinedDirectional); if (flag2 || this.m_LightmapDirectionalMode.intValue == 1) { EditorGUILayout.IntPopup(this.m_LightmapDirectionalMode, LightingWindowBakeSettings.Styles.LightmapDirectionalModeStrings, LightingWindowBakeSettings.Styles.LightmapDirectionalModeValues, LightingWindowBakeSettings.Styles.LightmapDirectionalMode, new GUILayoutOption[0]); if (!flag2) { EditorGUILayout.HelpBox("Directional Mode is not supported. Fallback will be Non-Directional.", MessageType.Warning); } } else { using (new EditorGUI.DisabledScope(true)) { EditorGUILayout.IntPopup(LightingWindowBakeSettings.Styles.LightmapDirectionalMode, 0, LightingWindowBakeSettings.Styles.LightmapDirectionalModeStrings, LightingWindowBakeSettings.Styles.LightmapDirectionalModeValues, new GUILayoutOption[0]); } } EditorGUILayout.Slider(this.m_IndirectOutputScale, 0f, 5f, LightingWindowBakeSettings.Styles.IndirectOutputScale, new GUILayoutOption[0]); EditorGUILayout.Slider(this.m_AlbedoBoost, 1f, 10f, LightingWindowBakeSettings.Styles.AlbedoBoost, new GUILayoutOption[0]); if (LightingWindowBakeSettings.LightmapParametersGUI(this.m_LightmapParameters, LightingWindowBakeSettings.Styles.DefaultLightmapParameters)) { EditorWindow.FocusWindowIfItsOpen <InspectorWindow>(); } EditorGUI.indentLevel--; EditorGUILayout.Space(); } } } }