本文内容主要翻译自下面这篇文章

https://unity3d.com/cn/learn/tutorials/topics/best-practices/guide-assetbundles-and-resources?playlist=30089  A guide to AssetBundles and Resources

第二部分 Resources文件夹

这部分讨论Resources系统。这个系统允许开发者在一个或者多个Resources目录里面存储Asset,并能够使用Resources API在运行时加载和卸载Objects。

1.1  Resources系统的最佳实践

最佳实践就是不要使用它。

这个强烈的建议理由如下:

  1. 使用Resources文件夹使得内存管理更加困难。
  2. 不正确的使用Resources文件夹会使得项目编译发布和发布后的应用程序启动时间变长。
  3. 随着Resources文件夹的增多,管理里面的Assets变得困难。
  4. Resources系统降低了发布平台独立的定制内容的能力,并且使得增量内容更新变得不可能。
  5. AssetBundle变量是unity的发布针对不同设备可定制内容的主要工具。

1.2  Resources系统的正确使用

Resources系统有两个特殊的使用案例而不与最佳实践相冲突

  1. Resources系统非常适于快速开发原型和实验,因为他非常简单易用。当项目推进到完整产品时,强烈建议排除掉Resources文件夹。
  2. Resources文件夹适合一些琐碎的资源,比如Resources文件夹里面的资源都是很小,或者整个项目生命周期都需要。这些内容都不需要打补丁。也即跨平台和设备时都不会变化。

适合第二种情况的例子比如有全局用的预制品,上面挂载一些单例MonoBehaviour脚本。或者是第三方配置资源,比如FaceBook App ID。

2.3  Resources序列化

当项目编译的时候所有Resources目录下的Asset都被序列化进一个文件。这个文件和AssetBundle一样也包含meta数据和索引信息。索引信息包含object名字到GUID和localID的查找树。也用来定位一个对象在文件内的字节偏移等信息。

查找树在大部分的平台上是平衡树。她的构造时间是O(Nlog(n)),n是Object数量。数量的增长造成加载时间不是线性增长。

当应用启动时,这个操作是不能跳过的。在很慢的移动设备上面初始化一个包含10000个资源的resource系统,可以观察到会消耗好多秒,虽然这些文件大部分都不需要加载到第一个关卡里面。

Unity AssetBundles and Resources指引 (二) Resources文件夹的更多相关文章

  1. Springboot 项目 无法读取resources下的mapper文件夹的.xml文件

    之前学习的时候遇到的一个问题 org.springframework.beans.factory.BeanCreationException: Error creating bean with nam ...

  2. Hadoop入门进阶步步高(二)-文件夹介绍

    二.Hadoop文件夹结构 这里重点介绍几个文件夹bin.conf及lib文件夹. 1.$HADOOP_HOME/bin文件夹 文件名 说明 hadoop 用于运行hadoop脚本命令,被hadoop ...

  3. Unity 需不需要再建Assets文件夹

    不需要,默认所有文件都是在Assets文件夹下创建的,看不到是因为设置了单栏模式,开启双栏模式就能看到了.

  4. Unity 特殊文件夹 Assets Resources StreamingAssets Editor Plugins......

    AssetsAssets文件夹是unity项目中放置游戏资源的主文件夹. 该文件夹中的内容将直接反应在编辑器的Project视口中.许多系统API基于该文件夹路径. ResourcesUnity允许你 ...

  5. 解决eclipse maven工程中src/main/resources目录下创建的文件夹所显示样式不是文件夹,而是"包"图标样式的问题

    参考:http://blog.csdn.net/luwei42768/article/details/72268246 eclipse项目中创建maven项目后,有时在执行命令maven update ...

  6. Unity 所有特殊文件夹

    1.Editor 2.Editor Default Resources Editor Default Resources注意中间是有空格的,它必须放在Project视图的根目录下,如果你想放在/xxx ...

  7. Unity3D_10_文件夹目录架构

    一:几个特殊文件夹介绍 1.Editor Editor文件夹可以在根目录下,也可以在子目录里,只要名子叫Editor就可以.比如目录:/xxx/xxx/Editor 和 /Editor 是一样的,无论 ...

  8. Android读取asserts和raw文件夹下的文件

    Android读取asserts和raw文件夹下的文件 经常需要用到读取“/res/raw”和"/asserts"文件夹下的文件,索性写成工具类方便以后使用. 一.raw文件夹下的 ...

  9. iOS创建、删除文件夹、获取沙盒路径

    1.获取沙盒路径 // 获取沙盒路径 NSString *documentsDirectory = [NSHomeDirectory() stringByAppendingPathComponent: ...

  10. CodeSmith使用总结--下拉列表和文件夹对话框属性

    上一篇有点短了,因为实在没有什么可说的,这一篇会多一点.O(∩_∩)O~ 一.下拉列表 关于如何在CodeSmith中创建一个下拉列表的属性框其实很简单,是要使用C#中的枚举就行了,看操作. 首先定义 ...

随机推荐

  1. row_number()over(order by id) SQL顺序排列

    select *,row_number()over(order by id) as number_id from [dbo].tb_pccw20140213

  2. 【Spring学习笔记-6】关于@Autowired与@Scope(BeanDefination.SCOPE_PROTOTYPE)

    当类被@Scope(BeanDefination.SCOPE_PROTOTYPE)修饰时,说明每次依赖注入时,都会产生新的对象,具体可参见文章:http://blog.csdn.net/gst6062 ...

  3. HDU2490 parade

    题目大意:一个n+1行m+1列的表格,每个格子两个数w和c,表示经过该格子的happy和体力消耗值tireness.现在从最下面任意处开始,可以向左向右向上走.但不能向下.每个格子不能经过两次.在每一 ...

  4. 报错:Caused by: java.io.FileNotFoundException: d:\youTemprepository\upload_77faffc1_1580a9240ca__8000_00000001.tmp (系统找不到指定的路径。)

    org.apache.commons.fileupload.FileUploadBase$IOFileUploadException: Processing of multipart/form-dat ...

  5. VirtualBox 下USB 设备加载的步骤及无法加载的解决办法

    1. 将u盘插入电脑,在windows能够识别后,进入VirtualBox的选定要加载的虚拟机,选择设置——>选择usb设备项 2. 选择右边的第一或者是第二个图标,增加一个新的筛选器,第一个图 ...

  6. SVN Server配置详解 及备份

    SVN简介和工作原理 subversion(简称svn)是近几年崛起的版本管理软件,是cvs的接班人,目前绝大多数开源软件都使用svn作为代码版本管理软件.Subversion支持linux和wind ...

  7. 正则表达式(BREs,EREs,PREs)差异比较

    我想各位也和我一样,再linux下使用grep,egrep, awk , sed, vi的搜索时,会经常搞不太清楚,哪此特殊字符得使用转义字符'\' ..   哪些不需要, grep与egrep的差异 ...

  8. C# Winform中WndProc 函数作用

    http://blog.csdn.net/xochenlin/article/details/4328954 C# Winform中WndProc 函数作用: 主要用在拦截并处理系统消息和自定义消息 ...

  9. 关于Linux中exec的一点心得

    最近在学习linux操作系统中的相关知识,在使用execlp系统调用时,发现了些有趣的东西. 首先,关于execlp函数的用法: int execlp(const char *file, const ...

  10. HDU 1506 Largest Rectangle in a Histogram set+二分

    Largest Rectangle in a Histogram Problem Description: A histogram is a polygon composed of a sequenc ...