トラブルシューティング
ファイルサイズの削減

Unity の Asset Bundle Browser ツール

(注) このツールは Unity の標準機能に対する追加的な機能です。使用するためには、標準の Unity エディターのダウンロードおよびインストールとは別に、 GitHub からダウンロードとインストールを行う必要があります。

Asset Bundle Browser (アセットバンドル ブラウザー)ツールは、Unity プロジェクトで使用するアセットバンドルの設定や確認を行えるようにするものです。無効なバンドルが作成されるような編集をブロックし、既存のバンドルに含まれる問題も通知してくれます。また基本的なビルド機能も搭載しています。

アセットバンドルの設定はインスペクター内でアセットを選択して手動で行えますが、このツールはその代替方法として使用できます。バージョン 5.6 以降の Unity プロジェクトであれば追加可能です。ツールを追加すると、メニューの Window > AssetBundle Browser に新しいメニューアイテムが追加されます。新しいウィンドウに、バンドルの設定(Configure)とビルド機能(Build)の 2 つのタブが表示されます。

バージョン 5.6 以降の Unity が必要です。

Configure タブの機能説明

(注) このユーティリティはプレリリース版ですので、ご使用前にプロジェクトのバックアップを取ることをお勧めします。

このウィンドウはプロジェクトのアセットバンドルの管理、変更をエクスプローラーのようなインターフェースで行うことができます。開くとまず、ツールはバックグラウンドですべてのバンドルデータを解析し、次第に検出した警告やエラーを表示します。プロジェクトとの同期は可能な限り維持する仕組みになっていますが、ツール外部のアクティビティを全て認識できる訳ではありません。エラー検出時にクイックパスを強制する、または外部で行われた変更でツールを更新するには、左上の再読み込みボタンを押してください。

ウィンドウは Bundle List、Bundle Details、Asset List、Asset Details に 4分割されています。

Bundle List (バンドル一覧)

ウィンドウの左側に表示されるセクションです。ここにはプロジェクト内のバンドルの全一覧が表示されます。以下の機能が利用できます。

  • 特定の 1 つまたは一式のバンドルを選択すると、 Asset List のセクションに、そのバンドルに含まれるアセットの一覧が表示されます。

  • バリアントを含むバンドルは濃いグレーで表示され、展開するとバリアント一覧が表示されます。

  • バンドルやバンドルフォルダーの名前を変更するには、右クリック、またはゆっくり 2 回クリックします。

  • バンドルにエラーや警告や情報のメッセージがある場合は、右側にアイコンが表示されます。カーソルをこのアイコン上に持って行くと詳細情報が表示されます。

  • バンドルに最低 1 シーンが含まれていて (シーンバンドル)、明示的に含まれるシーンアセットがない場合、エラー有りと表示されます。エラーを修正するまで、このバンドルはビルドされません。

  • 重複したアセットには警告のマークが出ます。(重複についての詳しい説明は、以下、 Asset List の項をご覧ください。)

  • 空のバンドルには情報メッセージのマークが表示されます。様々な理由により、空のバンドルは不安定になり、この一覧から消失してしまうことがあります。

  • バンドルのフォルダーには、それに含まれるバンドルの一番上のメッセージのマークが表示されます。

  • バンドルに重複したアセットが含まれている場合は以下の手順で修正できます。

    • 特定の(1 つの)バンドル上で右クリックし、全ての重複アセットを別の新しいバンドルに移動します。

    • 複数のバンドル上で右クリックし、選択中の複数のバンドル内にある全ての重複アセットを新しいバンドルに移動させます。あるいは、選択中のバンドル内で重複しているアセットのみを新しいバンドルに移動させます。

    • Asset List セクションから Bundle List セクションに重複アセットをドラッグ&ドロップすることによって手動で任意のバンドルに入れることも可能です。詳細は以下の Asset List の機能一覧をご覧ください。

  • 右クリックまたは Delete キーでバンドルを削除できます。

  • バンドルをドラッグしてフォルダー内/外に移動したり、マージしたりできます。

  • Project Explorer からアセットをバンドルにドラッグして追加することができます。

  • 空の領域にアセットをドラッグすると新しいバンドルが作成されます。

  • 右クリックで、新しいバンドルやバンドルフォルダーの作成を行えます。

  • 右クリックで “Convert to Variant (バリアントに変換)” できます。

    • これにより、選択したバンドルにバリアント(初期設定では “newvariant”)が 1 つ追加されます。

    • 選択中のバンドルにその時点で含まれている全てのアセットが、新しいバリアント内に移動されます。

    • [近日実装予定の機能] バリアント間の不整合の検知

