CRIWARE Unity Plugin Manual  Last Updated: 2024-12-05
WebGL版ADXデータのロード

データのロード

WebGLターゲットでは、ロードするファイルのパスによってのロード処理は非同期に行われることがあります。

非同期ロードが完了していない状態では再生することができません。
CriWare.CriAtom::AddCueSheet 後にすぐキューのStart()を行うとエラーが発生することがあります。
詳しくは WebGL版ファイルマジックPRO も合わせてご参照ください。

リモートファイルパスの場合

http や https から始まるファイルパスの場合で、ファイルを StreamingAssets に配置した時などが該当します。 WebGL環境では、Application.streamingAssetsPath はアプリケーションのサーバーアドレスのURLを返します。
CriWare.CriAtom.AddCueSheet はURLをそのまま指定してロードすることが可能です。
ロード処理は非同期に行われるため、必ず完了を待つ必要があります。
ロード完了前に再生リクエストを行うとエラーが出力されます。

ローカルファイルパスの場合

"/"から始まるファイルパスを指定した場合です。
この場合、ファイルは Unity が使用する Emscripten のメモリファイルシステム上に存在し、同期的にロードすることが可能です。
WebGL環境で Application.persistentDataPath や Application.temporaryCachePath に書き込んだデータもこちらに含まれます。
そのため、サーバー上のデータ UnityWebRequest などで事前にダウンロードしておく方法も考えられます。
また、CRI Addressables経由で取得したリソースも該当します。Addressablesでの非同期APIが完了した時点でメモリファイルシステムに書き込まれており、 CriAtomAcbAsset.LoadImmediate など同期APIで読み込みが可能です。