1

我正在 Unity 中创建一个 AssetBundle,其中包含一个带有以下代码的场景:

string[] scenes = {"Assets/Scenes/main.unity"};
BuildPipeline.BuildStreamedSceneAssetBundle( scenes , "main.unity3d", EditorUserBuildSettings.activeBuildTarget);

我有一个空的介绍场景,它在 iOS 上的应用程序开始时加载主场景:

using (WWW www = WWW.LoadFromCacheOrDownload (url + "main.unity3d", 0)) {

while (!www.isDone) {
    yield return null;
}

//check if server response is an error
if (www.error != null) {
    throw new Exception ("WWW download had an error: " + www.error);
}

//Load the asset bundle
AssetBundle bundle = www.assetBundle;
bundle.LoadAllAssets ();

}
Application.LoadLevel ("main")

问题是主场景已正确加载,但其中的 3D 对象(FBX 文件 + 纹理)无法看到。主场景没有脚本,只有 3D 对象,包括 Unity 的简单立方体,它们已作为预制件存储在 Assets 文件夹中。没有显示 3D 数据可能是什么问题?Asset Bundle 本身有大约 20MB,按大小确定 3D 对象应该包含。我使用 Unity 5.2.4,这只是 iOS 的问题,Android 工作正常,对象显示正常。

4

1 回答 1

2

我找到了解决方案。您必须在 Unity 中关闭“Strip Engine Code”

于 2016-03-16T12:38:00.957 回答