Unity中程序集dll

news2024/11/27 11:31:40

一:前言

一个程序集由一个或多个文件组成,通常为扩展名.exe和.dll的文件称为程序集,.exe是静态的程序集,可以在.net下直接运行加载,因为exe中有一个main函数(入口函数),.dll是动态链接库,通过反射动态加载。程序集是一个AssemblyDefinitionFile.asmdef文件,它的内容是一个JSON格式的字段,创建之后,就可以打开直接编辑JSON
一个应用程序的结构从大到小排序是应用程序域(AppDomain)、程序集(Assembly),模块(Module),类型(Type),成员(EventInfo、FieldInfo、MethodInfo、PropertyInfo) 几个层次


二:程序集的好处

——脚本有改动时,Unity会重新编译当前程序集下所有脚本,过多脚本会导致编译时间冗长,对于大项目不友好,所以使用程序集可以减少代码编译的时间,使用程序集后每次脚本有修改后,只会重新编译当前脚本所属程序集下的所有脚本和引用此程序集的程序集下的所有脚本
——同一程序集内任何脚本都可相互访问引用,导致项目耦合度高,难以重构和优化改进代码
——可以设置程序集的目标平台,只在特定平台才会被编译


三:创建dll

默认普通文件夹下创建的脚本都打包进Assembly-CSharp.dll,Editor文件夹下创建的都打包进Assembly-CSharp-Editor.dll
同时也可以自己创建程序集,在某个目录下创建程序集,同级文件夹或子文件夹下的脚本都会打包进此dll中,注意同一个目录下只能有一个dll
程序集文件目录:Library—ScriptAssemblies

——Name:一个脚本属于哪个程序集只能通过此参数控制,修改程序集文件的名称没有作用
——Allow ‘unsafe’ code:如果程序集中使用了Unsafe关键字,需要勾选此选项,否则报错
——Auto Referenced:指定是否所有预定义程序集都引用此程序集
——No Engine References:启用此属性后,Unity在编译程序集时不会向UnityEditor或UnityEngine添加引用,适用于可以在Unity或其他平台的项目中通用的程序集
——Define Constrains:添加预定义宏,读取预定义宏之后才编译,可以不填
——Assembly Defintion References:程序集的引用


四:程序集的引用

例如脚本test1在A程序集中,脚本test2在B程序集中,在test2中无法访问到test1,需要将A程序集添加为B程序集的引用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1008818.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

安装配置 zookeeper(单机版)

目录 一 准备并解压安装包 二 修改zoo.cfg文件 三 创建相应两个目录 四 创建文件myid 五 修改环境变量 六 启动 zookeeper 一 准备并解压安装包 这里提供了网盘资源 http://链接: https://pan.baidu.com/s/1BybwSQ_tQUL23OI6AWxwFw?pwdd4cf 提取码: d4cf 这里的安装包是…

市面上的ipad国产触控笔怎么样?开学性价比高的电容笔测评

由于Apple Pencil的问世,成为了iPad的一款便携式的生产力配件,它的优点是,与iPad相结合的电容笔,可以让专业的画师在iPad上画画,并且可以画出不同粗细的线条,这对需要书写的学生来说,是非常有用…

解决 SQLyog 连接 MySQL8.0+ 报错:错误号码2058

文章目录 一、问题现象二、原因分析三、解决方案1. 方案1:更新SQLyog版本2. 方案2:修改用户的授权插件3. 方案3:修复my.cnf 或 my.ini配置文件 四、最后总结 本文将总结如何解决 SQLyog 连接 MySQL8.0 时报错:错误号码2058 一、问…

数据可视化大屏模板 | 保姆级使用教程

近来很多朋友私信咨询怎么下载使用数据可视化大屏模板,在这里就给大家做一个相对简单的教程总结。有需要的朋友记得先收藏保存,以便不时之需。 数据可视化大屏制作软件:奥威BI系统 数据可视化报表模板板块:模板秀 主要操作&…

uni-app:实现条件判断展示图片(函数判定+三目运算)

一、多条件判断&#xff08;通过函数进行图片展示&#xff09; 效果 代码 在data中定义图片信息和要传递的数据信息&#xff0c;在src中写入函数并携带要传递的数据&#xff0c;通过传递的数据在函数中进行判断&#xff0c;并返回对应的图片信息 <template><view&…

vue中转换base64文件数据后通过blob下载

可以看到这里我要转换的数据是content字段&#xff0c;即将base64文件数据转换后下载下来&#xff1a; downloadAttachment({ attachmentId: id }).then(({ data }) > {proxy.$modal.closeLoading();// atob先解码base64数据const raw window.atob(data.content);// 获取解…

亚马逊小类目排名怎么看?亚马逊小类目是什么意思?——站斧浏览器

亚马逊的产品分类结构被分为多个级别&#xff0c;包括大类目、小类目和子类目。本文介绍了亚马逊小类目排名查看方式。 亚马逊小类目排名怎么看&#xff1f; 小类目排名是亚马逊为每个小类目中的商品分配的销售排名。它反映了在该小类目中的销售表现&#xff0c;通常以数字形…

