애니메이션 블루프린트(Animation Blueprints) 에서 블렌딩 행동을 개선하기 위해 싱크 그룹(Sync Groups) 을 사용하여 블렌딩 중에 관련된 애니메이션의 길이와 재생을 자동으로 동기화할 수 있습니다. 이는 길이가 다른 걷기 사이클과 달리기 사이클을 블렌딩할 때 유용할 수 있습니다. 이러한 경우에 싱크 그룹 없이 하나의 사이클에서 다른 사이클로 바로 블렌딩하면 발의 위치가 동기화되지 않아 부자연스러운 결과가 나올 수 있습니다.
이 문서에서는 애니메이션 블루프린트의 싱크 그룹 시스템을 간략히 살펴봅니다.
전제조건
- 싱크 그룹은 애니메이션 블루프린트에서 생성하고 관리하므로 이 에디터에 대한 기본 지식이 있어야 합니다.
개요
싱크 그룹은 역할 콘셉트로 작동하므로, 하나의 애니메이션이 리더 가 되고 나머지 모든 애니메이션이 팔로워 가 됩니다. 리더는 모든 팔로워가 사용하는 마스터 애니메이션 길이를 제공하고 애니메이션 노티파이트리거 우선순위를 갖습니다. 팔로워는 애니메이션 길이를 리더 애니메이션에 맞추고 노티파이가 억제됩니다.
기본적으로 블렌딩 중에 웨이트 분포에 따라 리더와 팔로워 할당이 변경될 수 있습니다. 블렌드 영향력이 가장 큰 애니메이션이 리더로 간주됩니다.
이미지 | 설명 |
---|---|
![]() |
한 가지 예로 걷기 사이클과 달리기 사이클 애니메이션을 비교할 수 있습니다. 일반적으로 이러한 애니메이션은 길이가 일치하지 않습니다. 싱크 그룹이 없으면 이러한 애니메이션의 일반 바디 무브먼트 사이클이 정렬되지 않습니다. |
![]() |
싱크 그룹을 사용하고 달리기 사이클이 리더 인 경우, 리더에 맞춰 걷기 사이클의 재생 속도가 조정됩니다. 이 경우 달리기 사이클에 맞춰 더 빠르게 재생되도록 걷기 사이클이 짧아집니다. |
![]() |
싱크 그룹을 사용하고 걷기 사이클을 리더 인 경우, 리더에 맞춰 달리기 사이클의 재생 속도가 조정됩니다. 이 경우 걷기 사이클에 맞춰 더 느리게 재생되도록 달리기 사이클이 길어집니다. |
싱크 그룹으로 애니메이션을 동기화할 때의 특성 때문에 이 방식으로 애니메이션을 사용할 때는 다음과 같은 특정 애니메이션 제한 사항을 고려해야 합니다.
-
동기화되는 모든 애니메이션에 처음부터 끝까지 똑같은 일반 바디 무브먼트가 있는지 확인합니다. 걷기 및 달리기 애니메이션의 경우, 시작 프레임과 끝 프레임에 같은 발이 놓여 있는지 확인해야 한다는 의미일 수 있습니다.
-
또한, 블렌딩되는 애니메이션들의 길이가 극단적으로 다르지 않은지도 확인해야 합니다. 길이 차이가 너무 크면 일부 애니메이션이 다른 애니메이션보다 눈에 띄게 빠르게 재생될 수 있을 뿐 아니라 리더와 팔로워 애니메이션이 전환될 때 재생 속도가 두드러지게 '튈' 수 있습니다.
동기화 세팅
다양한 방식으로 애니메이션을 동기화할 때, 디테일(Details) 패널에 있는 다음과 같은 세팅으로 동기화 행동을 편집할 수 있습니다.
이름 | 설명 |
---|---|
그룹 이름(Group Name) | 싱크 그룹의 이름을 정의합니다. 일반적으로 살금살금 움직이기, 걷기, 달리기, 전력 질주 등의 바디 모션과 같이 서로 블렌딩해야 하는 모든 관련 애니메이션은 같은 이름을 사용하여 같은 싱크 그룹에 속하도록 하는 것이 좋습니다. |
그룹 롤(Group Role) | 이 애니메이션에 대한 특정 리더 및 팔로워 규칙을 지정합니다. 다음 중에서 선택할 수 있습니다.
|
메서드(Method) | 동기화 결정 방법을 정의합니다. 다음 중에서 선택할 수 있습니다.
|
싱크 그룹 타입
몇 가지 싱크 그룹 설정 방법이 있으며, 다음 타입 중에서 선택할 수 있습니다.
그룹 기반 동기화
그룹 기반 동기화(Group-Based Syncing) 는 이름으로 애니메이션을 그룹화합니다. 그룹 기반 싱크 그룹을 생성하려면 애님 그래프 에서 동기화할 애니메이션 노드를 선택하고 디테일(Details) 패널에서 동기화(Sync) 카테고리를 찾습니다. 프로퍼티를 다음과 같이 설정합니다.
-
메서드(Method) 를 Sync Group 으로 설정합니다.
-
그룹 이름(Group Name) 에 이름을 입력합니다. 그룹 이름 은 동기화하려는 모든 애니메이션과 일치해야 합니다.

