AssetBundleMaster_Introduce_EN
This is an integrated solution for building AssetBundles and loading Assets. what it can do is about to set and build AssetBundles automatically, and provide load APIs. It implemented the auto resource control on Prefbs(Instantiated GameObjects) and Scenes, and implemented the weak reference tech on all assets to ensure the assets will not duplicated in memory as possible as it can, and guarantee the assets will be unloaded correctly.
Supported : Unity5, Unity2017, Unity2018, Unity2019
The Features :
1. Set AssetBundle automatically: no asset duplicated, minimal the size of AssetBundles, pack referenced assets together if they will not duplicated, minimal the numbers of AssetBundles, minimal the loading time.
2. Auto asset processing: atuo create SpriteAtlas, prevent built-in shader compiled multi times… etc.
3. Runtime assets auto control: the Prefab instance and Scene assets was totally controlled, when GameObject pool was destroyed or scene was unloaded the auto resource control will decide unload assets or not Automatically. no asset duplicated in memory.
4. Runtime assets semi-auto control: all the assets was referenced by weakreference in the mid-level controller, it can make sure assets will not duplicated in memory as it can.
5. Developer friendly: load assets in Editor no need to build or do anything else, and the unload logic works on any load mode(we have 5 kinds of load modes). All APIs come from singleton and lazy-init, APIs looks like the UnityEngine.Resources APIs, no more learning costs. All the APIs that has Generic type and Non-generic type, good for developers who is using lua script. Only 3 Buttons click for building AssetBundles, and the build can have platform and version selection, and Patch info file between versions can be generated if you want, convience for AssetBundle updating.
6. No maintenance: any one request unload any asset will not forece unload the asset while someone else is using the asset, you just to request load and unload assets by you need, the auto resource control will decide to unload or not. it can reduce coupling.
7. Performance: full of ObjectPools. Unload asset may call AssetBundle.Unload(true) or call AssetBundle.Unload(false) + Resources.UnloadUnusedAssets(), decided by auto resource control, can make unload proccess more efficiency.
8. Computable overhead: the auto controller cause a little overhead, it mainly comes from AssetBundle (loaded) serialized file, depending on which platform you published. For example PC takes 2*7KB for each, but the Android it takes 2*256KB for each (datas from Unity5). it can be caculated.
9. Full Demos: we have 12 demo scenes, all the APIs was used in demo scene scripts, you can learn to use and test with Profiler easily.
These are what AssetBundleMaster can do, simplify the AssetBundle build proccess, reduce coupling, powerful API.
It's recommand that don't set assetbundle manually, even though your project has special need for updating or something else, in most cases they don't match the characteristic of the engine.
Hope this solution can help you, Have fun.
AssetBundleMaster_Introduce_EN的更多相关文章
随机推荐
- Drop_out--防止过拟合
With probability keep_prob, outputs the input element scaled up by 1 / keep_prob, otherwise outputs ...
- getpatch
import time import os import math import sys import os,os.path,shutil import numpy as np import cv2 ...
- 【Spring JDBC】JdbcTemplate(三)
传统Jdbc API与Spring jdbcTemplate比较 //JDBC API Statement statement = conn.createStatement(); ResultSet ...
- 剑指Offer-13.调整数组顺序使奇数位于偶数前面(C++/Java)
题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 分析: 这道题做法有很 ...
- React内容
React Fiber 16版本 registerServiceWorker 的作用 PWA progressive web application 写手机app应用 在断网的情况下,第二 ...
- node爬虫之图片下载
背景:针对一些想换头像的玩家,而又不知道用什么头像的,作为一名代码爱好者,能用程序解决的,就不用程序来换头像,说干就干,然后就整理了一下. 效果图 环境配置 安装node环境 node -v node ...
- 【2019.7.25 NOIP模拟赛 T3】树(tree)(dfs序列上开线段树)
没有换根操作 考虑如果没有换根操作,我们该怎么做. 我们可以求出原树的\(dfs\)序列,然后开线段树维护. 对于修改操作,我们可以倍增求\(LCA\),然后在线段树上修改子树内的值. 对于询问操作, ...
- 数据仓库001 - 复习Linux shell命令 - pwd mkdir mv tail -f xxx.log 和 ail -F xxx.log
1. [root@localhost ~]# 的含义 ? [登录的用户 机器的名称 家目录] 2. 查看当前光标所在的目录 pwd [root@localhost ~]# pwd /roo ...
- TreeMap 原理
基于jdk1.8 TreeMap第一个想到的就是有序,当然也不是线程安全 TreeMap实现NavigableMap接口,说明支持一系列的导航方法 一.构造方法 public TreeMap() { ...
- webpack与vue环境搭建(转载)
原文:https://www.cnblogs.com/lgx5/p/10732016.html npm安装教程 一.使用之前,我们先来掌握3个东西是用来干什么的. npm: Nodejs下的包管理 ...