커스터마이징 가능 시퀀서 트랙

블루프린트와 커스터마이징 가능 시퀀서 트랙 기능을 사용하여 시퀀서에서 사용할 자신만의 트랙을 만듭니다.

Choose your operating system:

Windows

macOS

Linux

블루프린트와 자손 클래스를 사용하여 자신만의 커스터마이징 가능 시퀀서 트랙을 만들 수 있습니다. 이 기능을 통해 C++를 사용하지 않고도 시퀀서 트랙 함수 기능을 확장할 수 있습니다. 이 기능은 프로젝트에 필요할 수 있는 새로운 트랙을 구현하거나 프로토타입을 제작하는 데 유용할 수 있습니다.

이 문서에서는 커스텀 시퀀서 기능과 새 트랙 타입 생성 방법, 일반 시퀀서 오브젝트와 통신하는 데 사용되는 다양한 함수에 대해 간략하게 살펴봅니다.

전제조건

  • 커스터마이징 가능 시퀀서 트랙 기능은 사용하기 전에 활성화해야 하는 플러그인입니다. 언리얼 엔진의 메인 메뉴에서 편집(Edit) > 플러그인(Plugins) 으로 이동한 다음, 런타임(Runtime) 섹션의 커스터마이징 가능 시퀀서 트랙(Customizable Sequencer Tracks) 을 찾은 후 체크박스를 클릭하여 활성화합니다. 그런 다음, 언리얼 엔진을 재시작합니다.

    커스터마이징 가능 시퀀서 트랙 플러그인

  • 블루프린트 생성 및 사용에 익숙해야 합니다.

새 트랙 생성하기

새로운 커스텀 시퀀서 트랙을 생성하려면 다음 클래스에서 상속되는 세 가지 블루프린트 클래스를 생성해야 합니다.

  • SequencerSectionBP

  • SequencerTrackBP

  • SequencerTrackInstanceBP

그러려면, 콘텐츠 브라우저(Content Browser) 에서 추가(+) > 블루프린트 클래스(Blueprint Class) 를 클릭한 다음, 모든 클래스(All Classes) 섹션에서 위의 세 클래스로 이동합니다. 각 클래스에 대해 새 자손 블루프린트 클래스를 생성합니다.

트랙 클래스 생성

다음으로, 통신할 수 있도록 서로 다른 클래스를 연결해야 합니다. 클래스를 연결하려면, SequencerTrackBP 클래스에서 상속된 새 블루프린트를 열고 디테일(Details) 패널의 클래스 디폴트(Class Defaults) 섹션에서 다음 프로퍼티를 설정합니다.

  • 디폴트 섹션 타입(Default Section Type)SequencerSectionBP 에서 상속된 새 블루프린트로 설정합니다.

  • 트랙 인스턴스 타입(Track Instance Type)SequencerTrackInstanceBP 에서 상속된 새 블루프린트로 설정합니다.

트랙 프로퍼티 설정

블루프린트를 컴파일하고 저장한 다음에는 시퀀서의 메인 트랙 추가(+) 메뉴에서 해당 트랙을 마스터 트랙으로 추가할 수 있습니다.

시퀀서에 커스텀 트랙 추가

트랙 로직 생성하기

이제 시퀀서에서 새 트랙을 생성했지만, 해당 섹션에 로직이 없으므로 트랙을 생성해도 아무 일도 벌어지지 않습니다. 트랙의 로직을 만들려면, SequencerTrackInstanceBP 에서 상속된 새 블루프린트를 엽니다. 함수 섹션에서 이벤트를 오버라이드하여 블루프린트 로직을 생성할 수 있는 이벤트 그래프(Event Graph)에 추가할 수 있습니다.

함수 오버라이드

섹션 이벤트

다음 섹션 이벤트는 SequencerTrackInstanceBP 이벤트 그래프에서 오버라이드될 수 있습니다.

이름

이미지

설명

OnBeginUpdateInputs

Event1.png

섹션이 시작되거나 종료되려 할 때 실행되는 이벤트입니다. 처음에 실행되지만 OnInitialize 이후에 실행됩니다.

OnEndUpdateInputs

Event2.png

섹션이 시작되거나 종료되고 나서 실행되는 이벤트입니다. OnBeginUpdateInputsOnInputAdded/Removed 이후에 실행됩니다.

OnDestroyed

