memomem

備忘録・メモ置き場

Addressableで別プロジェクトからシーンをロードする

マップ側でAddressableをビルドし、作成したものを

読み込む側の

.exeと同一ディレクトリに

Projectでは、

Assetsと同一ディレクトリに

ServerData/StandaloneWindows64

を配置

読み込む側に、ビルドしたプロジェクトのLibrary/Addressable/com.unity.addressablesをコピーする

buildしたデータでは、XXX_Data/StreamingAsset/aa を同一のものにする?

上記は必要無し  

エラー

Player content must be built before entering play mode with packed data.
This can be done from the Addressables window in the Build->Build Player Content menu command.

上記エラーがでるときは、

読み込む側のAddressables Groups ウィンドウの「Build > New Build > Default Build Script」を押してアセットバンドルをビルドする。

【Unity プロジェクト】\Library\com.unity.addressables\StreamingAssetsCopy\aa\【プラットフォーム名】\

settings.jsonが存在しない場合にエラーが発生する。

シーンの読み込み

最初にcatalogを読み込む必要あり。

AddressableAssetsData/AddressableAssetSettings.asset(またはWindow>Asset Management > Addressables > Settings)

にcatalogの設定の記述はある。

// カタログの読み込み
string path = "XXXXX/catalog_0.1.json";
await Addressables.LoadContentCatalogAsync(path).Task;

// アセット(シーン)の読み込み
var o = Addressables.LoadSceneAsync("Map", LoadSceneMode.Additive);

VRで読み込んだときに片目だけしかレンダリングされない

Shader Variant Collection を作成し、Addressableにしbundleに含める

Custom/SurfaceShade(デフォルトのSurfaceShader)を作成し、Shader Variant Collectionに追加

bundleを再作成することで解決。

問題が改善しない場合は、Cleanしてbuildする。

参考

tsubakit1.hateblo.jp

kingmo.jp

synamon.hatenablog.com

synamon.hatenablog.com

zenn.dev

blog.nekoteam.com

unity.com

docs.unity3d.com

qiita.com

note.com

blog.applibot.co.jp

tech.sumzap.co.jp

AssetBundle

qiita.com

qiita.com