专栏首页游戏杂谈Unity中InitializeOnLoad属性的妙用

Unity中InitializeOnLoad属性的妙用

InitializeOnLoad 属性应用的对象是 静态构造函数,它可以保证在编辑器启动的时候调用此函数。根据这个特性,可以在编辑器中设置定期的回调(帧更新),来实现类似watchFile的功能。这里借助了EditorApplication类中的 update 委托,在编辑器运行时,它将每秒调用多次。

using UnityEditor;
using UnityEngine;

[InitializeOnLoad]
class MyClass
{
    static string strFilePath;
    static DateTime lastModifyTime;

    static MyClass ()
    {
        EditorApplication.update += Update;
    }

    static void Update ()
    {
        DateTime time = File.GetLastWriteTime(strFilePath);

        if (lastModifyTime == time) return;

        lastModifyTime = time;

        // todo...
    }
}

参考:http://docs.manew.com/Manual/RunningEditorCodeOnLaunch.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • TexturePacker压缩png的命令

    压缩png效果最好的当然是TinyPNG这种神器了,不过一般情况下TexturePacker压缩出来的也基本上能达到效果。

    meteoric
  • CURLcode的定义

    http://curl.haxx.se/libcurl/c/libcurl-errors.html

    meteoric
  • 《腾讯传》读书笔记

    马化腾:腾讯公司控股董事会主席兼首席执行官  许晨晔:腾讯公司首席信息官  张志东:2014年3月19日卸任首席技术官(CTO)  陈一丹:2013年3月21日...

    meteoric
  • SAS-你写的第一个程序是什么?[送给第一次使用的朋友]

    我感觉这是一个有趣的话题,可能每个人在SAS里面写的第一个程序已经不记得了~不过很多人都见过(学过C/Python/Java/C++/C#....等任何一门编程...

    Setup
  • Qt 学习之路 2(45):模型

    http://www.devbean.net/2013/02/qt-study-road-2-model/

    bear_fish
  • 微博话题爬取与存储分析(上)

    本文基于python以新浪微博为数据平台,从数据采集、关键字提取、数据存储三个角度,用最简单的策略来挖掘我们的“黄金”。

    伏草惟存
  • TexturePacker压缩png的命令

    压缩png效果最好的当然是TinyPNG这种神器了,不过一般情况下TexturePacker压缩出来的也基本上能达到效果。

    meteoric
  • 【Go 语言社区】Golang源码解读之map

    golang的map实现并不是像c++一样使用红黑树,而是使用了hashmap,用数组来实现。 详细的实现后续补充,这里先做个备忘。 在iterate整个map...

    李海彬
  • intel-hadoop/HiBench流程分析----以贝叶斯算法为例

    Hibench 包含9个典型的hadoop负载(micro benchmarks,hdfs benchmarks,web search bench marks,...

    用户1539362
  • 「参考架构模型」使用ArchiMate的参考企业架构模型

    在之前的Marc Lankhorst博客中,参考架构的价值得到了突出体现,包括原因和方式。在这篇博客中,我想深入一点,专注于我们(或我们中的一些人)熟悉的“产品...

    首席架构师智库

扫码关注云+社区

领取腾讯云代金券