コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】Addressables で通信環境が悪い状態でサーバからアセットバンドルのダウンロードに失敗した時に内部で例外が出ないようにする方法

検証環境 Addressables 1.16.19 概要 Exception: Attempting to use an invalid operation handle UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationHandle.get_InternalOp () (at Runtime/ResourceManager/AsyncOperations/AsyncOperationHan…

【Unity】Addressables の Asset Group の Inspector で Advanced Options を常に開いた状態にしたい場合

検証環境 Addressables 1.16.19 概要 Addressable Asset Group の Inspector で Advanced Options は デフォルトが閉じた状態なので、各グループの Advanced Options を見たい場合に 毎回 Advanced Options の ▶ をクリックして開く必要がある BundleAssetGr…

【Unity】Addressables で Basic 認証が設定されたサーバからリモートカタログをダウンロードする方法

検証環境 Addressables 1.16.19 概要 Addressables はデフォルトでは Basic 認証が設定されたサーバから リモートカタログをダウンロードすることができない TextDataProvider.Start 関数で UnityWebRequest を使用して リモートカタログのダウンロードが実…

【Unity】Addressables でストレージの空き容量が不足している時にリモートカタログをダウンロードしても正常に動作するように

検証環境 Addressables 1.16.19 概要 Addressables ではサーバからダウンロードしたリモートカタログを 端末のキャッシュに保存する際に、ストレージの空き容量を確認していない そのため、空き容量が不足していると File.WriteAllText で例外が発生して Con…

【Unity】Addressables の LoadScene でアセットバンドルの読み込みに失敗した時に進行不能にならないようにする方法

検証環境 Addressables 1.16.19 概要 Addressables の LoadScene でシーン遷移する時に 通信環境が悪いなどの理由でアセットバンドルの読み込みに失敗した場合、 SceneProvider で AsyncOperationBase.Complete が呼ばれなくなり それ以降 Addressables の A…

【Unity】Addressables でリモートカタログをキャッシュに保存する時にメインスレッドが止まらないようにする方法

検証環境 Addressables 1.16.19 概要 Addressables で管理しているグループが多いと、 リモートカタログをキャッシュに保存する処理に時間がかかるようになり、 メインスレッドが止まってしまう 重たい処理は ContentCatalogProvider.OnCatalogLoaded 関数で…

【Unity】Addressables のビルドを Jenkins から実行する場合にビルドに失敗しても成功扱いにならないようにする方法

検証環境 Addressables 1.16.19 概要 Jenkins から Addressables のビルドを実行する場合、 アセットバンドルのビルドに失敗しても、 Jenkins 上ではビルドに成功したことになってしまった アセットバンドルをビルドする AddressableAssetSettings.BuildPlay…

【Unity】Addressables でリモートカタログの更新が存在するか確認する時にメインスレッドが止まらないようにする方法

検証環境 Addressables 1.16.19 概要 Addressables で管理しているグループが多いと、 Addressables.CheckForCatalogUpdates の処理に時間がかかるようになり、 メインスレッドが止まってしまう 重たい処理は CheckCatalogsOperation.Execute 関数なので こ…

【Unity】Addressables でカタログの JSON を読み込む時にメインスレッドが止まらないようにする方法

検証環境 Addressables 1.16.19 概要 Addressables で管理しているグループが多いと、 カタログの JSON のサイズが大きくなり、 カタログの読み込みに時間がかかるようになり、メインスレッドが止まってしまう カタログは JSONAssetProvider クラスで JsonUt…

【Unity】Uncaught (in promise) Your browser does not support WebGL.

概要 Uncaught (in promise) Your browser does not support WebGL. Unity で WebGL ビルドしたゲームを起動したところ 真っ黒な画面のままゲームが表示されない現象に遭遇した Chrome の Console を見てみると上記のエラーが表示されていた Chrome を再起動…

【Unity】Trying to add file "XXXX" to the list of output files in the build report, but the file does not appear to exist on disk right now.

概要 Trying to add file "XXXX" to the list of output files in the build report, but the file does not appear to exist on disk right now. Unity で Android ビルドする時に上記のエラーが発生することがあった アセットバンドルを StreamingAssets …

【Jenkins】ビルド履歴にビルドに使用したブランチ名などを表示する方法

概要 stage( "【ステージ名】" ){ steps { script{ currentBuild.description = "【ビルド履歴に表示する文字列】" } } } currentBuild.description を使用する 改行したい時は \n ではなく <br> を使用する 参考サイト様

【Jenkins】java.net.SocketTimeoutException: connect timed out

概要 java.net.SocketTimeoutException: connect timed out at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToA…

【Jenkins】ジョブの設定がうまくいかない時にログを確認する方法

概要 「Jenkinsの管理」を押して 「システムログ」を押して 「すべてのログ」を押すことで Jenkins のログを確認することができるので どうしてもジョブの設定がうまくいかない場合はここを参考にする 参考サイト様

【Mac】iPhone から Mac のローカルサーバに接続する方法

IP アドレスのメモ Mac の「システム環境設定 > ネットワーク」を開いて IP アドレスをメモしておきます iPhone の Wi-Fi 設定の変更 iPhone の設定を開きます 「Wi-Fi」を選択します 接続している Wi-Fi の「i」マークを選択します 「プロキシを構成」を選…