Language:
Page Info
Engine Version:

アンリアルビルド システムのターゲット ファイル

概要

UnrealBuildTool は、2 タイプのターゲットのビルドをサポートしています。

  • Game - クック済みデータの実行を要求するスタンドアロン ゲームです。

  • Client - Game と同じですが、サーバー コードは含まれません。ネットワーク ゲームに役立ちます。

  • Client - Game と同じですが、クライアント コードは含まれません。ネットワーク ゲームのデディケイテッド サーバーに役立ちます。

  • Editor - アンリアル エディタを拡張するターゲットです。

  • Program - アンリアル エンジンに加えてビルドされているスタンドアロン ユーティリティ プログラムです。

ターゲットは、.target.cs 拡張子のついた C# ソース ファイルで宣言され、プロジェクトの Source ディレクトリに格納されます。それぞれの .target.cs ファイルは、TargetRules 基本クラスから派生したクラスを宣言し、コンストラクタからのビルド方法を調節するプロパティを設定します。ターゲットをビルドするように指示すると、UnrealBuildTool は target.cs ファイルをコンパイルし、その設定を定義するために中にクラスを構築します。

クラス名は、'Target' の前に宣言されたファイル名 と一致しなければなりません (MyProject.target.cs であれば、クラス 'MyProjectTarget' を定義します)。

以下が、代表的な target.cs ファイルの構造体です。

using UnrealBuildTool;
using System.Collections.Generic;

public class MyProjectTarget :TargetRules
{
    public MyProjectTarget(TargetInfo Target) : base(Target)
    {
        Type = TargetType.Game;

        // Other properties go here (その他のプロパティはここにくる)
    }
}

読み取り専用プロパティ

Name (String)

このターゲットの名前です。

Platform (UnrealTargetPlatform)

このターゲットのビルド先プラットフォームです。

Configuration (UnrealTargetConfiguration)

ビルド中のコンフィギュレーションです。

Architecture (String)

ターゲットがビルド先アーキテクチャ (もしくはデフォルト用の空のストリング) です。

ProjectFile (FileReference)

このターゲットを含むプロジェクトのプロジェクト ファイルへのパスです。

読み取り / 書き込み用プロパティ

Type (TargetType)

ターゲットの型です。

bUsesSteam (Boolean)

ターゲットが Steam を使用するかどうかを指定します。

bUsesCEF3 (Boolean)

ターゲットが CEF3 を使用するかどうかを指定します。

bUsesSlate (Boolean)

プロジェクトで視覚的な Slate UI を使用するかどうかを指定します (常に使用できるローレベル ウィンドウイング / メッセージングとは対照的に)。

bUseStaticCRT (Boolean)

強制的に CRT に静的リンクします。アロケータ インプリメンテーションの共有を必要としたり、TPS ライブラリに整合性が必要なので、エンジン全体でサポートしているわけではありませんが、ユーティリティ プログラムで使用することができます。

bDebugBuildsActuallyUseDebugCRT (Boolean)

デバッグ ビルドの Debug C++ ランタイム (CRT) を有効にします。基本的にはリリース ランタイムを使用しますが、Debug C++ ランタイムはアンリアル エンジン プロジェクトのデバッグにはあまり有用ではありません。Debug CRT ライブラリへのリンクは強制的にサードパーティ ライブラリの依存関係も Debug CRT を使ってコンパイルすることになる (だからパフォーマンスが遅くなる) からです。多くの場合、プログラム コードのデバッグのためだけにサードパーティ統計ライブラリのデバッグ バージョンのコピーが別途必要となり、手間がかかります。

bOutputPubliclyDistributable (Boolean)

モジュール上の依存関係が特別な制約をもつフォルダ (CarefullyRedist、NotForLicensees、NoRedist など) 内にある場合でも、このターゲットからの出力を公開配布できるかどうかを指定します。

UndecoratedConfiguration (UnrealTargetConfiguration)

コンフィギュレーションのバイナリが "-Platform-Configuration" サフィックスを要求しないように指定します。

bBuildAllPlugins (Boolean)

