Unity

Unity開発の新常識!? Localizationパッケージでアプリ内テキストを管理する

Localizationパッケージはローカライズだけではなくテキストを管理するのにとても便利なので、最初から入れておこうというお話です。 Localizationパッケージとは テキスト管理あるある Localizationでテキストを管理する 本来はローカライズのためのパッケ…

【Unity】URPでPBRライティングをする基本的なシェーダの書き方まとめ

UnityのUniversal Render Pipeline(URP)でPBRライティングをする基本的なシェーダを書く方法をまとめました。 はじめに 方針の整理 シェーダ 結果 関連 Unity2020.3.15f2 Universal RP 10.5.1

【Unity】【シェーダ】ゼロのゼロ乗は「1、あるいは未定義」だと言うことを実感した話

Unityのシェーダでゼロのゼロ乗は「1、あるいは未定義」だと言うことを実感した話をまとめました。 pow関数の不可解な挙動 ゼロのゼロ乗は1あるいは未定義である どうすればいいのか 参考

【Unity】シェーダでUNITY_VERSIONマクロを使ってUnityエディタのバージョンごとに処理を変える

UnityのシェーダでUNITY_VERSIONマクロを使ってUnityエディタのバージョンごとに処理を変える方法です。 はじめに シェーダ 結果 参考

【Unity】【Localization】プラットフォームごとにローカライズ値を出し分けるPlatform Overrides

UnityのLocalizationパッケージで、プラットフォームごとにローカライズした値を出し分ける方法についてまとめます。 はじめに 基本的な使い方 Entry Override Typeについて 独自のPlatform Overridesを作成する 関連 参考

【Unity】【Localization】iOS/Androidのアプリ名などをローカライズする

UnityのLocalizationパッケージでiOSやAndroidのアプリ名などをローカライズする手順をまとめました。 はじめに iOSのアプリ名をローカライズする Androidのアプリ名をローカライズする 関連 参考 Unity 2020.3.15f2 Localization 1.2.1

【Unity】【Localization】Pseudo-Localizationでローカライズに関する色んなテストを行う

UnityのLocalizationパッケージのPseudo-Localization機能を使って、ローカライズに関する色んなテストを行う方法についてまとめました。 はじめに 基本的な使い方 Pseudo-Localization Methodの説明 Expander Accenter Encapsulator Preserve Tags Characte…

【Unity】【Localization】ローカライズ文字列をSpreadSheetと連携する

UnityのLocalizationパッケージでローカライズ文字列をSpreadSheetと連携する方法についてまとめました。 はじめに 認証情報を設定する Sheets Service Providerを作成・設定する String TableをSpreadSheetと連携する 関連 参考

【Unity】【Localization】ローカライズ文字列をCSVに入出力する

UnityのLocalizationパッケージでローカライズ文字列をCSVに入出力する方法についてまとめました。 はじめに CSVとして出力する CSVからインポートする CSVインポート・エクスポート設定 関連

【Unity】【Localization】ローカライズしたアセットを動的に切り替える

UnityのLocalizationパッケージでローカライズしたアセットを動的に切り替える方法についてまとめました。 やりたいこと Component Localizerでローカライズする 動的にTableEntryを差し替える 結果 関連 参考

【Unity】【Localization】あらゆる種類のアセットをローカライズできるようにする方法まとめ

UnityのLocalizationパッケージであらゆるアセットをローカライズ対応する方法をまとめます。 はじめに Component Localizerでローカライズできるか確認する Component Localizerでローカライズできるようにする LocalizedAssetEventを継承したクラスを作成…

【Unity】【エディタ】Edit ModeでスクリプトからUnityEventにリスナを登録して永続化する

UnityでEdit ModeでスクリプトからUnityEventにリスナを登録して永続化する方法についてまとめました。 やりたいこと 引数なしのメソッドを登録する 引数ありUnityEventに引数ありのメソッドを登録する 引数なしのUnityEventに引数ありのメソッドと引数を設…

【Unity】URPにおけるシェーダのLightModeの用途を整理する

UnityのUniversal Render PipelineにおけるシェーダのLightModeの用途を整理しました。 はじめに LightModeまとめ 関連 参考

【Unity】【Localization】スクリプトで操作する方法総まとめ

UnityのLocalizationパッケージの各処理をスクリプトで操作する方法についてまとめました。 はじめに 初期化する・初期化を待機する 初期化しなおす Localeを変更する テーブルをプリロードする テーブルを取得する エントリを取得する テーブルを強制的に解…

【Unity】【エディタ】アセンブリリロード時に消えない値を保持するSessionStateの使い方まとめ

Unityでアセンブリリロード時に消えない値を保持するSessionStateの使い方をまとめました。 SessionState? 使い方 ホットリロードについて 関連 参考

