如果你不想编辑时就把这个脚本拖上物体,你可以用AddCommpent()方法在运行时动态添加对应脚本,完了后用Destroy()方法删除
DLL —— Dynamic Link Library(动态链接库文件),这里以Window平台为例。
Unity支持的两种语言生成的DLL库(C++、C#),这里以C#为例,C++网上可以搜索很详细的资料。
1) 添加引用关系
如果有对UnityEngine、UnityEditor的引用,需要先添加引用关系。
路径通常位于Unity安装目录下的Editor/Data/Managed路径下。
2) 生成DLL文件
建立项目时,选择“类库”。目标框架.Net Framework的版本,只能选择3.5及以下版本。
3) 在项目中引用DLL文件
Unity会自动加载相应的DLL文件,所以DLL文件只要存放于Assets目录下即可,当然为了统一管理,一般放在Plugins目录下。
这里有一个需要注意的点,如果DLL文件放在Editor下,那么只能是Editor目录下的C#文件才可以引用,如果想在项目运行时的C#中进行引用,那DLL文件就不能放在Editor目录下。以上目录只与名字相关,与层级无关,路径可以是Assets/a/b/c/d/e/../XX.DLL
放置好DLL后,注意刷新Visual Studio中的解决方案。
0人赞 添加讨论(0)
暂无评论 :)
请点击输入图片描述
啦啦啦
4楼 · 2021-05-08 14:11
托管代码是一microsoft的中间语言(IL),它不直接运行在机器上而是运行在.net的CLR中。IL被封装在一个叫程序集(assembly)的文件中,一般输出形式为.dll或.exe文件,程序集中包含了描述你所创建的类,方法和属性(例如安全需求)的所有元数据。
当程序集中某些方法被调用的时候,运行库把具体的方法编译成适合本地计算机运行的机械码。(这就是即时编译) 随着程序集的运行,运行库会持续地提供各种服务,例如自动垃圾回收、运行库类型检查和安全支持等。这些服务使得能编译成IL的源代码具有跨平台的特性。我们常用的C#只能编译成托管代码,而C++可以编译成托管代码和非托管代码。非托管代码就是直接编译成目标计算机的机器码。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)