351 Views
January 20, 25
スライド概要
Unreal Engine Meetup in Osaka Vol.03にて野津様が登壇した際に利用されたスライドです。
https://indie-us-games.connpass.com/event/332960/
株式会社Indie-us GamesのDocswell公式アカウントです。
詳解Unreal Engine Settings プロジェクト設定/エディタ環境設定などなど Unreal Engineにおける設定について ©ShotaroNotz 1
自己紹介 • 野津 翔太郎 (@ShotaroNotz) • ゲーム業界約17年のエンジニア系会社員 • HAL大阪にて4年間学び、ゲーム業界へ • プログラマー、テクニカルディレクターなど13年半 • 現在は管理系のポジション • Unreal Engineとのかかわり • 2016年頃4.11から触りはじめ、2021年中頃4.27 Plusまで開 発メンバーとして実務で使用 • それ以降から現在まで実務としてもある程度使いつつも、 個人的、趣味的な検証用途がメインに ©ShotaroNotz 2
今日話すこと • Unreal Engineにおける設定の基礎知識 • どんなものを設定と呼ぶの? • 設定はどこにあるの? • 知っていると便利なエディタ設定の紹介 • 実は存在したあんな設定こんな設定 • うまく使って他のみんなと差をつけよう! • そして開発効率UP! ©ShotaroNotz 3
確認環境 • バージョン: • Unreal Engine 5.5.0 • 言語設定: • 日本語 • エディタ起動OS: • Windows 11 Pro 64bit ©ShotaroNotz 4
基礎知識 Unreal Engineの設定、基礎概念 ©ShotaroNotz 5
Unreal Engineにおける設定とは? • Unreal Engine内で「設定」と呼ばれるものの正体は? • 「*.ini」という拡張子のファイルにテキストで書かれたパ ラメータ群を指す • iniファイルの中身 • テキストエディタで開くと、プログラマーさん担当でしょ と言わんばかりの文字の羅列がたくさん • bUseBorderlessWindow=True とか • r.Tonemapper.Sharpen=2 みたいな • Unreal Engine独自ではなく昔からある汎用フォーマット ©ShotaroNotz 6
大量のパラメータがゲームやエディタを彩る • パラメータの一つ一つがUnreal Engineの挙動に影響を 与える要素となる • アプリケーションの設定やビルドの設定、レンダリン グの各種品質、物理の挙動やエディタの見た目、ア セットのパス、パフォーマンスの調整などなど用途が たくさんあり、プロジェクトごと、個人環境ごとに細 かくカスタマイズできる ©ShotaroNotz 7
どうやって扱うの? • 大前提として、iniファイルを直接触る必要はほとんど ない(特に非エンジニアで触っている人は少ないはず) • 「プロジェクト設定」や「エディタ環境設定」という 専用のメニューからチェックボックスや数値、文字列 入力で設定することができる • 設定に対応したiniファイルが更新されているので、 チーム制作の場合はファイルの共有に注意が必要 ©ShotaroNotz 8
iniファイルの場所 • 色んな所にあります(それはもう驚くほど色んな所に) • エンジン(バージョンごと) • %EngineRoot%¥%Version%¥Engine¥Config • プロジェクト(共通) • %ProjectRoot%¥Config • プロジェクト(個人) • %ProjectRoot%¥Saved¥Config • 個人設定(バージョンごと) • %UserData%¥AppData¥Local¥UnrealEngine¥%Version%¥Config • などなど ©ShotaroNotz 9
iniファイル読み込みの仕組み例 • iniファイルの読み込みには順番がある • 1st • %EngineRoot%¥%Version%¥Engine¥Config¥Base***.ini • 2nd • %ProjectRoot%¥Config¥Default***.ini • 3rd • %ProjectRoot%¥Saved¥WindowsEditor¥***.ini • 最後に読み込まれたファイルに書かれた設定が適用される • エンジンの設定 ⇒ プロジェクトの設定 ⇒ 個人の設定というよ うに、影響範囲大 ⇒ 小の順番で適用されることになる ©ShotaroNotz 10
iniファイル読み込みイメージ 最終的な設定 設定 A 設定 B 設定 D 設定 E 設定 F 設定 E 設定 F 設定 E 設定 F 設定 G 設定 C 個人の設定 設定 B プロジェクトの設定 エンジンの設定 設定 C 設定 A 設定 B 設定 C ©ShotaroNotz 設定 D 設定 G 11
読み込みの仕組み(Platform別) • Platformごとの個別設定 • 例:Engine.iniの場合 • Windowsの例(WindowsアプリとWindowsエディタで有効) • %EngineRoot%¥%Version%¥Engine¥Config¥Windows¥WindowsE ngine.ini • %ProjectRoot%¥Config¥Windows¥WindowsEngine.ini ©ShotaroNotz 12
読み込みの仕組み(Platform別) • Apple VisionOSの例 • %EngineRoot%¥%Version%¥Engine¥Platforms¥VisionOS¥Conf ig¥VisionOSEngine.ini • Platformごとに状況が変わりやすい下記のような要素 に関する設定に利用される • ゲームパッド周り、ハード独自の設定ファイルなど • Platformごとのグラフィクスのクオリティ調整 • Platform独自に用意したいプラグイン • etc... ©ShotaroNotz 13
プロジェクト設定とエディタ環境設定 • 編集 ⇒エディタ環境設定 ⇒プロジェクト設定 ©ShotaroNotz 14
プロジェクト設定 • 公式ドキュメント • https://dev.epicgames.com/documentation/ja-jp/unrealengine/project-section-of-the-unreal-engine-projectsettings • 「プロジェクト」の設定なので、アプリケーションに 影響があるものがここにまとまっている • ここで設定した内容は、原則として自分たちが作って いるアプリケーション(最終的なパッケージなど)に何 かしらの効果、影響を与える ©ShotaroNotz 15
プロジェクト設定 • 設定した内容は下記のフォルダにiniファイルとして格 納される • %ProjectRoot%¥Config • アプリケーション自体の設定なので、チームで制作し ている場合は、他の設定やアセット同様に全員で共有 する必要がある ©ShotaroNotz 16
エディタ環境設定 • 公式ドキュメント • https://dev.epicgames.com/documentation/ja-jp/unrealengine/unreal-editor-preferences • 「エディタ環境」の設定で、エディタ環境のカスタマ イズをするための設定がまとまっている • なので、ここの設定は最終的なアプリケーションには 影響しない個人用のものになる • しかし一部ファイルは共有すべきファイルと同じフォ ルダに格納されるのでその点は注意が必要 ©ShotaroNotz 17
エディタ環境設定 • 設定した内容は下記のフォルダにiniファイルとして格 納される • %ProjectRoot%¥Config • %ProjectRoot%¥Saved¥Config¥WindowsEditor • %UserData%¥AppData¥Local¥UnrealEngine¥%Version%¥Confi g ©ShotaroNotz 18
エディタ環境設定 • しかし、エディタの設定はエディタ環境設定以外から も設定される • エディタを閉じた時やレイアウトを触った時 • 各種アセットツールのプレビュー設定などを変更した時 • etc... • 前頁のフォルダ以外に設定が保存されるケースもある • 例:エディタのウィンドウレイアウト(jsonファイル) • %UserData%¥AppData¥Local¥UnrealEngine¥Editor¥EditorLayout. json ©ShotaroNotz 19
エディタ環境設定 • また、エディタの設定ではないものもiniファイルに保 存されるケースもたくさんある • 例:コンソールコマンドの履歴 • %ProjectRoot%¥Saved¥Config¥ConsoleHistory.ini • 例:最後に開いたレベル • %ProjectRoot%¥Saved¥Config¥WindowsEditor¥EditorPerPro jectUserSettings.ini • EditorStartup|LastLevel • 操作者の意思に関係なく勝手に保存されるものが多い ©ShotaroNotz 20
他にも %UserData%¥AppData¥ にたくさん… • Local¥ • UnrealBuildTool • UnrealEngine • UnrealEngineLauncher • UnrealGameSync • UnrealHeaderTool • UnrealPak etc... • Roaming¥ • Unreal Engine • AutomationToolやUnrealBuildToolの設定とかログ ©ShotaroNotz 21
その他設定ファイル例 • プロジェクトランチャーのカスタム起動プロファイル • デイリービルドやCIなどに使える自動実行ツール • 何故かエンジンのフォルダに保存されるので、複数バー ジョンで使いまわす場合はコピーする必要がある • %EngineRoot%¥Engine¥Programs¥UnrealFrontend¥Profiles¥%Prof ileName%.ulp2 • 補足:プロジェクトランチャー • 必要なレベルと言語を設定することで必要なアセットのみパッケージ化 できるので非常に便利 • 他にもクックオプションやチャンク設定など詳細なオプションを付与で きたり、自動デプロイ機能なども備えている ©ShotaroNotz 22
基礎知識まとめ • Unreal Engineの設定には大きく分けて2つ、アプリ ケーションに影響を与える「プロジェクト設定」と影 響を与えない「エディタ環境設定」および「その他設 定」がある • 設定はほとんどの場合iniと呼ばれるファイルにパラ メータとして保存される • iniファイルは用途に応じて自動的に様々なパスに分散 して保存される ©ShotaroNotz 23
便利なエディタ設定紹介 独自のカスタマイズで他のみんなと差をつけよう! ©ShotaroNotz 24
設定はどんどん触るべき • 前述の通り、エディタ設定はアプリケーションへは影 響しない • ということは手元で好き勝手触っても誰にも迷惑はか からない! • せっかく色々用意されているので、いじり倒そう ©ShotaroNotz 25
一般|アピアランス • 小さなツールバーアイコンを使用 • 文字列が省略されレイアウトが圧縮されるので、アイ コンのみで意味が分かる場合はオンにすると画面が すっきりする ©ShotaroNotz 26
一般|アピアランス • アセットエディタの起動場所 • アセットを開いた際のウィンドウがどこに表示される かを細かく決めることができる • 常に新しいウィンドウで表示 • メインウィンドウにドッキング • 最後にドッキングしたウィンドウかメインウィンドウか • etc... • ウィンドウ迷子は作業への影響が 大きいので、設定をオススメします ©ShotaroNotz 27
一般|アピアランス • グラフ • グラフエディタの設定を変更できる • 右図は背景ブラシに画像を設定し、グリッドを非表示 にした例 • Unreal Editorの可能性を 感じられる興味深い設定 ©ShotaroNotz 28
一般|ブループリントエディタの設定 • スポーンデフォルトブループリントノード • BPアセット作成直後、毎回初期設定としてグラフに うっすら存在しているBeginPlayなどを非表示にできる これを毎回消さなくてよくなる! ©ShotaroNotz 29
一般|ブループリントエディタの設定 • 呼び出しノードのネイティブ関数に移動 • BPノードをダブルクリックした際にC++のシンボルを自 動的に検索する機能の切り替え • 事故ってやってしまうことが多いので、気になる方は オフに ©ShotaroNotz 30
一般|ブループリントエディタの設定 • デフォルトでピュアキャストノードを使用 • キャストノードの初期設定は左のものになっているが、 右のものをデフォルトにすることができる ©ShotaroNotz 31
一般|ロード&保存中 • 自動再インポート • ソースアセットが更新された際に、対応するアセット が自動的に再インポートされる設定 • ゲームパラメータなど頻繁に更新 ⇒ 確認を繰り返す アセットのイテレーション速度向上に有益 ©ShotaroNotz 32
一般|出力ログ • 出力ログ • 出力ログウィンドウの表示方法カスタマイズ • フォントのサイズ変更や色分けができる ©ShotaroNotz 33
一般|未分類|動作 • エディタを閉じることを確認 • エディタを閉じるためにウィンドウの×ボタンを押す と、確認のダイアログが表示される設定 • マウスポインタ迷子時の誤クリック対策として有効 ©ShotaroNotz 34
レベルエディタ|その他 • エディタのスクリーンショット保存ディレクトリ • エディタビューポート操作F9押下で撮影できるスク リーンショットの保存先を変更できる • デフォルトがSavedの中にあるので、外のパスを設定す ることで一時ファイルを一括削除する際などにスク リーンショットを気にせず実行できる • 例えば下図のようにしておくと誤削除はまずなくなる ©ShotaroNotz 35
レベルエディタ|プレイ • ゲームでマウスコントロールを取得 • プレイインエディタのあとに画面をクリックしなくて もすぐゲーム操作に移行することができる PIE時のこの操作が不要になる! ©ShotaroNotz 36
プロジェクト設定 • 「プロジェクト設定はアプリケーションへ影響する」 と説明したが、一部例外が存在する • クラスの追加が必要だったり仕組み上全体への影響を 回避できなかったりするものが該当する • プロジェクト設定に含まれるが実態としてはエディタ のカスタマイズ項目に該当するものをいくつかご紹介 ©ShotaroNotz 37
ゲーム|アセットツール • 高度なコピー • アセットをドラッグした時に表示される「高度なコ ピー」コマンドのカスタマイズができる • コピールールのクラスを 作成することで、特定の アセットをコピーする際 に独自ルールでの高度な コピーを実行できる ©ShotaroNotz 38
プロジェクト|パッケージ化 • カスタムビルド • プラットフォームごとに独自のカスタムビルドコマン ドを定義しUIに追加できる ©ShotaroNotz 39
プラットフォーム|Windows • エディタスプラッシュ • エディタ起動時の画像を変更できる • ここ最近の実装フィーチャーのスクショなどにするこ とでチームのモチベーションアップ!に繋がるかも ©ShotaroNotz 40
便利な設定紹介まとめ • 設定が多く、便利な項目があっても気づかない、触ら ないという人は多いが、意外と有用な設定が多い • 特に手元作業のイテレーションに直結するような設定 については自分の操作スタイルに合わせていじり倒す のは有益(そして何より楽しい) • 効率アップ、モチベーションアップに有効な設定も数 多くあるので、今まで触ったことがなかったという方 は是非チャレンジしてみてください ©ShotaroNotz 41
ご清聴ありがとうございました! ©ShotaroNotz 42