プロジェクトを作ったら、すぐに中身を作り始めたくなります。ただ、その前に済ませておきたい設定がいくつかあります。
例えば「設定を変えたら動かなくなった」「配布したゲームが違うマップから始まった」。こうしたときに困らないよう、変更を記録する方法と、起動時に使う設定を確認しておきましょう。この記事では5つの確認先を紹介し、最後に練習用レベルをGitの履歴から戻してみます。すべての値を変更する必要はありません。
この記事でわかること
- ソース管理(Git) の設定と、UE5専用
.gitignoreの考え方- Editor Startup Map / Game Default Map の使い分け
- Enhanced Input System が設定済みかを確かめる場所
- エディタの 言語設定 と 軽量化 の定番設定
- 実践:練習用レベルを記録し、消したCubeを元へ戻す
ソース管理(Version Control)の設定
ソース管理 は、ファイルの変更履歴を残す仕組みです。Gitでは、ある時点の内容を記録することを コミット、その履歴の保管場所を リポジトリ と呼びます。ゲームのセーブポイントのように、「ここまでは動いた」という状態を残せます。

- Gitの導入: Git公式サイトからインストールし、プロジェクトフォルダでリポジトリを作成します(実践節で実際にやります)
- UEエディタとの連携(任意): メニューの ツール → ソース管理 → ソース管理に接続 で、エディタ内から変更の確認やコミットができるようになります
.gitignore——「生成されるもの」はコミットしない
プロジェクトには、モデルやレベルだけでなく、UEが作る作業用ファイルも含まれます。.gitignore は、Gitで新たに記録する対象から除外するファイルの一覧です。プロジェクト直下(.uproject と同じ場所)へ置きます。
残すものは Content(アセット)、Config(設定)、.uproject(プロジェクトの情報)などです。C++を使うなら Source、配布設定などを置いた Build、追加したプラグインの必要ファイルも残します。図は主なフォルダだけを示しています。

