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