unity脚本封装成dll
2017-05-24 16:40
609 查看
先申明一下这样做是有需要的。当我们需要把脚本提供给第三方使用,而又不希望对方看到具体的实现过程,这时候就需要将代码封装编译成dll文件,供第三方调用。或是多个项目都要用到同一个模块或同样的功能,则可以把该模块或是功能编译成dll,方便复用和维护。
一、先介绍使用MonoDevelop编译器,具体做法如下:
1.打开MonoDevelop,新建项目
填写项目名称和项目路径(项目名称的命名中不要有下划线这些特殊字符,否则可能会报错):
2.view—visual Design窗口,References右键Edit
添加被引用的dll文件
3.编辑或添加需要打包的脚本,此处搞一个简单脚本用来测试吧:
脚本要注意的是最好使用命名空间,避免调用时类名重名问题。
4.右键,旋转options
更改Target framework
这一步特别重要,不然打包的dll unity无法使用,因为framework不兼容。
5.右键,可以先clean再build,我习惯先clean。
6.去项目下面找到生成的dll包。
7.将这个包拖到unity的资源下面,写一个脚本简单测试一下:
二、手动编译成dll文件
执行下面命令
mcs -r:/Applications/Unity/Unity.app/Contents/Managed/UnityEngine.dll -target:library /Users/lpp/Projects/DllTEST/DllTEST/MyUtilities.cs
具体含义见官方文档 https://docs.unity3d.com/Manual/UsingDLL.html
一、先介绍使用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
具体含义见官方文档 https://docs.unity3d.com/Manual/UsingDLL.html
相关文章推荐
- 封装 UnityEngine.Debug.Log 为Dll ,游戏发布关闭 Log 减少性能消耗
- 如何将Unity中的脚本文件转为dll文件
- Unity调用自己封装的dll
- 如何将vbs脚本用VB封装为DLL,并在vbs脚本中调用
- Unity脚本引用原理,修复Unity脚本引用丢失,源码脚本与dll中的脚本引用互换 .
- Unity脚本引用原理,修复Unity脚本引用丢失,源码脚本与dll中的脚本引用互换
- 将Unity的脚本封装为dll文件(使用monodevelop编译器)
- 利用unity代码C#封装为dll的步骤分享
- Unity脚本引用原理,修复Unity脚本引用丢失,源码脚本与dll中的脚本引用互换 .
- Unity脚本引用原理,修复Unity脚本引用丢失,源码脚本与dll中的脚本引用互换
- Unity封装dll教程整理
- unity 脚本学习之常量 异常 修饰符 封装
- 封装 UnityEngine.Debug.Log 为Dll
- 将Unity的脚本封装为dll文件(使用monodevelop编译器)
- Unity3d 加载UnityEngine.UI.dll 失败导致 Prefab 上 脚本丢失
- Unity 3D学习---脚本属性封装、继承、方法隐藏
- CUDA: DLL封装调用
- Unity3D解构Unity的脚本物件模型
- ie打印错误:当前页的脚本发生错误,URL:res://C:\WINDOWS\SYSTEM\SHDOCLC.DLL/preview.dlg
- Unity的特殊文件夹及脚本编译顺序