private void OnGUI() { if (m_window == null) { m_window = GetWindow(); return; } else { m_winWidth = m_window.position.width; m_winHeight = m_window.position.height; RenderOptions(); } if (!EditorFileManager.DataFileExist(m_colorSchemeFileName)) { LoadDefaultColorSchemes(); SaveColorSchemes(); } else if (EditorFileManager.DataFileExist(m_colorSchemeFileName) && !m_colorSchemesLoaded) { LoadColorSchemes(); } if (!EditorFileManager.DataFileExist(m_activeColorSchemeFileName)) { m_selectedColorSchemeType = m_defaultColorSchemeType; SaveActiveColorScheme(); } else if (EditorFileManager.DataFileExist(m_activeColorSchemeFileName) && !m_colorSchemeConfigurationLoaded) { LoadActiveColorScheme(); } }
private void LoadColorSchemes() { if (!EditorFileManager.DataFileExist(m_colorSchemeFileName)) { return; } string data = EditorFileManager.ReadDataFile(m_colorSchemeFileName); Dictionary <string, object> deserializedData = MiniJSON.Json.Deserialize(data) as Dictionary <string, object>; foreach (EEditorColorSchemes colorSchemeType in Enum.GetValues(typeof(EEditorColorSchemes))) { Dictionary <string, object> colorSchemeData = deserializedData["ColorScheme-" + colorSchemeType.ToString()] as Dictionary <string, object>; if (colorSchemeType == EEditorColorSchemes.Ocean) { m_colorSchemeOcean = new EditorColorScheme(colorSchemeData); } else if (colorSchemeType == EEditorColorSchemes.Dark) { m_colorSchemeDark = new EditorColorScheme(colorSchemeData); } else if (colorSchemeType == EEditorColorSchemes.Light) { m_colorSchemeLight = new EditorColorScheme(colorSchemeData); } } m_colorSchemesLoaded = true; Debug.Log("Color Schemes Loaded - Ocean: " + m_colorSchemeOcean + " \n\nDark: " + m_colorSchemeDark + " \n\nLight " + m_colorSchemeLight); }
private static void SaveActiveColorScheme() { Dictionary <string, object> activeColorScheme = new Dictionary <string, object>(); EditorColorScheme colorScheme = GetColorScheme(m_selectedColorSchemeType); activeColorScheme.Add("ActiveColorScheme", colorScheme.Serialize()); string serializedData = MiniJSON.Json.Serialize(activeColorScheme); EditorFileManager.RemoveDataFile(m_activeColorSchemeFileName); EditorFileManager.WriteJSONDataFile(serializedData, m_activeColorSchemeFileName); Debug.Log("Active Color Scheme Configuration " + m_selectedColorSchemeType + " saved!"); }
public static void MapTexturesToMaterials() { // TODO: enable searching all materials and textures in the project var materials = EditorFileManager.LoadAssetsAtPath <Material>(materialsPath); var textures = EditorFileManager.LoadAssetsAtPath <Texture>(texturesPath); foreach (var material in materials) { links.ForEach(link => TryMapTexture(material, textures, link.textureKeyword, link.texturePropertyName)); // TODO: if cannot find a normal map with string matching, compare the type? } }
private static void SaveColorSchemes() { Dictionary <string, object> colorSchemes = new Dictionary <string, object>(); foreach (EEditorColorSchemes colorSchemeType in Enum.GetValues(typeof(EEditorColorSchemes))) { EditorColorScheme colorScheme = GetColorScheme(colorSchemeType); colorSchemes.Add("ColorScheme-" + colorSchemeType.ToString(), colorScheme.Serialize()); } string serializedData = MiniJSON.Json.Serialize(colorSchemes); EditorFileManager.RemoveDataFile(m_colorSchemeFileName); EditorFileManager.WriteJSONDataFile(serializedData, m_colorSchemeFileName); }
private static void LoadActiveColorScheme() { if (!EditorFileManager.DataFileExist(m_activeColorSchemeFileName)) { return; } string data = EditorFileManager.ReadDataFile(m_activeColorSchemeFileName); Dictionary <string, object> deserializedData = MiniJSON.Json.Deserialize(data) as Dictionary <string, object>; Dictionary <string, object> colorSchemeData = deserializedData["ActiveColorScheme"] as Dictionary <string, object>; m_activeColorScheme = new EditorColorScheme(colorSchemeData); m_selectedColorSchemeType = m_activeColorScheme.Type; Debug.Log("Loaded Color Scheme Configuration: " + m_activeColorScheme); m_colorSchemeConfigurationLoaded = true; }