unity脚本封装成dll
先申明一下这样做是有需要的。当我们需要把脚本提供给第三方使用,而又不希望对方看到具体的实现过程,这时候就需要将代码封装编译成dll文件,供第三方调用。或是多个项目都要用到同一个模块或同样的功能,则可以把该模块或是功能编译成dll,方便复用和维护。
一、先介绍使用MonoDevelop编译器,具体做法如下:
1.打开MonoDevelop,新建项目
填写项目名称和项目路径(项目名称的命名中不要有下划线这些特殊字符,否则可能会报错):
2.view—visual Design窗口,References右键Edit
添加被引用的dll文件
3.编辑或添加需要打包的脚本,此处搞一个简单脚本用来测试吧:
using System; using UnityEngine; namespace DellTest { public class MyClass { public MyClass () { Debug.Log ("test sucess"); } } }
脚本要注意的是最好使用命名空间,避免调用时类名重名问题。
4.右键,旋转options
更改Target framework
这一步特别重要,不然打包的dll unity无法使用,因为framework不兼容。
5.右键,可以先clean再build,我习惯先clean。
6.去项目下面找到生成的dll包。
7.将这个包拖到unity的资源下面,写一个脚本简单测试一下:
using UnityEngine; using DellTest; public class dlltest : MonoBehaviour { MyClass my = new MyClass(); }
二、手动编译成dll文件
执行下面命令
mcs -r:/Applications/Unity/Unity.app/Contents/Managed/UnityEngine.dll -target:library /Users/lpp/Projects/DllTEST/DllTEST/MyUtilities.cs