您的位置:首页 > 移动开发 > Unity3D

unity3d打包和包的使用

2015-07-23 17:29 274 查看
打包:

①Assets下新建文件夹Editor和steamingAssets

②对选定文件打包:

using UnityEngine;
using UnityEditor;
using System.Collections;

public class AssetBundle : MonoBehaviour {
[MenuItem("Custom Editor/Create AssetBundles Main")]
static void CreateAssetBundlesMain() {
Object[] SelectedAsset = Selection.GetFiltered (typeof(Object),SelectionMode.DeepAssets);

foreach(Object obj in SelectedAsset) {
string sourcePath = AssetDatabase.GetAssetPath(obj);
string targetPath = Application.dataPath + "/StreamingAssets" + obj.name +".assetbundle";
if (BuildPipeline.BuildAssetBundle(obj,null,targetPath,BuildAssetBundleOptions.CollectDependencies)) {
Debug.Log (obj.name+"success");
}
else {
Debug.Log(obj.name+"failure");
}
}
}
}


从Asset Bundle加载预设:

using UnityEngine;
using System.Collections;

public class loadAB : MonoBehaviour {

// Use this for initialization
void Start () {
StartCoroutine (loadBundle("file://"+Application.streamingAssetsPath+"/"+"StreamingAssetsNew Prefab.assetbundle"));
}

// Update is called once per frame
void Update () {

}
private IEnumerator loadBundle(string path) {
WWW load = new WWW (path);
yield return load;
GameObject obj = GameObject.Instantiate (load.assetBundle.mainAsset) as GameObject;
load.assetBundle.Unload (false);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: