언어:
페이지 정보
엔진 버전:
언리얼 엔진

BuildGraph 스크립트 엘리먼트

언리얼 엔진

BuildGraph 스크립트는 XML 로 작성합니다. 여기서는 BuildGraph 스크립트에서 찾을 수 있는 데이터 유형과 아울러 전체적인 구조체에 대해 알아봅니다.

엘리먼트

엘리먼트(element)는 그 안에 포함된 데이터의 설명으로, BuildGraph 스크립트의 기본 구성 요소 중 하나입니다. 다음 표는 메타데이터로 제공되는 항목으로, 빌드 시스템에서 실행할 때 익스포트되는 것입니다. 로컬에서 태스크를 실행할 때 BuildGraph 에 직접 사용되지는 않지만, [META] 태그가 붙습니다.

그래프 구조체

BuildGraph 스크립트는 보통 다음 엘리먼트로 정의됩니다:

  • <Node> 노드

  • <Aggregate> 어그리게이트

  • <Agent> 에이전트

  • <Trigger> 트리거

노드

<Node> 노드는 BuildGraph 의 가장 작은 실행 단위로, 입력과 출력 세트를 갖습니다. 각 <Node> 는 순서대로 실행되는 태스크 시퀀스로 이루어집니다.

어트리뷰트

유형

필수

설명

Name

Name

필수

노드 이름입니다.

Requires

Target List

옵션

다른 노드에서 만들어진 노드, 어그리게이트, 태그 붙은 파일 세트의 세미콜론 구분 목록으로, 이 노드의 실행에 필요합니다.

Produces

Tag List

옵션

이 노드가 다른 노드에 사용할 수 있도록 만든 태그 붙은 파일 세트를 세미콜론으로 구분한 것입니다.

After

Target List

옵션

이 노드가 다음에 실행시켜야 하는 노드 목록으로, 현재 대상의 일부인 경우에만 실행합니다 (아니면 무시합니다). 세미콜론으로 구분합니다.

NotifyOnWarnings

Boolean

옵션

false 면 이 노드는 경고시 알림 신호를 냅니다. 빌드 시스템에만 사용됩니다. 기본값은 true 입니다. [META]

If

Condition

옵션

평가할 조건입니다. 조건 평가가 true 로 나오지 않는 한 엘리먼트는 무시됩니다.

어그리게이트

<Aggregate> 는 다른 노드의 세트 (또는 생성된 태그 세트)에 대한 동의어로 사용될 수 있는 네임드 어그리게이트를 선언합니다.

어트리뷰트

유형

필수

설명

Name

Name

필수

어그리게이트 이름입니다.

Requires

Target List

필수

이 어그리게이트의 종속성 목록입니다. 노드, 태그 붙은 파일 세트, 에이전트 그룹이 될 수 있습니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

에이전트

<Agent> 는 (중간 디렉터리를 지우지 않고) 시퀀스로 실행될 노드의 에이전트 요건을 정의합니다. <Agent> 요건은 로컬에서 빌드할 때는 무시되지만, 반드시 지정해야 합니다.

어트리뷰트

유형

필수?

설명

Name

Name

필수

그룹 이름입니다.

Type

Identifier List

옵션

에이전트를 실행시킬 유형입니다. 이 스트링의 뜻은 호스트 빌드 시스템이 추론하며, 고유 의미를 갖지는 않습니다. [META]

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

트리거

<Trigger> 는 사용자 직접 개입으로만 실행시켜야 하는 그래프 부분에 대한 컨테이너 역할을 합니다. 트리거 이후 노드를 실행하려면, 명령줄에 -Trigger=<Name> 을 전달합니다.

어트리뷰트

유형

필수?

설명

Name

Name

필수

트리거 이름입니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

프로퍼티 조작

BuildGraph 프로퍼티는 다음 엘리먼트로 변경할 수 있습니다:

  • <Property> 프로퍼티

  • <Option> 옵션

  • <EnvVar> 환경변수

프로퍼티