Event3.png

섹션이 종료되고 있고 재생 중인 다른 섹션이 없을 때 실행되는 이벤트입니다. 마지막에 실행됩니다.

OnInitialize

Event4.png

섹션이 시작되고 있고 재생 중인 다른 섹션이 없을 때 실행되는 이벤트입니다. 처음에 실행됩니다.

OnInputAdded

Event5.png

섹션이 시작되고 있을 때 실행되는 이벤트입니다. OnBeginUpdateInputs 이후에 실행됩니다.

OnInputRemoved

Event6.png

섹션이 종료되고 있을 때 실행되는 이벤트입니다. OnBeginUpdateInputs 이후에 실행됩니다.

OnUpdate

Event7.png

섹션이 활성화된 동안 프레임마다 계속해서 실행되는 이벤트입니다. 섹션을 처음 초기화할 때, OnEndUpdateInputs 이후에 실행이 시작됩니다.

예를 들어, 이 이미지는 다중 섹션 시나리오에서 모든 단일 이벤트의 전체 실행 순서를 보여줍니다.

실행 순서

커스텀 시퀀서 트랙은 키프레임은 사용하지 않고 섹션만 사용합니다.

섹션 함수

SequencerTrackInstanceBP 자손 블루프린트에서 로직을 구성할 때, 다음과 같은 함수를 사용하여 섹션 또는 소유 오브젝트 정보를 가져올 수 있습니다.

이름

이미지

설명

Get Animated Object

Function1.png

트랙 타입(Track Type)오브젝트 트랙(Object Track) 으로 설정된 경우, 이 트랙의 부모 오브젝트나 액터를 가져옵니다. 반환된 오브젝트의 사용 가능한 블루프린트 레퍼런스를 얻으려면 이 함수를 Cast 함수와 페어링해야 합니다.

Function5.png

Get Input

Function2.png

둘 이상의 섹션이 재생 중인 경우, 인덱스에 따라 현재 재생 중인 섹션을 가져옵니다. 기본 반환 핀은 실제 섹션 오브젝트에 액세스하려면 분할되어야 하는 구조체입니다. Break SequencerTrackInstanceInput 을 사용하거나 핀을 우클릭하고 구조체 핀 분할(Split Struct Pin) 을 선택하여 분할할 수 있습니다.

Function6.png

Get Inputs

Function3.png

현재 재생 중인 섹션의 배열을 반환합니다.

Get Num Inputs

Function4.png

현재 재생 중인 섹션의 수를 가져옵니다.

클래스 개요

이 섹션에는 커스텀 트랙과 그 프로퍼티를 구성하는 세 개의 주요 블루프린트 클래스에 대한 정보가 포함되어 있습니다.

SequencerSectionBP

SequencerSectionBP는 런타임 시 구성되는 트랜션트 클래스입니다. 이 클래스를 사용하여 시퀀서의 섹션 프로퍼티에서 덮어쓸 수 있는 디폴트 섹션 프로퍼티를 설정할 수도 있습니다. 이러한 프로퍼티에 액세스하고 변경하려면, 디테일 패널의 클래스 디폴트 섹션으로 이동합니다.

시퀀서 섹션 클래스 프로퍼티

이름

설명

타임코드 소스(Timecode Source)

타임코드가 사용되는 경우 섹션의 기본 타임코드 정보입니다. 여기서 델타 프레임을 지정하여 오프셋 정보를 제어할 수도 있습니다.

활성 여부(Is Active)

기본적으로 섹션의 활성화 여부를 설정합니다.

잠김 여부(Is Locked)

기본적으로 섹션의 잠금 여부를 설정합니다.

사전/사후 롤 프레임(Pre/Post Roll Frames)

기본적으로 섹션의 시작 및 끝 영역에 적용할 추가 패딩을 지정합니다. 이를 통해 지정된 기간 동안 섹션의 첫 프레임과 마지막 프레임이 유지됩니다.

SequencerTrackBP

이 클래스는 이름, 타입, 지원하는 섹션과 같은 트랙의 일반 프로퍼티와 규칙을 설정하는 데 사용됩니다. 이러한 프로퍼티에 액세스하고 변경하려면, 디테일 패널의 클래스 디폴트 섹션으로 이동합니다.

시퀀서 트랙 프로퍼티

이름

설명

여러 행 지원(Supports Multiple Rows)

