栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

unity在play时自动保存

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

unity在play时自动保存

 在Assets/Editor新建AutoSaveOnRunMenuItem.cs

using UnityEngine;
using UnityEditor;
using UnityEditor.SceneManagement;

[InitializeOnLoad]
public class AutoSaveOnRunMenuItem
{
public const string MenuName = "Tools/Autosave On Run";
private static bool isToggled;

static AutoSaveOnRunMenuItem()
{
    EditorApplication.delayCall += () =>
    {
        isToggled = EditorPrefs.GetBool(MenuName, false);          
        UnityEditor.Menu.SetChecked(MenuName, isToggled);
        SetMode();
    };
}

[MenuItem(MenuName)]
private static void ToggleMode()
{
    isToggled = !isToggled;
    UnityEditor.Menu.SetChecked(MenuName, isToggled);
    EditorPrefs.SetBool(MenuName, isToggled);
    SetMode();
}

private static void SetMode()
{
    if(isToggled)
    {
        EditorApplication.playModeStateChanged += AutoSaveOnRun;
    }
    else
    {
        EditorApplication.playModeStateChanged -= AutoSaveOnRun;
    }
}

private static void AutoSaveOnRun(PlayModeStateChange state)
{
    if (EditorApplication.isPlayingOrWillChangePlaymode && !EditorApplication.isPlaying)
    {
        Debug.Log("Auto-Saving before entering Play mode");

        EditorSceneManager.SaveOpenScenes();
        AssetDatabase.SaveAssets();
    }
}
}

参考:We NEED Auto-save feature - Unity Forum

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/901882.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号