プロジェクト チームの分業と協力が不可欠であり、UE プロジェクトにおけるバージョン管理は非常に必要です。UE はバージョン管理に Perforce と SVN の使用をサポートしています。ここでは使い慣れた SVN を選択します。
1. ソースコード管理にSVNを使用する
[エディターの設定] ウィンドウ ([編集] > [エディターの設定] > [読み込みと保存]) でソース管理を有効にします。
レベルエディターウィンドウでソースコード管理を選択し、SVNリポジトリアドレス、ユーザー名、パスワードなどを入力し、「設定を受け入れる」を選択するとソースコード管理の使用が開始されます。
ソースコード管理の設定が完了したら、「ソースコード管理 - ソースコード管理に送信」をクリックします。
送信するファイルのリストが表示されます。さまざまなアイコンがさまざまな状態を表しており、他の SVN プラグインの表現と一致しています。変更リストの説明を入力し (必須)、[送信] をクリックします。
ソース コード管理を設定した後、「ファイル - ソース コード管理への送信」を通じて UE プロジェクト ファイルをリモート コード ベースに送信することもできます。
2. ソースコード管理に含める必要がある内容
UE プロジェクトのサイズは比較的大きく、特に 1 パス操作後のサイズは数ギガバイトになるのが通常ですが、そのほとんどは一時ファイルであり、すべてを SVN リポジトリに送信するのは非現実的です。UEエンジンに付属するSVNソースコード管理機能を使いこなす必要がある一方で、UEプロジェクトのファイルディレクトリ構造を詳細に把握する必要もあります。
UE プロジェクトには次の共通ディレクトリがあり、その機能は次のように説明されます。
-
バイナリ - コンパイル中に作成された実行可能ファイルまたはその他のファイルが含まれます。
-
ビルド - 特定のプラットフォーム用のプロジェクトのビルドを作成するために必要なファイルを含む、エンジンまたはゲームのコンパイルに必要なファイルが含まれています。
-
Config - エンジンの動作を制御するために使用できるパラメータを含む構成ファイル。ゲーム プロジェクトの構成ファイルに設定した値は、Engine\Config ディレクトリに設定した値をオーバーライドします。
-
コンテンツ - アセット パック、テクスチャなどのエンジンまたはゲーム内コンテンツを保持します。
-
DerivedDataCache - 派生データ ファイルが含まれます。このデータは、参照されたコンテンツ専用に生成され、ロード時に生成されます。参照されたコンテンツがキャッシュ ファイルを生成していない場合、読み込み時間が大幅に増加します。
-
中間 - エンジンまたはゲームのコンパイル時に生成される一時ファイルが含まれます。ゲーム ディレクトリでは、シェーダも Intermediate ディレクトリに保存されます。
-
保存済み - 自動保存ファイル、構成 (.ini) ファイル、およびログ ファイルが含まれます。さらに、「Engine」>「Saved」ディレクトリには、クラッシュ ログ、ハードウェア情報、Swarm のオプションとデータが含まれています。
-
ソース - エンジンのソース コード、ツール、ゲーム クラスなどを含む、エンジンまたはゲームのすべてのソース ファイルが含まれます。
-
Engine - Engine ディレクトリ内のソース ファイルは次のように編成されています。
-
開発者 - エディターとエンジンの両方で使用されるファイル。
-
エディター - エディター専用のファイル。
-
プログラム - エンジンまたはエディターによって使用される外部ツール。
-
ランタイム - エンジンによってのみ使用されるファイル。
-
-
ゲーム - ゲーム プロジェクト ディレクトリ内のソース ファイルはモジュールごとにグループ化されており、モジュールごとに 1 つのディレクトリが存在します。各モジュールには以下が含まれます。
-
クラス - すべてのヘッダー ファイル (.h) が含まれます。
-
プライベート - ゲーム ロジック クラスやさまざまなモジュールの実装ファイルを含む、すべての .cpp ファイルが含まれます。
-
パブリック - モジュールのヘッダー ファイルが含まれます。
-
-
ソース コード管理の構成が完了すると、デフォルトで SVN リポジトリに送信されるコンテンツには次のディレクトリが含まれます。
3. VisualStudio開発時のソースコード管理
UE はブループリントと C++ クラスを使用した開発をサポートしているため、C++ 開発者は VisualStudio を使用してプロジェクト開発コラボレーションに参加できます。
VS2022 を例に挙げると、UE プロジェクト開発の前提条件は、「C++ を使用したゲーム開発」を有効にし、一連のコンポーネントをインストールすることです。
また、UE プロジェクトの作成時にブループリント プロジェクトを選択した場合は、C++ ソリューション ファイル (sln) が存在しないため、ブループリント プロジェクトを C++ コード プロジェクトに変換する必要があります。
「ファイル - 新しい C++ クラス」を選択し、親クラスとして「なし」を選択し、「次へ」をクリックして保存パスを確認します。
「クラスの作成」をクリックすると、UE エンジンがクラスの作成とコンパイルを開始し、コンパイルが完了すると、プロジェクトのルート ディレクトリに VS ソリューション ファイルが生成されます。
VS を使用して C++ コード プロジェクトを開きます。また、ソース コード管理に SVN プラグインを使用することもできます。