<Property> 는 프로퍼티의 값을 설정합니다. 외부 영역의 프로퍼티가 이미 같은 이름으로 선언된 경우, <Property> 로 덮어씁니다. 그렇지 않은 경우, 현재 영역에 새로운 프로퍼티를 선언합니다.

어트리뷰트

유형

필수?

설명

Name

Name

필수

설정할 프로퍼티 이름입니다.

Value

String

필수

프로퍼티에 대한 새 값입니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

옵션

<Option> 은 명령줄에서 설정할 수 있는 사용자 옵션을 정의합니다. <Option> 은 전체 영역에서만 나타날 수 있습니다.

어트리뷰트

유형

필수?

설명

Name

Name

필수

옵션의 값으로 초기화시킬 옵션(과 프로퍼티) 이름입니다.

Description

String

필수

BuildGraph 에 -ListOnly 인수를 붙여 실행하면 표시되는 옵션에 대한 설명입니다.

Restrict

Regex

옵션

이 옵션의 유효 값에 일치하는 정규표현식입니다 (예: [a-zA-Z]+, true | false).

DefaultValue

String

필수

사용자가 명시적으로 설정하지 않은 경우의 옵션 기본값입니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

환경변수

<EnvVar> 는 환경 변수의 내용( 또는 설정되지 않은 경우 공백 스트링)을 담는 프로퍼티를 선언합니다. <EnvVar> 는 전체 영역에서만 나타납니다.

어트리뷰트

유형

필수?

설명

Name

Name

필수

프로퍼티로 도입할 환경 변수 이름입니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

흐름 제어

BuildGraph 스크립트의 흐름을 제어할 수 있는 엘리먼트는 다음과 같습니다:

  • <Include>

  • <Do>

  • <Switch>

  • <ForEach>

Include

<Include> 는 다른 BuildGraph 스크립트의 내용을 이 파일 안에 나타난 것처럼 처리합니다. <Include> 는 전체 영역에서만 나타날 수 있습니다.

어트리뷰트

유형

필수?

설명

Script

String

필수

포함시키고자 하는 스크립트로의 (현재 스크립트 기준 상대) 경로입니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

Do

<Do> 는 엘리먼트 시퀀스를 그룹으로 묶어 조건이 true 로 평가되는 경우에만 처리합니다.

어트리뷰트

유형

필수?

설명

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

Switch

<Switch>C 의 switch 문과 비슷한데, 브랜치의 시퀀스에 있는 조건을 평가하고, true 로 평가되는 조건이 있는 첫 번째 문을 처리합니다.

예제 <Switch> 문:

<Switch>
    <Case If=X>
        <Elements go here>
    </Case>
    <Case If=Y>
        <Elements go here>
    </Case>
    <Default>
        <Elements go here>
    </Default>
</Switch>

어트리뷰트

유형

필수?

설명

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

ForEach

<ForEach> 는 엘리먼트의 본문을 목록 내 세미콜론으로 구분된 각 항목에 할당된 프로퍼티 값으로 확장시킵니다.

예제 <ForEach> 문:

<ForEach Name="Counter" Values="1;2;3;4;5">
    <Log Message="Counter=$(Counter)"/>
</ForEach>

어트리뷰트

유형

필수?

설명

Name

Name

필수

목록 내 각 값에 할당할 프로퍼티입니다.

Values

String List

필수

세미콜론으로 구분되는 값 목록입니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

진단

BuildGraph 스크립트에 대한 진단을 할 수 있는 엘리먼트는 다음과 같습니다:

  • <Warning> 경고

  • <Error> 오류

경고

<Warning> 은 그래프 실행 전 경고 메시지를 출력합니다. <Warning> 은 노드, 에이전트, 트리거, 전체 영역에 포함시킬 수 있습니다. <Warning> 은 실행중인 대상으로 추려낸(trim down) 이후에도 그래프의 일부인 경우에만 출력을 제공할 것입니다.

어트리뷰트

유형

필수?

설명

