string finalPath = Application.dataPath + "/" + ABPath + "/" + ABPath;//加载AssetBundle是需要绝对路径的,找到目标文件夹的目标文件,因为要寻找依赖,所以一般都是寻找打包后存放的文件夹里面的 以文件夹名字命名 的manifest文件,因为该文件记录着各个AssetBundle所需所对应的依赖 LoadGoalBundleResource(finalPa...
简称为AB包,这是独立于游戏主包存在的资源存储文件,在使用内部资源时需要单独下载和加载。如图:AssetsBundle只是把一些资源文件,场景文件或二进制文件以某种方式存在一起。重要的是AssetBundle内部不能包含C#文件,AssetBundle使用Lua脚本语言实现游戏逻辑以及资源更新。
然后我们来学习如何运行时读取Assetbundle,Assetbundle是可以同时放在服务器或者本地的,无论放在哪里两种下载读取的方式是完全一样的。所以我建议在做unity项目的时候开始就把资源放在Assetbundle中在本地来做,等做的差不多了直接把Assetbundle放在服务器上,因为两种读取的方式完全一样,这样以后更新资源会方便很多。然后是读...
官方的讲解:http://game.ceeger.com/Script/BuildPipeline/BuildPipeline.BuildAssetBundle.html 1.首先要讲一下不同平台下的一个StreamingAssets路径,这是不同的。 ? 这就获取到了不同平台的一个路径,我们可以将打包的文件放在这些路径下,然后再从这路径去读取资源。 2.关于打包assetbundle的脚本 //...
Assetbundle是unity的一种加载方式。这种加载可以从互联网上或者本地的文件夹中加载。 要求被加载的文件必须是Assetbundle定义的格式 首先制作Assetbundle: 在project的Editor文件夹下创建新脚本CreateAssetbundles 脚本内容如下: using UnityEngine; using System.Collections; ...
首先打包之后根目录也会生成一个同目录名的ab包,其中的manifest作用就是供开发人员查看ab中的依赖关系等信息,加载根目录这个ab,可以得到一个AssetBundleManifest 对象如下图,然后就可以通过这个对象得到ab直接的依赖关系。 5.查看ab包大小,后面会有比较。
using System.Collections.Generic; using System.IO; using UnityEditor; public class PackBundles : Editor { //选定资源打包 [MenuItem("PackBundles/PackBundles")] static void PutBundleAssetes() { //初始化一个AssetBundleBuild表 List<AssetBundleBuild> buildMap = new List<AssetBundleBuild>(); AssetBun...
如上所示,fileExtension=”.”表示可以下载无后缀的文件,当我们设置fileExtention=”.assetbundle”时,则表示可以下载后缀名为。assetbundle的文件。 我们打包的assetbundle文件,除了。assetbundle文件外,还包含了manifest文件。同时除了我们已经命名的文件外,还包含了一个则外的assetbundle文件和manifest文件,这两个文件中包含...
Asset加载,要内部衔接多种资源加载方式,对外部隐藏底层资源加载逻辑。 内部主要管理三种加载方式 AssetBundleLoadMgr负责ab文件资源的加载 AssetsLoadMgr ResourcesLoadMgr负责Resources目录下资源加载 EditorAssetLoadMgr负责Editor模式下资源加载 private Dictionary<string, AssetObject> _loadingList; //加载队列 ...
Name: props.assetbundle Dependencies: {} Manifest文件中包含了我们打包的Bundle中的信息。我们在加载Bundle时一般不会加载Manifest文件,我们可以通过包含所有Bundle信息的文件来动态获取每一个Bundle的信息。 在Unity中,加载Bundle的方式主要通过WWW来实现 WWW www = new WWW(URL); ...