アセットバンドルが実際にどのように機能するかについて多くの情報を見つけるのに苦労しています。ゲーム ビルドでアセット バンドルを管理する方法についての説明が見つかりません。
AssetBundles
基本的に、プロジェクトウィンドウにというフォルダーがあります。このフォルダーに配置したすべてのアセットは、ビルド ディレクトリ (GameName/Data/AssetBundles など) 内のフォルダーに AssetBundles としてビルドされ、必要に応じて読み込まれます。
しかし、私がゲーム自体を構築するとき、ゲームビルドでアセットバンドルで使用されているこれらの資産を含めないことを知っていますか?
編集:私はいくつかの進歩を遂げました。
私の理解では、ビルド設定にあるシーンに存在するアセットのみがゲーム ビルドでビルドされます。スクリプトは常にゲーム ビルドでビルドされます (これを回避する方法があるかどうかはわかりませんが、私にとっては問題ではありません)。
だから私は、ゲームのスタートアップ オブジェクトとして機能するゲーム ビルドにある単一のシーンを持っています。DontDestroyOnLoad
このシーンには、 で指定された Asset Manager スクリプトがありますAwake
。
私のアセット マネージャー スクリプトは基本的に、バンドル、アセット、およびインスタンスのロード/アンロードを処理するだけです。
現在、シーンのアセット バンドルの構築方法についてはよくわかりません。を使用して動作させていますLoadAllAssets
がLoadLevel
、複数のシーンがいくつかのアセットを共有している場合はどうなりますか? シーン ビルドは、共有可能なアセットのコピーを持って肥大化しますか? Unity 5 では依存関係が自動的に処理されると読みましたが、それがこれに関係しているかどうかはわかりません。