애니 논문: PFNN: 위상 함수 신경망으로 실시간 보행을 만들다
PFNN: 위상 함수 신경망으로 실시간 보행 생성
PFNN(Phase-Functioned Neural Network, 위상 함수 신경망)은 게임 캐릭터 애니메이션 분야에 새로운 접근을 제시한 연구입니다. Holden 등이 2017년 SIGGRAPH에서 발표한 이 방법은 캐릭터의 보행 동작을 지형에 맞춰 실시간으로 만들어 내는 데 초점을 둡니다. 핵심은 네트워크 가중치 자체가 보행 사이클의 위상(phase)에 따라 변한다는 점입니다. 덕분에 캐릭터는 울퉁불퉁한 지형에서도 사실적이고 끊김 없는 움직임을 보여줍니다.
핵심 아이디어 이해하기
PFNN의 핵심 아이디어는 가중치를 하나의 고정된 값으로 학습해 두는 대신, 보행 주기의 위상 로부터 매 프레임 새로 만들어 내는 것입니다. 예측 자체는 평범한 순전파 이지만, 그 가중치 를 위상 함수 가 생성한다는 점이 다릅니다.
여기서 이며, 는 한 걸음 주기 안에서의 위상, 는 학습으로 얻는 제어점입니다. 는 이 네 제어점을 3차 Catmull-Rom 스플라인으로 보간해, 위상에 따라 연속적이면서 한 주기마다 되돌아오는 가중치를 만들어 냅니다. 입력 에는 캐릭터 궤적의 위치와 방향, 궤적 아래 지형의 높이, 직전 프레임의 관절 포즈가 들어가고, 출력 로 다음 프레임의 포즈와 위상 증가량이 나옵니다.
이 접근법은 캐릭터의 움직임이 단순히 프로그래밍된 패턴을 따르는 것이 아니라, 실시간 환경에 동적으로 적응하는 능력을 부여합니다. 예를 들어, 캐릭터가 경사면을 오르거나 내려올 때, PFNN은 이러한 변화에 즉시 반응하여 자연스러운 동작을 생성합니다.
작동 원리 심층 분석
PFNN의 작동 원리는 기존 신경망과 비교하면 차이가 분명합니다. 일반적인 신경망은 학습이 끝나면 가중치가 고정된 채로 입력만 바뀌지만, PFNN은 추론 중에도 위상에 따라 가중치 자체가 계속 다시 만들어집니다. 사실상 위상 구간마다 조금씩 다른 네트워크를 쓰는 셈이고, 그 사이는 스플라인 보간으로 매끄럽게 이어집니다.

위 도식에서 위상 는 한 걸음이 진행되는 동안 에서 까지 돌고, 그 값이 위상 함수 를 지나 그 프레임에서 쓸 가중치 로 바뀝니다. 신경망은 이렇게 매번 새로 받은 가중치로 궤적과 지형 높이, 직전 포즈를 읽어 다음 포즈를 냅니다. 출력에 함께 나온 위상 증가량 가 다시 위상으로 돌아가 순환이 이어지고, 그 덕분에 발이 땅에 닿는 구간과 공중에 뜨는 구간의 동작이 서로 섞여 뭉개지지 않습니다.
쓸 때 좋은 점
PFNN을 활용하면 개발자와 애니메이터들은 캐릭터의 움직임을 더욱 세밀하고 자연스럽게 제어할 수 있습니다. 예를 들어,
- 지형에 대한 자연스러운 적응: 경사면이나 울퉁불퉁한 바닥에서도 미리 만들어 둔 클립을 갈아 끼우지 않고, 그 상황에 맞는 동작이 실시간으로 만들어집니다.
- 애니메이션 제작 부담 감소: 상황별 모션 시퀀스와 전이 규칙을 일일이 손보는 대신, 학습된 네트워크가 환경 변화를 받아 처리합니다.
- 몰입감과 표현의 폭: 고정된 애니메이션 그래프로는 만들기 어려운 중간 상태의 동작까지 나와, 캐릭터가 그 지형 위에 실제로 서 있는 것처럼 보입니다.
힘든 점
반대로 실제로 붙여 쓰려면 감수해야 할 부분도 분명합니다.
- 데이터와 학습 준비: 모션 캡처 데이터마다 보행 위상을 라벨링하고 지형과 맞춰 두는 전처리가 필요해, 초기 구축에 시간이 많이 듭니다.
- 실행 비용: 매 프레임 가중치를 다시 만들어야 하므로 계산량과 메모리 사용이 늘고, 저사양 환경에서는 가중치를 미리 펼쳐 두는 식의 타협이 필요합니다.
- 진단의 어려움: 동작이 이상해도 어떤 데이터나 어떤 위상 구간이 원인인지 짚기 어려워, 기존 애니메이션 그래프처럼 문제되는 전이 하나만 고치는 방식이 통하지 않습니다.
결론
PFNN은 게임 캐릭터 애니메이션 분야에서 혁신적인 발전을 이끌어낸 방법론입니다. 위상 정보를 통합한 동적 가중치 조정은 캐릭터의 움직임을 더욱 사실적이고 유연하게 만듭니다. 이러한 기술을 활용하면 개발자들은 더욱 실감나는 게임 경험을 제공할 수 있지만, 동시에 학습 및 실행에 대한 복잡성과 자원 요구 사항을 고려해야 합니다.
출처
리깅 파이프라인 자동화 도구
반복 작업은 스크립트에게. 현업에서 쓰는 리깅 툴 모음.
리깅 도구 보기