您好,欢迎来到Unity之家!   unity.jb51.net 
  • 首 页
  • 你问我答
  • 当前位置:首页 > 程序开发 > 开发经验 >
    Unity动态载入可执行代码方法
    时间:2015-02-25 08:54 来源:互联网 作者:网络 浏览:收藏 挑错 推荐 打印

    Unity动态载入可执行代码方法


    由于windows环境下的Unity编译脚本时,本质上还是生成.net程序集,而且其C#脚本编程其实就是.net C#语言编程。用Visual Studio 编写脚本工程是,我们可以直观地看到Unity工程所引用的程序集。

    Unity动态载入可执行代码方法

    既然能引用.net框架的程序集,自然也能引用我们自己编写的程序集吧。经过几次试验,终于获得成功,步骤如下:

    1、编写要引用的程序集

    我们几乎可以编写任何用途的程序集,就像用C#开发.net类库一样。不过需要注意的是,如果要编写从Unity继承的类(比如从MonoBehaviour派生的组件等等),则不能使用namespace,目前的Unity不支持,用了编译报错。

    虽然不能使用namespace,但我实际测试后发现若新项目中创建了与引用的程序集同名的类,Unity编译并不会报错,而且实际执行也很正常。由于没有介绍Unity内部如何编译的资料,我们还是尽量不要重名吧。

    2、将程序集DLL放置到目标Unity工程的Asset目录下

    虽 然可以用VisualStudio编写Unity代码,但实际上Unity生成游戏时还要自己再编译一遍。因此,在VS中的引用设置不能被Unity所使 用。我曾经尝试过把要引用的程序集放在GAC中也不行。正确的做法是把dll放在Asset下,Unity能很好地识别它。

    Unity动态载入可执行代码方法

    如果我们把组件编写在程序集中的话,展开程序集就能看到这些组件,甚至可以直接把它们拖动到GameObject中,很强大吧!

    3、在目标工程中添加引用,编写代码

    这个没什么好说的。

    4、测试通过,成功!

    由于可以方便地使用程序集,Unity给我们的项目开发提供了更大的灵活性,也更便于组织实施软件工程了。


    (责任编辑:雷霆风)
    免责声明:Unity之家部分内容来源于互联网,如有侵权,请联系我们,本站将立即进行处理。