Python编程指南:利用HTTP和HTTPS适配器实现智能路由

嗨&#xff0c;爬虫大佬们&#xff01;今天我要为大家分享一篇关于如何利用HTTP和HTTPS适配器来实现智能路由的Python编程指南。在现代互联网应用中&#xff0c;路由功能起着至关重要的作用&#xff0c;而利用Python编程语言实现智能路由则可以为我们的应用带来更高的灵活性和性…

LeetCode-热题100-笔记-day28

98. 验证二叉搜索树https://leetcode.cn/problems/validate-binary-search-tree/ 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&#xff1a; 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点…

AI绘画:StableDiffusion实操教程-斗罗大陆-朱竹清(附高清图下载)

大家好&#xff0c;我是小梦&#xff0c;最近一直研究AI绘画。 不久前&#xff0c;我与大家分享了StableDiffusion的全面教程 然而&#xff0c;仍有些读者提出&#xff0c;虽然他们已经成功地安装了此工具&#xff0c;但生成的作品与我展示的相差较大。那么&#xff0c;如何缩…

TM1638的8个LED灯和8个数码管的使用

一、模块介绍 上图为使用的模块&#xff0c;顶部8个LED&#xff0c;8个数码管&#xff1b;中间TM1638芯片&#xff0c;右侧是8个二极管&#xff08;非发光二极管&#xff09;&#xff1b;最下方是8个按键。 电路图如下图所示 二、TM1638 1、数据传输格式 在传输数据时&#x…

Java“牵手”快手商品详情数据,快手商品详情接口,快手API接口申请指南

快手商城是快手小店平台和快手进口电商平台的公域导购场景&#xff0c;也是快手的在线购物平台。 用户打开快手APP后点击"商城"即可进入&#xff0c;在商城首页信息流、商城品类频道&#xff08;如女装、百货、家电频道等&#xff0c;其中&#xff0c;部分频道的商品…

如何用思维导图做笔记

思维导图是一个强大的学习工具&#xff0c;可以帮助我们更好地整理和梳理学习内容。好的笔记可以帮助我们在考试前夕事半功倍。大大提高效率。秒变学霸小达人。 今天我们就结合思维导图&#xff0c;告诉大家如何做出一份出色的思维导图笔记。 5R笔记法是一种用于学习和记笔记…

day6_C++

day6_C 模板 栈模板 队列思维导图 模板 栈 stack.h #ifndef STACK_H #define STACK_H#include <iostream> #include <cstring>using namespace std;#define MAX 5template<typename T> class Stack { public:/*构造函数*/Stack();/*拷贝构造函数*/Stack(co…

看板管理:以可视化方式确定任务优先级

确定工作的优先级是我们今天都要面对的挑战。若处理不当&#xff0c;我们就可能试图一心多用&#xff0c;从而严重损害工作效率。 使用看板方法来设定工作优先级是一种非常直观、快速的方法。 确定工作优先级的看板方法 看板工作流程管理方法的核心在于工作可视化。工作被划…

邀请函 | 什么是全协议存算一体化解决方案?

近日&#xff0c;趋动科技与 XSKY星辰天合联合推出了针对教育行业的全协议存算一体化解决方案&#xff0c;实现了最小规模&#xff08;3 节点&#xff09;的人工智能算力和存力资源池化的基础设施平台建设&#xff0c;帮助客户共享数据中心内所有服务器商的 GPU 算力以及存力&a…

不定积分的基本公式与换元积分法

不定积分的基本公式 不定积分的基本公式如下&#xff1a; 常数函数积分&#xff1a;∫0dxC。幂函数积分&#xff1a;∫x^α dx[x^(α1)]/(α1)C&#xff08;α≠-1&#xff09;。一次二项式积分&#xff1a;∫x/(abx)dx(bx-aln|abx|)/b^2C。二次二项式积分&#xff1a;∫x^2/(…

【小程序】基于SpringBoot开发的餐厅点餐系统

文章目录 系统介绍后端管理&#xff1a;微信小程序&#xff1a;功能展示 系统介绍 开发工具 IDEA、vscode、微信开发者工具 后台框架 SpringBoot 前端框架 vue、uniapp 后端管理&#xff1a; 管理员可以添加&#xff0c;修改&#xff0c;删除员工信息。 分类管理&#xff…

Python实现猎人猎物优化算法(HPO)优化Catboost分类模型(CatBoostClassifier算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 猎人猎物优化搜索算法(Hunter–prey optimizer, HPO)是由Naruei& Keynia于2022年提出的一种最新的…

AgentGPT:基于GPT-4的开源AI自动化机器人工具

【产品介绍】 AgentGPT是一个基于GPT-4的开源AI自动化机器人工具&#xff0c;可以让你在浏览器中配置和部署自主的 AI机器人。你可以给机器人设置一个名字和一个目标&#xff0c;然后点击部署按钮&#xff0c;就可以看到机器人进行的行为和输出&#xff0c;完全不需要人为干涉的…