AssetBuddle(一)
一·含义
一个压缩文件,针对于特定平台的资产压缩包。资产包括模型,贴图,预制体,音效,材质球等,注意不包括c#脚本。
二·作用
相对于resource文件夹下面的东西打包后定死只读,无法修改。
AB包可以从网络上去下载,也可以从本地自动打包,压缩方式可以自定义,后期可以动态更新,相对于resource更灵活。
1.可以减少包体的大小,可以压缩资源,可以减少初始包的大小,比如打包出去可以放到远端服务器上面,一开始的时候先是一个很小的包,通过网络更新,先下载一个小包,进入游戏后再慢慢下。
2.资源的热更新,比如特定的节日活动,脚本的热更新主要是用来更新Lua脚本
热更新流程:

客户端自己带很少的·默认资源,第一步先获取资源服务器的地址,然后来到资源服务器下载一个资源对比文件,在资源服务器中检索哪些进行了更新,哪些需要下载,然后下载对应的AB包。
AB包是热更新的基础。
三。生成AB包的资源文件
1.用unity编辑器开发,自定义打包工具
2.官方提供好的打包工具
新建工程->Window->packege manager->搜AssetBuddle Browser->点击安装
安装完毕之后就可以在Windows中找到AssetBudlle,
如何让资源和AB包关联并且打包出来?
选中想要打包的资源,在inspector面板上下面有一个AssetBundle,点击new,取一个包名,这时可以在面板上看到创建的包。

注意点:unity中C#代码是不能打包成AB包的,所以需要lua进行热更新。
预制体本质上就是一个文件,里面是文件信息,所以预制体不是把脚本打成AB包而是把关联的数据达成AB包。
最终的打包,对应的Build Target要选择默认的平台,如果要对应不同的平台,那么需要重新打包。

下面的clear Folder的意思是每次打包的时候是否清空文件夹。
Copy to StreamingAssets,勾上的话会默认把打包的文件夹中的东西复制到StreamingAssets(默认都勾选上)

Compression是打包的方式()
不压缩(解压快,包大)
标准解压:压缩率最高,但是解压慢,用其中一个东西需要解压所有。耗性能
LZ4():没有标准解压高,但是用哪个解压哪个。(推荐)
Build后刷新资源文件,可以看到路径,在·文件夹下可以看到实际的路径

打包到pc文件夹下

打开StreamingAssets文件夹下,那些没有后缀的就是资源文件,如果后缀带了manifest的就是相关资源文件的配置文件。

四,使用AB包资源文件
使用unity中的API
AssetBuddle(一)的更多相关文章
- .assetbundle 和.unity3d 好处
.assetbundle 资源文件 .unity3D 场景文件 xml.json 静态存储和 还原 AssetBuddle 优点:减小压缩包.资源更新.分开安装包和数据包.AssetBuddle加密 ...
- 学习tolua#·20多个例子
初始项目搭建 clone官方库 新建unity工程 依次把官方库里的Assets和Unity5.x/Assets拷贝到项目Assets里 打开unity工程, 开始逐个学习例子,例子目录: 1. he ...
- UnityWebRequest_ZT
using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using U ...
- 腾讯暑期 前后七面 + hr(已拿offer面经)
以下是时间线 魔方 魔术师工作室 3.19 一面(120mins) c++ struct和union区别? 指针和引用的区别? 左值和右值? 字节对齐的作用? 什么情况下需要自定义new? mallo ...
随机推荐
- CF1067E 题解
题意 传送门 给定一棵 \(n\) 个节点的树,每条边有 \(\frac{1}{2}\) 的概率出现,可以得到一个森林,求这个森林邻接矩阵的秩的期望. \(1\le n\le5\times10^5\) ...
- 2019-2020-1 20199318《Linux内核原理与分析》第八周作业
第7章 可执行程序工作原理 一.学习笔记 1.ELF 2.程序编译 3.连接与库 二.试验记录 1.开始先更新内核,再用test_exec.c将test.c覆盖掉 2.test.c文件中增加了exec ...
- Web Dynpro for ABAP(16):WDA Analysis Tools
3.21 Quality Assurance and Supportability WDA程序效能验证工具. Tests工具: eCATT and Web Dynpro ABAP Debugging工 ...
- 最简单明了的yield from解释
def one(): print('one start') res = yield from two() print('function get res: ', res) return 'one' + ...
- usbip:(一)初识
USB/IP 总结 一.概要: USB/IP项目的目标是为用户提供通过网络远程访问usb设备的能力.在用户看来,访问usb设备和访问插入到本地电脑的设备没什么区别,该项目是开源的,可以用过适当的配 ...
- 【2020NOI.AC省选模拟#2】A. 旋转
题目链接 原题解: 把每个点的坐标视为复数,那么每次询问就是区间求平均数(先求和然后除以个数).一个点绕着原点旋转就是乘以$(\cos 60^\circ +i\sin 60^\circ)$. 一个点绕 ...
- MarkDown学习笔记1
# MarkDown学习(一级标题)## 标题(二级)### 三级标题#### 四级标题## 字体*Hello,World!斜体***Hello,World!加粗*****Hello,World!加粗 ...
- Linux系统安装&VMware安装一
本次安装使用的VMware版本是15.5pro,镜像文件是centos7_x86 如果你还没有VMware和镜像文件,这里给你提供: https://my.vmware.com/cn/web/vmwa ...
- 大唐电信AC集中管理平台弱口令漏洞
网络资产搜索: 找到平台 进行默认口令登入:admin/1***** 登陆 End!!!
- keras构建1D-CNN模型
接触过深度学习的人一定听过keras,为了学习的方便,接下来将要仔细的讲解一下这keras库是如何构建1D-CNN深度学习框架的 from keras.datasets import imdb fro ...