Artoke

절차적 애니메이션: 컴퓨터가 스스로 그리는 움직임

절차적 애니메이션: 컴퓨터가 스스로 그리는 움직임 대표 이미지
출처: 절차적 애니메이션

절차적 애니메이션: 컴퓨터가 스스로 그리는 움직임

만화 영화 속 주인공은 어떻게 움직일까요? 옛날에는 사람이 그림을 한 장 한 장 그렸어요. 수천 장을 그려서 빠르게 넘기면 움직이는 것처럼 보였지요. 그런데 요즘 게임 속 캐릭터는 조금 달라요. 사람이 미리 다 그려 놓지 않아도, 컴퓨터가 그 자리에서 스스로 움직임을 만들어 내기도 해요. 이런 방법을 절차적 애니메이션이라고 불러요.

미리 그리기 vs 규칙으로 만들기

두 가지 요리 방법을 상상해 봐요. 첫 번째는 도시락이에요. 집에서 미리 만들어 온 음식이라, 맛은 좋지만 메뉴를 바꿀 수 없어요. 두 번째는 요리사예요. 레시피(요리 규칙)만 알고 있으면, 손님이 무엇을 주문하든 그 자리에서 새 요리를 만들 수 있지요.

애니메이션도 똑같아요. 미리 그려 둔 애니메이션은 도시락과 같아요. 정해진 동작만 보여 줄 수 있어요. 절차적 애니메이션은 요리사와 같아요. 컴퓨터에게 움직임의 규칙을 알려 주면, 컴퓨터가 상황에 맞는 새로운 움직임을 즉석에서 계산해서 만들어요.

절차적 애니메이션: 컴퓨터가 스스로 그리는 움직임 도식

규칙만 알려 주면 알아서 걸어요

강아지가 걷는 모습을 만든다고 해 볼게요. 미리 그리는 방법이라면, 평평한 길을 걷는 그림을 잔뜩 그려야 해요. 그런데 강아지가 언덕을 오르면 어떻게 될까요? 발이 땅에 닿지 않고 공중에 뜬 것처럼 보일 거예요. 언덕용 그림을 또 그려야 하지요.

절차적 애니메이션은 다르게 생각해요. "다리는 이만큼 길다", "발은 땅에 닿아야 한다", "몸은 균형을 잡아야 한다" 같은 규칙을 컴퓨터에게 알려 줘요. 그러면 컴퓨터가 매 순간 계산을 해서, 평지든 언덕이든 계단이든 발을 알맞은 곳에 딛는 걸음을 스스로 만들어 내요. 마치 진짜 강아지가 길을 보고 발을 옮기는 것처럼요.

톱니바퀴처럼 이어지는 움직임

절차적 애니메이션의 또 다른 재미있는 점은, 하나의 움직임이 다른 움직임을 끌고 간다는 거예요. 자전거를 떠올려 봐요. 페달을 밟으면 체인이 돌고, 체인이 돌면 뒷바퀴가 굴러가요. 페달 하나만 움직였는데 나머지가 줄줄이 따라 움직이지요.

아래 그림도 마찬가지예요. 첫 번째 바퀴가 두 번째 바퀴를 이끌고, 두 번째 바퀴가 세 번째 바퀴를 이끌어요. 사람은 첫 번째 바퀴의 규칙만 정해 주면 돼요. 나머지 바퀴의 움직임은 컴퓨터가 규칙에 따라 자동으로 계산해요. 두 번째 바퀴의 크기와 위치가 바뀌면, 세 번째 바퀴가 도는 빠르기도 저절로 달라져요.

첫 번째 바퀴가 두 번째 바퀴를, 두 번째 바퀴가 세 번째 바퀴를 이끄는 절차적 애니메이션
In this example, the first wheel leads the second, the second wheel leads the third. The radius and position of the second wheel are varying over time, the speed of rotation of the third wheel follows · 출처: 절차적 애니메이션

게임에서 왜 이 방법이 좋을까요?

게임 속 세상에서는 무슨 일이 일어날지 아무도 몰라요. 캐릭터가 어디로 뛸지, 무엇과 부딪힐지 미리 알 수 없지요. 일어날 수 있는 모든 상황의 그림을 사람이 전부 그려 두는 건 너무 힘들고, 사실상 불가능해요.

그래서 절차적 애니메이션이 큰 도움이 돼요. 규칙만 잘 만들어 두면, 컴퓨터가 실시간으로, 그러니까 게임이 돌아가는 바로 그 순간에 상황에 딱 맞는 움직임을 만들어 주거든요. 캐릭터가 울퉁불퉁한 바위 위를 걸어도 발이 바위에 자연스럽게 닿고, 바람이 불면 깃발이 바람 방향대로 펄럭여요. 미리 정해 둔 동작보다 훨씬 다양한 움직임을 보여 줄 수 있는 거예요.

정리해 볼까요?

  • 절차적 애니메이션은 사람이 그림을 미리 그리는 대신, 규칙을 알려 주고 컴퓨터가 움직임을 계산하게 하는 방법이에요.
  • 도시락(미리 그린 동작)이 아니라 요리사(규칙으로 즉석 요리)에 가까워요.
  • 하나의 움직임이 다음 움직임을 이끌어서, 자전거 체인처럼 줄줄이 이어져요.
  • 게임처럼 무슨 일이 생길지 모르는 곳에서, 실시간으로 다양한 움직임을 만들 때 특히 강력해요.

다음에 게임 속 캐릭터가 계단을 자연스럽게 오르는 걸 본다면 떠올려 보세요. 그 걸음 하나하나를, 컴퓨터가 규칙을 따라 바로 그 순간에 계산하고 있을지도 몰라요!

출처

광고

리깅 파이프라인 자동화 도구

반복 작업은 스크립트에게. 현업에서 쓰는 리깅 툴 모음.

리깅 도구 보기