Agent Sprite Forge - AI로 2D 게임 캐릭터 애니메이션과 맵 제작하기

목차
AI 이미지 생성 기술이 발전하면서 게임에 사용할 캐릭터와 배경을 만드는 일도 점점 쉬워지고 있다. 하지만 이미지를 생성하는 것과 실제 게임에서 사용할 수 있는 에셋을 만드는 것은 다른 문제다.
캐릭터의 정면과 측면이 일관되어야 하고, 걷기·달리기·공격 같은 동작이 자연스럽게 연결되어야 한다. 배경을 투명하게 처리하고 프레임을 정렬한 다음, 게임 엔진에서 읽을 수 있는 스프라이트 시트나 애니메이션 데이터로 변환하는 과정도 필요하다.
Agent Sprite Forge는 이러한 작업을 AI 에이전트와 로컬 이미지 처리 도구로 연결하는 오픈소스 프로젝트다.
자연어로 캐릭터나 맵을 요청하면 Codex 등의 에이전트가 필요한 제작 과정을 계획하고, 이미지 생성 및 영상 생성 도구로 원본을 만든다. 이후 Python 기반 처리 도구가 배경 제거, 프레임 추출, 정렬, 애니메이션 검증, 파일 내보내기를 수행한다.
단순한 이미지 생성 프롬프트 모음이 아니라, AI가 만든 결과물을 실제 게임 개발에 활용할 수 있도록 정리하는 에셋 제작 파이프라인이라는 점이 핵심이다.
1. Agent Sprite Forge란?
Agent Sprite Forge는 2D 게임 제작을 위한 AI Agent Skill 모음이다.
주요 목적은 캐릭터, 몬스터, 오브젝트, 공격 이펙트, 게임 맵 등을 생성하고 이를 재사용 가능한 게임 에셋으로 가공하는 것이다.
프로젝트가 지원하는 주요 작업은 다음과 같다.
- 캐릭터와 몬스터 스프라이트 생성
- Idle, Walk, Run, Attack 등의 애니메이션 제작
- 마법, 투사체, 공격 및 충돌 이펙트 생성
- 투명 배경 처리와 애니메이션 프레임 추출
- RPG 맵과 오브젝트 제작
- 충돌 영역 및 맵 배치 정보 생성
- Godot, Tiled, LDtk 등의 형식으로 맵 내보내기
- Aseprite 및 웹 게임용 애니메이션 데이터 생성
프로젝트의 특징은 이미지 생성과 후처리 과정을 분리한다는 점이다.
이미지 생성 모델은 캐릭터나 배경의 시각적인 결과물을 담당하고, 로컬 스크립트는 이미지 정리와 프레임 처리처럼 반복 가능하고 규칙적인 작업을 담당한다.
따라서 이미지 생성 결과가 완벽하지 않더라도 후처리 과정에서 일정 부분 보정할 수 있다.
2. 주요 기능과 Skill 구성
Agent Sprite Forge는 여러 작업을 각각의 Skill로 나누어 제공한다.
| Skill | 주요 기능 | 대표 결과물 |
| generate2dsprite | 캐릭터, 몬스터, 오브젝트, 애니메이션 | 스프라이트 시트, PNG, GIF |
| generate2dmap | RPG 맵과 타일맵 제작 | 맵 이미지, 레이어, 충돌 데이터 |
| video2dsprite | 영상 기반 캐릭터 애니메이션 | 프레임, 애니메이션 패키지 |
| generate2dmedia | 이미지 및 영상 생성 경로 관리 | 생성된 이미지와 영상 |
| codeart2d | 코드 기반 2D 그래픽 제작 | SVG, 픽셀아트, 이펙트 |
2-1. generate2dsprite
캐릭터와 몬스터 등 게임에서 사용할 개별 스프라이트를 제작하는 Skill이다.
자연어로 캐릭터의 외형과 방향, 동작을 설명하면 이미지 생성 도구를 이용해 결과물을 만든다.
예를 들어 다음과 같은 요청이 가능하다.
Use $generate2dsprite to create a
side-view lightning knight attack animation.
The character should have:
- Dark steel armor
- Blue glowing eyes
- A large sword
- Lightning effects around the weapon
Facing right, transparent background.
캐릭터 외형뿐 아니라 공격 애니메이션, 마법 시전, 투사체, 충돌 이펙트 등도 제작할 수 있다.
특히 기준 이미지가 있는 경우 이를 참고해 캐릭터의 외형을 유지하는 변형 작업도 가능하다.
2-2. generate2dmap
게임 맵과 배경을 제작하는 Skill이다.
단일 배경 이미지를 생성하는 것뿐 아니라, 맵을 여러 구성 요소로 나누어 관리할 수 있는 레이어드 맵 제작을 지원한다.
대표적인 제작 흐름은 다음과 같다.
- 지형과 바닥만 포함하는 기본 맵 생성
- 건물과 나무 등의 오브젝트를 배치한 참고 이미지 생성
- 개별 오브젝트 묶음(prop pack) 제작
- 배경에서 오브젝트를 분리해 투명 이미지로 추출
- 오브젝트 배치 정보와 레이어를 구성
- 충돌 영역과 이동 가능 구역 설정
- 게임 엔진에서 사용할 수 있는 맵 데이터로 내보내기
예를 들어 숲속 마을을 만든다면 바닥과 지형을 먼저 구성하고, 나무·집·바위·울타리 등을 별도의 오브젝트로 분리해 관리할 수 있다.
이런 구조는 나중에 맵을 수정하거나 오브젝트를 재배치할 때 유리하다.
2-3. video2dsprite
이번 프로젝트에서 특히 흥미로운 기능이다.
기존의 이미지 기반 스프라이트 생성은 여러 프레임을 하나의 이미지 시트로 생성하는 방식이 일반적이었다.
하지만 이미지 생성 모델은 프레임마다 캐릭터의 크기나 외형이 달라지거나, 동작이 부자연스러워지는 문제가 발생할 수 있다.
video2dsprite는 하나의 기준 이미지에서 이미지-투-비디오 모델을 이용해 캐릭터 동작을 생성하고, 영상의 프레임을 추출해 애니메이션으로 가공한다.
기본적인 작업 흐름은 다음과 같다.
- 기준 캐릭터 이미지 준비
- 동작별 영상 생성
- 영상 프레임 추출
- 크로마키 및 배경 제거
- 프레임 위치와 캐릭터 크기 정렬
- 반복 애니메이션 구간 선택
- 공격 등 단발성 동작의 재생 시간 조정
- 최종 애니메이션 패키지 생성
0.4.0에서는 이 기능이 크게 강화되었으며, Grok Build 전용 Skill로 안내되어 있다. 다른 이미지 생성 경로와 달리 영상 생성 기능을 사용할 수 있는 Grok 환경이 필요하다.
2-4. generate2dmedia
이미지와 영상을 생성할 때 사용할 경로를 관리하는 구성 요소다.
0.4.0에서는 route_media.py를 통해 여러 생성 경로를 통합한다.
지원하는 경로에는 다음이 포함된다.
- OpenAI 이미지 생성
- Google Gemini 이미지 생성
- xAI Grok 이미지 및 영상 생성
- BytePlus 이미지 및 영상 생성
- fal.ai의 외부 이미지·영상 모델
- 로그인된 Codex 및 Grok CLI
사용 가능한 API 키가 설정되어 있으면 해당 경로를 우선 사용하고, 그렇지 않으면 로그인된 CLI를 이용하는 방식이다.
이미지 생성 모델과 영상 생성 모델은 사용 가능한 기능이 다르므로, 실제 실행 환경에서 지원 경로를 확인해야 한다.
2-5. codeart2d
외부 이미지 생성 모델 없이 코드로 그래픽을 만드는 기능이다.
SVG 기반 그래픽이나 픽셀아트, 이펙트 등을 정해진 스펙에 따라 생성할 수 있다.
예를 들어 다음과 같은 작업에 활용할 수 있다.
- 검 휘두르기 이펙트
- 충격파와 먼지 효과
- 투사체와 마법진
- 자동 타일셋
- 캐릭터 리깅 및 관절 애니메이션
외부 이미지 생성 서비스의 사용량이나 비용을 줄이고 싶거나, 정확한 구조와 반복 가능한 결과가 필요한 경우 유용하다.
다만 일반적인 이미지 생성 모델과는 접근 방식이 다르다. 자유로운 그림 생성보다는 명확한 구조와 규칙을 가진 그래픽 제작에 적합하다.
3. 0.4.0 업데이트 - 한 장의 이미지에서 전체 캐릭터 애니메이션까지
2026년 10월 6일 공개된 v0.4.0은 Agent Sprite Forge의 중요한 업데이트다.
기존에는 이미지 생성으로 만든 스프라이트 시트를 분할하거나 영상 한 개를 수동으로 처리하는 방식이 중심이었다.
0.4.0에서는 기준 캐릭터 이미지 한 장을 승인한 뒤, 각 동작을 별도의 영상으로 생성하고 최종 애니메이션 패키지로 만드는 통합 파이프라인이 추가됐다.

