unity 《专题系列》资源打包 Asset Bundles 第五节 Asset Bundles 依赖打包和加载
2023-09-11 14:20:50 时间
unity 《专题系列》资源打包 Asset Bundles
第五节 Asset Bundles 依赖打包和加载
一、依赖打包是什么,为什么要依赖打包
1、依赖打包,即是多个物体拥有相同的部分抽出来单独打包,这些多个物体就和单独打包出来的资源形成了依赖关系,叫做依赖打包,如下图
2、为什么要依赖打包,根据上图,我们就可以清楚看出,把共同部分提出来单独打包,可以节省资源占用,省空间,一定程度提高效率等好处,如下图
二、加载依赖包的方法
1、加载Sphere时,不加载依赖包,就会出现丢资源的紫色显示,如下图
2、加载Sphere时,一起加载依赖资源的方法(依赖资源在前加载,或后加载都没有关系,只要记得加载,系统就会自动找到对应依赖资源),如下图
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
using UnityEngine.Networking;
public class LoadAssetBundle : MonoBehaviour {
// Use this for initialization
void Start () {
//2.2 LoadFromFile 方法加载
//AssetBundle的存放路径
string path = "Assets/AssetBundles/sphereab.unityab";
AssetBundle ab = AssetBundle.LoadFromFile(path);
//取得所需要的资源
GameObject go = ab.LoadAsset<GameObject>("Sphere");
//加载生成到场景中
Instantiate(go);
//加载mainfest文件
AssetBundle manifestAB = AssetBundle.LoadFromFile("Assets/AssetBundles/AssetBundles");
AssetBundleManifest manifest = manifestAB.LoadAsset<AssetBundleManifest>("AssetBundleManifest");
foreach (string name in manifest.GetAllDependencies("sphereab.unityab"))
{
//打印相关资源的信息
print(name);
//加载对应依赖资源
AssetBundle.LoadFromFile("Assets/AssetBundles/"+name);
}
}
}
相关文章
- Unity手游之路<十一>资源打包Assetbundle
- Unity5.4新版AssetBundle资源打包
- webpack 打包jquery
- Springboot 打包成jar以后,读取resources里的文件夹
- Struts2在打包json格式的懒加载异常问题
- Electron-builder打包详解
- 将java项目打包成docker镜像:镜像=副本
- iOS 打包上传时报错its private key is not installed.to get a copy of the private key
- SpringBoot - resource资源文件的打包配置详解(指定资源文件位置)
- 使用linuxdeployqt在linux下进行Qt打包发布(超详细)
- 打包jar文件 外部调用资源 so等
- 汇总py环境移植方法:将Anaconda3环境打包与导入
- 异常学习笔记+打包+doc该软件包编译