Unreal Engine 5(UE5) でのゲーム開発を始めたばかりの皆さん、プロジェクトを作成してすぐに「さあ、作るぞ!」と意気込んでいるかもしれません。しかし、ちょっと待ってください。
プロジェクト作成直後の初期設定 を疎かにすると、後々「なぜか動作が重い」「チーム開発でファイルが競合する」「ビルドしたら文字化けした」といった、本質的な開発とは関係のないトラブル に時間を奪われることになります。特に初心者・中級者の方は、こうしたトラブルでモチベーションを失いがちです。
本記事では、プロの現場でも必ず行われる、UE5プロジェクト作成時に必ず確認すべき必須の初期設定5つ を、その理由と具体的な手順、そしてベストプラクティスを交えて徹底解説します。これらの設定を行うことで、あなたのUE5開発環境は劇的に安定し、快適なものになるでしょう。
ソース管理(Version Control)の設定
ソース管理(GitやPerforceなど)は、プロジェクトの 「保険」 であり、「タイムマシン」 です。バグを混入させてしまった時、間違って重要なファイルを削除してしまった時、ソース管理を設定していなければ、その日の作業が全て水の泡になる可能性があります。
設定手順
UE5では、エディタから直接、GitやPerforceといった主要なソース管理システムと連携できます。
- Git/Perforceの導入: まず、外部でGitまたはPerforceをインストールし、リポジトリを作成します。
- UE5エディタでの設定:
- エディタ上部のメニューから [ツール] > [ソース管理] > [ソース管理に接続] を選択します。
- 使用するプロバイダ(GitまたはPerforce)を選択し、必要な情報を入力して接続します。
【ベストプラクティス】
.gitignoreの徹底: UE5プロジェクトには、ビルド時に生成される一時ファイルやキャッシュファイル(DerivedDataCache、Intermediate、Savedフォルダの一部など)が大量に含まれます。これらをリポジトリに含めると、リポジトリが肥大化し、チーム開発時に不要なコンフリクト(競合)が発生します。Gitを使用する場合は、UE5専用の.gitignoreファイル を必ず設定しましょう。また、大型のバイナリファイル(モデル、テクスチャなど)が多い場合はGit LFS の導入も検討してください。
UE5プロジェクト用.gitignoreの例
以下は、UE5プロジェクトで一般的に除外すべきフォルダ・ファイルの例です:
# ビルド生成物
Binaries/
Intermediate/
# キャッシュ
DerivedDataCache/
# 一時ファイル
Saved/
# Visual Studioファイル
*.sln
*.suo
*.opensdf
*.sdf
*.VC.db
*.VC.opendb
.vs/
# macOS
.DS_Store
よくある間違い
- 間違い: ソース管理を設定せず、プロジェクトフォルダ全体をZipでバックアップする。
- 問題点: 変更履歴が追えず、どの時点のファイルが正しいのか分からなくなる。
デフォルトマップとゲームモードの設定
プロジェクトの起動時にどのレベルがロードされ、どのゲームルールが適用されるか を明確に定義することは、開発効率とテストの正確性を高める上で非常に重要です。
設定手順
[プロジェクト設定] > [マップ&モード] で、以下の2つを設定します。
- Default Maps:
- Editor Startup Map: エディタ起動時に最初に開くレベル。重いレベルを設定するとエディタ起動が遅くなるため、** 開発用の軽量なテストレベル** を設定するのがベストです。
- Game Default Map: ゲーム実行時(パッケージ化されたゲームの起動時)に最初にロードされるレベル。タイトル画面やメインメニューのレベルを設定するのが一般的です。
- Default GameMode:
- Default GameMode Class: このプロジェクト全体でデフォルトとして使用する
GameModeクラスを設定します。
- Default GameMode Class: このプロジェクト全体でデフォルトとして使用する
Blueprintによる設定例
もし独自のゲームモード(例: BP_MyGameMode)を作成した場合、それをデフォルトに設定します。
// プロジェクト設定 > マップ&モード > Default GameMode Class
// ここで作成したブループリントクラスを選択
// 例: /Game/Blueprints/GameModes/BP_MyGameMode
専門用語解説:GameModeとは?
GameMode(ゲームモード) は、ゲームのルール、スコ アリング、参加プレイヤー数、使用するデフォルトのPawn(プレイヤーが操作するキャラクター)やHUD(画面表示)などを定義する、サーバー側でのみ存在する クラスです。ゲームの「設計図」のようなもので、UE5開発の根幹をなします。
入力設定(Enhanced Input System)
UE5では、UE5.0から搭載され、UE5.1以降で正式に推奨となった 「Enhanced Input System(拡張入力システム)」 が推奨されています。古い入力システムを使い続けていると、将来的な機能拡張やマルチプラットフォーム対応で苦労する可能性があります。
設定手順
- プラグインの有効化:[編集] > [プラグイン] で 「Enhanced Input」 プラグインが有効になっていることを確認します(通常はデフォルトで有効)。
- プロジェクト設定の変更:[プロジェクト設定] > [エンジン] > [入力] の [Default Classes] セクションで、以下のクラスを
Enhanced Input関連のクラスに変更します。Default Player Input ClassをEnhancedPlayerInputにDefault Input Component ClassをEnhancedInputComponentに
C++による入力設定の例(Enhanced Input)
C++で入力を処理する場合、Input Mapping Context (IMC)とInput Action (IA)を使用します。
// MyCharacter.cpp (BeginPlay()内など)
// 1. PlayerControllerを取得
APlayerController* PC = Cast<APlayerController>(Controller);
// 2. Enhanced Input Subsystemを取得
UEnhancedInputLocalPlayerSubsystem* Subsystem = ULocalPlayer::GetSubsystem<UEnhancedInputLocalPlayerSubsystem>(PC->GetLocalPlayer());
// 3. Input Mapping Context (IMC)を追加
if (Subsystem)
{
Subsystem->AddMappingContext(DefaultMappingContext, 0); // DefaultMappingContextはUInputMappingContext*型の変数
}
ベストプラクティス
- IMCとIAの活用:
Input Action (IA)で「ジャンプ」「移動」といった動作の意図 を定義し、Input Mapping Context (IMC)でその意図にどのキーを割り当てるか を定義します。これにより、キーバインドの変更が非常に容易になります。
エディタの言語設定
UE5は日本語に対応していますが、チュートリアルやエラーメッセージ、公式ドキュメントの多くは英語で提供されています。日本語で開発を進めていると、エラーが発生した際に英語の解決策を探すのが困難 になることがあります。
設定手順
[編集] > [エディタの環境設定] > [一般] > [地域と言語] で設定します。
- 言語:
日本語またはEnglishを選択します。
【ベストプラクティス】
- 英語での開発を推奨: エラーメッセージやクラス名、関数名などは英語が基本です。中級者を目指すなら、エ ディタの表示言語をEnglish に設定し、必要に応じて日本語ドキュメントを参照するスタイルをおすすめします。
エディタのパフォーマンス設定
UE5は非常に高機能なため、デフォルト設定のままではエディタが重くなりがちです。特に、ノートPCやミドルレンジのPCで開発している場合、エディタの動作がカクカクしたり、ファンが常に高速回転したりする問題に直面します。
設定手順
- リアルタイム描画のオフ:
- ビューポート左上の [リアルタイム] ボタン(時計アイコン)をオフにします。
- 効果: ビューポートがアクティブでないときに、描画の更新を停止します。これにより、CPU/GPUの負荷が大幅に軽減されます。
- フレームレートの制限:
- [編集] > [エディタの環境設定] > [一般] > [パフォーマンス] にある [エディタのフレームレートを制限] にチェックを入れ、値を
30や60などに設定します。 - 効果: エディタが描画するフレームレートの上限を設定し、不要なリソース消費を防ぎます。
- [編集] > [エディタの環境設定] > [一般] > [パフォーマンス] にある [エディタのフレームレートを制限] にチェックを入れ、値を
よくある間違い
- 間違い: ビューポートのスケーラビリティ設定 (画面上部の「設定」メニュー)を最低に設定したまま、ゲームの品質が低いと勘違いする。
- 問題点: スケーラビリティ設定はエディタ上での描画品質 にのみ影響し、最終的なゲームのパッケージング品質には影響しません。テスト時以外は、開発中のPCスペックに合わせて適度な設定にしておきましょう。
初期設定チェックリスト
UE5プロジェクト作成時に必ず確認すべき5つの初期設定をまとめます。これらをプロジェクトの「儀式」として習慣化することで、将来的なトラブルを未然に防ぎ、開発に集中できる環境が手に入ります。
| 設定項目 | 目的 | 確認場所 | ベストプラクティス |
|---|---|---|---|
| 1. ソース管理 | 開発履歴の管理と安全性の確保 | [ツール] > [ソース管理] | .gitignoreで一時ファイルを徹底除外 |
| 2. マップ&ゲームモード | ゲームの起動レベルとルール定義 | [プロジェクト設定] > [マップ&モード] | Game Default Mapをタイトル画面に設定 |
| 3. 入力設定 | プレイヤー操作の定義 | [プロジェクト設定] > [エンジン] > [入力] | Enhanced Input Systemへの切り替え |
| 4. エディタ言語 | トラブルシューティングの効率化 | [エディタの環境設定] > [地域と言語] | 英語での開発を推奨 |
| 5. パフォーマンス | PC負荷の軽減と快適な動作 | ビューポートの[リアルタイム]、[エディタの環境設定] | [リアルタイム]をオフ、フレームレートを制限 |
これらの初期設定を完了したら、いよいよ本格的なゲーム開発のスタートです。快適なUE5ライフを送りましょう!