Unity程序集之间的引⽤关系
的Editor逻辑在⽣成的 dll 中将被剔除,编辑器下则不会有这个问题)。
实现
在本⽂,笔者将使⽤这篇⽂章⾥⾯的事件系统来做个简单的讲解:
⾸先,到你需要单独打包Dll的⽂件夹,创建Assembly Definition,写⼀个⾼Bigger的名称。
Ardez.event.utilityBigger该够了
然后,你的Unity右下⾓菊花开始转动,嗯,在这⼀步Unity就已经帮你把这个⼯具包(dll)打包好了,现在我们⼀起去看望看望她。unity3d入门
路径:⼯程根⽬录-Library-ScriptAssemblies-你定义的名字.dll
最后,我们测试⼀下这个Dll好不好⽤,⾸先我运⾏⼀遍源码的事件系统,证明能正常⼯作,然后会删掉这个源码并使⽤dll替换。
cool! 运⾏正常,⼯具封装成功咯
结论,完美运⾏,DLL⼯具封装成功,可以拷贝到其他⼯程⾥⾯⽤啦~
刚好讲到了DLL,笔者就顺势推荐⼀个反编译软件吧,如果还没⽤上的⼩伙伴就有福啦:
如果存在xml描述⽂件,熟悉的代码注释就回来了
扩展阅读
可能你需要升级Visual Studio Tools for Unity
为什么你定义的程序集不能引⽤⽤户脚本(Assembly-CSharp.dll)答案在第11楼
Unity 使⽤VisualStuido将C#脚本封装打包DLL使⽤ - 简书
写到最后:
这个Assembly Definition 的存在,使得每个功能块依存关系更加明确,功能块互相独⽴,如果我们把特殊的算法或者⼀些模块做成独⽴的dll拿来热更是不是很酷呢,这种由assembly definition 带来的热更便利,有兴趣的⼩伙伴可以研究下呢~
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论