うにてぃブログ

主にUnityとC#に関する記事を書いていきます

2023-08-01から1ヶ月間の記事一覧

【Unity】Broken text PPtr in file(***.controller). Local file identifier (-7404026014276284922) doesn't exist!【Error】

アセットバンドルのビルド時に、以下のエラーが発生しビルドすることができなくなりました Broken text PPtr in file(Hoge.controller). Local file identifier (-7404026014276284922) doesn't exist! 実際に内部を見てみると、対象のアセット参照をもった …

【Unity】Asset の Version を強制的に更新する

Unityのバージョンをアップデートすると、アセットの設定が変更されることがあります(serializedVersionが更新されることがあります)。 基本的に、アセットのメタファイルが差分があるときに更新される際に、その設定が変更されている場合は、設定も同時に…

【Unity】Addressables のカタログに対象のアドレスが含まれるかどうかを調べる

public static async UniTask<bool> Contains(string address) { var opHandle = Addressables.LoadResourceLocationsAsync(address); await opHandle; if (opHandle.Status == AsyncOperationStatus.Succeeded && opHandle.Result != null && opHandle.Result.Cou</bool>…

【Unity】Addressable でディレクトリにアドレスを設定する意味

Addressable ではディレクトリにアドレスを設定することができる しかし、実際にそのアドレスをロードしようとすると、次のエラーが出てしまいます UnityEngine.AddressableAssets.InvalidKeyException: Exception of type 'UnityEngine.AddressableAssets.I…

【Unity】Addressable で「Use Existing Build」の際に Local Group はAddressable からロードするようにする

Addressable では 「Use Existing Build」の場合ローカルとリモートのグループともにカタログに記載されていなればロードできない しかし、ローカルグループの量が多かったりするとテストのたびにローカルのビルドをするのは時間がかかってしまいます そのた…

【Unity】Addressables Group BuildPath・LoadPath をスクリプトから変更する

var settings = AddressableAssetSettingsDefaultObject.Settings; var schema = settings.DefaultGroup.GetSchema<BundledAssetGroupSchema>(); // Remote のパスを設定 schema.BuildPath.SetVariableByName(settings, AddressableAssetSettings.kRemoteBuildPath); schema.LoadPath.</bundledassetgroupschema>…

【Unity】Insecure connection not allowed【Error】

Unity 2022以降 Addressable でリモートのバンドルをロードする際にデフォルトの設定だと リモートからカタログやバンドルをロードする際に以下のエラーが発生する Non-secure network connections disabled in Player Settings Insecure connection not all…

【Unity】Addressable の Path を動的に変更する

Addressable の Path には Static なクラスの参照をもたせることができる 例えば以下のクラスのパスで置き換えたい場合は public static class AddressableUtil { public static string LoadPath; } このように記述すればカタログのロード時に置き換えること…

【Unity】Addressable をローカルサーバを立ててそこからロードする

Hosting Window から Hosting するように変更 ブラウザから記述してあるURLにアクセスし、 Console にログが表示されれば起動しています 今回であれば http://192.168.1.8:59595/ が URL になります これを先にしないと以下のように[HostingServicePort]が置…

【Unity】Addressable で指定ディレクトリ以下にあるアセットに自動でAddressを設定する

Addressable Asset Sysytem では Addressable Group の EditorWidow からアドレスを設定する作りとなっており、自動化したい場合は自前でなにかしらの処理を書く必要がある 大体同じ処理を書くと思うので自動的にアドレスを設定する PostProcessor を作成し…

【Unity】Vignette ImageEffect【ShaderGraph】

Unity PostProcessing の Vegnette Shader を参考に ImageEffect で利用できる ShaderGraph を作成しました パラメータは以下になります こちらからDLして利用してください

ポストプロセス処理一覧

ブルーム デプスオブフィールド 色補正 トーンマッピング アンビエント・オクルージョン モーションブラー クロマキー レンズフレア ノイズとグレイン ビネット アンチエイリアシング レンズディストーション フォグ SSR(Screen Space Reflections) SSAO(…

【C#】整数値を特定の方法で変換してアルファベット列として返す処理

private string GetNumberName(int num) { string result = ""; while (num >= 0) { result = (char)(num % 26 + 'A') + result; num = num / 26 - 1; } return result; } // A GetNumberName(0) // Z GetNumberName(25) // AA GetNumberName(26) // MHYV Ge…

【Unity】SceneView をクリックした場所のオブジェクト一覧を取得する

HandleUtility.PickGameObject を利用すれば対象位置のオブジェクトを取得できますが、すべて取得できません そのため、Ignoreに取得したオブジェクトを詰め込むことですべてのオブジェクトを取得することができます using System.Collections.Generic; usin…