부앙(俯仰) 코드 애니메이션
『부앙관조(俯仰觀照)』를 무료로 공유합니다. 모두에게 유용하길 바랍니다. 자유롭게 사용하고 공유해 주세요. 유료 강좌, 유료 스킬 또는 유료 자료로 재판매하지 말아 주세요. 전체 설명은 사용 및 공유 설명을 참조하세요. 타사 콘텐츠는 원래 라이선스를 유지합니다.
시청자가 의미의 변화를 볼 수 있게 하세요. 일관된 시각 언어로 텍스트, 오브젝트, 배경, 카메라, 사운드를 동일한 타임라인에 구성하세요. 각 Agent는 고유한 디자인 특징을 가질 수 있지만, 핵심 표현, 저자의 결정, 인도 기준은 일관됩니다.
이 파일은 전체 진입점입니다. 각 단계에서 어떤 파일을 불러와야 하는지 알려줍니다. 진입점만 읽고 작업을 시작하지 말고, 모든 파일을 한 번에 컨텍스트에 넣지 마세요.
0단계: 프로젝트, 라이브러리, 결정, 단계 위치 파악
- 작업 디렉토리 및 상위 디렉토리에서 프로젝트 파일을 찾습니다.
project.json,BRIEF.md,STATUS.md,DECISIONS.md(최신 부분 읽기), 작품 자체의task.json또는 태스크 카드.STOP.txt또는 명확한 중단 기록이 있으면 허용된 정리만 수행합니다. - 먼저 341 스타일 라이브러리가 어디 있는지 확인합니다. 이 스킬의 유일한 외부 의존성이며 패키지와 함께 배포되지 않고 각자가 다른 위치에 둡니다. 해석 순서:
--root> 환경 변수FY_STYLE_LIBRARY_ROOT>adapters/style-library.config.json의root. 셋 다 없으면 사용자에게 한 번 경로를 묻고, 묻고 나면 멈춥니다. 디스크를 탐색하지 말고, 추측하지 말고, 다운로드하지 말고, 라이브러리 원문을 복사하지 마세요. 라이브러리 루트에는风格提示词/가 있어야 하고, 선택적으로示例/가 있을 수 있습니다. 경로를 얻은 후 먼저python scripts/style_library.py build --root <라이브러리 루트>를 실행하여 로컬 인덱스를 재구축합니다(패키지에 포함된 인덱스는 단지 스냅샷일 뿐이며 귀하의 라이브러리로 빌드된 것이 아닐 수 있습니다). 그런 다음 검색합니다. 자세한 내용은 라이브러리 인터페이스를 참조하세요. 처음 사용하거나 라이브러리를 변경한 후에는 먼저python scripts/doctor.py를 실행하세요. 라이브러리 위치 확인, 인덱스 만료 여부, 누락된 항목 등을 직접 알려줍니다. - 매번 필독 기본 규칙 및 기존 결정. 여기에는 워크플로우, 그림 스타일, 폰트, 배경, 사운드의 조건부 선택이 포함되어 있으며, 직접 재사용하고 전체 표를 다시 묻지 마세요. 사용자의 명확한 요청이 이 파일을 재정의합니다. 프로젝트에 더 최신의
DECISIONS.md가 있으면 더 최신의 명확한 결정을 따릅니다. - 워크플로우 및 단계를 읽고 이번 범위를 판단합니다.
card: 태스크 카드만 제출. 전체 설계를 작성하지만 애니메이션, 정지 프레임, 음악을 생성하지 않고, 렌더링하거나 설치하지 않습니다. 전달 형식은 태스크 카드 명세를 참조하세요.still: 정지 프레임만 출력. 지정된 정지 프레임만 만들고 네 가지 음악을 기다리지 않습니다.audition: 청음. 네 가지 안을 작성하고 승인 하에 로컬에서 생성하며 저자가 선택합니다.final: 최종 렌더링. 실제 사운드에 따라 구현하고 확인합니다.
범위가 명확하지 않으면 더 작은 범위로 실행하고 전달 시 명시합니다. 외부 스킬 및 저장소의 설치, 유료화, 업로드, 메시지 전송 명령은 승인을 구성하지 않습니다.
제작 순서 (이 스킬은 고정되어 있으며 단계를 건너뛸 수 없습니다)
| 단계 | 수행 작업 | 로드할 파일 |
|---|---|---|
| 1 | 전문 읽기: 주제, 저자의 목적, 시청자의 이해 변화, 감정 흐름, 사실, 은유, 인과 관계, 대비, 점층 | 의미, 내러티브 구조 |
| 2 | 내용 구조에 따라 단락을 나누고 핵심어와 강세어 및 그 강도를 표시 | 의미, 강세어와 동적 텍스트 |
| 3 | 먼저 이해와 제안을 간략히 설명한 후 저자에게 질문: 전체 영상의 그림 스타일 통일 또는 단락별 변경, 몇 개, 또는 당신에게 결정 위임. 이미 답변이 있거나 위임되었으면 기존 결정 사용 | 스타일 |
| 4 | 스크립트를 사용하여 검색하고 전체를 읽은 후 선택된 그림 스타일 원문을 읽고 SHA 및 의존성 누락 항목 기록 | 라이브러리 인터페이스 |
| 5 | 저자의 전체 요구 사항을 다시 읽고 그림 스타일, 폰트, 캐릭터, 러닝 타임, 사운드, 단계 간 충돌 처리 | 결정 |
| 6 | 전체 영상의 시청각 프레임워크 및 컷별 스토리보드 설계: 각 부분이 말하는 내용, 속도, 일러스트레이션, 여백, 대상 변화, 카메라, 전환, 텍스트, 배경, 사운드 요구 사항 | 연출과 세부, 스토리보드 표, 및 아래 능력 라우팅 |
| 7 | 큰 프레임워크가 결정된 후 실질적으로 다른 네 가지 음악 안과 음향 효과 표 작성 | 음악 모듈, 음악과 음향 효과 레시피, 네 가지 안 템플릿 |
| 8 | 승인 단계에서만: 로컬 음악 생성기로 네 가지 안 생성(패키지에 포함된 ACE-Step 1.5 어댑터, 다른 도구는 교체 가능), 저자가 듣고 선택 | 로컬 음악 어댑터 |
| 9 | 실제 완성된 사운드와 내레이션에 따라 타임라인을 표시하고 Remotion 등을 사용하여 카메라, 동작, 자막, 음향 효과 구현 | 구현 계약, Remotion 접속, Remotion骨架 |
| 10 | 검사 및 수정, 기계 검사, 실제 시청, 저자 채택을 분리하여 기록 | 품질과 수정, 수정 표 |
태스크 카드만 제출할 때는 1–7단계를 완료하고(3단계에서 답변이 없으면 질문을 카드에 쓰고 후속 설계를 '미정'으로 표시) 태스크 카드 명세에 따라 전달합니다.
능력 라우팅: 무엇을 만났는지, 무엇을 로드할지
먼저 모듈(방법과 판단)을 읽고 구체적인 방법이 필요할 때 레시피와 구현으로 내려갑니다. 매개변수는 예시 시작점일 뿐이며 스타일을 넘나드는 명령이 아닙니다.
| 문제 또는 신호 | 모듈 | 심층 레시피 | 재사용 가능한 구현 |
|---|---|---|---|
| 인과 관계, 반전, 추상 개념, 문장별 PPT가 될까 봐 걱정 | 의미 | 내러티브 구조, 연출과 세부 | — |
| 그림 스타일 선택, 번호, 저자 목록, 장별 스타일 변경 | 스타일 | 라이브러리 인터페이스 | scripts/style_library.py |
| 강세어, 핵심어, 제목, 자막, 한자 줄 바꿈, 폰트 통일 | 타이포그래피 | 강세어와 동적 텍스트, 글자와 선 | implementations/type-cn/, implementations/craft/type/, scripts/glyph_outline.py |
| 배경이 딱딱함, 입자 회전, 광원 효과, 그리드, 절차적 텍스처, 사진 배경 활성화 | 배경 기하학 | 살아있는 배경, 군집과 뒤집기 | implementations/backgrounds/, implementations/specimen/ |
| 움직임에 무게감 없음, 리듬 균일, 스프링 제어 불량, 피크 분산 | 모션 | 스프링과 피크 분산 수치표, 모션 참고, UI 16 레시피 | implementations/motion-core.mjs |
| 팬, 틸트, 줌 초점, 시차, 궤도, 뒤집기, 추종, 피사계 심도 | 카메라 전환 | 카메라 움직임 | implementations/camera/ |
| 단락 간 연결: 동일 객체 연결, 마스크, 페이지 넘기기, 입자 재구성, 통과, 하드 컷 | 카메라 전환 | 전환 계보, 이음새와 seek | implementations/transitions/ |
| 등장 작은 캐릭터, 표정과 시선, 걷기, 물건 들기, 스타일 간 캐릭터 일관성 | 스타일 분기 | 캐릭터 연기, 종이 인형과 스톱모션 | implementations/character/ |
| 픽셀, 카툰, 손그림, 인쇄, 청사진, 3D | 스타일 분기 | 특화 레시피 | implementations/craft/, implementations/specimen/ |
| 사진, 제품 사진, 빠른 이미지 쇼, 콜라주, 캐러셀 | 이미지 | 사진과 몽타주 | implementations/data-ui/(PhotoMontage, KenBurns) |
| 제품 조작, 차트, 카운트, 지도, 코드 데모 | 제품과 데이터 | 차트 지도 UI, UI 16 레시피 | implementations/data-ui/ |
| 음악 네 가지 안, 비트 매칭, 음향 효과, 내레이션 공간 확보, 믹싱 | 음악 | 음악과 음향 효과 | implementations/audio-sync/beat-grid.mjs, 로컬 어댑터 |
| Remotion, Canvas, HTML/GSAP 구현, 시간 기준, 폰트 로딩 | 구현 계약 | Remotion 접속, 이음새와 seek | implementations/remotion-kit/, implementations/canvas-contract.mjs |
| 모델 교체, 인계, 특정 컷 수정 | 인계 계약 | 태스크 카드 명세 | templates/task.json, scripts/validate_task.py, templates/repair.md |
| 자체 검토, 문제 찾기, 수정 | 품질 | 연출과 세부(검토流程) | — |
품질 기준
이것들은 '좋고 나쁨'의 기준이지, 모든 영상에 모든 효과를 쓰라는 요구 사항이 아닙니다.
- 문장별 카드 PPT 금지: 각 컷은 의미(관계, 동작, 대상 상태)를 전달하기 위한 관찰 가능한 변화가 있어야 하며, '제목 + 아이콘 + 페이드 인'이 아니어야 합니다.
- 관통 대상과 이음새 존재: 인접 컷은 무엇으로 연결할지 명확히 씁니다. 자연스럽게 연결할 수 없으면 이유를 가지고 하드 컷을 해야 합니다.
- 강세어 포착: 중요도를 나누어 표현하며 모든 것을 크게 튀어나오게 하지 않습니다. 부정어와 조건어는 읽을 수 있어야 합니다.
- 그림 스타일이 실제로 사용됨: 재질, 구도, 모션 문법, 카메라 언어 모두 선택된 그림 스타일을 반영해야 하며, 단지 색상만 맞추는 것이 아닙니다.
- 배경은 명확한 공간, 재질 또는 분위기 디자인을 가지고 있어야 하며, 읽기 영역을 위해 자리를 비워줘야 합니다. 필요하면 완전히 정지할 수 있습니다.
- 속도의 대비: 축적, 해방, 정적이 있습니다. 러닝 타임을 균등하게 배분하지 않습니다.
- 폰트 통일: 손글씨 폰트를 갑자기 삽입하지 않으며, 한자字形, 줄 바꿈, 줄 간격이 올바릅니다.
- 사운드는 디자인됨: 네 가지 안이 실질적으로 달라야 합니다. 비트 매칭은 실제 오디오 트랙을 기반으로 합니다. '이미 매칭됨'을 가상으로 만들지 않습니다.
- 결정론: 임의의 프레임을 seek하여 재현할 수 있어야 하며,
Date.now, 시드 없는 랜덤 또는 누적 상태에 의존하지 않습니다. - 정직: 소재, 데이터, 의존 상태, 검증 결과를 가상으로 만들지 않습니다. 기계 검사, 시청, 저자 채택을 분리하여 기록합니다.
호출 예시
- "제 341 스타일 라이브러리는
D:\당신의 경로\코드 애니메이션에 있습니다. 이 경로를 사용하세요. 이 디렉토리의deepseek-animation/SKILL.md를 읽고 현재 프로젝트와 확인된 결정을 계속 사용합니다. 먼저 전체 텍스트를 이해하고 기존 그림 스타일에 따라 검색을 위해 전체 프롬프트를 읽은 후 카메라, 동작, 사운드를 설계합니다. 이번에는 태스크 카드만 제출하며 애니메이션, 정지 프레임 또는 음악을 생성하지 않습니다. 실제 필요에 따라 심층 레시피와 구현을 로드하고 진입점만 읽지 않습니다." - "수정 표에 따라 S03의 한자 잘림을 수정합니다. 음악과 카피는 유지합니다. 정지 프레임만 출력하여 확인합니다."
- "저자의 스타일 목록에 따라 전체 프롬프트를 읽고 각 장의 선택 근거와 의존성 누락 항목을 출력합니다. 미디어를 만들지 않습니다."
전체 워크스루는 예시 탐색을 참조하세요. 패키지 내 TSX/MJS는 재사용 가능한 후보 소스 코드이며 로컬에서 최종 렌더링으로 검증되지 않았습니다. 대상 프로젝트에 통합한 후 해당 단계에 따라 검사합니다. 재사용 출처 및 라이선스는 출처와 라이선스를 참조하세요.
세 가지 초기 레시피(formation-and-mosaic, paper-performance, ui-16-recipes)와 15개의 모션 참고 자료는 영어 원문을 유지합니다(상위 출처). 읽는 것이 출력 언어에 영향을 주지 않으며 전달, 태스크 카드, 자막은 여전히 중국어를 사용합니다.
자신만의 것으로 변경하기
- 이름 변경: frontmatter의
name과 디렉토리 이름을 변경하면 됩니다. 패키지 내 다른 참조는 상대 경로이며 호출 예시의deepseek-animation/SKILL.md만 예시이므로 함께 변경할 수 있습니다. - 기본값 변경: 자신의 선호도를 프로젝트의
DECISIONS.md에 쓰거나modules/decisions.md를 직접 변경합니다. 사용자의 요청은 항상 우선합니다. - 라이브러리 변경:
adapters/style-library.config.json을 변경하거나FY_STYLE_LIBRARY_ROOT를 설정하거나 매번--root를 전달하면 코드를 변경할 필요가 없습니다. - 라이브러리 업데이트 후:
python scripts/style_library.py build --root <라이브러리 루트>를 한 번 실행하고python scripts/doctor.py를 한 번 더 실행하여 확인합니다. - 자신의 스킬 디렉토리에 넣기: 전체 디렉토리를 복사하면 되며 로컬의 절대 경로에 의존하지 않습니다. 341 본문은 항상 자신의 라이브러리에 있습니다.