开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:1532

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 635|回复: 6

[成都大红花] Unity3D游戏开发之“Unity脚本编译完成事件监控”

[复制链接]  [移动端链接]
排名
2601
昨日变化
15

46

主题

149

帖子

1445

积分

Rank: 9Rank: 9Rank: 9

UID
135388
好友
12
蛮牛币
629
威望
0
注册时间
2016-1-22
在线时间
252 小时
最后登录
2017-1-19

专栏作家

发表于 2017-1-6 18:21:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
此事件的监控unity并没有提供现成的API,需要我们自己通过API组合去判断此事件。
此事件的监控需要我们配合UnityEditor.AssetPostprocessor中OnPostprocessAllAssets事件和EditorApplication.update事件一起使用。

我们可以通过这些事件的监控可以很清楚的知道操作的事件,从而根据自己的需求定制一些特殊的编辑器功能。

代码示例:代码放入Editor文件夹下
[C#] 纯文本查看 复制代码
[InitializeOnLoad]
public class UnityScripsCompiling : AssetPostprocessor {
    static UnityScripsCompiling() {
        EditorApplication.update += Update;
    }

    public static void OnPostprocessAllAssets(
    String[] importedAssets,
    String[] deletedAssets,
    String[] movedAssets,
    String[] movedFromAssetPaths) {
        List<string> importedKeys = new List<string>() { "Assets/Script" };
        for (int i = 0; i < importedAssets.Length; i++) {
            for (int j = 0; j < importedKeys.Count; j++) {
                if (importedAssets[i].Contains(importedKeys[j])) {
                    PlayerPrefs.SetInt("ImportScripts", 1);
                    return;
                }
            }
        }
    }

    private static void Update() {
        bool importScripts = Convert.ToBoolean(PlayerPrefs.GetInt("ImportScripts", 1));
        if (importScripts && !EditorApplication.isCompiling) {
            OnUnityScripsCompilingCompleted();
            importScripts = false;
            PlayerPrefs.SetInt("ImportScripts", 0);
            EditorApplication.update -= Update;
        }
    }

    private static void OnUnityScripsCompilingCompleted() {
        Debug.Log("Unity Scrips Compiling completed.");
    }
}







如果有什么问题请交流:

回复

使用道具 举报

4四处流浪
466/500
排名
6772
昨日变化
90

0

主题

262

帖子

466

积分

Rank: 4

UID
165382
好友
3
蛮牛币
149
威望
0
注册时间
2016-9-1
在线时间
92 小时
最后登录
2017-1-19
发表于 2017-1-7 10:00:02 | 显示全部楼层
楼主,已加群,等通过

回复 支持 反对

使用道具 举报

7日久生情
2644/5000
排名
74
昨日变化
1

0

主题

363

帖子

2644

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
239
好友
2
蛮牛币
4776
威望
0
注册时间
2013-6-6
在线时间
509 小时
最后登录
2017-1-19
发表于 2017-1-10 10:05:02 | 显示全部楼层
god!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

回复

使用道具 举报

排名
361
昨日变化

5

主题

356

帖子

2173

积分

Rank: 11Rank: 11Rank: 11Rank: 11Rank: 11

UID
31708
好友
2
蛮牛币
5263
威望
0
注册时间
2014-6-28
在线时间
617 小时
最后登录
2017-1-18

活力之星

QQ
发表于 2017-1-10 10:55:49 | 显示全部楼层
厉害~刚好有这个需求~

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1187/1500
排名
1143
昨日变化
3

0

主题

323

帖子

1187

积分

Rank: 6Rank: 6Rank: 6

UID
111260
好友
0
蛮牛币
3816
威望
0
注册时间
2015-6-30
在线时间
186 小时
最后登录
2017-1-19
发表于 2017-1-10 14:46:56 | 显示全部楼层
厉害~刚好有这个需求~

回复 支持 反对

使用道具 举报

4四处流浪
331/500
排名
5209
昨日变化
44

1

主题

46

帖子

331

积分

Rank: 4

UID
62951
好友
0
蛮牛币
400
威望
0
注册时间
2014-12-22
在线时间
120 小时
最后登录
2017-1-20
发表于 2017-1-10 15:32:41 | 显示全部楼层
感谢楼主分享

回复

使用道具 举报

2初来乍到
124/150
排名
10300
昨日变化
10

0

主题

39

帖子

124

积分

Rank: 2Rank: 2

UID
172630
好友
0
蛮牛币
135
威望
0
注册时间
2016-9-28
在线时间
33 小时
最后登录
2017-1-15
发表于 2017-1-11 22:50:52 | 显示全部楼层

厉害~厉害~厉害~厉害~
厉害~
厉害~

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 返回顶部 返回列表