个人开发测试

  • 关于
  • 历史项目
  • 游戏开发
    • 一些轮子
    • Unity
    • UnReal
    • Godot
    • 常用框架
  • 游戏设计
    • 游戏品类研究
    • 游戏心理学
    • 游戏杂谈
  • 计算机科学
    • 算法、数据结构
    • 图形学
    • 网络
    • 计算机语言
  • 留言板
  • 推荐
游戏开发/个人感悟/一些废话
  1. 首页
  2. 一些轮子
  3. 正文

[转]【开发轮子】记一次EditorWindow无法打开的问题

2022年4月14日 2974点热度 1人点赞 0条评论

遇到了相同的问题,记录一下。

Unity在Editor下可以编辑窗口,显示代码如下:

public class ToolWindow : EditorWindow 
{
    [MenuItem("Tool/Developer/DoWork")]
    static void InitWindow()
    {
        var window = EditorWindow.GetWindowWithRect<ToolWindow>(new Rect(150f, 100f, 800f, 600f));       
        window.autoRepaintOnSceneChange = false;
        window.Show(); 
    }
}

但是在一次代码修改后偶然发现该窗口无法再次打开,查了一下原因,应该是已经打开了,但是确实又没看到,后来发现左上角有个很小的东西。

目测应该是这里了,但是仍不知所云,重启Unity甚至重启电脑都没有用。后来查到一个可能是改动的代码有错导致显示出错之后,这样手动无法关闭,造成这个窗口一直是开着的,所以无论怎样,都无法打开。

一个处理的办法是将脚本删除,重新导入之后,就发现可以正常打开了。这里应该是Unity的一个坑,所以在发现脚本编译或者执行错误时,能不打开就先不打开,先处理掉错误之后,再打开,或者重新导入一次脚本。

注:EditorWindow是继承ScriptableObject,不能直接使用Application.DataPath在初始化路径变量,需要在OnEnable函数中使用Application.DataPath来初始化路径(参考官网中EditorWindow的生命周期)。这个脚本的错正是因为这样的使用所致,进而导致这个问题。

作者:Francis_Rose
链接:https://www.jianshu.com/p/c48ab3632111
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

标签: 游戏开发
最后更新:2022年5月26日

可以吃的妙脆角

平平无奇的游戏开发者

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

归档
  • 2024 年 2 月
  • 2023 年 9 月
  • 2023 年 8 月
  • 2023 年 7 月
  • 2023 年 1 月
  • 2022 年 11 月
  • 2022 年 9 月
  • 2022 年 6 月
  • 2022 年 5 月
  • 2022 年 4 月
  • 2022 年 3 月
  • 2022 年 2 月
  • 2022 年 1 月
  • 2021 年 4 月
  • 2020 年 11 月
  • 2020 年 9 月
  • 2020 年 8 月
  • 2020 年 7 月
  • 2020 年 4 月
分类
  • CSharp
  • Lua
  • NAS
  • Unity
  • 一些轮子
  • 历史项目
  • 尚未分类
  • 常用框架
  • 杂
  • 游戏品类研究
  • 游戏开发
  • 游戏杂谈
  • 游戏设计
  • 计算机科学
已阻挡的垃圾评论
3条垃圾评论已被Akismet阻挡

COPYRIGHT © 2022 XuYue. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

京ICP备2022001429号-1