Message

String

필수

로그에 출력할 텍스트입니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

오류

<Error> 는 오류 메시지를 출력합니다. <Error> 는 노드, 에이전트, 트리거, 전체 영역에 포함시킬 수 있습니다. <Error> 는 실행중인 대상으로 추려낸(trim down) 이후에도 그래프의 일부인 경우에만 출력을 제공할 것입니다.

어트리뷰트

유형

필수?

설명

Message

String

필수

로그에 출력할 텍스트입니다.

If

Condition

옵션

평가할 조건입니다. 조건이 true 로 평가되지 않는 한 엘리먼트는 무시됩니다.

태스크

보통 프로젝트 전용 유틸리티 스크립트는 AutomationTool BuildCommand 클래스로 구현됩니다. 하지만 프로젝트에 대해 커스텀 태스크를 자동화시키고자 할 때가 있습니다. 그럴 때 BuildGraph 가 도움이 됩니다. BuildGraph 는 태스크를 몇 개든 확장할 수 있어, 요구에 딱 맞도록 빌드 자동화 태스크를 커스터마이징할 수 있습니다. 다음 섹션에서는 BuildGraph 를 사용하여 커스텀 태스크를 만드는 방법과 아울러, 커스텀 태스크 생성을 시작하기에 좋은 미리지정 태스크 목록에 대해서도 살펴보겠습니다.

커스텀 태스크

커스텀 태스크를 새로 만들기 위해서는, CustomTask 클래스에서 파생 클래스를 구현한 뒤 [TaskElement] 어트리뷰트를 적용하면 됩니다. TaskElement 생성자는 인수를 둘 받습니다. 하나는 그것을 나타내는 XML 엘리먼트의 이름, 다른 하나는 그 (로드 시간에 생성자에 전달되는) 파라미터가 들어있는 클래스 유형입니다

XML 파일에서 파라미터 클래스 필드를 읽고자 하는 경우, [TaskParameter] 어트리뷰트를 태스크에 붙입니다. TaskParameter 어트리뷰트를 붙인다는 것은 파라미터가 필수인지 옵션인지, 인수에 적용시킬 부가 인증(validation)을 포함해서 나타냅니다.

미리정의된 태스크

태스크 생성을 위한 시작 지점이 있었으면 하시는 분들을 위해, 미리정의된 태스크 다수를 템플릿으로 제공해 드리고 있습니다. 시작 지점으로 쓸 단순한 미리정의된 태스크를 찾으시는 경우, LogTask 에서부터 시작해 보실 것을 추천합니다. BuildGraph 최신 변경사항을 계속 받아보시려면, 이 글을 즐겨찾기 등록해 주세요. 주기적으로 다음 미리정의된 태스크 목록을 업데이트하겠습니다.

AgeStore

파일 세트에서 심볼을 벗겨내는 태스크입니다. 이 태스크 이름은 Microsoft 디버거 툴 SDK 인 AGESTORE 유틸리티에서 따온 것이지만, 실제로는 별도 구현입니다. 주요 차이점은 삭제할 파일을 결정하는 데 마지막 접근 시간이 아닌 마지막 변경 시간을 사용한다는 점입니다.

Platform

UnrealTargetPlatform

필수

심볼 에이징 대상 타깃 플랫폼입니다.

StoreDir

String

필수

심볼 서버 디렉터리입니다.

Days

Int32

필수

심볼을 며칠이자 유지할지 입니다.

Filter

String

옵션

디렉터리 파일명에 이 하위 스트링이 일치하면 심볼을 지웁니다. 다수의 빌드가 같은 심볼 서버를 공유하는 상황에서 "age store" 태스크가 다른 빌드의 심볼을 지우지 못하도록 할 수 있습니다. 필터 값의 구체적인 용도는 플랫폼 툴 체인에 정의된 심볼 서버 구조체로 결정됩니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건 평가 결과 false 이면 무시됩니다.

Command

지정한 명령 실행을 위한 AutomationTool 자손 프로세스를 호출합니다.