有効にされていなくても見つけることができるすべてのプラグインをビルドします。ビルドしている UE4Editor ターゲットをプラグインを有効にするゲームで実行するような、コンテンツのみのプロジェクトに特に便利です。

AdditionalPlugins (List<String>)

このターゲットにインクルードする必要のある追加プラグイン リストです。無効にすることができないオプション以外のプラグイン モジュールの参照を可能にし、ModuleHostType カテゴリに合致しないプログラム ターゲットの特定モジュールにに対してビルドすることができます。

PakSigningKeysFile (String)

実行ファイルに埋め込むための PAK ログイン キーへのパスです。

SolutionDirectory (String)

プログラム ターゲットが独自のソリューション フォルダ パスを指定できるようにします。

bBuildInSolutionByDefault (Nullable<Boolean>)

デフォルトのソリューション ビルド コンフィギュレーションにターゲットを含むかどうかを指定します。

bOutputToEngineBinaries (Boolean)

実行ファイルをエンジン バイナリ フォルダへ出力します。

bShouldCompileAsDLL (Boolean)

このターゲットを DLL としてコンパイルするかどうかを指定します。Requires LinkType を TargetLinkType.Monolithic に設定する必要があります。

ExeBinariesSubFolder (String)

デフォルト位置に対して、実行ファイルを格納するサブフォルダです。

GeneratedCodeVersion (EGeneratedCodeVersion)

ターゲット モジュールが UHT コード生成版をオーバーライドできるようにします。

bCompilePhysX (Boolean)

PhysX サポートをインクルードするかどうかを指定します。

bCompileAPEX (Boolean)

PhysX APEX サポートをインクルードするかどうかを指定します。

bCompileNvCloth (Boolean)

NvCloth をインクルードするかどうかを指定します。

bCompileBox2D (Boolean)

Box2D サポートをインクルードするかどうか指定します。

bCompileICU (Boolean)

ICU unicode/i18n サポートをコアにインクルードするかどうか指定します。

bCompileCEF3 (Boolean)

CEF3 サポートをコンパイルするかどうか指定します。

bBuildEditor (Boolean)

エディタをコンパイルするかどうか指定します。プラットフォームがデスクトップ (Windows または Mac) の場合のみ使用します。それ以外のプラットフォームで使用すると false となります。

bBuildRequiresCookedData (Boolean)

ビルド アセットに関連したコードをコンパイルするかどうか設定します。コンソールは一般的にアセットのビルドはできません。通常、デスクトップ プラットフォームはできます。

bBuildWithEditorOnlyData (Boolean)

WITH_EDITORONLY_DATA を無効にコンパイルするかどうか指定します。Windows のみで使用します。それ以外のプラットフォームでは強制的に false になります。

bBuildDeveloperTools (Boolean)

コンパイル ツールをコンパイルするかどうか指定します。

bForceBuildTargetPlatforms (Boolean)

通常はビルドされない場合でも、ターゲット プラットフォーム モジュールを強制的にコンパイルするかどうか指定します。

bForceBuildShaderFormats (Boolean)

通常はビルドされない場合でも、シェーダー プラットフォーム モジュールを強制的にコンパイルするかどうか指定します。

bCompileSimplygon (Boolean)

Simplygon をサポートできるようにコンパイルするかどうか指定します。

bCompileSimplygonSSF (Boolean)

Simplygon の SSF ライブラリをサポートできるようにコンパイルするかどうか指定します。

bCompileLeanAndMeanUE (Boolean)

UE のLean と Mean バージョンをコンパイルするかどうか指定します。

bBuildEditor (Boolean)

MallocBinned にキャッシュフリー OS の割り当てを使用するかどうか指定します。

bCompileAgainstEngine (Boolean)

エンジン プロジェクトを含むすべてのビルドを有効にされます。コアとのみ結合するスタンドアロン app のビルド時のみ無効になります。

bCompileAgainstCoreUObject (Boolean)

CoreUObject プロジェクトを含むすべてのビルドに対して有効にされます。コアとのみ結合するスタンドアロン app のビルド時のみ無効になります。

bIncludeADO (Boolean)

True の場合、ADO データベース サポートをコアに含みます。

bCompileRecast (Boolean)

