역자 남김: 맨날 렌더링쪽만 하다가 애니메이션쪽을 하려다보니 공부할 것들이 많은 것 같아서... ALS 와 GASP 둘 다 좀 파봐야겠나~ 싶어서 말이죠. 먼저 연구한 분들의 피가 되고 살이되는 포스팅 위주로 공부하면서 공유 하려고 합니다. 거의 20년을 렌더링만 해서... 아는게 없다는 말이죠. ㅎㅎㅎ
저자: DarkFlameMaster
0. ALSV4가 뭐냐?
고급 로코모션 시스템(Advanced Locomotion System, 줄여서 ALS)은 고품질 캐릭터 애니메이션과 반응성 있는 움직임에 초점을 맞춘, 꽤 선진적인 이족 보행 및 레이어링 시스템이다. 현재 4세대인 ALSV4는 언리얼 마켓플레이스에서 이미 무료로 풀려 있다.
사실 이 이미지를 글 표지로 쓰면 더 많은 사람이 보러 올 거라는 건 알지만, 그래도 참지 못하고 이차원풍 표지를 써버렸다 = =
고급 로코모션 시스템은 걷기, 달리기, 전력 질주, 웅크리기, 구르기, 등반 등 여러 기본 동작 모드를 지원한다. 동시에 보폭과 보행 빈도, 이동 중 자세 기울기, 제자리 회전, 출발과 급정지, 달리는 중 예각 방향 전환, 카메라 팔로우 관리, 착지 시 다리 완충, 조준 오프셋, 다리와 손 IK 등 풍부하고 뛰어난 움직임 디테일도 갖추고 있다. 알아둘 것은, 일부 3A 액션 게임조차 이 정도로 풍부한 움직임 디테일을 갖추지 못한 경우가 있다는 점이다.
게다가 이것은 순수 블루프린트로 구현되어 있어서, 기획자라도 한번 배워보고 적용해볼 수 있다. (사실 ALS의 원작자 본인도 아트 출신이다.)
ALS 플러그인의 작가는 너무 강력했던 나머지 Epic에 스카우트되어 언리얼 5를 만들러 갔다. 최근 언리얼 5에서 제공하는 초심자용 프로젝트(하지만 실제 난이도는 전혀 초심자용이 아닌) Lyra의 애니메이션 파트도, 듣기로는 ALS 작가가 직접 나서서 만든 것 같다. 관심 있는 독자는 @quabqi 따로(大佬)의 새 글을 참고해도 좋다.
UE5의 애니메이션 블루프린트(Lyra 프로젝트) - 知乎 (zhihu.com)
보통 중국에서 大佬(따라오) 라고 지칭하는건 큰늙은이 뜻은 아니고 경력있는 시니어 레벨 정도를 중국인들이 그들만의 느낌으로 지칭할 때 쓰는 말 중 하나임. 좀 더 존경하는 시니어의 경우 大神(da shen) 이렇게 큰 신으로 지칭하기도 한다.
1. 이 시리즈 글은 뭘 하려는 건가?
ALSV4가 무료가 되었다고는 해도, 이 플러그인의 복잡도는 여전히 상당히 높다. 작가가 플러그인 안에 주석을 많이 써두기는 했지만, 플러그인을 그대로 붙잡고 생으로 뜯어먹는 것은 여전히 난도가 좀 있다.
그렇다면 이 시리즈 글의 목적은 모두에게 ALSV4를 어떻게 쓰는지, 혹은 어떻게 배우는지를 가르치는 것인가?
아니다. 그렇지 않다.
지금에 와서는 인터넷에 ALS를 설명하는 글이나 영상 강좌가 이미 꽤 많이 나와 있다. 앞사람들이 이미 좋은 옥구슬을 깔아둔 상황에서, 필자는 식견도 얕고 능력도 부족하며, 또 굳이 같은 포지션의 튜토리얼을 하나 더 쓰고 싶은 생각도 없다.
이 시리즈 글의 의도는 ALSV4의 여러 방법이 “무엇인가”를 설명하는 데 있지 않고, “왜 그렇게 하는가”를 설명하는 데 있다.
나중에 애니메이션을 만들 때, 우리는 당연히 ALSV4의 방식을 단순히 베껴 쓰기만 할 수는 없다. 프로젝트에서 ALSV4 플러그인을 사용한다 해도, 결국 그 위에서 수정하고 확장해야 한다. 그런데 이 부분은 왜 이렇게 했는지, 저 상태 노드는 왜 저기에 놓였는지, 이 전이 조건은 왜 이렇게 구성되었는지를 모른다면—수정하는 과정에서 자기도 모르게 ALSV4가 만들어낸 원래의 움직임 표현을 망가뜨리고, 결국 버그를 한 무더기 만들어내게 될 것이다.
여기서 필자는 다시 한번 @大钊 선배의 그 말을 인용하고 싶다.
필자는 늘 어떤 것을 제대로 설명하려면, 그 뒤에 있는 여러 개념을 더 많이 설명해야 한다고 생각한다. 그렇지 않고 소스 코드를 앞에 두고 각 클래스를 나열하고, 각 인터페이스의 역할을 말하고, 데이터가 서로 어떻게 참조되고 흐름이 어떻게 도는지만 설명하면, 너는 아주 빠르게 많은 정보를 알게 될 수 있다. 하지만 너는 What과 How만 알게 된 것이다. 그러면 다른 사람이 “왜?”라고 한마디 묻는 것을 막을 수 없다.
예를 들어 “왜 ALS의 Locomotion States 상태 머신 안에 있는 Stop States 상태 머신에서는 반드시 ‘첫 업데이트 전이 건너뛰기’를 False로 설정해야 하는가?”라든가, “왜 8방향 이동 상태 머신의 각 노드 내부에서 또 하나의 멀티 핀 블렌드를 해야 하는가?” 같은 세부 처리는 일반적인 ALS 복각 튜토리얼에서는 거의 언급되지 않는다.
“왜”는 중요하다. 하지만 지면의 한계나 작가 본인의 소홀함 때문에, ALSV4 블루프린트 주석이나 인터넷의 여러 ALSV4 튜토리얼에서 이 “왜”가 항상 잘 설명되는 것은 아니다. 그래서 필자는 이 시리즈 글을 쓰게 되었다. 필자가 ALSV4에 대해 가진 우물 안 개구리 같은 견해를 나누는 과정에서, 독자 여러분과 함께 배우고 함께 진보할 수 있기를 바란다. 필자는 배운 지 오래되지 않았고 수준도 한정되어 있으므로, 글 안에 틀리거나 빠진 부분이 있는 것은 피하기 어렵다. 부디 여러 독자 대佬들께서 비판하고 지적해주시기를 바란다.
(첫 번째 문제의 답은, 그렇게 하지 않으면 Stop States 상태 머신 아래의 두 Plant Foot 상태로 전이할 때 떨림이 발생하기 때문이다. “첫 업데이트 전이 건너뛰기” 옵션은 상태 머신에 진입할 때 조건에 맞는 가장 먼 도달 가능 상태를 검사하고, 곧바로 그 상태를 100% 가중치로 상태 머신을 시작한다. 하지만 어떤 때에는 들어오자마자 바로 그 상태로 “순간이동”하기를 원하지 않고, 시작점에서부터 자연스럽게 전이되기를 원한다. 상태 머신 위쪽의 두 Lock Foot 상태가 떨리지 않는 이유는, 그것들 자체가 Moving 상태와 맞닿아 있고, 따라서 전이 시간이 0이기 때문이다.)
(두 번째 문제의 답은, 이 멀티 핀 블렌드가 8방향 이동 자체를 만드는 데에는 도움을 주는 것이 그렇게 분명하지 않지만, 우리가 W를 누른 채 마우스로 캐릭터를 빠르게 빙빙 돌릴 때 캐릭터 발에서 생기는 슬라이딩 현상을 효과적으로 줄여줄 수 있기 때문이다.)
2. 목차
최신 업데이트:
https://zhuanlan.zhihu.com/p/680719803
예전에 큰 구덩이를 파놓고 결국 글 하나만 쓰고 덮어버린 일이 있었기 때문에…… 이번에는 3편을 쓰고 나서야 감히 연재를 시작한다고 말하게 되었다 = =
[번역] UE4/UE5 골격 애니메이션 고급 로코모션 시스템: 걷기/달리기 블렌드 기초
저자: DarkFlameMaster최근 언리얼 엔진의 골격 애니메이션 관련 지식을 공부하고 있다. 가르치면서 배우자는 생각으로, 여기서 애니메이션 관련 글을 좀 써서 방금 배운 것을 바로 팔아먹어보려 한
techartnomad.tistory.com
[번역] UE4 UE5 골격 애니메이션 고급 로코모션 시스템: 8방향 이동
저자: DarkFlameMaster최근 언리얼 엔진의 골격 애니메이션 관련 지식을 공부하고 있다. 가르치면서 배우자는 생각으로, 여기서 애니메이션 관련 글을 좀 써서 방금 배운 것을 바로 팔아먹어보려 한
techartnomad.tistory.com
[번역] UE4 UE5 골격 애니메이션 고급 로코모션 시스템: 제자리 회전
저자: DarkFlameMaster최근 언리얼 엔진의 골격 애니메이션 관련 지식을 공부하고 있다. 가르치면서 배우자는 생각으로, 여기서 애니메이션 관련 글을 좀 써서 방금 배운 것을 바로 팔아먹어보려 한
techartnomad.tistory.com
[번역] UE4 UE5 골격 애니메이션 고급 로코모션 시스템: 점프
저자: DarkFlameMaster최근 언리얼 엔진의 골격 애니메이션 관련 지식을 공부하고 있다. 가르치면서 배우자는 생각으로, 여기서 애니메이션 관련 글을 좀 써서 방금 배운 것을 바로 팔아먹어보려 한
techartnomad.tistory.com
UE4 UE5 골격 애니메이션 고급 로코모션 시스템: 발 IK - 知乎 (zhihu.com)
[UE4 UE5 골격 애니메이션 고급 로코모션 시스템: 카메라 관리 - 知乎 (zhihu.com)](https://zhuanlan.zhihu.com/p/565763264?)
UE4 UE5 골격 애니메이션 고급 로코모션 시스템: 손 IK / 버추얼 본 - 知乎 (zhihu.com)
UE5 골격 애니메이션 정지 동작 방안 탐구 - 知乎 (zhihu.com)
UE4 UE5 고급 로코모션 시스템 ALS 회전 - 知乎 (zhihu.com)
ALSV4를 빌려 애니메이션에서 커브의 응용을 이야기하기 (아직 구상 중)
3. 후기(감사와 잡담)
먼저 ALSV4의 작가가 이 플러그인을 무료로 공개하여 많은 개발자가 배울 수 있게 해준 것에 감사한다.
다음으로 @五谷延年 선배가 冲呀 플랫폼과 B站에 올린 시리즈 튜토리얼에도 감사드린다. (현재는 전부 무료가 되었으며, 여건이 되는 독자는 꼭 코인과 충전으로 응원해주시길 바란다.) 이 튜토리얼은 말하자면 나의 골격 애니메이션 입문 튜토리얼이었다. 과장 조금도 없이 말하자면, 五谷延年 선배의 이 튜토리얼이 없었다면 이 시리즈 글도 없었을 것이다.
虚幻4(UE4) 动画技术 深入浅出 高级运动系统_哔哩哔哩_bilibili
마지막으로 B站의 업主, 浅唱不会UE의 고급 로코모션 시스템 복각 튜토리얼도 함께 추천한다. 설명이 매우 성실하고 자세하다. 정말 보기 드문 좋은 튜토리얼이다.
关于高级运动系统复刻与解耦_哔哩哔哩_bilibili
창작자들에게 좋아요를 눌러주는 모든 분께 감사드린다.
후속 글은 제2절의 목차에 차례차례 업데이트할 예정이다. 관심이 있다면 팔로우하거나 이 글을 즐겨찾기해두면 된다. (물론 경험상 즐겨찾기한 뒤에는 보통 다시 열지 않는다는 것이 증명되긴 했지만.)
그럼 우리는, 다음에 또 만나자!
PS: 덧붙여 여기서 필자가 막 만든 UE 골격 애니메이션 교류방을 살짝 광고한다. 916274600 각위 대佬들의 매서운 지적을 환영합니다.
'TECH.ART.FLOW.IO' 카테고리의 다른 글
| [INDEX] ANIMATION SYSTEM (0) | 2026.07.21 |
|---|---|
| [번역] UE4/UE5 골격 애니메이션 고급 로코모션 시스템: 걷기/달리기 블렌드 기초 (0) | 2026.07.21 |
| Systemic Shader Reduction: How We Cut Fortnite’s Shaders by 68% | Unreal Fest Chicago 2026 (0) | 2026.07.21 |
| A Deep Dive Intro Lore Version Control (0) | 2026.07.21 |
| [번역] TA를 위한 UE 5.8 Substrate 아키텍처 심층 분석 (0) | 2026.07.16 |