バンドルの種類(通常のバンドルまたはシーンバンドル)を示すアイコンが表示されます。

標準バンドルのアイコン
標準バンドルのアイコン
シーンバンドルのアイコン
シーンバンドルのアイコン

Bundle Details (バンドルの詳細)

ウィンドウの左下のセクションです。 Bundle List のセクションで選択されているバンドルの詳細情報が表示されます。ここには以下の情報(の中で入手可能なもの)が表示されます。

  • バンドルの合計サイズ(全アセットのディスク上のサイズの合計)

  • 現在のバンドルが依存しているバンドル

  • 現在のバンドルに関連する全てのメッセージ(エラー、警告、情報)

Asset List (アセット一覧)

ウィンドウの右上のセクションです。 Bundle List のセクションで選択されているバンドルに含まれるアセットの一覧です。ここでは以下の機能が利用可能です。

  • バンドルに含まれることになるアセットの全一覧を確認できます。列のヘッダーをクリックするとアセットの並び替えが可能です。

  • バンドルに明示的に含められたアセット(つまり特定のバンドルをあなたが手動で割り当てたアセット)がどれか確認できます。明示的に行われた割り当てはインスペクターに反映されます。このビューでは、アセット名の隣にバンドル名が表示されます。

  • バンドルに暗黙的に(自動的に)含められたアセットがどれか確認できます。アセット名の横のバンドル名の欄に auto (「自動」)と表示されます。これらのアセットをインスペクター上で確認すると、割り当てられたバンドルを示す欄に None (「無し」)と表示されます。

    • これらは、選択中のバンドル内にある別のアセットに依存しているために同じバンドルに含められたアセットです。自動でどれかのバンドルに含められるのは、どのバンドルにも手動で割り当てられていないアセットのみです。

    • 暗黙的に含められたアセットの一覧は不完全な場合がありますのでご注意ください。マテリアルやテクスチャが正常に表示されないというバグが報告されています。

    • 複数のアセットが同じ依存関係を共有する場合もあるため、特定のアセットが複数のバンドルに自動的に含められることもよくあります。これがツールによって検知されると、そのバンドルとアセットに警告アイコンが表示されます。

    • アセットの重複割り当ての警告を修正するには、新しいバンドルに手動でアセットを移動するか、バンドルの上で右クリックして “Move duplicate” (「重複を移動」)のオプションからひとつ選択します。

  • Project Explorer からこのビューにアセットをドラッグして、選択したバンドルに加えることができます。この操作は、バンドルが 1 つだけ選択され、アセットタイプと互換性があるとき (例えば、シーンバンドルに対してシーン) のみ、有効です。

  • Asset List から Bundle List にアセットをドラッグして別のバンドルや新規作成したバンドルに追加することができます。(これは、そのアセットが手動で含められたものか、自動で含められたものかに関わらず行うことができます。)

  • バンドルからアセットを削除するには、右クリックまたは Delete キーを使用します。(プロジェクトからアセットが削除される訳ではありません。)

  • アセットを選択またはダブルクリックすると、それが Project Explorer 上に表示されます。

