Spine 애니메이션은(는) 무엇을 하나요?
자체 이미지 이해 능력을 활용하여 부위와 동작을 계획하세요. 번들된 로컬 런타임이 투명한 전체 이미지를 리깅하거나 파트를 분할하고, 키프레임을 추가하며, 자산을 내보내고 미리보기를 제공합니다. 로컬 런타임은 별도의 모델 API를 호출하거나 API 키가 필요하지 않습니다. 아트워크 완성(필요 시)은 호스트의 이미지 생성/편집 도구를 사용합니다.
환경 사전 점검 — 먼저 실행
이 스킬의 디렉토리를 SKILL.md 위치에서 확인하세요. 절대 경로로 런처를 실행하세요. 현재 디렉토리가 다른 프로젝트여도 작동합니다:
node --version
node /absolute/path/to/spine-animation/scripts/spine.mjs doctor \
--segmentation mesh --output /absolute/path/output --preview
prepare, validate, build를 실행하거나 미리보기를 시작하기 전에:
- Node.js 20.9+를 확인하세요.
node가 없거나 이전 버전이면, 스킬을 실행하기 전에 환경의 패키지/버전 관리자를 사용하여 호환 가능한 Node를 준비하세요. 스킬은 컴파일된 JavaScript를 번들로 제공하며, Node 실행 파일 자체는 아닙니다. - 사용자의 실제 출력 디렉토리로
doctor를 실행하세요. 초기 종속성 확인을 위해mesh를 사용하세요. 이는 애니메이션의 리깅 전략을 선택하는 것이 아닙니다. 사용자가 명시적으로 워크벤치를 건너뛰지 않는 한--preview를 추가하세요. 편집 가능한.spine파일이 필요한 경우에만--editable/--spine-cli를 추가하세요. 해당 백엔드를 명시적으로 사용하기 전에--segmentation mobilesam또는sam3으로 다시 확인하세요. 이 확인은 추론을 위해 가중치를 로드하지 않고 Python 임포트만 확인합니다. 누락된 선택적 모델은 메시/폴리곤 워크플로를 차단하지 않습니다. result.ready,checks[].required,repairs를 읽으세요. 사용자의 기존 권한 내에서 현재 작업에 필요한 누락된 요구 사항만 복구한 후, 동일한 확인을 다시 실행하세요.repairs는command와args로 명령을 제공합니다. 경로를 인수로 유지하세요. 설치된 패키지 종속성 복구는 스킬 디렉토리에서 pnpm을 사용합니다. 소스 체크아웃은 자체 종속성 설치를 사용합니다. 각 생성 명령은 필요한 확인이 통과된 후에만 시작하세요. 독립적인 계획/준비는 차단 요소가 해결되는 동안 계속될 수 있습니다. 요청된 백엔드나 최종 형식을 자동으로 대체하지 마세요. 복구가 네트워크/액세스로 인해 차단되거나 실패하면, 반복적으로 재설치하거나 준비되었다고 주장하지 말고 특정 차단 요소를 보고하세요. SAM 3가 사용 불가능한 선택적 기능으로 나열되었다고 해서 설치하지 마세요.
부트스트랩 doctor는 Node 내장 기능을 사용하며, 애플리케이션이 임포트하기 전에 Sharp/Express의 누락/손상을 보고할 수 있습니다. 런타임 파일, 네이티브 이미지 인코딩, 패키지 관리자, 요청된 출력 디렉토리의 쓰기 가능 여부, 선택적 기능을 확인합니다. 패키지나 모델을 설치하지 않습니다. 누락된 종속성을 복구하려면 pnpm이 필요합니다. 이미 설치된 런타임은 PATH에 pnpm 없이 실행될 수 있습니다.
미리보기 리소스 준비 상태는 에이전트가 브라우저/컴퓨터 도구를 가지고 있음을 증명하지 않습니다. 설치된 스킬은 사전 빌드된 정적 웹 자산을 제공합니다. React/Vite는 프론트엔드를 소스에서 개발하거나 재빌드할 때만 필요합니다.
자동 페이지 열기 또는 스크린샷이 요청될 때 호스트의 사용 가능한 도구를 확인하고, 시각적 확인은 별도로 보고하세요. 사용자가 선택한 출력 디렉토리를 유지하세요. 기본값은 현재 작업 디렉토리의 ./output입니다. stdout은 JSON, 진행 상황은 stderr로 출력되며, 필수 확인이 실패하면 0이 아닌 종료 코드를 반환합니다.
작업 시작 시 워크벤치 열기
애니메이션 제작 요청마다 기본 사전 점검이 통과되는 대로, 대상 선택 질문, 아트워크 생성, 계획 또는 모델 설정 전에 워크벤치를 시작하거나 재사용하세요. 사용자의 출력 폴더를 사용하세요(그렇지 않으면 호출 작업 디렉토리의 ./output). 빈 출력 폴더도 지원됩니다:
node /absolute/path/to/spine-animation/scripts/spine.mjs preview \
--output /absolute/path/output
반환된 result.url을 즉시 클릭 가능한 링크로 보내세요. Codex 데스크톱에서는 사용 가능한 open_in_codex 도구를 사용하여 현재 채팅의 오른쪽 패널에서 엽니다. 도구 인수, 탭 재사용, 대체 방법은 references/workbench-start.md를 참조하세요. 워크벤치를 열기 위해 완성된 애니메이션이나 선택된 내보내기 대상이 필요하지 않습니다.
서비스와 페이지를 제작 및 인간 검토 중에 계속 사용 가능하게 유지하세요. 각 빌드 완료 후, 기존 워크벤치를 반환된 previewUrl로 이동/새로고침하거나, 호스트가 이를 자동화할 수 없는 경우 사용자에게 새 프로젝트를 선택하고 새로고침을 클릭하도록 안내하세요. 웹페이지를 건너뛰라는 명시적 요청은 존중하세요.
애니메이션 만들기
-
워크벤치 링크가 이미 제공된 상태에서, 대화에서 소스 이미지, 요청된 모션, 내보내기 대상 및 출력 폴더를 식별하세요. 사용자가 내보내기 대상을 선택하지 않은 경우, 기본/권장 옵션으로 유니티(
unity), 코코스 크리에이터 3.8 및 기타 지원 대상을 제안하세요. 빌드 또는 내보내기 전에 사용자의 선택을 기다리세요. 사전 선택된 기본값이나 침묵은 선택으로 간주되지 않습니다. 기본값 사용 지시를 포함하여 기존의 명시적 선택을 다시 묻지 않고 재사용하세요. 옵션 및 버전 호환성은 references/export-targets.md를 참조하세요. 기다리는 동안 독립적인 환경 확인, 이미지 준비 및 계획을 계속할 수 있습니다. 제공된 이미지와 자산을 재사용하세요. 캐릭터 설명만 제공된 경우, 사용자가 아트워크 생성을 요청했다면 사용 가능한 이미지 생성 도구를 사용하고, 그렇지 않으면 소스 이미지를 획득하세요. -
아트워크를 생성하거나 준비하기 전에 references/image-size.md를 적용하세요. 기본값은 긴 쪽 512px, 작업 PNG는 512KiB입니다. 가능한 가장 작은 적절한 생성 크기를 요청한 다음
prepare를 사용하여 실제 픽셀/바이트 예산을 원본을 변경하지 않고 적용하세요:node /absolute/path/to/spine-animation/scripts/spine.mjs prepare \ --image /absolute/path/character.png --workdir /absolute/path/plans/character \ --max-edge 512 --max-bytes 524288 \ --prompt "2초 무표정, 작은 머리와 팔 흔들기, 깜빡임" -
반환된
sourceImage를 이미지 보기 기능으로 검사하세요. 좌표 및 키프레임 형식은 references/plans.md를 참조하세요. 반환된imageSize를 좌표 기준으로 사용하고imageBudget을 기록하세요. 축소 후에도 눈, 손가락, 얇은 윤곽선이 읽을 수 있는지 확인하세요. 독립적으로 움직이는 관절의 주요 포즈와 조인트를 정의한 다음, references/artwork-completion.md를 사용하여 리깅을 선택하세요. 전체 이미지mesh는 기존 픽셀로 지원되는 작고 일관된 무표정 모션에 적합합니다. 관절이 있는 팔다리 움직임, 큰 관절 회전 또는 겹침 변화에는 관절 오버랩과 숨겨진 영역이 채워진 별도의 컷/완성 레이어를 사용하세요. 손, 얼굴 또는 원근감 변화에 다른 아트워크가 필요한 경우 대체 첨부물/포즈를 사용하고 필요에 따라 이러한 방법을 결합하세요. 펀치, 걷기 또는 춤을 위해 이음새를 피하기 위해 전체 이미지 무표정 리깅을 재사용하거나 요청된 동작을 해당 리깅에 맞추기 위해 축소하지 마세요. 선택 사항과 필요한 움직이는 부위를quality-review.json의rigDecision으로 기록하세요. 키프레임에 투자하기 전에 활성 빌드 경로가 자산을 소비하고 필요한 포즈를 수행할 수 있는지 확인하세요. 지원되는 경우 누락된 아트워크를 완성하고 검사하세요. 누락된 기능이나 수정된 범위는 종속적인 제작을 계속하기 전에 사용자와 해결하세요.analysis.json과motion.json을 직접 작성하세요. 사용자에게 이 파일들을 작성하도록 요청하지 마세요. 상대적인 움직임이 필요한 관절과 시각적 레이어링에 필요한 경계에서 분할하세요. 고정된 영역에서 불필요한 절단은 피하세요. 기존 소스를 자르려면auto/mobilesam/sam3/polygon을 사용하세요.auto는 설치된 마스크 백엔드를 선택하며, 리깅 전략이 아닙니다. 더러운 가장자리, SAM 요청 또는 새로운 투명 아트워크의 경우 경로를 선택하기 전에 references/cutouts.md를 읽으세요. -
검토 후보를 검증하고 빌드하세요. 첫 번째 빌드 전에 references/human-review.md를 읽어 후보에 인간 품질 검토에 필요한 증거가 포함되도록 하세요. 아래 예제는
polygon으로 파트를 자릅니다. 실제 작업에 선택된 백엔드를 사용하세요. 전체 이미지 전략에는mesh를 사용하거나, 표준build가 필요한 포즈를 수행할 수 없을 때 테스트된 레이어/포즈 통합 경로를 사용하세요:node /absolute/path/to/spine-animation/scripts/spine.mjs validate \ --image /absolute/path/plans/character/source.png \ --analysis /absolute/path/plans/character/analysis.json \ --motion /absolute/path/plans/character/motion.json node /absolute/path/to/spine-animation/scripts/spine.mjs build \ --image /absolute/path/plans/character/source.png \ --analysis /absolute/path/plans/character/analysis.json \ --motion /absolute/path/plans/character/motion.json \ --project character-motion --output /absolute/path/output \ --target unity --segmentation polygon --background transparent --blink --preview항상 사용자가 선택한 ID를
--target과 함께 전달하세요. 위 예제는 유니티가 선택되었다고 가정합니다. 깜빡임이 요청되고 캐릭터가 명확하고 정면을 향한 어두운 눈을 가진 경우에만--blink를 추가하세요. 기본 무표정을 사용하려면--motion을 생략하세요. 안정적인 자산 이름을 위해--name을 사용하세요. 이전에 생성된 작업을 반복할 때는--replace를 사용하세요. 다른 프로젝트와 소스는 분리된 상태로 유지됩니다. -
이미 열려 있는 워크벤치를 반환된
previewUrl로 업데이트하고, 지원되는 경우 해당 탭을 재사용하세요. 원본 이미지를 정지 상태와 가장 큰 움직임에서 애니메이션과 비교하고, 깜빡임이 요청된 경우 닫힌 눈 프레임을 검사하세요. 구체적인 결함이 보이면 계획을 조정하고 다시 빌드하세요. 또한 요청된 동작을 주요 포즈와 확인하세요. 펀치는 읽을 수 있는 타격과 회복, 적절한 손 모양과 신체 역학이 필요합니다. 이미지/동작 자체 확인을 파일 검증과 별도로 기록하세요. 결과를 승인하기 전에 아래 인간 확인 지점을 완료하세요. 요청된 열린 페이지를 보존하세요.
인간 품질 확인 지점
애니메이션 제작 중 세 가지 확인 지점을 사용하세요:
| 확인 지점 | 인간 검토 |
|---|---|
| 재료 및 리깅 | 리깅 전략, 실제 컷/완성된 부품 또는 전체 이미지 텍스처, 관절 오버랩, 정지/극한 포즈 |
| 모션 | 재생 가능한 애니메이션, 극한 포즈, 루프 이음새, 요청 시 눈 닫힘/열림 |
| 전달 | 검토된 리비전의 대상 형식, 실제 파일, 해결되지 않은 제한 사항 |
품질 확인 지점을 넘어가기 전에 명시적인 인간 승인을 기다리세요. 검토 증거를 생성하기 위해 초안 빌드 및 내보내기는 허용됩니다. 먼저 에이전트가 식별할 수 있는 결함을 수정한 다음 실제 이미지/미리보기를 보여주고 대상 피드백을 요청하세요. 성공적인 빌드나 에이전트의 자체 시각적 확인은 인간 승인으로 간주되지 않습니다.
체크리스트, 검토 기록 및 추가 검토가 필요한 변경 사항은 references/human-review.md를 참조하세요. 증거가 준비되었을 때 확인 지점을 함께 제시하고, 변경되지 않은 아티팩트에 대한 명시적 승인을 재사용하세요. 확인 지점을 건너뛰거나 완화하라는 사용자의 명시적 지시는 존중하고, 해당 지점을 승인된 것이 아닌 면제된 것으로 기록하세요.
품질 및 결과물
- 영어 부위 식별자를 사용하세요.
parent는 모션 상속을 설명하고depth는 그리기 순서를 설명합니다. 함께 움직이는 팔다리와 그 물체를 유지하세요. - 리깅을 요청된 동작에 맞추세요. 관절로 연결된 부위를 적절한 피벗, 겹치는 완전한 아트워크 및 조정된 가중치를 통해 연결된 상태로 유지하세요. 필요할 때 개별 레이어 내에서 로컬 메시 변형을 사용하세요. 움직이는 팔다리가 실제로 독립적으로 관절을 움직이는지 확인하세요. 누락된 아트워크나 표준 빌드의 모션 제한은 더 작은 대체 제스처보다는 호환 가능한 아트워크/통합 경로 또는 합의된 범위 변경이 필요합니다.
- 투명한 전체 이미지에도 뼈 영역과 피벗이 필요합니다. 전체 이미지 메시는 일관된 변형을 지원합니다. 부위별 불투명도와 독립적으로 변화하는 폐색은 별도의 레이어가 필요합니다. 보이지 않는 아트워크를 약속하지 마세요.
build는 SAM/Python 환경을 다운로드하거나 이미지 생성 API를 호출하지 않습니다.doctor는 선택적 로컬 MobileSAM/SAM 3 가용성을 보고합니다.auto는 설치된 백엔드를 사용하고 실제 폴리곤 대체를 보고합니다. 명시적 SAM 모드는 사용 불가능할 때 실패합니다. 사용자의 범위와 리소스 제약 조건에 로컬 모델 설치가 적합한 경우에만 요청된 SAM 작업의 일부로sam-setup을 사용하세요.- 새로 요청된 아트워크의 경우 생성기의 실제 투명 배경 옵션을 선호한 다음
inspect또는prepare --background transparent로 알파를 확인하세요. RGB에 칠해진 체커보드는 투명도가 아닙니다. 새 자산에는 그린 스크린 배경을 피하세요. 기존 RGBA는 여전히 매트 색상의 가장자리를 가질 수 있습니다. 빌드는 알파를 검사하고 식별 가능한 컬러 스필을 보수적으로 복구합니다. - 일반 작업 이미지는 512px / 512KiB 이내로 유지하세요. 명시적인 사용자 크기 요구 사항이나 구체적인 디테일 필요에 대해서만 더 큰 예산을 사용하고 이유를 기록하세요. 최종 아틀라스 크기/바이트를 확인하고, 예산이 초과되면 내보낸 텍스처를 단독으로 크기 조정하지 말고 예산이 맞는 소스에서 다시 빌드하세요.
- 빌드의
warnings를 검사하세요. 건너뛴 깜빡임이나 사용 불가능한 편집 가능한 프로젝트가 생성되었다고 주장하지 마세요. 표준 결과물은 동일한 이름의.json,.atlas,.png입니다. 편집 가능한.spine파일은 추가로 설치된 Spine 편집기와--editable(또는--spine-cli /path/to/editor)이 필요합니다. 해당되는 경우 이 제한 사항을 보고하세요. - 미리보기 링크, 아티팩트 폴더 또는 파일, 애니메이션 및 확인된 내용(인간 검토 상태 포함)을 반환하세요. 보류 중이거나 거부된 작업은 검토 후보로 남습니다. 밝은 배경과 어두운 배경 미리보기 모두에 대해 가장자리를 검사하세요. 브라우저를 사용할 수 없는 경우 시각적 확인이 불완전하다고 보고하고 인간이 사용 가능한 미리보기 또는 이미지를 검사하도록 하세요.
미리보기 서버는 정적 웹 자산을 제공합니다. 작업이 끝나면 서비스를 중지하지 마십시오.