Unityの基本仕様として、以下にあるアセットがビルド特にアプリに含まれてしまいます。
・Resourcesという名前のフォルダ以下にあるアセット(Assets/ Resources 限らず、どこであってもResourcesという名前のフォルダ以下全て)
・ビルド対象の.unityシーンから参照しているアセット
アセットバンドル化したものであってもResourcesフォルダ以下にあるアセットはビルドに含まれてしまいます。
そのため、ビルドから除外したい場合は、元のアセットをResourcesフォルダ以下から移動する必要があります。
(移動しなくてもエラーにはならないですが、アプリのサイズが減りません)
>質問1> シナリオ関連アセットはResources_movedフォルダに移動させるのが正しいでしょうか。
シナリオ関連アセットという意味次第ですが、
もともとResouces以下にあったアセットなのであれば、基本的にはそうなります。
正確にはResources_movedフォルダではなくても、Resourcesフォルダ以下ではないならどこでもいいです。
Resources以下にないアセット(Scenarioフォルダ以下のアセットなど)をアセットバンドル化した場合は、移動しなくていいです。
> 質問2> (質問1が正の場合)どのファイルをどのフォルダ構成で配置すべきでしょうか。
「宴のシナリオ関連のアセット」というのが、プロジェクト名/Resources/プロジェクト名/以下にあるテクスチャなどのシナリオ用のリソースを含めての話なのであれば
アセットバンドル化したならResoucresフォルダ以下から移動する必要があります。
Resources_movedフォルダ以下に移動してもいいですし、別のフォルダでもいいです。
下記のスクリーンショットはサンプルプロジェクトのフォルダ構成ですが、
Sample/Resoucres/Sampleフォルダ以下にテクスチャ等のリソースがありますので、これらをアセットバンドル化したのであればそれは別のフォルダに移動する必要があります。
ただし、例外として、Androidではビデオ系の素材はアセットバンドル化すると正常にロードできないのがUnity側の仕様らしいですので、
Video系はアセットバンドル化せず移動しないようにしてください。
ちなみに、「Color Gradient Presets」「Fonts & Materials」「Sprite Assets」はTextMeshPro用のフォルダです。
これらは手動で追加作成する必要があるのでそれらがあるとは限らないですが、ドキュメントやサンプルではここにあることがあり、これはUnityとTextMeshProのデフォルト仕様(Resouces/Fonts & Materials/以下に置く必要がある)に従って配置しています。
これらも、アセットバンドル化せずに移動もしないようにしておいてください。
(これらもアセットバンドル化したい場合は、宴ではなくTextMeshPro側の話になるので対応方法はUnityに確認してください)
> また、フォルダ移動に伴って変更しなければいけない設定はありますか。
前提ではあるのですが、AdvEnginStaterのLocal系は使用できなくなります。
ただ、Addressableを使っているの出れば、
> 質問3> (質問1が否の場合)今回において、シナリオ関連アセットはどのように扱うべきでしょうか。
Resources以下にないアセット(Scenarioフォルダ以下のアセットなど)をアセットバンドル化した場合、
それらのアセットをビルドから完全に除外したいのであれば、ビルド対象の.unityシーンから参照されないようにする必要があります。
とはいえ、Addressableを使っているならAdvEngineStarterを使っていないと思うので、特にやる必要はないと思います。
AdvEngineStarterを使っていたり、AdvEngineStarterがシーン内に残っているのであれば
AdvEngineStarterの「Scenarios」をNoneにしてシーンからの参照を外してください。(ローカル実行での確認をしたい場合は設定をもどしてください)
AdvEngineStarterの「Scenario Project」はUnityエディタ上のみ有効なフィールドなので、ビルドからは除外されるのでそのままでいいです。
2025年9月12日金曜日 11:23:11 UTC+9 mini: