Unity 特殊文件夹

文件夹名称
Assets资产
Editor编辑器
Editor default resources编辑器资源
Gizmos辅助图标
Plugins插件
Resources资源
Standard Assets标准资产
StreamingAssets流资产
PersistentDataPath持久数据

Editor 编辑器文件夹

这个文件夹是专门用来做编辑器级别功能的,比如一些辅助开发的插件,或者地图生成器、角色展示器等,这类功能都是在开发过程中使用的,不需要打包到游戏中。

Editor文件夹可以有多个,可以直接放在Assets文件夹下,也可以放在某个功能子文件夹下,官方说法是可在 Assets 文件夹中的任何位置添加多个 Editor 文件夹。应将 Editor 脚本放在 Editor 文件夹内或其中的子文件夹内。

使用 Editor 脚本中的 EditorGUIUtility.Load 函数可从 Editor 文件夹中的 Resources 文件夹加载资源。这些资源只能通过 Editor 脚本加载,并会从构建中剥离。

注意:如果脚本位于 Editor 文件夹中,Unity 不允许将派生自 MonoBehaviour 的组件分配给游戏对象。

Editor Default Resources

Editor 脚本可以使用通过 EditorGUIUtility.Load 函数按需加载的资源文件。此函数在名为 Editor Default Resources 的文件夹中查找资源文件。

只能有一个 Editor Default Resources 文件夹,且必须将其放在项目的根目录中;直接位于 Assets 文件夹中。将所需的资源文件放在此 Editor Default Resources 文件夹内或其中的子文件夹内。如果资源文件位于子文件夹中,请始终在传递给 EditorGUIUtility.Load 函数的路径中包含子文件夹路径。

StreamingAssets 流资源文件夹

这是一个只读、不可写的资源文件夹(在Assets中,需要自己创建),但是其中的文件不压缩也不加密,官方推荐使用Application.streamingAssetsPath来获得该文件夹的实际位置,其可以规避平台差异。

  • 对于Unity Editor,Windows平台,其等价于:Application.dataPath+"/StreamingAssets"
  • 对于macOS,其等价于:Application.dataPath+"/Resources/Data/StreamingAssets"
  • 对于ios平台,其等价于:Application.dataPath + "/Raw";
  • 对于android平台,其等价于:"jar:file://" + Application.dataPath + "!/assets/";

通常存放二进制文件、配置文件或文件型数据库。

Resources 资源文件夹

只读,其中的文件打包时会压缩加密,使用Resources.Load方法动态加载,一般放一些动态加载的模型资源Prefab、Object之类的,跟cocos的Resources是一样的。
这个文件夹好不好?好!但是该不该随便用呢?答案是不应该。

  1. 它使内存管理变得困难;
  2. 不恰当的使用Resource文件夹,会增加程序启动时间和打包时间;
  3. 降低了工程中的内容转换到特定平台的能力,使内容更新困难;
  4. 随着Resources文件夹数量的增加,对这些文件夹中的Assets的管理变得非常困难;
  5. 资源系统降低了项目向特定平台提供自定义内容的能力,并消除了增量内容升级的可能性;
  6. unity为了兼容所有平台,Resources文件下的资源使用的统一打包,这就会对资源的优化有一定的限制,比如说把图片放在Resource文件夹下,unity不会对这些图片做压缩,这无异是增加了包体大小。

Gizmos

Gizmos 允许将图形添加到 Scene 视图,以帮助可视化不可见的设计细节。Gizmos.DrawIcon 函数在场景中放置一个图标,作为特殊对象或位置的标记。必须将用于绘制此图标的图像文件放在名为 Gizmos 的文件夹中,这样才能被 DrawIcon 函数找到。

只能有一个 Gizmos 文件夹,且必须将其放在项目的根目录,直接位于 Assets 文件夹中。将所需的资源文件放在此 Gizmos 文件夹内或其中的子文件夹内。如果资源文件位于子文件夹中,请始终在传递给 Gizmos.DrawIcon 函数的路径中包含子文件夹路径。

Plugins

Plugins文件夹是用于存放第三方插件和库文件的文件夹。这些插件和库文件可以是由其他开发者创建的,用于扩展Unity的功能或提供特定的功能支持。

在Unity项目的根目录下,可以找到一个名为"Assets/Plugins"的文件夹。在这个文件夹中,可以放置编译后的插件文件,如C++编写的动态链接库(.dll文件)或其他平台特定的插件文件。

