// Windowが有効化されたとき // フォーカスが外れて戻ってきたときや再度開かれたときなど void OnEnable() { if (config == null) { // 読み込む config = MMD.Config.LoadAndCreate(); } }
/// <summary> /// Config.assetを読み込みます。なかったら作ります。 /// </summary> /// <returns>読み込んで生成したConfigオブジェクト</returns> public static Config LoadAndCreate() { if (config_ == null) { var path = Config.GetConfigPath(); config_ = (Config)AssetDatabase.LoadAssetAtPath(path, typeof(Config)); //// なかったら作成する if (config_ == null) { config_ = CreateInstance<Config>(); AssetDatabase.CreateAsset(config_, path); EditorUtility.SetDirty(config_); } } return config_; }
// Windowが有効化されたとき // フォーカスが外れて戻ってきたときや再度開かれたときなど void OnEnable() { // オブジェクトを「Hierarchy」に表示しない。また、アセットの中にあれば、プロジェクトビューに表示しない // オブジェクトがシーンに保存されない。また、新しいシーンを読んでも、オブジェクトが破棄されない hideFlags = HideFlags.HideAndDontSave; if (config == null) { // 読み込む config = MMD.Config.LoadAndCreate(); // なかったら作成する if (config == null) { path = MMD.Config.GetConfigPath(); config = CreateInstance<Config>(); AssetDatabase.CreateAsset(config, path); EditorUtility.SetDirty(config); } } }