UnityUnityでAssetBundleをダウンロード・保存する方法はいろいろなやり方があってどれを使えばいいのかわかりづらいです。そこで、UnityでAssetBundleをダウンロードする方法をすべてまとめてみました。DownloadHandlerBuffer1つ目の方法はUnityWebRequest.Get()を使って通信を処理する方法です。Downloadの処理を行うDownloadHandlerとしてはデフォルトのDownloadHandlerBufferを使います。この方法ではダウンロード完了時にバイト配列としてAssetBundleが得られます。AssetBundle.LoadFromMemory(data);}ディスクへの書き込みはFileクラスやFileStreamを使います。汎用的なダウンロード方法ですが、以降の方法に比べて最適化はされていません。DownloadHandlerFile次に、DownloadHandlerをFile保存に特化したものに差し替えてみます。このハンドラを使うとディスクへの書き込みまでをやってくれます。データを受信した順に都度書き込みを行ってくれるのでメモリにも優しいです。暗号化などUnityがサポートしない実装が自由にできるメリットがあります。DownloadHandlerAssetBundleUnityWebRequest.Getの代わりにUnityWebRequestAssetBundle.GetAssetBundleを使う方法もあります。これを使うと、AssetBundleをUnityが管理する保存先に保存してくれます。その保存先にAssetBundleが保存されている場合にはダウンロードしないでそちらから取得してくれます。handler.assetBundle;}キャッシュの仕組みについては本記事では詳しく触れません。下記の記事でとても詳しく検証されています。次の記事の後半で紹介されているように自作のDownloadHandlerを使うこともできます。techblog.kayac.comUnityWebRequestすら使わない一応、次の記事のようにUnityWebRequestすら使わないという手もあります。»プロフィールUnityエンジニア。グラフィックスへの興味が強めです。インストールから基本的な使い方・注意点まとめ【Unity】【エディタ拡張】テクスチャを指定したUV座標で切り取って保存する【Unity】指定したアセットのAssetBundle名を取得する【Unity】【シェーダ】スクリプトからVP行列を渡してシェーダで座標変換に使う【Unity】【シェーダ】FloatやVectorをリニアライズ対象にするGammaアトリビュート月別アーカイブはてなブログをはじめよう!halya_11さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。