Name

String

필수

실행시킬 명령 이름입니다.

Arguments

String

옵션

명령에 전달할 인수입니다.

MergeTelemetryWithPrefix

String

옵션

null 이 아닌 경우, 명령의 텔레메트리를 지정한 접두사의 이 UAT 인스턴스에 대한 텔레메트리에 병합시키도록 지시합니다. (null 이 아닌) 공백 스트링이 될 수 있습니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Commandlet

커맨드렛을 실행할 에디터를 스폰시킵니다.

Name

String

필수

실행할 커맨드렛 이름입니다.

Project

File Spec

옵션

에디터와 같이 실행시킬 프로젝트입니다.

Arguments

String

옵션

커맨드렛에 전달할 인수입니다.

EditorExe

File Name

옵션

사용할 에디터 실행파일입니다. 기본값은 현재 플랫폼에 대한 development UE4Editor 실행파일입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Compile

대상을 UnrealBuildTool 로 컴파일합니다.

Target

String

필수

컴파일할 대상입니다.

Configuration

UnrealTargetConfiguration

필수

컴파일할 환경설정입니다.

Platform

UnrealTargetPlatform

필수

컴파일 대상 플랫폼입니다.

Arguments

String

옵션

UnrealBuildTool 에 추가로 붙일 인수입니다.

AllowXGE

Boolean

옵션

컴파일에 XGE 를 사용할지 여부입니다.

AllowParallelExecutor

Boolean

옵션

이 컴파일에 병렬 실행기를 사용할지 여부입니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Cook

특정 플랫폼용으로 선택된 맵을 쿠킹합니다.

Project

String

필수

쿠킹할 프로젝트입니다.

Platform

String

필수

쿠킹 대상 플랫폼입니다 (예: WindowsNoEditor).

Maps

String

옵션

쿠킹할 맵 목록입니다. '+' 글자로 구분합니다.

Versioned

Boolean

옵션

버전을 붙일지 여부입니다.

Arguments

String

옵션

쿠커에 전달할 부가 인수입니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Copy

한 디렉터리의 파일을 다른 디렉터리로 복사합니다.

Files

File Spec

옵션

입력 파일 목록에 적용시킬 필터입니다. 옵션입니다.

From

File Spec

필수

