次のコードを使用して、AssetBundle から Unity シーンをロードしようとしています。
using (WWW www = WWW.LoadFromCacheOrDownload("http://127.0.0.1:8080/unity/test-scene", 1))
{
yield return www;
if (www.error != null)
{
Debug.Log("Load Error " + www.error);
}
AssetBundle bundle = www.assetBundle;
Object[] loadObjectList = bundle.LoadAllAssets();
foreach(Object tempObj in loadObjectList)
{
Debug.Log("Object = " + tempObj);
}
}
loadObjectList
シーン ベース バンドルの場合、配列の要素は常に 0 でした。
関数を呼び出すとbundle.GetAllScenePaths()
シーン パスを取得できますが、SceneManager.LoadScene()
関数を使用してそれらのシーンをロードしようとすると、次のエラー メッセージが表示されます。
" (-1) ビルド設定に追加されていないか、AssetBundle が読み込まれていないため、シーンを読み込むことができませんでした".
AssetBundle からシーンをロードする方法を誰かが知っていましたか、それとも Unity の制限ですか?