개요
펫은 애니메이션 스프라이트, 즉 프레임을 순환하며 살아 움직이는 작은 캐릭터입니다. 제출하면 커뮤니티 펫 갤러리에 소개되어 모두가 사용하고 즐길 수 있습니다.
펫을 제출하는 방법은 두 가지입니다. 가장 빠른 방법은 Petdex를 이용하는 것으로, URL 하나만 붙여 넣으면 됩니다. 다른 방법은 GitHub를 이용하는 것으로, 직접 호스팅하는 스프라이트 시트와 sprite.json을 제출합니다. 기존 Petdex 펫을 제출할 수도 있고, 나만의 오리지널 펫을 만들 수도 있습니다.
두 방법 모두 PicoPixel 앱 안에서 이루어지므로 먼저 로그인해야 합니다.
시작하기 전에
모든 과정은 PicoPixel 앱 안에서 진행됩니다. 제출 화면으로 가려면:
- app.picopixel.io에서 앱을 엽니다.
- 아직 로그인하지 않았다면 로그인합니다. Google 또는 GitHub 계정으로 로그인할 수 있습니다. 로그인하지 않으면 제출 전에 안내가 표시됩니다.
- 왼쪽 사이드바 아래쪽의 계정을 클릭합니다.
- "Your account"를 선택합니다.
- "Submit Sprite"를 엽니다.
Submit Sprite 화면에는 아래의 두 가지 방법이 제공됩니다.
무엇이든 제출하려면 로그인해야 합니다. 로그인하지 않은 경우 계속하기 전에 앱이 안내합니다.
Petdex로 제출하기
권장되는 가장 빠른 방법입니다. Petdex는 petdex.crafter.run에 있는 외부 펫 디렉터리로, 펫을 둘러보고 만들고 호스팅할 수 있습니다. 모든 펫에는 https://petdex.crafter.run/pets/<pet-id> 형태의 공유 URL이 있습니다.
제출 방법:
- Petdex에서 펫을 찾거나 만들고 URL을 복사합니다.
- Submit Sprite 화면에서 "Submit via Petdex"를 선택합니다.
- "Petdex URL" 필드에 펫 URL을 붙여 넣습니다.
- 선택 사항인 "Notes" 필드에 도움이 되는 내용을 추가합니다.
- 보냅니다.
Petdex 제출에는 RECOMMENDED(권장)와 FASTEST(가장 빠름) 표시가 있습니다. URL 하나만 입력하면 되므로 가장 간편합니다.
GitHub로 제출하기
스프라이트를 직접 호스팅할 때 사용하는 방법입니다. Petdex 링크 대신 원본 파일을 제공합니다.
- 스프라이트 시트 이미지와 그에 맞는
sprite.json을 공개 GitHub 저장소에 넣습니다. - Submit Sprite 화면에서 "Submit via GitHub"를 선택합니다.
- 저장소 URL(
https://github.com/...)을 붙여 넣습니다. - "Credits / Author"에 제작자 정보를 입력합니다.
- 선택 사항인 "Notes" 필드에 유용한 내용을 추가한 뒤 보냅니다.
스프라이트 시트와 sprite.json은 특정 형식을 따라야 합니다. 다음 섹션에서 설명합니다.
나만의 나만의 펫 만들기
기존 Petdex 펫을 사용하는 대신 직접 펫을 만들어도 됩니다. OpenAI Codex나 AI 이미지 생성기를 활용하면 나만의 캐릭터 스프라이트 시트를 만들 수 있습니다.
스프라이트 시트는 균일한 그리드로 배치된 하나의 이미지(PNG 또는 WebP)이며 "atlas"라고도 합니다. 한 행에 하나의 애니메이션을 배치하고, 모든 프레임 크기를 동일하게 유지하세요.
모든 프레임은 정확히 같은 너비와 높이를 가져야 합니다. 셀 크기가 맞지 않는 그리드는 깔끔하게 잘리지 않으며, 애니메이션이 튀거나 깨집니다.
sprite.json은 스프라이트 시트의 구성을 설명합니다. 크게 두 부분이 있습니다.
- atlas, 그리드 레이아웃:
columns,rows,frameWidth,frameHeight. - states, 애니메이션 목록입니다. 각 상태에는
id,label, 위치한row,frames수, 선택 사항인durationMs,group,caption이 있습니다.
일반적인 상태에는 idle, wave, jump, run-right, run-left, running, waiting, failed, review가 있습니다. 스프라이트에는 최소 두 개의 상태가 필요하므로 최소한 idle과 하나의 동작을 생성하세요.
먼저 모든 프레임을 같은 크기로 만들고, 각 애니메이션을 한 행씩 규칙적인 그리드에 배치하세요. 그런 다음 sprite.json에 그리드와 상태 정보를 적고 Petdex나 GitHub로 제출하면 됩니다.
스프라이트의 개념, 상태, 모드, 재사용은 LVGL 스프라이트에서 더 자세히 설명합니다.
제출 후 처리 과정
제출하면 PicoPixel 팀이 펫을 검토하고, 필요한 경우 추가 확인을 요청할 수 있습니다. 승인된 펫은 펫 갤러리에 표시되며 제작자 정보가 함께 표시됩니다. 이후 커뮤니티 누구나 제출한 펫을 찾아 사용할 수 있습니다.
다음 단계
- LVGL 스프라이트, 스프라이트 상태와 프레임이 작동하는 방식.
- 이벤트 에디터, 디자인에 인터랙션 추가하기.
- 템플릿 제출 방법, 다른 사람이 시작점으로 사용할 PicoPixel 디자인 공유하기.
- 콘텐츠 신고 방법, 규칙을 어기는 펫 또는 템플릿 신고하기.
- 펫 갤러리, 커뮤니티 펫 둘러보기.