【Unity】【URP】ライトの光をマスクするLight Cookieの使い方まとめ

UnityのURPでライトの光をマスクするLight Cookieの使い方をまとめました。 はじめに テクスチャを用意する ライトにクッキーを設定する ポイントライトやディレクショナルライトに適用する 参考

【Unity】Profiling Core APIを使ってProfilerに表示する情報を拡張する

UnityのProfiling Core APIを使ってProfilerに表示する情報を拡張する方法についてまとめました。 はじめに インストール ProfilerMarkerをCustomSamplerのように使う メタデータを埋め込む 独自のカウンターグラフを作成する 関連 参考

【Unity】【Localization & Addressables】ローカライズリソースのロードとダウンロード・メモリ管理の仕組みをちゃんと理解する

UnityのLocalizationパッケージにおけるローカライズリソースのロードとダウンロードの仕組みをまとめます。 はじめに 基本はLocale初期化時にプリロード プリロードしない場合には必要になったときにロードされる 手動でプリロードする メモリの解放タイミ…

【Unity】【URP】Custom Vertex Streams + GPUインスタンシングに対応したParticleSystem用シェーダを書く

UnityのURPでCustom Vertex Streams + GPUインスタンシングに対応したParticleSystem用シェーダを書く方法についてまとめました。 やりたいこと Custom Vertex Streams + GPUインスタンシング対応シェーダ 挙動を確認する フラグメントシェーダでインスタン…

【Unity】【Localization】ローカライズした値を適用する二通りのワークフローまとめ

UnityのLocalizationパッケージでローカライズした値を適用する二通りのワークフローをまとめました。 はじめに 値を適用する二通りの方法 準備: Localization Tableを作成する Component Localizerを使う方法 Localized Property Variantsを使う方法 Locali…

【Unity】【Localization】Locale Selectorでアプリ起動時の言語を設定する方法まとめ

UnityのLocalizationパッケージのLocale Selectorでアプリ起動時の言語を設定する方法についてまとめました。 はじめに Locale Selectorの役割 Locale Selectorの設定方法 Locale Selectorの種類 カスタムLocale Selector 関連 参考

【Unity】【Addressables】シーンのロードと初期化タイミングをちゃんと理解する

Unityにおけるシーンのロードと初期化タイミングについてまとめました。 シーンのロード SceneManager.LoadScene SceneManager.LoadSceneAsync 2022/02/25追記 Addressables.LoadSceneAsync

【Unity】画面遷移におけるビューとロジックの分離手法とUnity Screen Navigatorを使った具体例

画面遷移におけるビューとロジックの分離手法とUnity Screen Navigatorを使った具体例をまとめました。 ビューとロジックを分離することの意義 本記事で作る画面の説明 まずは全部ビューに書く 上記の実装の問題点 ビューとロジックを分離する ダミーデータ…

【Unity】Text Mesh Proで表示できない文字を非表示にする

UnityのText Mesh Proで表示できない文字を非表示にする方法です。 はじめに 結合文字などの特殊な文字を削除する 表示できない文字を削除せず非表示にする 関連

【Unity】【URP】Radial Blur(放射状ブラー)のポストエフェクトを実装する(公式未対応バージョン)

UnityのURPでRadial Blur(放射状ブラー)のポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを書く Volumeスクリプト作成する ScriptableRenderPassを作成する ScriptableRendererFeatureを作成する シーンに適用する 関連

【Unity】【URP】Flip-Book Blendingに対応したParticle用シェーダを書く

UnityのURPで、Flip-Book Blendingに対応したParticle用シェーダを書く方法についてまとめました。

【Unity】本当は知っておくべきUnityのホットリロードの仕組み

Unityのホットリロードの仕組みについてまとめます。 はじめに ホットリロードの仕組み ランタイムにおけるホットリロードの動作確認 エディタとホットリロードの関係 エディタ拡張におけるホットリロードに関する知識の重要性 関連 参考

【Unity】SerializeReferenceをつけている型をリネーム・削除する時の注意点

UnityでSerializeReferenceをつけている型をリネーム・削除する時の注意点についてまとめます。 はじめに リネームに起こること リネーム時にはMovedFromアトリビュートをつける クラスを削除する場合 いずれこの対応は不要になるかも 関連 参考

【Unity】【HDRP】Radial Blur(放射状ブラー)のポストエフェクトを実装する

UnityのHDRPでRadial Blur(放射状ブラー)のポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを作成する Volumeスクリプトを作成する シーンに適用する 関連

【Unity】HDRPでカスタムポストエフェクトを実装する

UnityのHDRPでカスタムポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを作成する スクリプトを作成する シーンに適用する 参考