복사해 올 패턴입니다. (예: Engine/*.txt)

To

File Spec

필수

복사 대상 디렉터리입니다.

Overwrite

Boolean

옵션

기존 파일 덮어쓰기 여부입니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

CsCompile

C# 프로젝트 파일과 그 종속성을 컴파일합니다.

Project

String

필수

컴파일할 C# 프로젝트 파일입니다. 세미콜론으로 구분해서 프로젝트 파일을 둘 이상 지정할 수 있습니다.

Configuration

String

옵션

컴파일할 환경설정입니다.

Platform

String

옵션

컴파일할 플랫폼입니다.

Arguments

String

옵션

컴파일러에 추가로 전달할 옵션입니다.

EnumerateOnly

Boolean

옵션

빌드 제품을 열거만 할 뿐, 프로젝트를 실제로 컴파일하지는 않습니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

TagReferences

Tag List

옵션

프로젝트가 가진 프라이빗 이외의 레퍼런스(, 즉 external 이라 출력 디렉터리에 복사되지 않는 것들)에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Delete

파일 세트를 삭제합니다.

Files

File Spec

필수

세미콜론으로 구분되는 지정 파일 목록 (예: .cpp;Engine/.../.bat), 또는 태그 세트 이름입니다.

DeleteEmptyDirectories

Boolean

옵션

파일 삭제 후 공백 디렉터리 삭제 여부입니다. 기본값은 true 입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Log

출력 로그에 메시지(와 기타 옵션 진단 정보)를 출력합니다.

Message

String

옵션

출력할 메시지입니다.

Files

File Spec

옵션

지정하면 지정한 파일 목록을 지정한 메시지 이후에 출력합니다.

IncludeContents

Boolean

옵션

지정하면 지정한 파일의 내용을 출력합니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Move

한 디렉터리에서 다른 디렉터리로 파일을 이동합니다.

Files

File Spec

옵션

입력 파일 목록에 적용할 필터입니다. 옵션입니다.

From

File Spec

필수

복사해 올 패턴입니다. (예: Engine/*.txt)

To

File Spec

필수

복사 대상 디렉터리입니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건 평가 결과 false 인 경우 무시됩니다.

MsBuild

MsBuild 를 실행합니다.

Project

String

필수

컴파일 대상 C# 프로젝트 파일입니다. 세미콜론으로 구분하여 프로젝트 파일을 둘 이상 지정할 수 있습니다.

Configuration

String

옵션

컴파일에 사용할 구성입니다.

Platform

String

옵션

컴파일에 사용할 플랫폼입니다.

Arguments

String

옵션

컴파일러에 전달할 부가 옵션입니다.

Verbosity

String

옵션

MSBuild 출력 상세 정도입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건 평가 결과 false 인 경우 무시됩니다.

PakFile

지정한 파일 세트에서 PAK 파일을 생성합니다.

Files

File Spec

필수

pak 파일에 추가할 파일 목록, 와일드카드, 태그 세트로, ';' 글자로 구분합니다.

Output

File Name

필수

출력할 PAK 파일입니다.

ResponseFile

File Name

옵션

pak 파일에 추가할 파일을 직접 지정하는 대신, 그 파일 목록이 들어있는 Response File 에 대한 경로입니다.

RebaseDir

Directory Name

옵션

파일 상대 경로의 기준 변경을 위한 디렉터리입니다. 지정하면 각 파일에 대해 목록의 디렉터리 아래 가장 짧은 경로를 사용합니다.

Order

File Name

옵션

파일 순서를 나타내는 스크립트입니다.

Sign

String

옵션

이 pak 파일에 대한 암호화 키입니다.

Compress

Boolean

옵션

파일 압축 여부입니다.

Arguments

String

옵션

UnrealPak 에 추가로 전달할 인수입니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Rename

파일, 또는 파일 그룹 이름을 변경합니다.

Files

File Spec

필수

이름을 변경할 파일입니다.

From

Directory Name

옵션

현재 파일 이름, 또는 일치시킬 패턴 (예: *.txt) 입니다. 경로 구분자를 포함시키면 안됩니다.

To

Directory Name

필수

파일에 대한 새 이름입니다. 경로 구분자를 포함시키면 안됩니다.

Tag

Tag List

옵션

이름 변경된 파일에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

SetVersion

로컬 버전 파일을 (Engine/Source/Runtime/Launch/Resources/Version.h, Engine/Build/Build.version, and Engine/Source/Programs/DotNETCommon/Metadata.cs) 지정한 버전 정보로 업데이트합니다.

Change

Int32

필수

버전 파일에 설정할 ChangeList 입니다.

CompatibleChange

Int32

옵션

버전 파일에 설정할 엔진 호환 ChangeList 입니다.

Branch

String

필수

브랜치 문자열입니다.

Build

String

옵션

빌드 버전 문자열입니다.

Licensee

Boolean

옵션

IS_LICENSEE_VERSION 플래그 true 설정 여부입니다.

Promoted

Boolean

옵션

ENGINE_IS_PROMOTED_BUILD 플래그의 true 설정 여부입니다.

SkipHeader

Boolean

옵션

설정하면, Version.h 를 업데이트하지 않고, 데이터 (Build.version, Metadata.cs 등의) 파일만 업데이트합니다. 에디터는 실행시간에 build.version 에서 빌드 체인지리스트를 읽을 수 있습니다.

SkipWrite

Boolean

옵션

설정하면 실제로 파일에 쓰지 않고, 업데이트할 버전 파일만 반환합니다. 로컬 빌드에 좋습니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Sign

실행파일 세트에 설치된 Certificate 로 사이닝합니다.

Files

File Spec

필수

세미콜론으로 구분되는 지정 파일 목록 (예: .cpp;Engine/.../.bat), 또는 태그 세트 이름입니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Spawn

외부 실행파일을 스폰시키고 완료될 때까지 기다립니다.

Exe

File Name

필수

스폰시킬 실행파일입니다.

Arguments

String

옵션

새로 생성되는 프로세스에 대한 인수입니다.

ErrorLevel

Int32

옵션

오류로 간주되는 최소 종료 코드입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Stage

빌드 리십트에 나열된 파일을 출력 디렉터리에 스테이징합니다.

Project

File Name

옵션

이 대상이 속하는 프로젝트입니다.

Target

String

필수

스테이징할 대상 이름입니다.

Platform

UnrealTargetPlatform

필수

스테이징할 플랫폼입니다.

Configuration

UnrealTargetConfiguration

필수

스테이징할 환경설정입니다.

Architecture

String

옵션

스테이징할 아키텍처입니다.

ToDir

String

필수

리십트 파일을 스테이징할 디렉터리입니다.

Overwrite

Boolean

옵션

기존 파일을 덮어쓸지 여부입니다.

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Strip

파일 세트에서 디버깅 정보를 벗겨냅니다.

Platform

UnrealTargetPlatform

필수

바이너리를 벗겨낼 플랫폼 툴체인입니다.

BaseDir

Directory Name

옵션

파일을 검색할 디렉터리입니다.

Files

File Spec

필수

세미콜론으로 구분되는 파일 지정 목록 (예: Engine/.../*.pdb), 또는 태그 세트 이름입니다.

OutputDir

Directory Name

옵션

벗겨낸 파일의 출력 디렉터리입니다. 기본값은 입력 경로입니다 (입력 파일을 덮어씁니다).

Tag

Tag List

옵션

이 태스크의 빌드 제품에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Submit

새로운 ChangeList 를 만들어 파일 세트를 퍼포스 스트림에 제출합니다.

Description

String

필수

제출된 ChangeList 에 대한 설명입니다.

Files

File Spec

필수

제출할 파일 목록입니다.

FileType

String

옵션

제출된 파일에 대한 퍼포스 파일 유형입니다 (예: binary+FS32)

Workspace

String

옵션

워크스페이스 이름입니다. 지정하면 지정된 스트림과 파일을 제출한 루트 디렉터리를 사용하여 새로운 워크스페이스를 만듭니다. 지정하지 않으면, 현재 워크스페이스를 사용합니다.

Stream

String

옵션

워크스페이스의 스트림입니다. 기본값은 현재 스트림입니다. Workspace 어트리뷰트 역시 지정되지 않는 한 무시됩니다.

RootDir

Directory Name

옵션

스트림에 대한 루트 디렉터리입니다. 지정하지 않으면, 기본값은 현재 루트 디렉터리입니다.

RevertUnchanged

Boolean

옵션

submit 시도 전 변경되지 않은 파일을 revert 시킬지 여부입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

SymStore

파일 세트에서 심볼을 벗겨내는 태스크입니다.

Platform

UnrealTargetPlatform

필수

심보ㅓㄹ 파일 처리에 필요한 플랫폼 툴체인입니다.

Files

String

필수

출력 파일 목록입니다. PDB 는 이 목록에서 추출합니다.

StoreDir

String

필수

압축된 심볼에 대한 출력 디렉터리입니다.

Product

String

필수

심볼 스토어 레코드에 대한 제품 이름입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건 평가 결과 false 인 경우 무시됩니다.

Tag

지정된 파일 세트에 태그를 적용합니다. 파일 목록은 태그 열거(enumerate) 및 'Files' 파라미터로 지정한 파일로 찾습니다. 이 목록에서, 'Filter' 파라미터에 일치하지 않는 파일은 제거한 뒤 'Except' 파라미터에 일치하는 것이 이어집니다.

BaseDir

Directory Name

옵션

상대 경로와 패턴을 알아내기 위한 기준 디렉터리를 설정합니다. 설정하면, 절대 패턴은 (예: /Engine/Build/...) 이 경로를 기준으로 취합니다. 설정하지 않으면, 진짜 절대 경로로 취합니다.

Files

File Spec

필수

작업할 파일 세트로, 와일드카드와 태그 이름을 포함하고, 세미콜론으로 구분합니다. BaseDir 설정된 경우 그를 기준으로, 설정되지 않은 경우 브랜치 루트 디렉터리를 기준으로 합니다.

Filter

File Spec

옵션

파일 목록에 필터를 적용할 패턴으로, 태그 이름과 와일드카드를 포함합니다. BaseDir 설정된 경우 기준 디렉터리에 적용되는 패턴을 포함할 수 있습니다. 지정되지 않은 경우 기본값은 모든 파일입니다.

Except

File Spec

옵션

일치 목록에서 제외시킬 패턴 세트입니다. 기준 디렉터리에 적용되는 패턴의 태그 이름을 포함할 수 있습니다.

With

Tag List

필수

적용할 태그 이름입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

TagReceipt

*.target 파일을 읽는 것으로 빌드 제품 및/또는 런타임 종속성에 태그를 다는 태스크입니다.

Files

File Spec

필수

읽어올 리십트 파일 세트(*.target)입니다. 와일드카드와 태그 이름을 포함하고, 세미콜론으로 구분합니다.

EngineDir

Directory Name

옵션

Engine 폴더에 대한 경로로, 리십트 파일의 $(EngineDir) 프로퍼티를 확장하는 데 사용됩니다. 기본값은 현재 워크스페이스에 대한 Engine 디렉터리입니다.

ProjectDir

Directory Name

옵션

프로젝트 폴더 경로로, 리십트 파일의 $(ProjectDir) 프로퍼티를 확장하는 데 사용됩니다. 기본값은 현재 워크스페이스에 대한 Engine 디렉터리입니다.

BuildProducts

Boolean

옵션

리십트에 나열된 Build Products 에 태그를 붙일지 여부입니다.

BuildProductType

String

옵션

태그를 붙일 Build Products 유형입니다 (TargetReceipt.cs 참고 - UnrealBuildTool.BuildProductType 에서 유효한 값을 확인할 수 있습니다).

RuntimeDependencies

Boolean

옵션

리십트에 나열된 Runtime Dependencies (런타임 종속성) 태그 여부입니다.

StagedFileType

String

옵션

태그를 붙일 Runtime Dependencies 유형입니다. (TargetReceipt.cs 참고 - UnrealBuildTool.StagedFileType 에서 유효한 값을 확인할 수 있습니다)

PrecompiledBuildDependencies

Boolean

옵션

리십트에 나열된 Precompiled Build Dependencies 태그 여부입니다.

PrecompiledRuntimeDependencies

Boolean

옵션

리십트에 나열된 Precompiled Runtime Dependencies 태그 여부입니다.

With

Tag List

필수

적용할 태그 이름입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Unzip

zip 압축 파일에서 파일 압축을 풉니다.

ZipFile

File Name

필수

압축을 풀 zip 파일 경로입니다.

ToDir

Directory Name

필수

압축을 푼 파일의 출력 경로입니다.

Tag

Tag List

옵션

압축을 푼 파일에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.

Zip

파일을 zip 파일에 압축합니다.

FromDir

Directory Name

필수

압축 파일을 읽어 올 디렉터리입니다.

Files

File Spec

옵션

세미콜론으로 구분되는 지정 파일 목록 (예: .cpp;Engine/.../.bat), 또는 태그 세트 이름입니다. 상대 경로는 FromDir 에서 따옵니다.

ZipFile

File Name

필수

생성할 zip 파일입니다.

Tag

Tag List

옵션

생성된 zip 파일에 적용할 태그입니다.

If

Condition

옵션

이 태스크 실행 여부입니다. 이 조건이 false 로 평가되는 경우 무시됩니다.