AssetBundle 大全 (一)

AssetBundle 大全 (一)

大家好,我是北京菜鸟在线的unity3d 高级讲师范老师。今天,我给大家分享的是关于unity3d 4.x,和 5.x 的5.x 的打包,上传,下载,加载。希望大家能喜欢。

一:过程:

二:打包过程如下:

(1):首先创建一个场景,比如在场景中创建一个Cube, 起名为player 拉到Assets下,使其成为prefab. 。

(2) : 在Assets下创建文件夹,并改名字为Editor 在里面创建脚本。(unity3d 编译器扩展功能菜单)

(3):选中prefab(player), 并在右下角下拉框中 new...    写上 player. assetbundles 或者写入  player. unity3d 都是可以的。

![](http://upload-images.jianshu.io/upload_images/7269475-7556a326dc08694c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

上述步骤如下图所示:

(4) 在Assets下文件夹Editor 内创建代码,代码如下:

using UnityEngine;
using System.Collections;
using UnityEditor;

public class CreateAssetBundle {
// 这是一个扩展编辑-器,因此不需要继承MonoBehaviour

 // [MenuItem("TEacherTools/ package/simplePackage")]

   //自动在unity3d 菜单下生成一个菜单和子菜单

[ MenuItem("Assets/Build AssetBundles" )]
  // 在unity3d的菜单Assets下,会多出一个Build AssetBundles菜单项

static void BuildAllAssetBundles()   // 必须写一个静态函数
{

    BuildPipeline.BuildAssetBundles("AssetBundles" );  // 把打包生的文件放在这个文件下。

}

}

//需要注意的是:如果运行程序报错,我们需要手动找到这个工程的所在(鼠标右键,show in explorer ),在里面创建一个文件夹名字是:AssetBundles如下图所示: 。点击在Assets下,我们扩展的功能菜单。

(5) 然后运行程序:会发现在上述创建的文件夹内多出了四个文件,如下图所示:

二: Manifest文件介绍

第一个和第二个相当于管理文件。鼠标点击第二个,

因为我们只打包了一个,所以,里面只有一个信息

三:下载和加载

(1)在Hierarchy下创建一个空的游戏对象,并在上添加C#组件,取名:DownlogadingAndLoading,效果如下图所示:
代码如下图:

using UnityEngine;
using System.Collections;

public class LoadAsset : MonoBehaviour
{
public string url;
public string assetname;
// Use this for initialization
IEnumerator Start () {

    WWW www = new WWW(url);    // 开始下载给定的URL
    yield return www;          // 等待直到下载完成
    if (www.error != null )   //如果下载报错
    {
        Debug.LogError("网络错误" );
    }
    else {
        AssetBundle bundle = www.assetBundle;   //获取打包信息
      Object obj =  bundle.LoadAsset(assetname);  //加载资源(指定了资源名)
        Instantiate(obj);  // 实例化一个
        bundle.Unload( false); // true:表示把所有的资源全部下载,flase: 表示只下载assetname
    }
    www.Dispose(); //释放资源
            }         

}

以上是5.x 的打包,上传,下载,加载。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,107评论 19 139
  • AssetBundl 大全(二) 大家好,我是北京菜鸟在线的unity3d 讲师 ,范老师。今天接着给大家分享 A...
    土豆_9724阅读 456评论 0 0
  • 在Unity中可以同时创建很多脚本,并且可以分别绑定到不同的游戏对象上,它们各自都在自己的生命周期中运行。与脚本有...
    无敌的IT熊猫阅读 935评论 0 0
  • “峭寒催换木棉裘,倚杖郊原作近游。 最是秋风管闲事,红他枫叶白人头。” 金秋十月,偶然读到这首诗,觉得应景的很。都...
    莫伊my阅读 1,105评论 0 3
  • 铁汉柔情断组 304期 1267-345-089开109√ 2749-036-158开420√ 0516-234-...
    铁汉与柔情阅读 259评论 0 3