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

客服QQ:3315713922

AssetBundle对象

作者:匿名     来源: 游戏开发点击数:1196发布时间: 2021-10-19 17:30:16

标签: unity3d加载和卸载资源从对象装载资源

  资源已经打包成了资源包,如果想在游戏中使用资源包中的内容,需要先装入资源包到内存中,然后解压该资源包,获得资源包中包含的部分资源。

  1.有关项目的建议。

  因为之前文章中讲述了加载方式都有各自的使用情况和特点,所以建议按照下列情景在我们的项目中使用这些方法: 

 

  随游戏一起发布新的文件夹:

  l 打包时,可以将LZ4压缩格式打包。

  l 该方法在运行时需要加载对象。

  其优点是:

  l 可以将文件进行压缩,又能兼顾加载速度并节省内存。

  l 要求以更新包形式从服务器端下载。

  l 当使用包时,使用默认的格式压缩。

  l 下载缓存软件包的方法。

  其优点是:可获得最大的压缩率,并可在下载期间减少数据传输量。与此同时,在本地磁盘创建缓存后,还可以考虑加载后的速度,并节省内存。

  自行加密:当运行时需要装入对象时,可以使用方法装入,这个使用场景也只有对象是通过使用流数据从内存载入的。

  对于生成的包文件,我们也可以使用第三方库或者工具压缩,如果需要的话,我们最好不要再使用,所以在打包时选择打开,方法在运行时需要加载对象时进行异步加载。

  2.加载和卸载资源。

  这一部分包括:

  l 将资源从对象装载。

  l 卸载资源。

  2.1.从对象装载资源:API名加载和卸载的新旧版本的API名有所改变,但机制没有什么改变。

  从对象中装载资源在旧版本4.X中所用主要包括以下几个:

  l 从包载入指定的资源。

  l 装入当前资源包中的全部资源。

  l 异步从资源包加载资源。

  新版本的中,装入资源变成了几个:

  l 从资源包载入指定资源。

  l 装载当前资源包中的所有资源。

  l 异步从资源包载入资源。

  2.2卸载资源。

  l 对资源卸载部分没有什么改变,仍然使用Unload方法。

  l 无读取:这个方法卸载运行时内存中包含在包内的所有资源。

  l 如果传入参数为true,那么内存中包含的资源不仅是AssetBundle对象。基于这些资源实例化后,游戏中的对象也被销毁。

  l 如果传递的参数,就会销毁对象在内存中包含的资源。

  此外,还提供了资源冗余预警机制,比如上文中带有的案例的资源出现在多个中,小编需要分别对该资源进行分组。

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

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