이제 블렌딩하면 애니메이션이 동기화됩니다. 애니메이션을 Blend 노드에 연결하고 Alpha 를 0.5로 설정하면 이 행동을 프리뷰할 수 있습니다.
![]() |
![]() |
---|---|
그룹 동기화(Group Sync) 꺼짐 | 그룹 동기화(Group Sync) 켜짐 |
애니메이션 노드와 함께 싱크 그룹을 사용하는 경우, 노드에 동기화 메서드와 그룹 이름에 대한 텍스트 워터마크가 표시됩니다.

마커 기반 동기화
싱크 그룹 외에도 애니메이션 시퀀스 내의 싱크 마커(Sync Markers) 를 사용하여 애니메이션을 동기화할 수 있습니다. 이 방식을 사용하면 애니메이션의 타임라인을 따라 배치된 마커 간의 상대적인 재생 위치를 기반으로 애니메이션 재생이 동기화됩니다.
이 방식은 다음과 같은 다양한 블렌딩 조건에서 유용할 수 있습니다.
- 일반 바디 무브먼트의 걸음 수가 일치하지 않는 경우. 예를 들어, 오른쪽 발이 땅을 네 번 밟는 달리기 사이클과 땅을 두 번만 밟는 걷기 사이클을 블렌딩하는 경우입니다.
- 보폭이 일정하지 않은 경우. 예를 들어, 시간이 엄격한 행진 걷기 애니메이션과 시간이 느슨한 무질서한 달리기 애니메이션을 블렌딩하는 경우입니다.
- 달리기와 걷기 시작 및 정지 같은 루프가 아닌 애니메이션을 블렌딩하는 경우. 이 경우에는 시작 및 중지 애니메이션을 Always Leader 로 설정해야 합니다.

싱크 마커를 추가하려면 애니메이션 노티파이 타임라인 내에서 우클릭하고 싱크 마커 추가...(Add Sync Marker...) > 새 싱크 마커...(New Sync Marker...) 를 선택합니다. 그런 다음, 싱크 마커의 이름을 입력하고 Enter 를 누릅니다.

싱크 마커가 추가되면 스켈레톤에 저장됩니다. 싱크 마커를 추가한 다음에는 싱크 마커 이름을 다양한 애니메이션에서 쉽게 재사용할 수 있으므로 같은 이름을 사용하고 표준화할 수 있습니다. 저장된 싱크 마커는 노티파이 타임라인에서 우클릭하고 싱크 마커 추가...(Add Sync Marker...) > 기존 싱크 마커(Existing Sync Markers) 를 선택한 다음 목록에서 싱크 마커를 선택하여 추가할 수 있습니다.

싱크 마커는 애니메이션이 같은 싱크 그룹에 있는 다른 마커하고만 동기화됩니다. 즉, 싱크 마커와 싱크 그룹 이름이 일치해야 합니다.
애니메이션 몽타주도 블렌딩 아웃 중에 마커 기반 동기화를 지원하므로 다른 애니메이션으로 원활하게 다시 트랜지션할 수 있습니다. 애니메이션 몽타주 에디터에서 에셋 디테일(Asset Details) 패널의 싱크 그룹(Sync Group) 프로퍼티로 이동하여 관련 동기화 프로퍼티를 편집합니다.

싱크 마커 사용 시 고려해야 할 다른 요소는 다음과 같습니다.
- 그룹 내 모든 애니메이션에 공통된 마커만 동기화됩니다. 예를 들어, 한 애니메이션에 'Right Foot Down' 마커가 누락되어 있는 경우, 해당 프레임의 위치를 결정할 때 모든 애니메이션에서 해당 마커가 무시됩니다.
- 싱크 그룹의 애니메이션에 일치하는 마커가 있는 경우 자동으로 마커 기반 동기화가 사용됩니다. 그렇지 않으면 시스템이 정상 길이 동기화 행동으로 예비 전환합니다.
그래프 기반 동기화
복잡한 애니메이션 블루프린트를 빌드할 때는 이름 기반 싱크 그룹을 관리하는 것이 지루해질 수 있습니다. 대신 그래프 기반 동기화(Graph-Based Syncing) 를 사용하여 하나의 싱크 그룹을 다양한 서브그래프와 자손 노드에 전파할 수 있습니다. 그래프 기반 동기화를 위해서는 메서드(Method) 프로퍼티가 Graph 로 설정된 그래프와 자손 노드가 필요합니다.

그래프 기반 동기화를 사용하는 첫 번째 방법은 Sync 노드를 생성하는 것입니다. 이 노드는 메서드 프로퍼티가 Graph 로 설정된 모든 들어오는 포즈 노드에 동기화 행동을 전파합니다. Sync 노드를 그래프에 추가하려면 그래프를 우클릭하고 기타(Misc.) 카테고리에서 동기화(Sync) 를 선택합니다.

일반적으로, 들어오는 모든 애니메이션 데이터를 동기화할 수 있도록 포즈 로직 뒤에 이 노드를 배치하는 것이 좋습니다.

블렌드 스페이스 그래프
Sync 노드 외에도 블렌드 스페이스 그래프를 사용하여 그래프를 동기화할 수 있습니다. 이 방식을 사용하면 동기화 행동이 그래프 내의 모든 자손 샘플에 전파됩니다.
Sync 노드와 비슷하게, 블렌드 스페이스 그래프(Blend Space Graphs)는 동기화 행동을 전파하기 위해 그룹 이름 이 필요합니다.

기본적으로, 블렌드 스페이스 그래프 샘플에서 생성된 시퀀스 플레이어(Sequence Players) 는 Graph 동기화 메서드를 사용하여 Blend Space Graph 노드로부터의 동기화를 허용하도록 디폴트 설정됩니다.
