픽셀 퍼펙트 검사 · 배율·흐림·격자 어긋남 감지
이 스프라이트는 정말 3배 최근접일까요, 2.5배 이중선형일까요? 검사기는 색이 바뀌는 열과 행을 찾아 그것으로 블록 크기를 증명합니다. 표본 추출도 추측도 없습니다.

- PNG frames측정 확인· Pillow
- Palette측정 확인· re-import
- pixel-lab.json미검증
이렇게 작동합니다
- 색이 바뀌는 위치로 정확한 정수 배율과 오프셋을 찾습니다(격자가 어긋난 자르기도 찾음).
- 가장 짧은 연속 구간만으로 비정수 배율을 추정합니다(2.5배 최근접 확대는 2.500배로 읽음).
- 흐림 감지: 두 이웃 사이 색을 가진 가장자리 픽셀과 반투명 픽셀을 셉니다.
- 정확한 격자가 증명될 때만 1배 원본 복원, 1×~8× 정수 확대, 색 예산·실루엣 점검.
사용 방법
- 이미지를 끌어다 놓습니다.
- 보고서에서 배율·오프셋·흐린 가장자리를 읽습니다.
- 정확한 격자가 있으면 1배 원본을 복원하고, 아니면 정수 배율로 확대합니다.
- 내보냅니다.
출력 파일과 검증 방법
"측정 확인"은 내려받은 파일을 페이지 밖에서(Pillow·numpy·별도 파서) 다시 열어 그 속성을 측정했다는 뜻입니다. 게임 엔진에서 불러오는 것은 시험하지 않았습니다.
| 대상 | 파일 | 검증 |
|---|---|---|
| PNG frames | anim_N.png · 1×–8× nearest | 측정 확인 Pillow내보낸 PNG를 다시 읽어 모든 색이 고정 팔레트 안에 있는지 확인했습니다. |
| Palette | .gpl · .hex (Lospec) · .json | 측정 확인 re-import각 형식을 내보내고 UI로 다시 가져와 16 → 16색을 확인했습니다. |
| pixel-lab.json | generic frames + palette | 미검증일반 JSON이며 어떤 엔진에서도 불러오지 않았습니다. |
검증 근거
안티앨리어싱된 프레임 8개 → 16색 팔레트 하나, 팔레트 밖 색 0개. 디더링 없음과 Bayer 4×4 모두에서 변하지 않은 영역이 8프레임 모두 동일. 안티앨리어싱 제거로 271색 → 16색, 실루엣 픽셀 이동 0. 정수 배율·오프셋·2.5배 비정수 배율을 정확히 감지.
한계
- 4096 × 4096보다 큰 프레임은 거부합니다. 모든 처리가 메인 스레드에서 돌고 아직 취소 버튼이 없습니다.
- 스프라이트 시트는 이미지 하나로 다룹니다. 먼저 프레임으로 자르세요(스프라이트 시트 자르기).
- 디더링을 켜면 정리 개수에 디더 픽셀이 포함됩니다. 먼저 디더링을 없음으로 두세요.
- 내보내는 JSON은 일반 형식이며 Godot·Unity 가져오기는 시험하지 않았습니다.
자주 묻는 질문
"확신 없음"이라고 나오는 이유는?
한 색뿐인 이미지나 한 축으로만 바뀌는 이미지는 잴 격자가 없습니다. 추측하지 않고 그렇게 알려 줍니다.
흐리게(이중선형) 확대된 그림을 고칠 수 있나요?
측정은 합니다. 시험 스프라이트에서 가장자리 픽셀 1243개(86.3%)가 중간 색이었습니다. 하지만 정확한 복원은 깨끗한 블록 격자가 있을 때만 제공합니다.
무료인가요? 계정이 필요한가요?
이 페이지의 기능은 모두 무료이며 계정 없이 쓸 수 있습니다. 워터마크나 막혀 있는 내보내기가 없습니다.
스프라이트가 업로드되나요?
아니요. Studio는 이 브라우저 탭 안에서 디코딩·패킹·내보내기를 합니다. 프로젝트는 브라우저(IndexedDB)에 자동 저장되며 .nerulio 파일로 저장할 수 있습니다.
Aseprite나 엔진 플러그인을 설치해야 하나요?
아니요. .aseprite 파일은 브라우저에서 읽고 씁니다. 엔진별 번들에는 그 엔진에 필요한 것이 들어 있습니다(Godot는 가져오기 설정과 씬, Unity와 Godot 타일셋은 작은 편집기 스크립트).