# プロジェクト直下の生成物
/Binaries/
/Intermediate/
# キャッシュ
/DerivedDataCache/
# 一時ファイル・ログ・自動保存
/Saved/
# Visual Studioの生成物
/*.sln
/.vs/
# macOS
.DS_Store
これは小さな練習用プロジェクトの出発点です。プラグインには、ソースコードが付属せず、配布された Binaries が必要なものもあります。プラグイン内の同名フォルダまで一律に除外しないでください。Saved には自動保存も含まれます。管理対象から外すことと、削除してよいことは別です。
画像やモデルなど、文字の差分として扱いにくいファイルを バイナリアセット と呼びます。大きな素材を入れる前に、これらを管理するGit LFSの設定も確認します(→ UEプロジェクトのGit運用)。Gitの履歴も同じPCだけに置いている間は、故障への備えにはなりません。別の場所へのバックアップと併用できます。
デフォルトマップとゲームモードの設定
「起動時にどのレベルが開き、どのルールで動くか」を最初に決めておくと、開発効率とテストの正確性が上がります。 プロジェクト設定 → マップ&モード で設定します。

- Editor Startup Map: エディタ起動時に開くレベル。普段作業するレベルを選びます。
- Game Default Map: 書き出したゲームを起動したときの最初のレベル。タイトル画面がまだなければ、遊 ぶレベルを直接指定できます。
- Default GameMode Class: プロジェクト全体でデフォルトとして使うGameMode(例:
BP_MyGameMode)を指定します。GameModeは「使用するキャラクター・スポーン地点・ゲームルール」を束ねるクラスです(→ UE5の基本概念、詳しくは Game Frameworkの理解)
図は、開発用レベルとタイトル画面を分けた例です。小さな作品では2つのマップ設定が同じでも構いません。通常の「Play」は今開いているレベルで始まるため、それだけではGame Default Mapの確認になりません。書き出し後の確認はパッケージ化の記事で扱います。
また、各レベルの「World Settings → GameMode Override」が設定されていると、プロジェクト共通のGameModeよりそちらが優先されます。テンプレートのキャラクターが動いているなら、最初はその設定を残して役割を確かめましょう。
入力設定(Enhanced Input System)
Enhanced Input System は、キーやゲームパッドの操作をゲームへ伝える仕組みです。新しく操作を組むときに使います。Third Personなどのテンプレートでは既に設定されているため、動いている入力を作り直す必要はありません。

仕組みの核心は 「動作の意図」と「キー割り当て」の分離 です。
- Input Action (IA): 「ジャンプ」「移動」といった 動作の意図 を定義する
- Input Mapping Context (IMC): その意図に どのキー・ボタンを割り当てるか を定義する
例えば「ジャンプする処理」はそのままに、ジャンプへ割り当てるボタンを変更できます。なお、プレイヤーが設定画面からキーを変更・保存する機能は、別途作ります。
確認する場所:「Edit → Plugins」でEnhanced Inputが有効か、「Project Settings → Engine → Input」のDefault Classesが EnhancedPlayerInput / EnhancedInputComponent かを見ます。既に設定済みならそのままで構いません。独自の入力クラスを使う既存プロジェクトでは、一律に置き換えないでください。IA・IMCの作成と、入力を受け取るBlueprintはEnhanced Input入門で扱います。
エディタの言語設定
編集 → エディタの環境設定 → 一般 → 地域と言語 で表示言語を選べます。
教材と同じ言語にすると、画面の項目を探しやすくなります。このブログでは検索にも使えるよう、英語の項目名を併記しています。日本語で全体像をつかんでから英語へ切り替えても構いません。今の表示で困っていなければ、変更は後回しにできます。
エディタのパフォーマンス設定
操作が重い、静止していてもファンが回り続ける、といったときに確認する項目です。快適に使えているなら、先へ進んで構いません。
- リアルタイム描画:ビューポートのメニュー、または
Ctrl + Rで切り替えます。オフにすると常時更新を止められるので、箱の配置など静止した作業で試せます。動く雲やエフェクトの確認時はオンへ戻します。 - バックグラウンド時の負荷:「Editor Preferences」で
Use Less CPU when in Backgroundを検索します。他のアプリを操作している間の負荷を抑える設定です。操作中のFPS上限を指定する項目ではありません。

スケーラビリティ設定 は、影や描画距離などの品質をまとめて調整するものです。編集中の表示を軽くできますが、その見え方だけで配布版の品質を判断しないでください。書き出したゲームでも、ゲーム側の画質設定と実際の見え方を確認します。
実践:最初のコミットで「タイムマシン」を動かす
ここでは、練習用レベルに置いたCubeを記録し、削除してから戻します。Gitは、記録したファイルの内容を復元する仕組みです。まだコミットしていない変更まで取り戻せるわけではないことも、合わせて確かめましょう。

新しく作った小さな練習用プロジェクトを使います。.uproject があるフォルダでターミナルを開き、上の .gitignore を置いてから次を実行します。git add は次の記録に含める変更を選び、git commit はその内容を履歴へ記録します。
git init
git status --short
git add .
git commit -m "Initial commit"
git status で一覧を見て、Saved や Intermediate が含まれていないことを確認してから追加します。初めてのコミットで名前とメールアドレスを求められたら、Gitの案内に従って設定し、コミットをやり直してください。コミットできたら、次の実験へ進みます。
- 「File → New Level」で通常の「Empty Level」を作り、Cubeを1つ置きます。今回は「Open World」や「Empty Open World」は選びません。
Content/Maps/L_BackupPracticeとして保存します。マップのファイル名はContent/Maps/L_BackupPractice.umapになります。- ターミナルで次を実行し、このレベルを記録します。
git add -- Content/Maps/L_BackupPractice.umap
git commit -m "Add backup practice level"
次に、エディタでそのCubeを削除してレベルを保存し、エディタを閉じます。削除した状態はコミットせず、次を実行します。
git status --short
git restore --source=HEAD --worktree -- Content/Maps/L_BackupPractice.umap
HEAD は現在のコミットを指し、ここではCubeを置いて記録した時点です。このコマンドは、指定した練習用マップの未コミット変更をその内容で置き換えます。プロジェクトを開き直し、L_BackupPractice にCubeが戻れば成功です。
今回はActorをマップ内に保存する通常のレベルを使いました。Actorを別ファイルへ保存する設定のレベルでは、マップ1個を 戻すだけでは足りません。その運用はGitとOne File Per Actorの記事で扱います。
Saved などが記録対象に出るときは、.gitignore の場所と名前を確認します。拡張子が付いて .gitignore.txt になっていないかも見てください。既にGitへ追加済みのファイルには、あとから除外規則を書いても自動では適用されません。
ポイントは2つです。
- コミットは「作業の区切り」ごとに: 「ギミックが1つ動いた」「アセットを整理した」——動く状態になるたびに旗を立てる癖をつけると、いつでも「最後に動いていた時点」へ戻れます
- 仕組みの詳細は専門記事へ: Git LFSの導入や、バイナリ競合を避けるUE特有の運用(One File Per Actor)は UEプロジェクトのGit運用 で扱っています。まずは「コミット=セーブポイント」の1点だけで十分戦えます
おまけ:先に知っておくと良いこと
| 設定項目 | 目的 | 確認場所 | ベストプラクティス |
|---|---|---|---|
| 1. ソース管理 | 開発履歴の管理と安全性 | プロジェクト直下+[ツール] > [ソース管理] | UE5用 .gitignore で生成物を除外 |
| 2. マップ&ゲームモード | 起動レベルとルールの確認 | [プロジェクト設定] > [マップ&モード] | 作業時とゲーム起動時のマップを確認 |
| 3. 入力設定 | Enhanced Inputの確認 | [プロジェクト設定] > [エンジン] > [入力] | 設定済みなら維持する |
| 4. エディタ言語 | 教材の項目を見つけやすくする | [エディタの環境設定] > [地域と言語] | 困っていなければ変更は後回し |
| 5. パフォーマンス | PC負荷の軽減 | ビューポートの[リアルタイム]・環境設定 | 作業の重さに応じて調整する |
まとめ
- Gitで動く状態を記録し、戻せることまで試す。
.gitignoreは記録対象を選ぶための設定。 - 起動マップと入力は、現在の値と役割を確認する。設定済みなら作り直さなくてよい。
- 表示言語と描画の負荷は、作業で困るときに調整する。
足場が整ったら、エディタUIの基本で操作を体に入れ、アセット管理入門でフォルダ構造の育て方を押さえましょう。学習の全体像はUE5学習のロードマップへ。
消したCubeが戻ったら、次は自分の仕掛けが動いた時点でコミットを残してみてください。何を記録したかが分かる名前を付けると、試行錯誤の区切りが見えるようになります。
参考資料
ファイル構成はEpic公式のDirectory StructureとPlugins、復元と除外の動作はGit公式のgit restoreとgitignoreで確認できます。
描画更新とバックグラウンド動作は、Viewport ControlsとEditor Performance Settingsを参照できます。