複数人でのUnreal Engineを用いた開発におけるバージョン管理について

実現したいこと

Unreal Engineを用いた開発に置いて、
なるべくコンフリクトを発生させずにバージョン管理を行いたいです。

前提

先日Unreal Engineを用い、プロトタイプの作成を行いました。
チームのメンバーは5人程、プロトの作成に充てた期間はおよそ2ヶ月です。
バージョン管理はgit(gitlab)を使用し、
ローカルでの操作に関しては、SourceTreeやコマンド操作等特に制限を設けておりませんでした。

ざっくりとしたスケジュールは以下のとおりで
①開発開始~1ヶ月目:機能毎に担当を分け各個人で開発
②2ヶ月目~    :定期的に各個人の作業内容を統合・ビルドしデモプレイ。

②で出た指摘事項や追加項目を各人が持ち帰り、
作業内容を統合・ビルド・・・といった感じで作業しいたのですが、
この工程においてコンフリクトが多発致しました。

試したこと

1.レベル分け
個人作業用レベルとビルド用レベルを作成しそれぞれの用途を以下の様に限定。

  •   各個人は各々の個人作業用レベルで作業を行う。
  •   ビルド担当者はビルド用レベルに各個人の作業用レベルを取り込みビルドを行う。

多少減った気がしますが、依然コンフリクトは発生しており、
またこの方法ではブループリントや共通で使用しているアセットでのコンフリクトは避けられませんでした。

2.作業順序の明確化
①においては他者の作業を気にせず、各々が作業していたため、
②の作業以降に置いては「◯◯さんの作業が終わったらpushして■■さんに連絡してね。」といった具合に、
同じアセット等に対する作業が同時発生しないよう、作業のフローを整理しました。

3.対象ファイルの使用/開放宣言
こちらは実際に行ったわけではないのですが、
色々調べた中で、「コミュニケーションをしっかり取る」といった内容があったため、
プリプロに向けて開発を行う際にやってみようと思っています。

具体的には「Contents/Asset/Ground/xxxxx.uasset 触ります/開放します。」といった宣言を
teams等で発言する様にしようと思っています。
(バージョン管理がまだメジャーじゃなかった頃を想起させますが。。。。)

皆様にお伺いしたいこと。

◎Unreal Engineでの開発に携わっている方々は、
こういったコンフリクトを避けるためにどのような手法を用いられておりますでしょうか?

現在は各メンバーが最も慣れているgitを使用しておりますが、
gitにこだわるつもりはありませんので、幅広く皆様の意見をお伺いできればと思います。

コメントを投稿

0 コメント