기준 이미지부터 제작
먼저 캐릭터의 외형을 정의하고 여러 이미지 생성 결과 중 하나를 선택한다.
선택한 이미지는 master.json에 기록되며 이후 모든 동작 생성의 기준으로 사용된다.
이렇게 하면 걷기와 공격 애니메이션을 따로 생성하더라도 동일한 캐릭터의 외형을 유지하는 데 도움이 된다.
동작별 영상 생성
기준 이미지가 준비되면 필요한 동작을 각각 생성한다.
예를 들어 다음과 같은 애니메이션을 만들 수 있다.
| 동작 | 용도 |
| Idle | 대기 |
| Walk | 걷기 |
| Run | 달리기 |
| Attack | 공격 |
| Jump | 점프 |
| Hurt | 피격 |
| Cast | 마법 시전 |
| Guard | 방어 |
| Victory | 승리 |
| Defeat | 패배 |
각 동작은 별도의 영상으로 생성되며, 결과가 만족스럽지 않으면 수정 조건을 추가해 다시 생성할 수 있다.
자동 검증과 후처리
영상에서 프레임을 추출한 뒤 다음 항목을 확인한다.
- 캐릭터 크기와 위치
- 발 위치와 접지 상태
- 캐릭터 외형의 일관성
- 화면 밖으로 벗어나는 프레임
- 배경 및 불필요한 오브젝트
- 동작의 자연스러움
- 프레임 간 색상 변화
- 애니메이션 종료 자세
자동 검증에서 문제가 발견되면 추가 생성이나 수정 작업을 진행한다.
다만 숫자로 측정할 수 있는 항목만으로 캐릭터의 형태나 움직임이 자연스러운지 완전히 판단할 수는 없다. 프로젝트에서도 AI 에이전트가 결과 시트를 직접 검토하고 사용자가 최종 기준 이미지를 승인하는 절차를 유지한다.
4. 이미지와 애니메이션 후처리
AI가 생성한 원본 이미지는 그대로 게임에 사용하기 어려운 경우가 많다.
배경이 남아 있거나, 프레임마다 캐릭터의 크기가 달라지거나, 색상이 미세하게 변하는 문제가 발생할 수 있다.
Agent Sprite Forge는 이러한 문제를 줄이기 위한 여러 처리 도구를 제공한다.
배경 제거와 Soft Matte
크로마키 배경을 제거하고 캐릭터를 투명 PNG로 변환한다.
단순히 특정 색상을 제거하는 방식은 캐릭터 가장자리에 배경색이 남는 문제가 발생할 수 있다.
0.4.0에서는 Soft Matte 방식을 적용해 가장자리의 색상 번짐과 배경색 누출을 줄였다.
프로젝트의 동일한 영상 샘플을 이용한 측정에서는 다음과 같은 결과가 보고됐다.
| 측정 항목 | 이전 방식 | 0.4.0 |
| 가장자리 색상 번짐 지표 | 0.704 | 0 |
| 배경색 누출 픽셀 | 7,780 | 0 |
| 145프레임 처리 시간 | 271초 | 44초 |
이 수치는 프로젝트에서 사용한 특정 영상과 테스트 환경의 결과이며 모든 영상에서 동일한 성능을 보장하는 것은 아니다.
프레임 정렬
캐릭터가 걷거나 달릴 때 프레임마다 위치가 바뀌면 게임 화면에서 캐릭터가 흔들리는 것처럼 보일 수 있다.
특히 발이 바닥에 닿는 지점이 일정하지 않으면 실제 이동 속도와 관계없이 발이 미끄러지는 현상이 발생한다.
Agent Sprite Forge는 기준 이미지의 캐릭터 크기와 위치를 이용해 프레임을 정렬하고, 접지 위치를 기준으로 애니메이션을 보정한다.
HD와 Pixel Finish
최종 결과물은 HD 또는 Pixel 스타일로 가공할 수 있다.
HD Finish
- 캐릭터 크기 유지
- 부드러운 이미지 축소
- 투명 영역 정리
- 프레임 간 색상 일관성 유지
Pixel Finish
- 선명한 픽셀 단위 축소
- 제한된 색상 팔레트
- 불필요한 고립 픽셀 정리
- 선택적 외곽선 처리
- 투명도를 2단계로 정리
프로젝트에서 공개한 48×64 픽셀 크기의 여우 달리기 애니메이션 테스트에서는 프레임당 색상 수가 594~709개에서 16~19개로 줄었고, 알파 단계도 199단계에서 2단계로 정리됐다.
픽셀아트 특유의 선명한 형태를 유지하면서 애니메이션을 구성하려는 경우 유용한 기능이다.
5. 게임 엔진 및 에셋 내보내기
최종적으로 중요한 것은 생성한 결과물을 게임에서 사용할 수 있는가 하는 점이다.
Agent Sprite Forge는 여러 형식으로 결과물을 내보낼 수 있다.
스프라이트 및 애니메이션
| 대상 | 출력 형식 |
| 웹 및 일반 게임 엔진 | PNG Atlas, animation.json |
| 웹 영상 애니메이션 | VP9 Alpha WebM |
| 모바일 영상 패키지 | Packed Alpha MP4 |
| Godot 4 | SpriteFrames, AnimatedSprite2D, Sprite3D |
| Aseprite / Phaser / PixiJS | Aseprite JSON Array Atlas |
애니메이션 데이터에는 프레임별 재생 시간, 이벤트, 기준점(anchor) 등의 정보를 포함할 수 있다.
따라서 단순히 이미지 파일을 내보내는 것보다 게임 런타임에서 활용하기 쉬운 구조를 갖춘다.
맵 내보내기
맵은 별도의 형식으로 내보낼 수 있다.
- Tiled 1.10
- Godot 4.3 이상
- LDtk 1.5.3
Godot 맵에서는 다음과 같은 구성을 만들 수 있다.
- 편집 가능한 TileMapLayer
- 개별 Sprite2D 오브젝트
- 충돌 영역
- 이동 및 이벤트 트리거 영역
- 맵 출구
- 테스트용 플레이어와 카메라
Unity 프로젝트를 포함한 게임 프로토타입 사례도 공개되어 있지만, 0.4.0의 개별 엔진 내보내기 목록과 Unity 프로토타입 제작 사례는 구분해서 이해하는 것이 좋다.
6. 설치 방법 - Windows와 Codex 기준
Agent Sprite Forge는 Python 기반 처리 도구와 AI 에이전트 Skill을 조합해서 사용한다.
Windows에서 Codex를 사용하는 경우 다음 순서로 설치할 수 있다.
① 사전 준비
필요한 환경은 다음과 같다.
- Windows 10 또는 11
- Python 3.10 이상
- Git
- Codex CLI
- FFmpeg 5.1 이상
- 이미지 및 영상 생성 경로
이미지와 영상 생성에는 OpenAI, Gemini, Grok, BytePlus, fal.ai 등의 API 키를 설정하거나 로그인된 Codex 또는 Grok CLI를 사용할 수 있다.
모든 생성 기능을 로컬 PC에서 실행하는 방식은 아니다.
② 저장소 다운로드
PowerShell을 실행하고 다음 명령을 입력한다.
git clone https://github.com/0x0funky/agent-sprite-forge.git
cd .\agent-sprite-forge
③ Python 패키지 설치
python -m pip install -r requirements.txt
주요 패키지는 다음과 같다.
- NumPy
- Pillow
- SciPy
SciPy는 처리 속도를 높이는 용도로 사용되며, NumPy 기반 대체 경로도 제공된다.
④ Codex Skill 설치
최신 0.4.0에서 제공하는 설치 스크립트를 이용한다.
python tools/install_skills.py --apply --host codex
설치가 끝나면 Codex를 새로 시작해 Skill을 다시 불러온다.
설치 상태는 다음 명령으로 확인할 수 있다.
python tools/install_skills.py --check --host codex
이 명령은 설치된 Skill의 변경 여부를 확인하는 데 사용된다.
⑤ FFmpeg 설치
영상 기반 애니메이션과 영상 패키징을 사용하려면 FFmpeg가 필요하다.
FFmpeg 5.1 이상이 PATH에 등록되어 있어야 한다.
설치 여부를 확인한다.
ffmpeg -version
영상 출력에 필요한 VP9 및 H.264 인코더도 사용할 수 있어야 한다.
⑥ 이미지 생성 경로 확인
API 키를 사용하거나 Codex 및 Grok CLI의 로그인 환경을 준비한다.
0.4.0에는 생성 경로를 확인하는 forge_doctor 도구도 포함되어 있다. 설치한 환경에서 어떤 이미지 및 영상 생성 경로를 사용할 수 있는지 점검하는 것이 좋다.
7. 실제 사용 예시
설치가 끝났다면 Codex에서 자연어로 작업을 요청할 수 있다.
예시 1. RPG 캐릭터 생성
Use $generate2dsprite to make a master
still of a fantasy swordsman for a 2D RPG.
Character:
- Young male swordsman
- Dark steel armor
- Red scarf
- Long sword
- Side view, facing right
Style:
HD game art, transparent background.
먼저 캐릭터의 기준 이미지를 생성하고 마음에 드는 결과를 선택한다.
예시 2. 캐릭터 애니메이션 생성
0.4.0의 Grok Build 환경에서는 승인된 기준 이미지로 다음과 같이 요청할 수 있다.
Use $video2dsprite to animate the
approved swordsman master.
Actions:
- idle
- walk
- run
- attack
- jump
- hurt
Keep the same character identity,
body scale, armor and weapon.
Package the animations for Godot
and a web game.
각 동작을 별도의 영상으로 생성하고 프레임 추출, 배경 제거, 정렬, 애니메이션 타이밍 조정 등의 작업을 진행한다.
예시 3. RPG 마을 맵 생성
Use $generate2dmap to create a
Godot-editable fantasy RPG village.
Include:
- Ground-only base map
- Houses and trees
- Separate transparent props
- Collision blockers
- Village entrance and exits
- A debug player and camera
Keep the map editable in Godot.
맵의 기본 지형과 오브젝트를 분리하고, 충돌 및 출입구 정보를 포함한 Godot 프로젝트 구성을 요청할 수 있다.
8. Claude Code와 Grok에서 사용하기
Codex 외에도 Claude Code와 Grok 환경을 지원한다.
Claude Code
Claude Code에서는 공식 Plugin Marketplace 방식으로 설치할 수 있다.
claude plugin marketplace add 0x0funky/agent-sprite-forge --sparse .claude-plugin skills
claude plugin install agent-sprite-forge@agent-sprite-forge
필요한 Python 패키지도 설치한다.
python -m pip install "numpy>=1.26" "Pillow>=10.1" "scipy>=1.11"
설치 후 새로운 Claude Code 세션에서 Skill을 불러온다.
Grok
저장소를 내려받은 뒤 설치 스크립트를 실행한다.
git clone https://github.com/0x0funky/agent-sprite-forge.git
cd agent-sprite-forge
python -m pip install -r requirements.txt
python tools/install_skills.py --apply --host grok
Grok Build의 영상 생성 기능을 이용할 수 있는 환경에서 video2dsprite를 활용한다.
주의: video2dsprite는 일반적인 Codex 이미지 생성만으로 실행할 수 있는 기능이 아니다. 저장소의 안내에 따라 Grok Build의 image_to_video 기능을 사용할 수 있어야 한다.
9. 사용 시 알아둘 점과 한계
Agent Sprite Forge는 이미지 생성부터 게임 에셋 패키징까지 많은 과정을 자동화하지만, 결과물을 검토하지 않고 바로 상용 게임에 넣을 수 있는 완성형 그래픽 제작 도구는 아니다.
캐릭터 일관성
이미지-투-비디오 모델은 빠른 동작이나 점프처럼 움직임이 큰 장면에서 캐릭터의 외형이 달라질 수 있다.
따라서 공격이나 점프 애니메이션은 여러 번 생성하고 결과를 비교해야 할 수 있다.
자동 검증의 한계
프레임 크기, 위치, 배경색 누출 등은 자동으로 검사할 수 있지만, 캐릭터의 해부학적 구조나 동작이 자연스러운지는 별도의 시각적 검토가 필요하다.
프로젝트에서도 에이전트가 검토 시트를 확인하고 사용자가 기준 이미지를 승인하는 구조를 유지한다.
생성 비용
외부 이미지 및 영상 생성 API를 사용하면 호출마다 비용이 발생할 수 있다.
특히 캐릭터별로 여러 동작을 각각 영상으로 생성하면 호출 횟수가 증가한다.
API 키를 설정한 경우 사용자의 동의로 간주해 호출을 진행하는 구조이므로, 생성 경로와 사용량을 확인하고 관리하는 것이 좋다.
게임 엔진 호환성
0.4.0에서는 여러 엔진용 내보내기 기능을 제공하지만, 저장소의 안내에 따르면 Godot, LDtk, Aseprite 등의 일부 0.4.0 내보내기는 실제 편집기에서 열어 확인한 상태가 아니다.
파일 구조를 검증하는 것과 실제 엔진에서 정상적으로 동작하는 것은 다르므로, 게임 프로젝트에 적용하기 전 반드시 테스트해야 한다.
라이선스
저장소의 코드와 문서는 MIT License를 따른다.
하지만 생성한 이미지와 영상까지 저장소의 MIT 라이선스가 적용되는 것은 아니다. 실제 이미지와 영상은 사용한 생성 서비스의 이용 조건을 따른다.
상업 프로젝트에서는 자체적으로 권리를 보유한 오리지널 캐릭터와 리소스를 사용하는 것이 안전하다.
10. 마무리
Agent Sprite Forge는 AI 이미지 생성의 결과물을 실제 게임 개발에 활용할 수 있도록 연결하는 프로젝트다.
단순히 캐릭터 이미지를 생성하는 데 그치지 않고, 애니메이션 프레임 추출과 정렬, 배경 제거, 색상 보정, 타이밍 조정, 게임 엔진용 파일 내보내기까지 하나의 워크플로로 구성한다.
특히 0.4.0에서 추가된 기준 이미지 기반 애니메이션 생성 방식은 주목할 만하다. 캐릭터의 기본 외형을 먼저 확정한 뒤 각 동작을 영상으로 생성하고, 이를 게임용 애니메이션으로 가공할 수 있기 때문이다.
2D RPG나 횡스크롤 게임처럼 캐릭터와 몬스터, 맵, 이펙트가 많이 필요한 프로젝트에서 제작 초기의 프로토타입과 테스트용 에셋을 빠르게 준비하는 데 활용할 수 있다.
물론 최종 게임에 적용하려면 캐릭터 일관성, 애니메이션 품질, 엔진 호환성을 직접 검토해야 한다. 하지만 이미지 생성과 게임 에셋 제작 사이의 반복 작업을 줄여준다는 점에서 충분히 살펴볼 만한 오픈소스 프로젝트다.
공식 프로젝트 및 참고 자료
- GitHub 저장소: https://github.com/0x0funky/agent-sprite-forge
- 한국어 README: https://github.com/0x0funky/agent-sprite-forge/blob/main/README.ko.md
- 최신 릴리스 v0.4.0: https://github.com/0x0funky/agent-sprite-forge/releases
- 변경 이력: https://github.com/0x0funky/agent-sprite-forge/blob/main/CHANGELOG.md
- 라이선스: https://github.com/0x0funky/agent-sprite-forge/blob/main/LICENSE
pixelfx - 244개 픽셀아트 게임 이펙트 오픈소스 라이브러리
목차 2D 게임을 개발하다 보면 공격, 폭발, 마법, 회복, 아이템 획득 등 다양한 시각 효과가 필요하다. 특히 픽셀아트 스타일의 게임에서는 캐릭터와 배경뿐 아니라 이펙트까지 같은 그래픽 스타
well-life.kr