AssetBundleの作成方法
こちらに書きました。 unity2d.hateblo.jp
AseetBundleの使い方
- ビルドしてできたデータをサーバに配置
- ダウンロードして使用
これだけ。
AssetBundleを使う
サーバに配置
どこぞのWEBサーバに設置する node.jsをローカルにインストールしておいて、
GitHub - indexzero/http-server: a simple zero-configuration command-line http server
をインストールしておくと、コマンドラインでサクッとローカルにwebサーバーが起動します。
ダウンロードして使用
大まかには、
- WWW.LoadFromCacheOrDownloadでダウンロード
- WWW.assetBundleを取得
- AssetBundleから、LoadAssetを使用してデータを抜き出す
といった処理。
雑にコードにすると、以下。
using UnityEngine; using UnityEngine.UI; using System.Collections; public class AssetBundleLoader : MonoBehaviour { private AssetBundle assetBundleCache; public Image image; public IEnumerator Start() { Caching.CleanCache(); //キャッシュさせたい場合は消すべし(ダウンロードのテストなので書いてます) // Asset BundleのURL var url = "http://127.0.0.1:8080/imageset00"; //webサーバー上にAssetBundleをアップしておく // ダウンロード処理 var www = WWW.LoadFromCacheOrDownload(url, 1); while (!www.isDone) { yield return null; } // Asset Bundleをキャッシュ assetBundleCache = www.assetBundle; // リクエストは開放 www.Dispose(); // ロード完了後、Assetが取り出せるようになる image.sprite = assetBundleCache.LoadAsset<Sprite>("Image_02.png"); //もちろん、このファイル名をAssetBundleに入れておく必要あり } }
ひとまず、これをGameObjectにアタッチしておいて、
ヒエラルキーからImageを指定しておくと、読めるはず。
一見わかんないですが、サーバーからダウンロードして表示したイメージです。