回答編集履歴
1
コメントに書いたことを追記
answer
CHANGED
@@ -5,4 +5,29 @@
|
|
5
5
|
|
6
6
|
ですか?(「Android上で」と言われると、Androidの実機上で実行、と勘違いしてしまう)
|
7
7
|
|
8
|
-
エディタ上で実行している場合は、**BuildSettingsのプラットフォームが何であろうと、実行環境のプラットフォームはStandaloePCなので、AssetBundleはStandalonePCでビルドされたものでなければなりません。**
|
8
|
+
エディタ上で実行している場合は、**BuildSettingsのプラットフォームが何であろうと、実行環境のプラットフォームはStandaloePCなので、AssetBundleはStandalonePCでビルドされたものでなければなりません。**
|
9
|
+
|
10
|
+
---
|
11
|
+
|
12
|
+
時間がなかったのでコメント欄にごちょごちょと書きましたが、ちょっと整理して追記します。
|
13
|
+
|
14
|
+
エディタ上で実行している際は、AssetBundleはPCプラットフォームでビルドされたものでなければならないのは、前述のとおり。
|
15
|
+
もう少し細かく言うと、fiveHundredさんの言うとおり、AssetBundle自体は問題なくロードできますが、バンドルされたアセットの中には、ビルドされたプラットフォーム向けになっているものがあるため、そのアセットを使用しようとすると問題が発生します。
|
16
|
+
|
17
|
+
Addressablesの場合、「Play Mode Script」が「Use Existing Build」になっていると、BuildSettingsのプラットフォームでビルドされたアセットバンドルを読みに行くので、PCプラットフォーム以外だと上記のような問題が発生します。
|
18
|
+
なので、自分はプラットフォームをPCにして動作を確認しています。(もしくは、プログラムもビルドして、実機上で確認します)
|
19
|
+
|
20
|
+
> Asset bundles built with build target Android may not be compatible with running in the Editor.
|
21
|
+
|
22
|
+
このメッセージですが、自分も試してみたところ、上記のようにPCプラットフォーム以外で「Use Existing Build」で実行すると出力されるようです。エラーではなく、警告メッセージですね。
|
23
|
+
ちなみに、
|
24
|
+
|
25
|
+
```csharp
|
26
|
+
IEnumerator Start()
|
27
|
+
{
|
28
|
+
yield return Addressables.InitializeAsync();
|
29
|
+
}
|
30
|
+
```
|
31
|
+
|
32
|
+
というように、`Addressables.InitiazlieAsync`メソッドを呼んでも、メッセージが出力されます。
|
33
|
+
`Addressables.LoadAssetAsync`メソッドを呼んだ際にも、まだ初期化がされていなければ`InitializeAsync`メソッドが実行されるようになっているはずなので、エディタ上で実行された際に初期化時に、PCプラットフォーム以外であったら、「このまま続けると、(先に言ったような)問題が起きるかもしれないよ」という警告なんだと思います。
|