칼을 휘두르랬더니 방패가 나왔다: AI 캐릭터 동작을 고친 네 가지

캐릭터에게 공격을 시켰는데 칼보다 방패가 먼저 나갔습니다. 그림 한 장으로 게임용 동작을 만드는 AI 도구, 스프라이트젠을 개발하다 생긴 일입니다.

영상은 그럴듯하게 나왔습니다. 문제는 제가 시킨 동작과 다르다는 점이었습니다. 걷기에서는 한 발로 콩콩 뛰고, 한 번 공격하라고 하면 두 번 휘두르기도 했습니다. 각각 어디를 고쳤는지 적어봅니다.

먼저, 어떻게 만드는 도구인가

원본 그림을 영상의 첫 프레임으로 넣고 Grok Imagine(그록 이매진)에 동작을 시킵니다. 그림이 없으면 OpenAI(오픈에이아이)나 Grok의 이미지 모델로 만들 수도 있습니다. 생성한 영상의 배경을 지우고, 가장자리에 남은 색을 정리하고, 반복할 구간을 골라 파일로 내보내는 부분은 오픈소스 sprite-gen이 맡습니다.

아래는 이 과정으로 만든 공격 동작입니다.

attack-claudecy-samurai.gif
1.08MB
칼을 들고 빨간 머리를 가진 사무라이 소녀

1. 걷는데 한 발로만 뛰는 문제

서로 비슷한 두 프레임을 찾아 그 사이를 반복하면 걷기가 될 거라고 생각했습니다. 옷에 다리가 가려진 캐릭터에서는 한 걸음짜리 구간이 가장 비슷하게 잡혔습니다. 그 부분만 반복하니 같은 발로 계속 뛰었습니다.

짧게 잡힌 구간은 길이를 두 배로 늘려 다시 비교하도록 바꿨습니다. 왼발과 오른발을 한 번씩 쓰는 구간도 반복되는지 확인하는 방식입니다. 시작과 끝이 닮았다는 조건만으로는 걷기 한 바퀴를 찾을 수 없었습니다.

2. 동작마다 달라지는 캐릭터

걷기와 공격을 각각 새로 그리게 하면 머리색이나 옷 주름이 조금씩 달라졌습니다. 지금은 모든 동작 영상이 같은 원본 그림에서 출발합니다. 먼저 캐릭터 한 장을 정한 뒤 그 그림에 동작을 붙입니다.

3. 칼 대신 앞으로 나가는 방패

동작 설명에 '방패는 앞으로 든 채로'라고 적은 게 문제였습니다. 원본에서는 몸 뒤에 있던 방패를 모델이 앞으로 꺼냈습니다.

동작 설명에서 손의 위치를 새로 지정하는 내용을 빼고, 그림에 그려진 쥐는 방식과 안 쓰는 손의 위치를 유지하라는 지시를 붙였습니다. 이 문장으로 만든 기사 영상 4개에서는 모두 방패가 제자리에 남았습니다.

실제로 사용한 문장입니다.

Every grip stays exactly as shown in the image: one hand stays one hand, both hands stay both hands, and nothing is let go or switched to the other hand. A hand the motion does not use stays where it is drawn, with anything it holds, and the body keeps facing the same direction without turning.

4. 한 번 시켰는데 두 번 하는 공격

3초 영상에서 반복 구간을 찾으면 공격이 두 번 들어가거나, 이미 공격 중인 자세에서 시작하는 경우가 있었습니다. 공격 영상을 2초로 줄이고 마지막 프레임을 처음의 준비 자세로 고정했습니다. 따로 중간을 잘라내지 않고 영상 전체를 반복하게 했습니다.

캐릭터 13개로 시험했을 때는 13개 모두 준비 자세에서 시작하는 반복 동작이 나왔습니다.

고치고 나서 남은 기준

동작을 자세히 설명하다가 원본 그림의 손 위치까지 바꿔버릴 수 있었습니다. 이제는 움직일 부분을 지시한 뒤, 그대로 둘 부분도 확인합니다. 걷기는 양발을 쓰는지, 공격은 준비 자세로 돌아오는지처럼 동작마다 볼 지점도 달랐습니다.

오픈소스 도구라 내 컴퓨터에 설치해 사용합니다. 저장소 README(리드미)의 설치 순서를 따라 Python(파이썬) 가상환경에 설치하고, sprite-gen --help로 명령어를 확인할 수 있습니다. 동작 영상 생성에는 본인의 Grok(그록) 로그인이나 xAI(엑스에이아이) API 키가 필요합니다.

소스 코드와 변경 기록: https://github.com/aldegad/sprite-gen

스프라이트젠으로 원티드 AI 챔피언십에도 참가했습니다. 도구가 마음에 드셨다면 10월 5일까지 한 표 부탁드립니다. 투표에는 원티드 로그인과 휴대폰 인증이 필요합니다.

https://event.wanted.co.kr/ai-championship/2026/projects/1641

2
1개의 답글
지피터스 뉴스레터

이번 주 AI, 딱 쓸 것만

매주 월요일 오후,
읽고 바로 써먹을 AI 소식만