UnityEditor

【Unity】【エディタ】WindowsとMacでパスを正しく取り扱う

はじめに プラットフォームとディレクトリ区切り文字 プラットフォーム依存問題 UnityのAPIとパス .NETとパス Unityでパスを正しく扱う 関連 参考

【Unity】【エディタ】Preset ManagerでAddコンポーネント時・アセットインポート時のデフォルト値を設定する

UnityのPreset ManagerでAddコンポーネント時・アセットインポート時のデフォルト値を設定する方法についてまとめました。 できることの例 コンポーネントアタッチ時のデフォルト値を設定 アセットインポート時のデフォルト値を設定 ScriptableObject作成時…

【Unity】Unity2021.2の新機能を組み合わせてインポート時間を最速化する

Unity2021.2の新機能を組み合わせてインポート時間を最速化する方法をまとめました。 はじめに インポート時にワーカープロセスを立ち上げる Asset Import Overrideでテクスチャのインポートを高速化する Import Activity Windowでインポート時間を分析する …

【Unity2021.2新機能】各アセットのインポート時間が一覧表示できるImport Activity Window

Unity2021.2新機能である、各アセットのインポート時間が一覧表示できるImport Activity Windowについてまとめます。 はじめに 使い方 重いインポート処理を書いてみる OnPostprocessAllAssetsで書いた処理は計上されないので注意 参考

【Unity2021.2新機能】Asset Import Overrideでテクスチャのインポートを高速化する

Unity2021.2新機能であるAsset Import Overrideでテクスチャのインポートを高速化する方法をまとめます。 Asset Import Override? 使い方 プロジェクトを開く際に有効化する ビルドにも影響するので注意 関連 参考

【Unity】Unity HubのAdvanced Project Settingsでプロジェクトを開く際のコマンドライン引数を指定する

Unity HubのAdvanced Project Settingsでプロジェクトを開く際のコマンドライン引数を指定する方法です。 Advanced Project Settings 使ってみる 参考

【Unity】【エディタ拡張】TimelineのClipの見た目を拡張する

UnityでTimelineのClipの見た目を拡張する方法についてまとめました。 やりたいこと Clipの見た目を拡張する DrawBackgroundでできないことはClipDrawOptionsで Clipのライフサイクルイベント ソースコード全文 関連

【Unity】【エディタ拡張】複数のカスタムPropertyAttributeを作るとPropertyDrawerが競合する問題とその対応策

Unityで複数のカスタムPropertyAttributeを作るとPropertyDrawerが競合する件とその対応策についてまとめます。 問題点 ソースコード EnabledIfAttributeをMultiPropertyAttributeで実装する NormalizedAnimationCurveAttributeをMultiPropertyAttributeで実…

【Unity】Unity2020.1からProfilerがスタンドアロンで起動可能に、プロファイリング時のノイズが減少

Unity2020.1からProfilerがスタンドアロンで起動可能になり、プロファイリング時のノイズを減らすことができるようになりました。 はじめに 起動方法 参考

【Unity】【エディタ拡張】AnimationCurveを正規化するアトリビュートを作る

Unityのエディタ拡張でAnimationCurveを正規化するアトリビュートを作る方法についてまとめます。 やりたいこと ソースコード 使い方 関連

【Unity】Visual Scripting(旧Bolt)でScript Machineのカスタムユニットを作成する方法まとめ

UnityのVisual Scripting(旧Bolt)でScript Machineのカスタムユニットを作成する方法をまとめました。 はじめに ログ出力を行うユニットを作成する 加算するユニットを作る 1秒後にログ出力する、コルーチン用のユニットを作る ユニットのヘッダで値を設定で…

【Unity】asmdefのVersion Definesを使って特定のPackageがインストールされていたら自動的に処理を変える

特定のPackageがインストールされていたら処理を変えるAssembly Definitionを作る方法です。 はじめに 対象のパッケージをインストールしておく Assembly Definition Fileを作る Define Symbolを定義する Version Definesを設定 設定完了 参考

【Unity】エディタでデータを保存する場所と保存方法まとめ

Unityのエディタでデータを保存する場所と保存方法についてまとめました。 保存する場所の分類 Assetsフォルダ Preferenceフォルダ Projectフォルダ Libraryなど共有しないフォルダ 保存・読み込み方法まとめ AssetDatabase FileIO EditorPrefs SettingsProv…

【Unity】【エディタ】EditorUserSettingsでユーザ毎のエディタ設定を管理する

UnityのEditorUserSettingsでユーザ毎のエディタ設定を管理する方法です。 EditorUserSettings? 使用例

【Unity】PlayerSettingのPreloadedAssetsでメモリに常駐するファイルをシンプルに管理する

UnityのPreloadedAssetsでメモリに常駐するファイルをシンプルに管理する方法です。 PreloadedAssets? PreloadedAssetsの使い方 使用例 参考

