시퀀서는 시간의 흐름에 따라 캐릭터, 카메라, 프로퍼티 및 기타 액터 애니메이션을 작업할 수 있는 언리얼 엔진의 시네마틱 툴세트입니다. 이 워크플로는 트랙과 키프레임이 타임라인을 따라 생성되고 수정되는 비선형 편집 환경을 제공하여 이루어집니다.
카메라를 추가하고 런타임에서 재생하거나 렌더하여 시네마틱 영상으로 사용할 수도 있지만 단순히 반복적인 움직임을 원할 때에도 카메라 없이 사용할 수 있습니다.
먼저 슬레이트 버튼을 눌러 레벨 시퀀스 생성 메뉴에 진입합니다. 그리고 Add Level Sequence
를 클릭합니다.
적당한 위치에 레벨 시퀀스 애셋을 생성하면 언리얼 에디터 하단에 시퀀서가 탑재됩니다.
사이드바
아이콘 | 기능 |
---|---|
? | 이 시퀀스 저장 |
?? | 시퀀서에서 선택된 애셋 Content Drawer에서 보기 |
?️ | 현재 뷰포트 시점에서 Cine Camera 액터 생성하기 |
? | 이 시퀀스를 Movie Render Queue에서 렌더링하기 |
![]() |
시퀀서의 디렉터 블루프린트 열기 |
? | 그래프 커브 에디터 열기 |
24 fps | 렌더 시 프레임레이트 지정 |
시퀀서 타임라인
아이콘 | 기능 |
---|---|
+Track | 시퀀서에 애셋 및 트랙 추가 |
?️?️Camera Cuts | 타임라인을 기준으로 보여줄 메인 카메라 구분 |
먼저 시퀀서에 액터를 추가할 때에는 Possessable과 Spawnable에 대해 알아야 합니다.
Possessable은 시퀀서가 필요한 액터를 레벨에서 찾아 사용합니다. 따라서 레벨에 액터가 없으면 해당 시퀀서에 등록된 해당 액터는 사용할 수 없습니다. 대부분의 경우 이는 괜찮거나 심지어는 선호되는 워크플로입니다. 씬에서 레벨 시퀀스(Level Sequence) 내 기존 액터와 높은 수준의 인터랙션이 필요한 경우 Possessable은 액터를 참조하는 최선의 방법일 것입니다.
아웃라이너에서 액터를 시퀀서의 빈 곳으로 드래그하여 등록합니다.
Spawnable은 씬에 임시로 쓸 액터가 필요한 경우 사용됩니다. 기본적으로 Spawnable 액터가 있는 시퀀스가 시작되면 액터가 스폰됩니다. 시퀀스가 끝나면 이 액터는 소멸되거나 제거됩니다.
Spawnable 액터는 컨텐츠 드로어나 액터 배치 패널에서 액터를 드래그하여 등록합니다.
시네 카메라 액터(Cine Camera Actor) 는 실제 필름 카메라의 행동을 모사하는 추가 세팅이 포함된 전문적인 카메라 액터 입니다. 필름백, 렌즈, 초점 세팅을 사용하여 업계 표준을 준수하면서 사실적인 씬을 만들 수 있습니다.
파일럿 기능은 액터의 시점을 뷰포트에 투영시킵니다. 시네 카메라의 경우 시네 카메라를 파일럿하면 뷰포트의 시점은 이 카메라의 시점이 됩니다.
액터를 선택한 후 Ctrl+Shift+P로 파일럿을 활성화할 수 있습니다.
Lookat Tracking을 사용하면 시퀀서에서 트랜스폼을 직접 수정하지 않아도 카메라의 시점이 선택된 액터를 향하게 만듭니다.
이름 | 설명 |
---|---|
Enable Lookat Tracking | 이 카메라에서 룩앳 트래킹 기능을 활성화합니다. |
Draw Debug Look at Tracking Position | 카메라가 현재 트래킹 중인 대상이 표시됩니다. 노란색 큐브는 상대 오프셋(Relative Offset) 과 함께 사용할 때 유용합니다. ![]() |
Look at Tracking Interp Speed | 카메라가 오브젝트의 트래킹을 업데이트하는 속도입니다. 디폴트 값 0일 때는 카메라가 즉시 트래킹하며, 값이 0보다 크면 카메라 트래킹에 딜레이가 점점 커집니다. ![]() |
Actor to Track | 카메라가 트래킹할 액터를 지정합니다. 이 프로퍼티는 시퀀서에서 키프레이밍하여, 카메라가 시간 경과에 따라 트래킹 타깃을 바꾸게 할 수 있습니다. 아무 액터도 지정되지 않으면, 카메라는 대신에 월드 원점(0,0,0)을 트래킹합니다. |
Relative Offset | 로컬 스페이스에 상대적인 트래킹된 액터에 적용하는 위치 오프셋을 지정합니다. 트래킹된 액터의 특정 프레이밍을 제어할 때 유용합니다. ![]() |
필름백은 실제 카메라에 사용되는 이미지 센서를 시뮬레이션합니다. 언리얼 엔진에서는 이를 통해 화면비를 1차적으로 조절할 수 있습니다.
렌즈 파라미터는 실제 프리셋 카메라 렌즈를 선택하고, 초점 길이, f값을 설정하고, 애너모픽 렌즈의 스퀴즈 인수를 지정하고, 조리개 막(블레이드)을 제어하는 옵션을 제공합니다.
이름 | 설명 |
---|---|
Min/Max Focal Length | 카메라의 최소/최대 초점 길이입니다. 이를 통해서 줌을 구현할 수 있으며 줌이 불가능한 프라임 렌즈를 구현하려면 최대/최솟값을 동일하게 맞추면 됩니다. |
Min/Max FStop | 최소/최대 조리개 값입니다. 주로 피사계 심도의 깊이를 조절할 때 사용합니다. |
Squeeze Factor | 아나모픽 렌즈에서 렌즈가 이미지를 가로로 압축하는 과정입니다. 언리얼 엔진에서 이 값을 늘린다고 해서 화면이 압축되지는 않지만 이 프로퍼티를 통해 넓은 시야각과 독특한 보케 효과 등을 구현할 수 있습니다. |
Diaphragm Blade Count | 카메라 렌즈의 조리개 막 (블레이드) 수를 제어합니다. 렌즈의 조리개 값 수는 보케(Bokeh) 이펙트의 모양과 관련이 있습니다. 수치가 낮으면 보케가 사각형에 가까워지며, 높으면 원에 가까워집니다. ![]() |
위 프로퍼티에서 심도가 눈에 보일 만큼 얕아지게 설정되었을 때 이 초점 설정으로 초점 거리 등을 설정해 포커스를 줄 거리나 액터를 설정할 수 있습니다.
이름 | 설명 |
---|---|
Manual Focus Distance | 초점 거리를 수동으로 설정합니다. |
Draw Debug Focus Plane | 초점 거리를 눈으로 직접 볼 수 있게 Manual Focus Distance에 설정된 거리에 플레인을 생성합니다. |
필름백이나 Squeeze Factor를 수정하여 화면비가 의도와 달라졌다면 이 프로퍼티에서 다시 화면비를 맞출 수 있습니다.
이름 | 설명 |
---|---|
Cropped Aspect Ratio | 화면 비율을 강제합니다. |
화면 비율의 예시는 다음과 같습니다:
1.77:1
2.33:1
2.35:1
or 2.39:1
작성 예정
먼저 시네 카메라에 키프레임을 추가합니다.
더 자연스러운 카메라 애니메이션을 위해 Sequencer Curves로 그래프를 제어합니다.
값의 변동이 있지만 그래프의 축이 너무 커서 잘 보이지 않을 때 키프레임을 두 개 이상 선택하여 F 키로 화면에 맞춥니다.
베지어를 자유롭게 움직이려면 키프레임을 RMB 클릭하고 Break
와 Weighted Tangents
를 활성화합니다.
카메라를 더 효율적이고 예쁘게 움직이려면 카메라를 Null
에 페어런트시키는 것도 방법입니다. 언리얼 에디터에서는 Null 오브젝트로 명시된 액터가 없으므로 빈 액터를 사용하여 카메라를 페어런트 (Attach)하는 방법을 알아봅니다.
꼭 카메라만이 어태치될 필요는 없습니다. 캐릭터가 들고 있는 장비나 물건도 모두 키프레임으로 일일이 잡은 것이 아니라 주로 손에 어태치하는 것입니다.
위 예시에서는 총은 캐릭터의 손에 어태치되어 있고, 총구 화염은 총의 총구에 어태치되어 있습니다.
먼저 어태치되고자 하는 액터(예를 들어 총과 같은 장비)를 클릭한 후, + 버튼을 눌러 Attach 메뉴를 클릭합니다. 그리고 붙이고자 하는 액터(예를 들어 장비를 소지할 플레이어)를 선택합니다. 부모 액터가 스켈레탈 메시일 때 어태치할 조인트를 선택하는 창이 뜰 수 있습니다.
모든 액터는 다른 액터에 어태치되면 트랜스폼의 기준이 월드(World)가 아닌 렐러티브(Relative) 가 기준이 됩니다.
월드 트랜스폼(World Transform)은 좌표의 기준이 레벨이 됩니다. 일반적으로 레벨의 (0, 0, 0)
기준 축을 월드 트랜스폼이라고 부릅니다. 반면 렐러티브 트랜스폼(Relative Transform)은 좌표의 기준이 다릅니다. Relative (상대적인)라는 뜻에 맞게 어태치된 부모 액터의 조인트나 피벗이 좌표의 기준이 될 수 있습니다.
따라서 중간에 어태치를 해제하면 좌표의 기준이 바뀔 수 있습니다.
스켈레탈 메시(Skeletal Mesh)는 정적인 사물, 즉 스태틱 메시(Static Mesh)과 달리 Joint라는 뼈대와 관절을 기반으로 애니메이팅이 가능한 메시입니다. 자세한 내용은 Part 04. 애니메이션 (Skeletal Animation) 에서 다루겠습니다.
먼저 시퀀서에 스켈레탈 메시를 추가하고, + 버튼을 눌러 Animation 메뉴를 클릭합니다. 그리고 추가하고자 하는 애니메이션을 선택합니다.
그러면 다음과 같이 자홍색 블럭과 회색 블럭이 생깁니다.
하나의 애니메이션 트랙에 여러 애니메이션을 겹치게 중첩시키면 중첩된 구간은 두 애니메이션이 블렌드됩니다.
어떻게 블렌드할 것인지 그래프를 조절할 수도 있습니다.
시퀀서는 액터에 대한 프로퍼티는 키프레임화시킬 수 있지만 액터 내 컴포넌트를 키프레임화하기 어렵습니다. 이 때 미리 컴포넌트를 제어하는 함수가 포함된 블루프린트 액터와 디렉터 블루프린트를 사용하여 컴포넌트를 제어할 수 있습니다.
키프레임이 재생되는 시점에 이 키프레임에 연결된 이벤트가 호출됩니다.
예로, 이 이벤트 트리거는 문이 닫히는 과정을 블루프린트로 구현한 것입니다.
시퀀싱을 모두 완료하였으면 이제 영상으로 렌더링할 차례입니다. 그 전에 다양한 렌더 패스를 렌더링하기 위해 아래 플러그인을 활성화하고 에디터를 재시작합니다.
사이드바에 ? (이 시퀀스를 Movie Render Queue에서 렌더링하기) 버튼을 클릭합니다.
위 창에서 Unsaved Config를 클릭하여 렌더 설정을 엽니다. 이 설정은 프리셋으로서 저장할 수 있습니다.
*.exr
시퀀스, *.png
시퀀스, ProRes *.mov
등)추가할 수 있는 옵션은 다음과 같습니다.
렌더 패스를 활용하면 영상을 렌더링하는 과정에서 특정 요소나 효과를 개별적으로 처리하여 최종 이미지를 구성할 수 있습니다.
우리가 흔히 뷰포트에서 보는 라이팅포함 (Lit) 패스입니다.
실시간 렌더링이 아닌 레이 트레이싱만을 활용하여 광원과 물체의 반사를 계산하여 렌더링되는 패스입니다. OctaneRender, RedShift 등과 비슷한 렌더링 방식입니다.
카메라를 기준으로 가까운 곳은 검정색, 먼 곳은 흰색으로 상정하고 거리를 검은색과 흰색의 그레이디언트로 나타내는 렌더 패스입니다. 이 패스를 통해 피사계 심도, 안개 (Fog) 등을 구현할 수 있습니다.
각 액터를 서로 다른 단색으로 구분하고 렌더링하여 필요한 액터만 After Effects에서 Cryptomatte 효과로 추출할 수 있습니다.
위 패스들로 아래와 같이 영상을 꾸밀 수 있습니다.
사용한 패스 | 패스 예시 | 결과 예시 |
---|---|---|
Scene Depth | ![]() |
![]() |
Object ID (BG) | ![]() |
![]() |
Object ID (캐릭터) | ![]() |
![]() |
노드 이름 | 설명 |
---|---|
SceneTexture:SceneDepth |
Z-Depth 패스에 대한 가장 원시적인 데이터로 보통 단독으로 사용되지 않습니다. |
MaterialX Remap |
특정 범위 (InputLow/High )의 값을 다른 범위 (TargetLow/High )로 변환합니다. Processing의 map() 을 생각하면 됩니다. |
NearOffset: InputLow |
가까운 부분의 시작 지점을 지정합니다. |
FarOffset: InputHigh |
멀리 있는 부분의 끝 지점을 지정합니다. |
1-x |
흰색과 검은색을 반전합니다. 이는 언리얼 머티리얼은 색상을 0부터 1까지 표현하기 때문입니다. |
Lerp |
두 범위 (A 또는 B ) 사이의 값을 비율에 따라 계산합니다. |
IsBlackNear: Alpha |
1 이면 가까울수록 검은색을, 0 이면 가까울수록 흰색을 표시합니다. |