public static void Initialize(bool createNewIvy) { Undo.ClearAll(); EditorApplication.playModeStateChanged += OnPlayModeStateChanged; ivyParametersGUI = ScriptableObject.CreateInstance <IvyParametersGUI>(); controller = ScriptableObject.CreateInstance <RealIvyProWindowController>(); controller.Init(instance, ivyParametersGUI); windowSkin = (GUISkin)AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath("b0545e8c97ca8684182a76c2fb22c7ff"), typeof(GUISkin)); downArrowTex = (Texture2D)AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath("8ee6aee77df7d3e4485148aa889f9b6b"), typeof(Texture2D)); materialTex = (Texture2D)AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath("eb3b714e29c31744888e1bc4bcfe23d6"), typeof(Texture2D)); leaveTex = (Texture2D)AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath("14bbaf6e0a8b00f4ea30434e5eeeaf8c"), typeof(Texture2D)); dropdownShadowTex = (Texture2D)AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath("9cd9a16c9e229684983f50ff07427219"), typeof(Texture2D)); presetTex = (Texture2D)AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath("9dd821bf05e345d4a8a501a8768c7144"), typeof(Texture2D)); infoTex = (Texture2D)AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath("d73d5146604f9594996de4e08eec4bdf"), typeof(Texture2D)); Undo.undoRedoPerformed += MyUndoCallback; IvyPreset defaultPresset = GetDefaultPreset(); if (realIvyProToolsWindow != null) { realIvyProToolsWindow.QuitWindow(); } CreateTools(); if (createNewIvy) { controller.CreateNewIvy(defaultPresset); ivyParametersGUI.CopyFrom(controller.infoPool.ivyParameters); } }
public void ModifyIvy(IvyInfo ivyInfo) { this.currentIvyInfo = ivyInfo; this.selectedPreset = ivyInfo.originalPreset; this.infoPool = ivyInfo.infoPool; this.infoPool.ivyContainer.ivyGO = ivyInfo.gameObject; this.mf = ivyInfo.meshFilter; this.mr = ivyInfo.meshRenderer; this.ivyGO = ivyInfo.gameObject; this.infoPool.growth.growing = false; this.infoPool.ivyParameters.branchesMaterial = this.mr.sharedMaterials[0]; ivyParametersGUI.CopyFrom(infoPool.ivyParameters); infoPool.meshBuilder.InitLeavesData(); }
private static void RefreshEditorValues() { ivyParametersGUI.CopyFrom(controller.infoPool.ivyParameters); }