UDN
Search public documentation:

AutomatedMapBuildJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 ホーム > レベル作成 > 自動マップ ビルド
UE3 ホーム > レベルデザイナー > 自動マップ ビルド

自動マップ ビルド


概要


エディタでは、自動マップ ビルドを実行する 2 つの方法が現在提供されています。自動マップ ビルドによって、初期のセットアップを終えると、ユーザーインタラクションをまったく必要とせずに、マップのビルド、その保存、ソースコントロールへのサブミットを実行できるようになります。これによって、ビルドはたとえば一日でも完成できるようになります。必要以上に長期間ユーザーがバイナリファイルを独占的にチェックアウトさせておくという心配はなくなります。自動ビルドは、エディタ内ダイアログまたはコマンドラインによって指定することができます。現在のエディタの設定にかかわらず、自動ビルドではすべてプロダクションレベルの光源処理を使用します。

エディタ ダイアログ


エディタ ダイアログによってユーザーは、ソースコントロール チェンジリストの記述 (changelist description ) を加えるとともにいくつかの設定を行った後に、現在開いているマップの自動ビルドを開始することができます。

ダイアログを呼び出す

エディタ ダイアログは、次の 2 つの方法のうちどちらかを使ってアクセスすることができます。

  1. ビルド ツールバー アイコン
    BuildToolbar.png

  2. [Build] (ビルド) メニュー
    BuildMenu.png

ダイアログを使う

BuildDialog.png

チェンジリストの記述

ユーザーは、チェンジリストの記述を入力するように求められます。このチェンジリストの記述は、ビルドならびに保存されるマップがソースコントロールにサブミットされる際に使用されます。description (記述) としてユーザーが入力するものに加えて、特別な [Automatic Submission] (自動サブミット) タグが、マップがサブミットされる際に description に対してプレフィックスとして前に付くことになります。

ビルドのオプション

自動ビルドの動作を変更できるオプションがいくつか用意されています。

  • Don't Submit in Event of Map Errors (マップ エラー発生時にサブミットしない)
    これにチェックを入れると、ビルドされたマップのいずれかがマップチェック エラーを 1 つ以上起こした場合は、ビルドされたマップのいずれもソースコントロールにサブミットされなくなります。

  • Don't Submit in Event of Save Errors (保存エラー発生時にサブミットしない)
    これにチェックを入れると、理由のいかんに関わらずビルドされたマップのいずれかでも保存に失敗した場合は、ビルドされたマップのいずれもソースコントロールにサブミットされなくなります。

  • Add Files to Source Control if Necessary (必要に応じてファイルをソースコントロールに追加する)
    これにチェックを入れると、ビルドされたマップで、ソースコントロールのデポットにまだ置かれていないものがあれば、サブミットのプロセスの一環として、すべて自動的に追加されることになります。

ダイアログ ビルドの動作

[Build] (ビルド) にチェックを入れると、ダイアログによって、各マップ ファイルがビルドに有効であるか否かのチェックが実行されます。有効である場合は、プロダクションレベルの光源処理をともなった完全なビルドのプロセスが開始されます。準備プロセスによって、次のことが確認されます。すなわち、すべてのマップが関連するファイルをもっていること (つまり、いずれのマップも「新しい」マップではないこと)。さらに、各マップがソースコントロールからチェックアウトすることが可能であること。ソースコントロールのデポットに各マップがまだない場合には、ファイルが読み取り専用であること。準備プロセスのエラーが発生した場合は、ビルドを続行すべきかどうか、ただちにユーザーに尋ねます。

たとえば、あるユーザーが、3 つの下位レベルのファイルをもつマップをビルドしようとしているが、同時に別のユーザーによって、下位レベルのファイル 1 つが独占的にチェックアウトされている場合について考えてみます。この場合、ダイアログによって、特定のファイルがソースコントロールからチェックアウトできないという警告が発せられることになります。この時点で、ユーザーはビルドを続行するかキャンセルするかを選択することができます。続行する場合は、すべてのレベルのファイルを織り込んでビルドされることになります。ただし、チェックアウトできなかったレベルのファイルは、保存することができず、ソースコントロールにサブミットされません。このようにしてビルドを継続した場合、部分的にビルドされたマップがソースコントロールにサブミットされるということに留意してください。