使用Plugins文件夹可以方便地将第三方插件和库文件与Unity项目集成在一起,并在项目中使用它们的功能。可以通过在Unity脚本中调用插件的API或使用插件提供的功能来实现这一点。

需要注意的是,Plugins文件夹中的插件文件需要按照Unity支持的平台进行编译,以确保在特定平台上能够正常工作。否则,在构建项目时可能会出现问题。

此外,Unity还提供了其他类型的插件文件夹,如"Editor"文件夹用于存放编辑器插件,"iOS"文件夹用于存放iOS平台相关的插件等。这些文件夹的作用和用法与Plugins文件夹类似,但是它们更加特定于不同的用途和平台。

Library 库文件夹

Unity把Asset下支持的资源导入成自身识别的格式,以及编译代码成为DLL文件都放在Library文件夹中。Unity编辑器自动生成Library文件夹并不会 自动删除 不需要的资源文件,当删除文件夹Assets的图片、音频资源的时候,并不会自动删除,而是保留,这就是为什么这个Library文件夹会越来越大的原因。

persistentDataPath 持久数据文件夹

所有平台可读可写(有人也称之为:持久化路径)。一般用于存放动态下载或者动态创建的文件,游戏中创建或者获取的文件都会放在这里(如热更资源或者保存为文件形式的用户数据)但是,此文件夹和StreamingAssets还有一个不同点:在Editor阶段是没有的, 等到手机安装App会自动生成.

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

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

相关文章

unity关于UI隐藏时性能问题

UI隐藏的方式: 1Activefalse: 最基础的隐藏UI的方式,性能开销最大的,内部会递归调用UI的子节点对其进行ActiveFalse;(最不推荐的一种方式) 2改Scale或者放到屏幕外: 这个在一些书上写的这种方式相较于active有优势…

Centos7.9部署Gitlab-ce-16.9

一、环境信息 软件/系统名称版本下载地址备注Centos77.9.2009https://mirrors.nju.edu.cn/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.isogitlab-cegitlab-ce-16.9.1https://mirror.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-16.9.1-ce.0.el7.x86_64.rpm…

使用Azure Devops Pipeline将Docker应用部署到你的Raspberry Pi上

文章目录 1. 添加树莓派到 Agent Pool1.1 添加pool1.2 添加agent 2. 将树莓派添加到 Deployment Pool2.1 添加pool2.2 添加target 3. 添加编译流水线3.1 添加编译命令3.2 配置触发器 4. 添加发布流水线4.1 添加命令行4.2 配置artifact和触发器 5. 完成 1. 添加树莓派到 Agent P…

从基础到进阶:利用EasyCVR安防视频汇聚平台实现高效视频监控系统的五步走

随着科技的飞速发展,视频监控技术在社会安全、企业管理、智慧城市构建等领域扮演着越来越重要的角色。一个高效智能的视频监控管理系统不仅能够提升监控效率,还能在预防犯罪、事故预警、数据分析等方面发挥巨大作用。 一、需求分析 在设计视频监控管理…

滑动窗口算法模板

这里摘抄《labuladong的算法小抄》中的一首小诗(东哥大才): 滑动窗口防滑记 链表子串数组题,用双指针别犹豫。双指针家三兄弟,各个都是万人迷。 快慢指针最神奇,链表操作无压力。归并排序找中点,链表成环搞判定。 …

如何自学SQL(从入门到精通)?

SQL语言对于各个数据库是通用的,学习SQL数据库语言是一个系统的过程,可以分为几个阶段:入门、进阶、实践和精通。 下面是一些建议,可以帮助你从入门到精通自学SQL: 1. 学习方法 a. 理解基本概念 数据库理论&#xf…

MinIO【部署 02】Linux集群版本及Windows单机版、单机多目录版、分布式版(cmd启动脚本及winsw脚本分享)

Linux集群版及Windows单机版分布式版 1.Linux集群版1.1 安装启动停止1.2 将MinIO添加到服务 2.Windows2.1 官网安装2.2 本地测试2.2.1 cmd启动脚本2.2.2 winsw脚本 3.总结 1.Linux集群版 官网下载地址 https://min.io/download#/linux; 官网安装文档 https://min.i…

rk3568 parameter.txt 添加自己的分区,或者去掉已有的分区