[フォルダーにバンドルを含めるに当たっての注記] 特定のアセットフォルダーを( Project Explorer で)バンドルに割り当てることができます。これをブラウザで確認すると、フォルダー自体は明示(手動)、中身は暗黙(自動)として表示されます。これは、アセットのバンドルへの割り当てに使用される優先順位のシステムが反映されたものです。例えば、ゲームの Assets/Prefabs 内にプレハブが 5 つあって、 “Prefabs” フォルダーを特定のバンドル内にあるものとしてマーキングし、実際のプレハブのうち 1 つ(“PrefabA”)を別のバンドル内にあるものとしてマーキングしたとします。これがビルドされると、 “PrefabA” がひとつのバンドルに入り、他の 4 つが別のバンドルに入ることになります。

Asset Details (アセットの詳細)

ウィンドウの右下のセクションです。 Asset List のセクションで選択されているアセットの詳細が表示されます。このセクションで行えるインタラクションはありませんが、以下の情報(のうち入手可能なもの)が表示されます。

  • アセットのフルパス

  • 自動的に含められたものである場合は、その理由

  • 警告がある場合は、その理由

  • エラーがある場合は、その理由

トラブルシューティング

  • [特定のバンドルの名前変更や削除ができない] 既存のプロジェクトに本ツールを追加した場合、この状況が起こる場合があります。データをリフレッシュするために、 Unity のメニューシステムからアセットを強制的に再インポートしてください。

外部ツールのインテグレーション

アセットバンドルデータを生成するその他のツールを、ブラウザとインテグレーションすることが可能です。現在、 AssetBundle Graph ツール が良い例です。インテグレーションが検出された場合は、ブラウザの上部に選択バーが表示されます。デフォルトのデータソース (Unityの AssetDatabase) かインテグレーションしたツール、いずれかを選択できます。なにも検出されない場合、選択できるものはありませんが、タブヘッダーを右クリックして Custom Sources を加えることができます。

Build タブの機能説明

Build タブには、アセットバンドルの使用を開始するに当たって必要な基本的なビルド機能が提供されています。商業用の開発においては、ほとんどの場合、より高度なビルドのセットアップが必要となります。ここで提供されている機能だけでは事足りなくなった場合は、ぜひ独自のコード作成の参考として本ツール内のコードを使ってください。インターフェースは以下のようになっています。

  • Build Target - バンドルがビルドされるターゲットのプラットフォーム

  • Output Path - ビルドされたバンドルを保存するパスです。デフォルトでは AssetBundles/ となっています。パスの変更は手動あるいは “Browse” を選択することで行えます。デフォルトの命名規則に戻すには “Reset” を押してください。

  • Clear Folders - ビルドが行われる前に、ビルドのパスのフォルダーの全データが削除されます。

  • Copy to StreamingAssets - ビルドの完了後にリザルトが Assets/StreamingAssets にコピーされます。テストを行う場合に役立ちますが、製品版では使用されません。

  • Advanced Settings (高度な設定)

    • Compression - No compression (非圧縮)、 Standard LZMA (標準 LZMA)、 Chunk-based LZ4 compression (チャンクベースの LZ4 圧縮)のどれかをご選択ください。

    • Exclude Type Information - アセットバンドル内にタイプ情報を含まない

    • Force Rebuild - ビルドが必要なバンドルを再ビルドする。これは “Clear Folders” とは異なり、既に存在しないバンドルの削除を行いません。

    • Ignore Type Tree Changes - インクリメンタル ビルドのチェック時にタイプツリーの変更を無視します。

    • Append Hash - アセットバンドル名にハッシュを付加します。

    • Strict Mode - ビルド中に何らかのエラーがレポートされている場合は、ビルドを停止する

    • Dry Run Build - ドライランモードでビルドする

  • Build - ビルドを実行する



  • 2017–05–18 限られた 編集レビュー でパブリッシュされたページ

  • 5.6 の新機能

トラブルシューティング
ファイルサイズの削減