이 프로퍼티가 활성화되면, 트랙에 여러 서브 트랙(행)이 포함될 수 있습니다. 이 트랙을 사용하여 데이터를 레이어링하려는 경우 유용할 수 있습니다.

Classes3.png

블렌딩 지원(Supports Blending)

이 프로퍼티를 활성화하면 섹션 간에 서로 블렌딩할 수 있습니다.

트랙 타입(Track Type)

이 트랙이 시퀀서에 존재하고 추가될 수 있는 컨텍스트를 설정합니다. 다음 중 하나를 선택할 수 있습니다.

  • 마스터 트랙(Master Track) - 시퀀서의 트랙 추가(+) 메뉴에 트랙을 추가합니다. 이 옵션을 선택하면 트랙이 최상위 시퀀서 트랙이 됩니다.

    Classes4.png

  • 오브젝트 트랙(Object Track), 또 다른 트랙의 추가(+) 메뉴에 트랙을 추가합니다. 부모 트랙은 지원되는 오브젝트 타입(Supported Object Type) 에서 정의된 오브젝트 클래스에 종속됩니다.

    Classes5.png

지원되는 오브젝트 타입(Supported Object Type)

트랙 타입오브젝트 트랙(Object Track) 으로 설정된 경우 이 프로퍼티를 사용하여 해당 트랙을 추가할 수 있는 오브젝트 타입을 지정할 수 있습니다.

디폴트 섹션 타입(Default Section Type)

필수 트랙 설정의 일부로 생성된 상속된 베이스 SequencerSectionBP 클래스를 지정합니다.

지원되는 섹션(Supported Sections)

트랙의 섹션 추가(+) 메뉴에서 SequencerSectionBP 클래스를 더 추가할 수 있는 배열입니다. 로직을 생성하여 이러한 섹션을 구분할 때 다양한 Get Input 함수를 사용할 수 있습니다.

Classes6.png

트랙 인스턴스 타입(Track Instance Type)

필수 트랙 설정의 일부로 생성된 상속된 SequencerTrackInstanceBP 클래스를 지정합니다.

아이콘(Icon)

트랙 아이콘의 프리뷰를 표시합니다. 이 프로퍼티를 펼치면 다음과 같은 아이콘 프로퍼티가 나타납니다.

  • 이미지(Image): 아이콘 이미지로 사용할 텍스처나 머티리얼입니다.

  • 이미지 크기(Image Size): 이미지의 크기와 X/Y 치수입니다.

  • 색조(Tint): 이미지의 색입니다. 상속(Inherit) 을 활성화하면 모든 착색 비활성화되고 대신 부모 위젯의 색을 사용합니다.

  • 그리기 방식(Draw As): 박스(Box) , 테두리(Border) , 이미지(Image) 또는 Rounded Box 등, 다양한 메서드를 선택하여 아이콘을 그릴 수 있습니다.

  • 타일링(Tiling): 가로 , 세로 또는 양방향 으로 이미지를 타일링할 수 있습니다.

  • 프리뷰(Preview): 아이콘의 최종 모습과 크기를 프리뷰하는 영역입니다.

Classes7.png

표시명(Display Name)

트랙의 기본 이름입니다. 일반 트랙 이름 변경 작업을 통해 시퀀서에서 덮어쓸 수 있습니다.

Classes8.png

트랙 행 표시명(Track Row Display Names)

여러 행 지원 이 활성화된 경우, 행 이름을 지정할 수 있는 배열입니다. 두 개 이상의 배열 엘리먼트가 추가된 경우, 섹션 행을 추가하면 한 번에 모든 명명된 행이 추가됩니다.

Classes9.png

색(Color)

트랙과 트랙의 섹션에 대한 기본 색을 설정합니다. 색의 알파 값이 0이어서는 안 됩니다. 그렇지 않으면 투명도가 기본 회색이 되지 못합니다.

Classes10.png

세로 프레임 표시(Show Vertical Frames)

활성화하면, 섹션 시작과 종료 바운드가 타임라인에 수직선으로 표시됩니다.

Classes11.png

SequencerTrackInstanceBP

이 클래스는 이벤트 오버라이드함수 생성을 통해 이벤트 그래프 내에서 트랙의 프라이머리 로직과 동작을 생성하는 데 사용됩니다.

트랙 인스턴스 클래스

태그