Recast navmesh 生成をコンパイルするかどうか指定します。

bCompileSpeedTree (Boolean)

SpeedTree サポートをコンパイルするかどうか指定します。

bForceEnableExceptions (Boolean)

すべてのモジュールに対して例外を有効にします。

bForceEnableRTTI (Boolean)

すべてのモジュールに対して RTTI を有効にします。

bWithServerCode (Boolean)

サーバー専用コードをコンパイルします。

bCompileWithStatsWithoutEngine (Boolean)

エンジンなしても統計サポートを含むかどうかを設定します。

bCompileWithPluginSupport (Boolean)

プラグイン サポートをインクルードするかどうかを指定します。

bWithPerfCounters (Boolean)

PerfCounters サポートをインクルードするかどうか指定します。

bUseLoggingInShipping (Boolean)

テスト / シッピング ビルドのロギングをオンにするかどうかを指定します。

bLoggingToMemoryEnabled (Boolean)

テスト / シッピング ビルド用メモリのロギングをオンにするかどうかを指定します。

bUseLauncherChecks (Boolean)

処理が外部ランチャーで起動したことを確認するかどうか指定します。

bUseChecksInShipping (Boolean)

テスト / シッピング ビルドに対するチェック (アサート) をオンにするかどうか指定します。

bCompileFreeType (Boolean)

サポートが必要な場合は true に設定します。

bCompileForSize (Boolean)

速度よりも大きさの最適化を優先したい場合は true に設定します。

bForceCompileDevelopmentAutomationTests (Boolean)

開発自動化テストをコンパイルするかどうか設定します。

bForceCompilePerformanceAutomationTests (Boolean)

パフォーマンス自動化テストをコンパイルするかどうか設定します。

bEventDrivenLoader (Boolean)

True の場合、イベント ドリブン ローダーがクック済みビルドで使用されます。非同期読み込みがリファクタリングされた後、ランタイム ソリューションに置き換える必要があります。

bEnforceIWYU (Boolean)

PCHU"include what you use" ルールが強制され、モノリシック (Engine.h、UnrealEd.h など) の使用に対して警告が出され、ソースファイルがマッチするヘッダをが最初にインクルードされているかをチェックします。

bHasExports (Boolean)

最後の実行ファイルがシンボルをエクスポートするかどうかを指定します。

bPrecompile (Boolean)

すべてのエンジン モジュールに対して統計情報ライブラリをこのターゲットの中間として作成します。

bUsePrecompiled (Boolean)

このターゲットのすべてのエンジン モジュールに対して既存の統計情報ライブラリを使用します。

bEnableOSX109Support (Boolean)

OS X 10.9 Mavericks のサポートをコンパイルするかどうか指定します。OS X のこのバージョンと互換性が必要なツールに対して使用します。

bIsBuildingConsoleApplication (Boolean)

ビルド中のコンソール アプリケーションの場合は true に設定します。

bDisableSymbolCache (Boolean)

生成されないようにするためのプラットフォームのデバッグ シンボルがキャッシュされている場合は true を設定します。

bUseUnityBuild (Boolean)

コンパイルを速くするために C++ コードを大きなファイルに統合するかどうかを指定します。

bForceUnityBuild (Boolean)

コンパイルを速くするために C++ コードを強制的に大きなファイルに統合するかどうかを指定します。

bUseAdaptiveUnityBuild (Boolean)

ヒューリスティック手法で、現在どのファイルを対象にイタレート中なのかを判断した後、ユニティ ボディから取り除き、段階的にコンパイル時間を速くします。現在の実装では、ファイルが変更されると、ソースコントロール システムが書き込み可能にすると仮定して、読み取り専用フラグを使用して作業セットを区別します。この方法は、Perforce には使えますが、Git には適しません。

bAdaptiveUnityDisablesOptimizations (Boolean)

適応するノンユニティ ワーキング セットの中のファイル最適化を無効にします。

bAdaptiveUnityDisablesPCH (Boolean)

適応するノンユニティ ワーキング セットの中のファイルに対して強制インクルード PCH を無効にします。

MinGameModuleSourceFilesForUnityBuild (Int32)

