107 lines
5.2 KiB
Markdown
107 lines
5.2 KiB
Markdown
![image](./Docs/Image/LOGO.png)
|
||
|
||
# YooAsset
|
||
|
||
[![License](https://img.shields.io/github/license/tuyoogame/YooAsset)](https://github.com/tuyoogame/YooAsset/blob/master/LICENSE)[![openupm](https://img.shields.io/npm/v/com.tuyoogame.yooasset?label=openupm®istry_uri=https://package.openupm.com)](https://openupm.cn/packages/com.tuyoogame.yooasset/)
|
||
|
||
**YooAsset**是一套用于Unity3D的资源管理系统,用于帮助研发团队快速部署和交付游戏。
|
||
|
||
它可以满足商业化游戏的各类需求,并且经历多款百万DAU游戏产品的验证。
|
||
|
||
## 介绍
|
||
|
||
YooAsset可以满足以下任何需求:
|
||
|
||
- 我想发布一个不包含任何游戏资源的安装包,然后玩家边玩边下载。
|
||
- 我想发布一个可以保证前期体验的安装包,然后玩家自己选择下载关卡内容。
|
||
- 我想发布一个保证300MB以下内容的安装包,然后进入游戏之前把剩余内容下载完毕。
|
||
- 我想发布一个偏单机的游戏安装包,在网络畅通的时候,支持正常更新。在没有网络的时候,支持游玩老版本。
|
||
- 我想发布一个MOD游戏安装包,玩家可以把自己制作的MOD内容上传到服务器,其它玩家可以下载游玩。
|
||
- 我们在制作一个超大体量的项目,有上百GB的资源内容,每次构建都花费大量时间,是否可以分工程构建?
|
||
|
||
## 系统特点
|
||
|
||
- **构建管线无缝切换**
|
||
|
||
支持传统的内置构建管线,也支持可编程构建管线(SBP)。
|
||
|
||
- **支持分布式构建**
|
||
|
||
支持分工程构建,支持工程里分内容构建,很方便支持游戏模组(MOD)。
|
||
|
||
- **支持可寻址资源定位**
|
||
|
||
默认支持相对路径的资源定位,也支持可寻址资源定位,不需要繁琐的过程即可高效的配置寻址路径。
|
||
|
||
- **安全高效的分包方案**
|
||
|
||
基于资源标签的分包方案,自动对依赖资源包进行分类,避免人工维护成本。可以非常方便的实现零资源安装包,或者全量资源安装包。
|
||
|
||
- **强大灵活的打包系统**
|
||
|
||
可以自定义打包策略,自动分析依赖实现资源零冗余,基于资源对象的资源包依赖管理方案,天然的避免了资源包之间循环依赖的问题。
|
||
|
||
- **基于引用计数方案**
|
||
|
||
基于引用计数的管理方案,可以帮助我们实现安全的资源卸载策略,更好的对内存管理,避免资源对象冗余。还有强大的分析器可帮助发现潜在的资源泄漏问题。
|
||
|
||
- **多种模式自由切换**
|
||
|
||
编辑器模拟模式,单机运行模式,联机运行模式。在编辑器模拟模式下,可以不构建资源包来模拟真实环境,在不修改任何代码的情况下,可以自由切换到其它模式。
|
||
|
||
- **强大安全的加载系统**
|
||
|
||
- **异步加载** 支持协程,Task,委托等多种异步加载方式。
|
||
- **同步加载** 支持同步加载和异步加载混合使用。
|
||
- **边玩边下载** 在加载资源对象的时候,如果资源对象依赖的资源包在本地不存在,会自动从服务器下载到本地,然后再加载资源对象。
|
||
- **多线程下载** 支持断点续传,自动验证下载文件,自动修复损坏文件。
|
||
- **多功能下载器** 可以按照资源分类标签创建下载器,也可以按照资源对象创建下载器。可以设置同时下载文件数的限制,设置下载失败重试次数,设置下载超时判定时间。多个下载器同时下载不用担心文件重复下载问题,下载器还提供了下载进度以及下载失败等常用接口。
|
||
|
||
- **原生格式文件管理**
|
||
|
||
无缝衔接资源打包系统,可以很方便的实现原生文件的版本管理和下载。
|
||
|
||
- **灵活多变的版本管理**
|
||
|
||
支持线上版本快速回退,支持区分审核版本,测试版本,线上版本,支持灰度更新及测试。
|
||
|
||
## 入门教程
|
||
1. [快速开始](./Docs/QuickStart.md)
|
||
2. [全局配置](./Docs/GlobalSettings.md)
|
||
3. [资源配置](./Docs/AssetBundleCollector.md)
|
||
4. [资源打包](./Docs/AssetBundleBuilder.md)
|
||
5. [资源部署](./Docs/AssetBundleDeployer.md)
|
||
5. [构建报告](./Docs/AssetBundleReporter.md)
|
||
5. [调试器](./Docs/AssetBundleDebugger.md)
|
||
5. [着色器](./Docs/ShaderVariantCollector.md)
|
||
5. [FAQ](./Docs/FAQ.md)
|
||
|
||
## 代码教程
|
||
1. [初始化](./Docs/CodeTutorial1.md)
|
||
2. [资源更新](./Docs/CodeTutorial2.md)
|
||
3. [资源加载](./Docs/CodeTutorial3.md)
|
||
3. [解决方案](./Docs/CodeTutorial4.md)
|
||
|
||
## 其它教程
|
||
|
||
[视频教程](https://space.bilibili.com/328590743/channel/seriesdetail?sid=2207858)
|
||
|
||
[示例教程](./Docs/Samples.md)
|
||
|
||
## 社区
|
||
|
||
QQ群:**963240451**
|
||
|
||
[致谢名单](./Docs/Contributor.md)👯
|
||
|
||
[代码贡献](./Docs/CodeStyle.md)
|
||
|
||
## 友情链接
|
||
[ET Framework](https://github.com/wqaetly/ET/tree/et7_fgui_yooasset_luban_huatuo): ET 7.0 + FGUI + luban + huatuo + YooAsset + NKGMoba + UniTask,并提供常用的编辑器工具。
|
||
|
||
[ETPro](https://github.com/526077247/ETPro) ET6+YooAsset+HybridCLR
|
||
|
||
[YooAssetEx](https://gitee.com/liu_zhongxiu/yoo-asset-ex/tree/master): YooAsset Odin扩展工具,用于支持Unity2017和Unity2018版本。
|
||
|
||
[GameFramework-at-YooAsset](https://github.com/ALEXTANGXIAO/GameFramework-at-YooAsset) GameFramework +luban + hybridclr + YooAsset + UniTask
|