博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Unity】Unity5版本的AssetBundle打包方案之打包Scene场景
阅读量:4087 次
发布时间:2019-05-25

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

using UnityEngine;using System.Collections;using UnityEditor;/// /// 脚本位置:Editor文件夹下/// 脚本功能:打包/// public class CreateAssetBundle:Editor{	// 打包unity场景文件	[MenuItem("Assets/Build AssetBundle Scene")]	static void MyBuild(){		// 需要打包的场景名字		string [] levels =  {"Assets/2.unity"};		// 注意这里【区别】通常我们打包,第2个参数都是指定文件夹目录,在此方法中,此参数表示具体【打包后文件的名字】		// 记得指定目标平台,不同平台的打包文件是不可以通用的。最后的BuildOptions要选择流格式        BuildPipeline.BuildPlayer(levels, Application.dataPath+"/Scene.unity3d", BuildTarget.Android, BuildOptions.BuildAdditionalStreamedScenes);        // 刷新,可以直接在Unity工程中看见打包后的文件        AssetDatabase.Refresh();        	}}
using UnityEngine;using System.Collections;/// /// 脚本位置:需要加载物体的场景中任意物体上/// 脚本功能:加载物体/// public class LoadAssetBundle : MonoBehaviour{			private string url;	private string assetname;	void Start ()	{		// 下载压缩包,写出具体的名字		url = "file://" + Application.dataPath + "/Scene.unity3d";		// unity预制体名字,即被打包的场景名字叫 2		assetname = "2";		StartCoroutine (Download ());	}	IEnumerator Download ()	{		WWW www = new WWW (url);		yield return www;		if (www.error != null) {			Debug.Log ("下载失败");		} else {			AssetBundle bundle = www.assetBundle;			Application.LoadLevel ("2");			print ("跳转场景");			// AssetBundle.Unload(false),释放AssetBundle文件内存镜像,不销毁Load创建的Assets对象			// AssetBundle.Unload(true),释放AssetBundle文件内存镜像同时销毁所有已经Load的Assets内存镜像			bundle.Unload (false);		}		// 中断正在加载过程中的WWW		www.Dispose ();	}}

转载地址:http://vukii.baihongyu.com/

你可能感兴趣的文章
设置tabbaritem的title的颜色及按钮图片
查看>>
动态设置label的高度
查看>>
检测缓存文件是否超时
查看>>
十进制字符串转十六进制字符串
查看>>
属性字符串(富文本)的使用
查看>>
自定义大头针
查看>>
UIButton添加block点击事件
查看>>
利用runtime给类别添加属性
查看>>
本地推送
查看>>
FMDB的使用
查看>>
UIImage存为本地文件与UIImage转换为NSData
查看>>
[转]打印质数的各种算法
查看>>
[转]javascript with延伸的作用域是只读的吗?
查看>>
php的autoload与global
查看>>
IE不支持option的display:none属性
查看>>
[分享]mysql内置用于字符串型ip地址和整数型ip地址转换函数
查看>>
TableDnd(JQuery表格拖拽控件)应用进阶
查看>>
[转]开源中最好的Web开发的资源
查看>>
Https加密及攻防
查看>>
Java生成随机不重复推广码邀请码
查看>>