ビルドが成功すると、ダイアログによって関連ファイルがすべて保存されるとともに、サブミット可能なファイルがすべてソースコントロールのデポットにサブミットされることになります。

コマンドラインの呼び出し


自動ビルドは、エディタに対するコマンドラインの引数を使っても開始することができます。そのやり方を取ると、エディタが起動するとともに、指定されたマップがビルドされ、ソースコントロールにサブミットされ、完了とともにエディタが終了します。コマンドラインによるビルドは、デフォルトの動作を除いて、エディタ ダイアログによって開始されたビルドと同様のものです。エラーが発生した場合は、ダイアログであれば続行するか否かが尋ねられますが、コマンドラインによるビルドの場合は、このようなエラーを無視するように明示的に命令しない限り、単にビルドに失敗して終了します。

コマンドラインの使用法

自動ビルドを指定するには、通常のエディタ コマンドラインの引数に加え、2 つある特別な自動ビルドのパラメータを指定します。

  • -AutomatedMapBuild
    この特別なパラメータは、エディタに対して、自動ビルドが要求されたことを通知します。

  • CLDesc="Changelist Description Here! (チェンジリストの記述をここに!)"
    引用された文字列の使用法を記載することによって、チェンジリストの記述内にスペースが与えられます。このパラメータを省略すると、ビルドの準備中にビルドは即座に失敗します。

たとえば、DM-Deck マップの自動ビルドを指定するには、次のようなコマンドラインになります。
editor DM-Deck -AutomatedMapBuild CLDesc="Rebuilding DM-Deck"

オプションのコマンドライン引数

コマンドラインによる自動ビルドの動作を設定するために、引数を追加することことができます。

  • IgnoreBuildErrors=TRUE/FALSE
    • 解説 : マップをビルドする際にマップ チェック エラーが生じた場合に、サブミットを実行すべきか否かを指定します。 FALSE に設定すると、マップ チェック エラーを発生させたマップが 1 つでもあれば、いずれのマップもサブミットされなくなります。
    • デフォルトの動作 : 無視します。ビルドエラーは、通常サブミットを妨げるほど深刻なものではないため、無視されます。

  • IgnoreSCCErrors=TRUE/FALSE
    • 解説 : マップファイルをチェックアウトできないためにエラーが生じた場合 (他ユーザーによってチェックアウトされた可能性があります) に、サブミットを実行すべきか否かを指定します。FALSE に設定すると、チェックアウトできなかったり、いかなる理由であっても書き込めないマップが 1 つでもある場合は、いずれのマップもサブミットされなくなります。
    • デフォルトの動作 : ビルドを中止します。ソースコントロール エラーが生じると、通常は部分的なビルドに終わるため、デフォルトでは、ビルドを中止することになっています。

  • IgnoreMapSaveErrors=TRUE/FALSE
    • 解説 : マップファイルを正しく保存することができなかった場合に、サブミットを実行すべきか否かを指定します。FALSE に設定すると、何らかの理由でマップが正しく保存できなかった場合、いずれのマップもサブミットされなくなります。
    • デフォルトの動作 : ビルドを中止します。保存エラーが生じた場合は、通常、きわめて不正な事態が発生していると想定されるため、デフォルトではビルドブロセスを中止することになっています。

  • AddFilesNotInDepot=TRUE/FALSE
    • 解説 : マップファイルが、ソースコントロールデポットにまだない場合、自動ビルドの一環としてデポットに追加すべきか否かを指定します。
    • デフォルトの動作 : FALSE になっています。デフォルトでは、マップファイルが、ソースコントロールデポットにまだない場合、自動ビルドによってデポットに追加されることはありません。