ユニティ ビルドがそのモジュールに対して有効になる前のゲーム モジュール内のソース ファイル数です。小さいゲーム モジュールでは 1 ファイルあたりの反復コンパイル時間が速くなります。この設定は、モジュールの Build.cs ファイルの bFasterWithoutUnity オプションでオーバーライドすることが可能です。

bShadowVariableErrors (Boolean)

シャドウ変数をサポートしているプラットフォーム上では、その警告を強制的にエラーとして扱うようにします。

bUndefinedIdentifierErrors (Boolean)

条件式の中で定義されていない識別子を使用すると、強制的にエラーとして扱うようにします。

bUseFastMonoCalls (Boolean)

新しいモノリシック グラフィックス ドライバーに、各種 D3d 機能に代わる "fast calls" がオプションで付きました。

bUseFastSemanticsRenderContexts (Boolean)

新しい Xbox ドライバーは "fast semantics" コンテキスト タイプをサポートします。これは、即時にディファードするコンテキストをオンに切り替えます。Xbox RHI でレンダリングに問題があったりクラッシュする場合は、これを無効にしてみてください。

NumIncludedBytesPerUnityCPP (Int32)

単一の統合 C++ ファイルに含む対象とする C++ コードの推定バイト数です。

bStressTestUnity (Boolean)

単一の統合ファイルで、プロジェクトのすべての C++ ファイルを含めて C++ ユニティ ビルドの安定性を確認するストレステストを行うかどうかを指定します。

bForceDebugInfo (Boolean)

強制的にデバッグ情報を生成するかどうか設定します。

bDisableDebugInfo (Boolean)

デバッグ情報の生成をグローバルに無効にするかどうかを設定します。構成単位、プラットフォーム固有のオプションは DebugInfoHeuristics.cs を参照してください。

bDisableDebugInfoForGeneratedCode (Boolean)

生成ファイルに対してデバッグ情報の生成を無効にするかどうか指定します。グルーコードが数多く生成されたモジュールへのリンク時間が改善されます。

bOmitPCDebugInfoInDevelopment (Boolean)

開発ビルド イタレーションで PC 上のデバッグ情報を無効にするかどうかを指定します (デバッグ情報を無効にするとリンク時間が非常に速くなるので、イタレーション速度の改善にお勧めします) 。

bUsePDBFiles (Boolean)

PDB ファイルを Visual C++ ビルドに使用するかどうかを指定します。

bUsePCHFiles (Boolean)

PCH ファイルを使用するかどうかを指定します。

MinFilesUsingPrecompiledHeader (Int32)

作成および使用前にプリコンパイル済みヘッダーの使用を必要とするファイルの最小数です。

bForcePrecompiledHeaderForGameModules (Boolean)

有効にすると、モジュールにソース ファイルが少ししかなくても、ゲーム モジュールに対して常にヘッダーが生成されます。これにより、プロジェクトの数ファイル上で繰り返し処理の変更に対するコンパイル時間が大幅に改善される代わりに、小さなゲーム プロジェクトの再ビルド時間は遅くなります。モジュールの Build.cs ファイルに MinFilesUsingPrecompiledHeaderOverride を指定すると、オーバーライドが可能になります。

bUseIncrementalLinking (Boolean)

インクリメンタルリンクの使用について指定します。インクリメンタルリンクは、小さな変更に対するイタレーション時間を短縮できます。コンピューターによってはバグのような症状 (PDB 関連のコンパイル エラー) が出るので、現時点では無効にされています。

bAllowLTCG (Boolean)

リンク時コード生成の使用の許可について指定します。

bAllowASLRInShipping (Boolean)

ASLR (アドレス空間配置のランダム化) がサポートされている場合、使用の許可について指定します。シッピング ビルドのみに適用します。

bSupportEditAndContinue (Boolean)

編集をサポートし継続するかどうかを指定します。32 ビット コンパイルの Microsoft コンパイラでのみ機能します。

bOmitFramePointers (Boolean)

フレーム ポインタの省略について指定します。無効にすると、PC のメモリ プロファイリングなど行う際に便利です。

bStripSymbolsOnIOS (Boolean)

