메트로배니아용 스프라이트
메트로배니아는 탐험할 맵이 있고 주인공이 새 동작을 익혀 가는 플랫포머입니다. 그래서 한 캐릭터의 액션 목록이 길고, 한 세계처럼 보여야 하는 적도 많습니다.
| 뷰 | 측면 |
|---|---|
| 크기 | 48–64 px 캐릭터 |
| 방향 | 1(뒤집음) |

샘플 프로젝트
측면에서 본 플랫포머 캐릭터: .pixor 프로젝트와 라이브러리 모델(CC0). 왼쪽 시트가 이 프로젝트가 렌더링한 결과입니다.
메트로배니아에 필요한 것
게임을 이끄는 것은 주인공입니다. 대기, 걷기, 달리기, 점프, 낙하, 공격, 피격, 사망 외에도 메트로배니아는 시간이 지나며 동작을 더합니다. 대시, 벽 미끄러지기, 이단 점프, 내려찍기, 웅크리기. 하나하나가 같은 캐릭터의 또 다른 액션입니다.
그다음은 적입니다. 지역마다 새 적이 나오고, 구역마다 열 마리가 넘는 경우도 많으며 보스도 있습니다. 문, 레버, 세이브 포인트, 부술 수 있는 벽, 함정, 획득 아이템까지 더하면 스프라이트 목록이 길어집니다. 그 모두를 한 스타일로 유지하는 것이 일의 대부분입니다.
카메라
피치 없는 측면 시점을 쓰세요. 대부분의 캐릭터는 오른쪽(동)을 보는 카메라 하나면 충분하고, 왼쪽은 엔진이 뒤집어 줍니다. 좌우 대칭이 아닌 캐릭터는 서쪽 카메라도 둘 수 있습니다.
48~64 px이면 주인공이 포즈를 또렷하게 잡을 여유가 있습니다. 플레이어가 몇 프레임 만에 대시와 점프를 구별해야 할 때 중요합니다. 보스는 두세 배 더 클 수 있습니다. 스프라이트 크기에서 장단점을 다룹니다.
크기와 피벗
프로젝트 전체에 미터당 픽셀 배율 하나를 유지하세요. 보스는 모델이 크기 때문에 크고, 그 옆의 박쥐는 작게 남습니다. Pixor는 프로젝트마다 배율 하나를 유지하므로, 몇 달 간격으로 만든 스프라이트끼리도 이 관계가 지켜집니다.
피벗은 발에 두세요. Pixor는 피벗을 한 픽셀에 고정하므로 착지, 웅크리기, 공격이 모두 바닥에 붙어 있습니다. 동작은 제자리에서 렌더링하고 캐릭터 이동은 게임에 맡기세요. 클립에 루트 모션이 있으면 액션의 인스펙터에서 제자리에 고정하세요.
애니메이션
모션 라이브러리의 대기, 걷기, 달리기, 점프, 공격, 피격, 사망은 어느 인간형 골격에서든 작동하며 기본 세트를 채웁니다. 새 동작은 여러분의 클립에서 옵니다. glTF나 FBX이며, 원하면 클립을 별도 파일로 둘 수 있습니다. 모델 이름을 딴 클립(hero@dash.glb)은 자동으로 찾고, 나머지는 “파일에서 클립…”으로 추가합니다.
빠른 동작에는 프레임이 적게 필요합니다. 에셋 그래프에서 스프라이트 노드는 포즈의 극점을 남길 수 있고(남길 프레임), 홀드 노드는 점프의 정점처럼 한 프레임을 더 오래 유지합니다. 애니메이션 타이밍을 참고하세요.
팔레트
맵의 지역마다 저마다 분위기가 있는 경우가 많습니다. 차가운 동굴, 불타는 대장간, 물에 잠긴 도서관. 지역마다 팔레트를 두면 지역이 구분되고, 주인공은 그대로입니다. 팔레트 변형은 같은 시트를 다른 팔레트로, 또는 피격 플래시로 쓸 수 있습니다. Pixor에는 팔레트 일곱 개가 내장되어 있고 .hex와 .gpl 파일을 읽습니다. 제한된 팔레트를 참고하세요.
어울리는 무료 라이브러리 에셋
- 적: 해골, 박쥐, 유령, 거미, 슬라임.
- 레벨 조각: 문, 레버, spike-trap, wall-torch, 석상.
- 업그레이드와 획득 아이템: power-orb, 하트, 열쇠, orb-pedestal.
Pixor에서 설정하기
질문
왜 32 대신 48~64 px인가요?
메트로배니아 주인공은 동작이 많고, 동작마다 알아보기 쉬운 포즈가 필요합니다. 키가 더 크면 무기, 망토, 대시 잔상을 넣을 여유가 생깁니다. 보스는 같은 배율에서 훨씬 더 클 수 있습니다.
서쪽 방향도 필요한가요?
대개는 필요 없습니다. 동쪽을 렌더링하고 엔진이 스프라이트를 뒤집게 하세요. 주인공이 한 손에 무언가를 들고 있어 뒤집은 모습이 어색하면 서쪽 카메라를 추가하세요.
개발 후반에 새 동작을 추가하려면 어떻게 하나요?
모델에 클립을 추가하고 액션 단계에서 고른 뒤 다시 내보내세요. 프로젝트는 기존 액션을 같은 픽셀로 내므로, 새 프레임이 시트의 나머지와 맞습니다.