【Unity】【エディタ】アセットが作成・削除・移動・保存される「前」のタイミングをフックするAssetModificationProcessor

Unityでアセットが作成・削除・移動・保存される前のタイミングをフックする方法です。 AssetModificationProcessor 作成・削除・移動の後処理を記述するにはAssetPostprocessor 関連 参考

【Unity】【エディタ】EditorBuildSettingsのConfigObjectでプロジェクト毎のエディタ設定を保存する

UnityでConfigObjectでプロジェクト毎のエディタ設定を保存する方法です。 ConfigObject? ConfigObjectの使い方 保存場所と共有範囲について 使用例 参考

【Unity】Unity非対応の拡張子のファイルをアセットとして取り扱えるScripted Importerの使い方

Unity非対応の拡張子のファイルをアセットとして取り扱えるScripted Importerの使い方をまとめました。 Scripted Importerとは 簡単なサンプル(公式サンプル) サブアセットを差し替えるためのリマップ機能 他のアセットが変更されたら自身をリインポートす…

【Unity】【Addressable】DiagnosticCallbackで参照カウントなどを取得する

AddressableアセットシステムのDiagnosticCallbackで参照カウントやAsyncOperationのイベントを取得する方法です。 やりたいこと 準備 参照カウントを取得する 取得できるイベントの種類 関連

【Unity】globパターンを使ってアセットを検索する(Unity2020からの新機能)

Unityでglobパターンを使ってアセットを検索する方法についてまとめました。 globパターンでアセット検索ができるように globaパターンの書き方 参考

【Unity】プロジェクト内の色を一元管理&一括変更する「uPalette」を公開しました

Unityプロジェクト内の色を一元管理&一括変更する「uPalette」を公開しました。 github.com 概要 特徴 セットアップ バージョン要件 インストール ライセンス 使い方 色を作成する 色を反映する 色を適用しているGameObjectをハイライトする 独自のコンポー…

【Unity】色のプリセットを保存・共有するSwatchライブラリの使い方まとめ

UnityでSwatchライブラリを使って色のプリセットを保存したり共有したりする方法です。 知ってる人には基礎的なことですが、意外と情報少ない&気づきづらい機能なのでまとめておきます。 色を登録する・呼び出す 色に名前を付ける 色のセット(ライブラリ)…

【Unity】【エディタ】TypeCacheを使って指定したアトリビュートが付いている型を高速に取得する

UnityのTypeCacheを使って指定したアトリビュートが付いている型を高速に取得する方法をまとめました。 TypeCache? 各APIとUnityバージョン ランタイムの可能性 参考

【Unity】Unityエディタ上でスマホ実機がシミュレーションできるDevice Simulatorの使い方まとめ

Unityエディタ上でスマホ実機がシミュレーションできるDevice Simulatorの使い方をまとめました。 Device Simulator? インストール 基本操作 カスタムアセンブリに設定を反映する カスタムデバイスを追加する 参考

【Unity】ビルドの前後に処理を挟み込む方法

Unityでビルドの前後に処理を挟み込む方法についてまとめました。 ビルド前後の処理を行う ビルドボタンを押したときの処理を行う 参考

【Unity】【UniTask】 UniTaskをエディタ(Edit Mode)で使うときに気を付けること

UniTaskをEdit Modeで使うときに気を付けることについてまとめました。 UniTask.DelayにはDelayType.Realtimeを 追記: 最新バージョンは自動的にRealtimeに Taskでもいい UniTask.DelayFrameは使わない PlayerLoopTimingはEditorApplication.updateになる 参…

【Unity】Scriptable Build Pipelineで同じアセットバンドルに含まれるアセット一覧を取得する

UnityのScriptable Build Pipelineであるアセットと同じアセットバンドルに含まれるアセット一覧を取得する方法をまとめました。 はじめに 実装する 実行する 関連

【Unity】Scriptable Build Pipelineによるビルドフロー構築入門

UnityのScriptable Build Pipelineによるビルドフロー構築方法について簡単にまとめました。 Scriptable Build Pipelineとは? インストール IBuildTaskを理解する IContextObjectを理解する 実際にIBuildTaskが使用されている部分を見る 実際にIContextObje…

【Unity】【エディタ拡張】キーボードショートカットを実装する

Unityのエディタ拡張でキーボードショートカットを実装する方法をまとめました。 はじめに グローバルなショートカットを作成する EditorWindowのショートカットを作成する EditorWindowのショートカットとグローバルなショートカットのコンフリクト ショー…

【Unity】エディタ拡張で「Manager」的なものに使えるScriptableSingleton

Unityのエディタ拡張で「Manager」的なクラスを作るときに使えるScriptableSingletonという機能についてまとめます。 エディタ拡張で「Manager」的なクラス? 再生したりスクリプトをコンパイルしたりしても値を保持しておけるインスタンスを作る Unityを再起…