资源管理系统

来源:互联网 发布:绝地求生n卡优化 编辑:程序博客网 时间:2024/04/29 22:40
一、资源打包
  • BuildPipeline.BuildAssetBundle资源打包参数:Determine(Object保持ID不变,用于增量发布)、ColloctDependencies(收集依赖)、Complete完全打包(该资源以完整的形式打包)
  • 场景打包:先打包的依赖的所有资源,然后打包场景,用BuildPipeline.BuildStreamed...选项为BuildAddtionalStreamdScene,表示打包成一个流化的压缩的可用www加载的AssetBundle
  • 资源MD值生成:使用C#MD5根据资源全局路径 生成一个哈希值byte[],串联所有byte的tostring("x2")
  • 资源也可以通过crc来唯一标志,crc较md5耗内存和空间要少
  • 生成资源依赖树之点名法:AssetDatabase可以返回每个资源所有依赖,通过该方法我们可以对对关联到的所有资源调用该方法,并对返回列表的每个路径点名,点名次数多的就是被嵌套依赖的资源。用依赖树来表示,点名最大的是叶子结点资源,最少的是根资源。
  • 生成依赖树之减法:.资源的直接依赖 = 资源的全部依赖 - 资源的所有的依赖的全部依赖
  • 自定义资源格式:资源格式的分类如:
    光照贴图 纹理
    音频 视频 动画 材质 动画控制器 fbx 预设 场景。
    每一资源我们都通过其后缀来区分是什么格式,一种格式的资源可能会对应到多种后缀。比如纹理:.jpg、.png
  • 依赖关系最终会生成一张依赖图,途中每个节点代表一个资源和他的依赖信息。其结构包含有:
    • path:路径
    • allDependencies:所有依赖的路径
    • dependencies:直接依赖的路径
    • formatDependencies:所有的依赖按格式分类
  • AB包加载完成后把它所有的资源都Load出来就可以释放掉,包括主资源和所有子资源。当然这里是指该资源只会被别的资源依赖一次,比如图集的纹理。其他资源如Material、特效的纹理因为混用比较常见,依赖关系比较复杂不能马上卸载,AB包必须和资源共存亡,否则后续依赖他的资源会丢失依赖。除非全局公用的资源,否则不要抽出来当成公用依赖打,会造成依赖关系紊乱。
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 江淮和悦油耗高怎么办 金杯海狮油耗高怎么办 江铃特顺svs亮了怎么办 初中毕业证怎么办真的 初中没拿毕业证怎么办 初中毕业证没领怎么办 朗逸车电脑坏了怎么办 电车钥匙丢了怎么办 电车钥匙拧不动怎么办 汽车ecu初始化失败怎么办 汽车轻微的抖动怎么办 面包车电脑板紊乱怎么办 车子变速箱坏了怎么办 摩托车怠速不稳怎么办 汽车启动转数高怎么办 鬼火摩托车没力怎么办 摩托车油漆掉了怎么办 发动机怠速不稳怎么办 信用综合评分不足怎么办 综合评分不足是怎么办 综合信用分不足怎么办 iptv突然无信号怎么办 排气系统故障灯亮怎么办 空调冷凝器坏了怎么办 水温空调不制冷怎么办 用冷风机屋里潮怎么办 空调制热不出水怎么办 空调水管堵了怎么办 空调制冷不出水怎么办 空调出风口漏水怎么办 空调管漏水厉害怎么办 电动车车速变慢怎么办 遥控器按钮掉了怎么办 苹果6屏幕凸起怎么办 三星笔记本开机黑屏怎么办 笔记本电脑开机黑屏怎么办三星 笔记本电脑黑屏怎么办灯是亮得 九代雅阁收音机信号不好怎么办 九代雅阁电瓶亏电怎么办 17款雅阁混动汽车胎压灯怎么办 空调制冷出热风怎么办