博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unity进阶----AssetBundle_03(2018/11/07)
阅读量:4352 次
发布时间:2019-06-07

本文共 2344 字,大约阅读时间需要 7 分钟。

1. 为啥有AB包? 因为资源需要更新, 避免更新一次打包一次 动态修改.

2. AB包注意啥? 依赖关系 找依赖关系应该找到对应的平台!!! 

3. 打包策略是分场景打包 若文件被文件夹包含打包出来的就是文件夹的名字 否则是场景文件夹名称

4. 当我AB包从硬盘加载完成之后 是不是就该加载到内存 并实例化了? 带有缓存的ab加载机制

5.脚本不允许出现在打包目录的 dll

6.知道加载的过程 说出来! 这个很重要(依赖加载必须会). 知道框架的基本作用 以后会拿出来用或修改 

7. Lua: Lua语言和其他脚本语言有一致特性 Python C很大的渊源 

8.操作步骤:

a. 指定场景

b. 指定abname

c.指定objinabname

d. 协同

e. 委托 void string

f.在委托里面进行物体的实例化操作

1 using System.Collections; 2 using System.Collections.Generic; 3 using UnityEngine; 4 using UnityEngine.SceneManagement; 5 using LLWHABFW;//引用框架 6  7 public class Scene03Boll : MonoBehaviour { 8  9     private string _abScene = "scenes03";10 //压缩场景的名字---------------------------------->"a"11     private string _abName = "scenes03/scenes03.ab";12 //压缩场景中物体的名字----------------->"b"13     private string _obj01InAB = "Plane.prefab";14 //在scenes03.ab中预制体Plane的名字---------->"c"15     private string _obj02InAB = "Sphere.prefab";16 //在scenes03.ab中预制体Sphere的名字-------->"c"17     private List
_mylist;18 void Start()19 {20 _mylist = new List
(); StartCoroutine(AssetBundleMgr.GetInstance().LoadAssetBundlePack(_abScene, _abName, heheda));21 //解压所需物体及其依赖-------------------------------------->"d"(参数最后一个为"e")22 }23 24 void Update () 25 {26 if (Input.GetKeyDown(KeyCode.Space)) 27 {28 for (int i=0;i<_mylist.Count;i++)29 {30 Destroy(_mylist[i]);31 }32 _mylist.Clear();33 34 AssetBundleMgr.GetInstance().DisposeAllAssets(_abScene);35 ABManifestLoader.GetInstance().Dispose();36 37 StartCoroutine("ssss");38 }39 }40 private void heheda(string yu)41 //实例化------------------------------------------------>"f"42 {43 GameObject plan, boll;44 plan = AssetBundleMgr.GetInstance().LoadAsset(_abScene, _abName, _obj01InAB, false) as GameObject;45 boll = AssetBundleMgr.GetInstance().LoadAsset(_abScene, _abName, _obj02InAB, false) as GameObject;46 _mylist.Add( Instantiate(plan));47 _mylist.Add(Instantiate(boll));48 }49 IEnumerator ssss() 50 {51 yield return new WaitForSeconds(3); 52 SceneManager.LoadScene("1");53 }54 }

 

 

压缩包对应关系:

 

 

 

更改路径位置:

转载于:https://www.cnblogs.com/Future-Better/p/9922920.html

你可能感兴趣的文章
关于iOS自定义控件:在view上实现事件和代理
查看>>
EMC队列 发件人为空 From Address: <>
查看>>
多路复用IO模型 IO multiplexing
查看>>
监控系统信息模块psutil
查看>>
python tokenizer
查看>>
【兼容性】IE不支持日期字符串转换为日期对象
查看>>
笔试编程---快手实习题目
查看>>
csp20170304地铁修建_Solution
查看>>
Palindromic Substrings
查看>>
改变和恢复view的方向
查看>>
C#调用金数据API
查看>>
Convert Sorted List to Binary Search Tree
查看>>
Leetcode:Unique Binary Search Trees
查看>>
D3.js 绘制散点图
查看>>
《图解HTTP》
查看>>
python之路_面向对象
查看>>
CSS
查看>>
jvm架构以及Tomcat优化
查看>>
数据库の目录
查看>>
vmware安装rhel 7
查看>>