iOS シンボルの削除について (bGeneratedSYMFile で暗示される) 指定します。

bUseMallocProfiler (Boolean)

True にすると、ビルドのメモリ プロファイリングが有効になります (USE_MALLOC_PROFILER=1 を定義し bOmitFramePointers=false を強制します)。

bUseSharedPCHs (Boolean)

"Shared PCH" を有効にします。UBT が検出するモジュール間で特定の PCH ファイルを共有しようとすることでコンパイル時間を大幅に改善します。

bUseShippingPhysXLibraries (Boolean)

開発ビルドとリリース ビルドが PhysX/APEX のリリース コンフィギュレーションを使用している場合は true を指定します。

bUseCheckedPhysXLibraries (Boolean)

開発ビルドとリリース ビルドが PhysX/APEX のチェックされたコンフィギュレーションを使用している場合は True にします。bUseShippingPhysXLibraries が true の場合は無視されます。

bCheckLicenseViolations (Boolean)

ビルド中のモジュールの EULA に対する抵触を確認するように UBT に伝えます。

bBreakBuildOnLicenseViolation (Boolean)

ビルド中のモジュールが EULA に抵触している場合、ビルドの中断を UTB に伝えます。

bUseFastPDBLinking (Boolean):/DEBUG でビルドしてローカルの PDB をウィンドウ上に作成する場合、

FASTLINK オプションを使用するかどうかを指定します。速くなりますが、デバッガーでのシンボルの検索にまだ問題があるようです。

bCreateMapFile (Boolean)

ビルドの一部としてマップ フィアルを出力します。

BundleVersion (String)

Mac app 用バンドル版です。

bDeployAfterCompile (Boolean)

デプロイを要求するプラットフォーム上でコンパイルした後に実行ファイルをデプロイするかどうか指定します。

bCreateStubIPA (Boolean)

True の場合、コンパイル処理が終わるとスタブ IPA が生成されます (有効な IPA に必要な最小限のファイル)。

bCopyAppBundleBackToDevice (Boolean)

True の場合、コンパイル処理が終わるとスタブ IPA が生成されます (有効な IPA に必要な最小限のファイル)。

bAllowRemotelyCompiledPCHs (Boolean)

有効の場合、XGE がリモート マシン上でプリコンパイル済みヘッダ ファイルをコンパイルすることができます。有効でない場合、PCH が常にローカルに生成されます。

bCheckSystemHeadersForModification (Boolean)

無効のアクションと判断した場合、システム パスのヘッダ修正確認を行うかどうか指定します。

bDisableLinking (Boolean)

このターゲットへのリンクを無効にするかどうか指定します。

bFormalBuild (Boolean)

このフラグは、公式ビルドであり、配布用であることを示します。このフラグは、Build.version に changelist が設定されている場合、自動的に true に設定されます。現在このフラグに結びついている唯一のビヘイビアは、OriginalFilename が正しく設定されるようにデフォルト リソース ファイルをバイナリごとに別々にコンパイルすることです。デフォルトでは、ビルド時間を短縮するためにリソースのコンパイルは 1 度しか行いません。

bFlushBuildDirOnRemoteMac (Boolean)

ビルド前にリモート Mac で Builds ディレクトリをきれいにするかどうかを指定します。

bPrintToolChainTimingInfo (Boolean)

コンパイラとリンカから詳細なタイミング情報を書き出すかどうかを指定します。

PCHOutputDirectory (String)

プリコンパイル済みヘッダ ファイルを入れるディレクトリです。より速いドライブでのパスを使うことができる実験段階の設定です。設定しない場合、デフォルト値は標準出力ディレクトリです。

GlobalDefinitions (List<String>)

ターゲット全体をグローバルに定義するためのマクロです。

ExtraModuleNames (List<String>)

ターゲットにコンパイルされる追加モジュールのリストです。

BuildEnvironment (TargetBuildEnvironment)

このターゲットのビルド環境を設定します。使用可能なオプションの詳細は TargetBuildEnvironment をご覧ください。

OverrideExecutableFileExtension (String)

実行ファイルのファイル拡張子 (Windows では通常.exe もしくは .dll) のオーバーライド設定が可能です。