zoukankan      html  css  js  c++  java
  • Unity AssetBundle 游戏资源分类及关系

    --刚刚做完一个xlua的的热更项目,对AssetBundle资源分类总结一下。纯理论,闲谈知识,要是有建议,尽管提 ,不掺杂代码。

    --这里说说,AB是如何打包,如果下载,如何加载。

    1.关键词理解:有依赖(公共),无依赖,常驻(使用频率),非常驻。

    所谓依赖,无依赖。

    画红圈的就是有依赖关系的,但是Unity中,如何知道有哪些资源有依赖关系呐。

    一般,我们每次Build后会自动生成AndroidManifest.xml,这里面就详细叙述了资源之间的

    依赖关系。

    2.下载资源?

    下载资源的话,我这边是通过Version文件对比获取所需下载资源,没什么好讲的。

    一张图,解释:

    3.如何加载?

    最主要的就是这边了。

    I.加载的优先级

    首先加载的是 常驻公共资源,

    再加载经常反复资源,

    当然如果进入战斗(某个特定模块),就加载非常驻公共资源。

    其他资源是当使用时加载。

    II.释放资源

    常驻资源肯定是不能unload(false)的,这边释放资源,释放的是其他资源。

    对于unload(false),还是unload(true) .

    unload(false)适合反复使用资源,一次Load之后,再也不需要Load,且与其他资源没有"被依赖关系"。

    unload(false),释放的是自身。

    unload(true),释放的是自身以及自身所有的子节点。因此,unload(true),慎用。

    III 缓存资源

    一般常驻资源,最好缓存把AB存为需要的GameObject,例如子弹之类。

  • 相关阅读:
    Flask基本介绍
    【Maven】使用Maven构建多模块项目
    spring data jpa 详解
    request.getParameterNames()和request.getParameterValues()
    JAVA字符串格式化-String.format()的使用
    Java中的String,StringBuilder,StringBuffer三者的区别
    Java总结篇系列:Java泛型
    <c:forEach>详解
    Spring MVC 相关资料整理
    关于${pageContext.request.contextPath}的理解 (转载)
  • 原文地址:https://www.cnblogs.com/u3ddjw/p/7815860.html
Copyright © 2011-2022 走看看