関連ブログ
- [UE4][UE5]開発環境の容量を少しでも減らす 2024.08.14UE
- [UE5] PushModel型のReplicationを使い、ネットワーク最適化を図る 2024.05.29UE
- [UE5]マテリアルでメッシュをスケールする方法 2024.01.17UE
CATEGORY
2020.12.11UE4UE/ C++
執筆バージョン: Unreal Engine 4.25 |
こんにちは。エンジニアの小倉です。
今回はUDeveloperSettingsを使って簡単にプロジェクト設定に項目を追加する方法を紹介します。
ちなみに、UDeveloperSettingsを使わずに項目を追加する方法は、以前のブログでも取り上げました。
[UE4] 「エディタの環境設定」や「プロジェクト設定」に項目を追加する
プロジェクト設定に項目を追加する基本的な手順は以下になります。
ここで、1.で示したコンフィグ用クラスの継承元をUObjectの代わりにUDeveloperSettingsにすると、3.の登録処理を省略できるようになります。3.の登録手順を省略できると、例えば以下のようなメリットがあります。
具体的な実装方法を示します。まず、UDeveloperSettingsを継承したクラスを作成します。
次に、UDeveloperSettingsの関数をオーバーライドして実装します。
オーバーライドする関数の詳細は以下のようになります。
関数名 | 詳細 |
GetContainerName() | コンテナ名を指定します。ここではProjectかEditorのどちらかです。 この関数は基本的にはオーバーライドしません。 |
GetCategoryName() | カテゴリ名を指定します。ここではEditor, Engine, Game, などの他に ユーザー定義のカテゴリ名も指定できます。 |
GetSectionName() | セクション名を指定します。ここではクラス名になります。 この関数は基本的にはオーバーライドしません。 |
GetSectionText() | プロジェクト設定に表示されるセクション名を指定します。 |
GetSectionDescription() | プロジェクト設定に表示されるセクションの説明を指定します。 |
UDeveloperSettingsを継承して、必要な関数をオーバーライドしたら、実際にプロジェクト設定の項目を追加します。これはUPROPERTYでコンフィグ用のメンバ変数であることを明示するだけです。なお、ConfigRestartRequiredというメタ指定子を付けると、項目が変更されたときにエディタのリスタートを促すメッセージが表示されます。
これをプロジェクト設定に表示すると、次のようになります。
なお、各項目は以下のようにアクセスします。