问题: 客户在 之前的核心板上 可以烧写自己的镜像,但是在最新的核心板上却烧写不上,新旧核心板 只是变了emmc , 由 江波龙 ------->星火。 分析: 客户的镜像的分区是经过自己的定制的,所以有可能 是 由…

iPhone 16预售已开,沙漠金色最抢手,喜提新机后别忘了这件事!

9月13日20点,iPhone 16系列正式开启官方预购。今年全新的iphone16不仅新增相机按钮和AI功能,还增加了沙漠金配色。“加量不加价”的iPhone 16系列开售依旧火爆,iPhone 16系列开售1分钟内,苹果官方网站一度被消费者买到崩&#xff…

P4779 【模板】单源最短路径(堆优化dijkstra)

堆优化dijkstra&#xff0c;时间复杂度&#xff0c;我个人写习惯的模版。 #include<bits/stdc.h> using namespace std; #define PII pair<int,int> #define fi first #define se second const int N2e510;int read(){int x0,f1;char chgetchar();while(!isdigit(…

html+css+js网页设计 旅游 龙门石窟4个页面

htmlcssjs网页设计 旅游 龙门石窟4个页面 网页作品代码简单&#xff0c;可使用任意HTML辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修改编辑等操作&#xff09;。 获取源码 1&#…

用Kimi输出流程图

1.输入 我希望设计一个ERP系统&#xff0c;请帮我简单列一个流程图&#xff0c;用mermaid输出2.输出

vue事件传参

只有事件没有其他参数时,直接使用参数e <script> export default {data() {return {count

深入理解Java虚拟机:Jvm总结-虚拟机字节码执行引擎

第八章 虚拟机字节码执行引擎 8.1 意义 不受物理条件制约地定制指令集与执行引擎的结构体系&#xff0c;能够执行那些不被硬件直接支持的指令集格式。输入的是字节码二进制流&#xff0c;处理过程是字节码解析执行的等效过程&#xff0c;输出的是执行结果 8.2 运行时栈帧结构…

git如何灵活切换本地账号对应远程github的两个账号

git如何灵活切换本地账号对应远程github的两个账号 问题&#xff1a; 有时候我们会同时维护两个github的账号里面的仓库内容&#xff0c;这时候本地git需要频繁的切换ssh&#xff0c;以方便灵活的与两个账号的仓库可以通信。这篇日记将阐述我是怎么解决这个问题的。1. 第一个账…

通过HTforWeb在ARMxy边缘计算网关上实现工业互联网

随着工业互联网技术的不断进步和发展&#xff0c;企业越来越重视通过数字化手段提高生产效率、降低成本并增强竞争力。ARMxy BL340系列作为一款高性能的工业级ARM嵌入式计算机&#xff0c;为实现这些目标提供了坚实的硬件基础。而HTforWeb作为一款专业的前端开发工具&#xff0…

神经网络学习笔记——如何设计、实现并训练一个标准的前馈神经网络

1.从零设计并训练一个神经网络https://www.bilibili.com/video/BV134421U77t/?spm_id_from333.337.search-card.all.click&vd_source0b1f472915ac9cb9cdccb8658d6c2e69 一、如何设计、实现并训练一个标准的前馈神经网络&#xff0c;用于手写数字图像的分类&#xff0c;重…

九、外观模式

外观模式&#xff08;Facade Pattern&#xff09;是一种结构型设计模式&#xff0c;有叫门面模式&#xff0c;它为一个复杂子系统提供一个简单的接口&#xff0c;隐藏系统的复杂性。通过使用外观模式&#xff0c;客户端可以更方便地和复杂的系统进行交互&#xff0c;而无需直接…

【Android】【Bug】Activity全屏(保留底部按钮)被打断变成非全屏了

问题 在Activity里面设置全屏显示(保留底部按钮的全屏)&#xff0c;刚开始的时候显示的也是全屏&#xff0c;但是在此页面进行一些操作之后&#xff0c;全屏变成非全屏了。 全屏设置方法 在 Activity 中的 onCreate 方法里&#xff0c;添加以下代码&#xff1a; Override p…

微信文件处理与命名机制分析(基于微信 8.0.50 版本)

微信文件处理与命名机制分析&#xff08;基于微信 8.0.50 版本&#xff09; 摘要 微信作为一款广泛使用的即时通讯工具&#xff0c;涉及图片、视频、文档等多种文件类型的传输与管理。本文基于微信 8.0.50 版本&#xff0c;探讨其对于图片、GIF、视频等文件的命名处理策略&am…