コガネブログ

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

2020-04-05から1日間の記事一覧

【Unity】Addressable Asset System の InitializeAsync を複数回呼び出したい場合

概要 Addressables.InitializeAsync でリモートカタログがダウンロードされるが ダウンロードに失敗した場合も内部では初期化済みフラグが立ってしまう AddressablesImpl.hasStartedInitialization がそのフラグ フラグが立ってしまうと、再度 Addressables.…

【Unity】Addressable Asset System の AddressablesImpl.hasStartedInitialization をリフレクションで false にする方法

概要 var addressablesType = typeof( Addressables ); var assembly = addressablesType.Assembly; var addressablesImplType = assembly.GetType( "UnityEngine.AddressableAssets.AddressablesImpl" ); var addressablesImplField = addressablesType.Get…

【ReSharper】Reformat Code 時にステートメント形式のラムダを一行にまとめない方法

概要 上記のように Reformat Code 時にステートメント形式のラムダが 一行にまとめられるのをやめたい場合は 「Place simple anonymous method on single line」をオフにする

【Unity】Addressable Asset System の AddressableAssetsData フォルダ以下のアセットはビルドに含まれない

概要 Assets/AddressableAssetsData フォルダ以下のアセットはビルドに含まれない ビルド後に Editor.log の Build Report を見ても含まれていない

【Unity】Addressable Asset System でカタログに記述されているアセットバンドルの一覧をログ出力するエディタ拡張

概要 [MenuItem( "Tools/Hoge" )] private static void Hoge() { var path = @"Library\com.unity.addressables\StreamingAssetsCopy\aa\Windows\catalog.json"; var json = File.ReadAllText( path ); var data = JsonUtility.FromJson<ContentCatalogData>( json ); var intern</contentcatalogdata>…

【Unity】Addressable Asset System で PlatformMappingService.GetAddressablesPlatformInternal をリフレクションで参照する関数

概要 private static AddressablesPlatform GetPlatform( BuildTarget target ) { const string methodName = "GetAddressablesPlatformInternal"; var serviceType = typeof( PlatformMappingService ); var targetType = typeof( BuildTarget ); var metho…

【C#】AmbiguousMatchException: Ambiguous match found.

C#

はじめに private static string GetParam( Hoge hoge ) { ... } private static string GetParam( Fuga fuga ) { ... } 例えば上記のように、引数が違う同名の関数がオーバーロードされており、 var attr = BindingFlags.Static | BindingFlags.NonPublic; …

【Unity】Git で Clone や Pull した時に AddressableAssetSettings.asset が変更状態になる現象を防ぐエディタ拡張

概要 自分の環境だと Git で Clone や Pull した時に AddressableAssetSettings.asset の改行コードが Win から Unix になってしまっていたので、 エディタ拡張で改行コードを Win にするようにした git の core.autocrlf を使おうかと思ったが、現象が発生…