下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

AssetBundle使用方案和策略

作者:匿名     来源: 游戏开发点击数:1702发布时间: 2021-10-19 17:39:41

标签: unity3d新系统的优点系统的新功能

  一个软件所依赖的资源可以来自于软件开发人员,也可以来自于第三方,工程技术要求集成获取、打包、发布、版本管理等功能。该目录主要包含一些打包软件的总体配置,如软件名,版本号,公司名,界面图标等信息在打包后安装期间显示。

  1.概述。

  机制在版本5.0之后和之前的4.x版本中都有了很大的改变,过去经常使用的一些流程现在不再使用,甚至有一些旧的API被新的取代了。

  所以,本文的主要内容是分析5.X版本的机制,包括创建资源包、压缩资源包、加载资源包、从资源包中加载/卸载资源等方面,以及API的关键使用模式,并总结对项目的一些建议,如选择不同的方案等等。

  2.系统的新功能。

  2.1.在新的系统中,有下列新功能:

  l 为标记资源,通过中的UI很容易,资源数据库中创建了一个资源和相应的映射。  

  可以通过箭头指定该资源描述,第一个选项是名字,然后选择为创建一个变体,比如有些材料需要区分到高清或者普通存储在不同中,那么可以将第二选项区分为hd和normal。

  l 为设置资源所属的提供了新的API。

  l 可以设置的值来指定该资源所属,上面UI中设置的名字是为这个值赋值,在资源拥有了之后,已经存在了。

  l 新版文件的创建变得非常简单。

  l 我们只需提供一个输出的地址即可,根据资源的属性,即以上UI中设置的值,自动进行打包,该引擎将自动建立和资源之间的依赖性。

  l 增加了一些打包策略/选项,并且默认打开一些中的旧策略。

  l 用来保证资源的完整性,默认开启;

  l 收集资源依赖关系,它是默认打开的;

  l 用于维护资源的固定ID;

  l 用来强制重打所有文件,新增;

  l 判断当更新时,是否忽略的更改,是添加的;

  用于在文件名中添加值后,打开此选项可以通过文件名直接判断哪些的内容得到更新,4.x下一般需要通过比较二进制等方法来判断,但是在某些情况下,即使内容没有被重新打包,它的二进制也会改变新增。

  l 用LZ4格式压缩的5.3最新版本。

  管理器文档对于4.x版本,我们通常需要自己维护配置文件,来记录运行时使用之间的依赖关系。对于5.x版本,使用文件可以省去4.x版本的这个过程,文件分为两类:

  l 一个单独包的文件,一旦一个新的文件被导出,那么将相应地生成一个文件,其中包含诸如校验、依赖文件等信息,因此可用于增量更新。

  事实上,当打包时,还会在输出包所在的文件夹中生成一个总的manifyfile文件,称为[文件夹名].manifyfile。其中包含该文件夹中所有bundle的信息,以及这些bundle相互依赖的信息。因此,当我们加载bundle时,首先需要加载manife文件总数,以确认各个bundle之间的依赖性。

  l 运行时动态装载的一些被新所取代。

  l 该方法在5.x版中实现的。

  l 4.x版中的方法在5.x版本中变为该方法。

  2.2.新系统的优点。

  多亏了引擎提供的这些新功能,我们不再需要4.x时代所需的打包脚本。与此同时,资源之间的相互依存不再需要开发人员手工维护,曾经因为对它的不适当使用可能导致依赖的问题,现在已经解决了。

  并且,因为引入了清单文件manife,所以我们可以实现增量更新,即只需要更新有变化的部分,不需要更新的部分。

  假定有一个拥有一种材料,我们分别将打包,然后再修改上的材料。以前,我们需要分别重新打包,现在只需重新打包不受影响。

  从代码中提取自定义资源,不再向同一分支提交功能自定义。项目的资源定制是通过解包标准包,替换自定义资源,重打包完成的。标准化资源定制,减少与功能代码的耦合,同时通过对脚本实现的自动替换,大大提高了定制率。这样还可以从根本上解决桌面图标和应用程序名替换的难题。

    >>>>>>点击进入游戏开发专题

赞(10)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程