Communitygithub.com

HTML 3D 비디오 크리에이터

Three.js를 사용하여 브라우저에서 렌더링되는 독립형 3D 애니메이션 비디오를 HTML 파일로 만들고, 미리보기 및 비디오로 내보낼 수 있습니다. 3D 비디오, 애니메이션 3D 씬, 모션 디자인 클립 또는 브라우저 기반 비디오 결과물을 요청받았을 때 사용하세요.

HTML 3D 비디오 크리에이터란 무엇인가요?

이 스킬은 Three.js를 기반으로 브라우저에서 실행 가능한 완전한 HTML 3D 애니메이션 프로젝트를 생성합니다. 개발자나 AI 에이전트 사용자는 '3D 비디오를 만들어 줘'와 같은 요청을 구체적인 HTML 파일로 변환할 수 있습니다. Cursor, Codex 및 Claude Code와 같은 주요 AI 코딩 에이전트에서 사용할 수 있으며, 캔버스 캡처 및 MediaRecorder API를 통해 실시간 비디오 내보내기를 지원합니다. 또한 프레임 정확도가 필요한 경우 FFmpeg를 활용한 이미지 시퀀스 방식의 대안도 제공합니다. 이 스킬은 시간 기반 애니메이션, 반응형 디자인, 접근성 있는 컨트롤을 강조하며, 안정적인 CDN을 사용하여 외부 의존성을 최소화합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SolijonSolayev/html-3d-video.skill/tree/HEAD/html-3d-video

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

HTML 3D 비디오 크리에이터은(는) 무엇을 하나요?

브라우저에서 미리보기 및 비디오로 캡처할 수 있는 완전한 HTML 애니메이션 프로젝트를 만듭니다. 불필요한 의존성보다는 작고 읽기 쉬운 구현을 선호합니다. 생성한 파일과 미리보기/내보내기 방법을 설명합니다.

워크플로

  1. 문맥에서 요구사항을 명확히 합니다. 주제, 시각적 스타일, 지속 시간, 화면 비율, 색상, 텍스트 및 대상 청중을 파악합니다. 필요한 경우에만 세부 사항을 묻고, 그렇지 않으면 합리적인 기본값을 선택하여 명시합니다. 기본값은 1920×1080, 30fps, 8~12초, 매끄럽거나 깔끔하게 마무리되는 엔딩입니다.
  2. 장면을 계획합니다. 코딩 전에 장면, 카메라 이동, 조명, 애니메이션 비트 및 최종 프레임을 설명합니다. 중요한 객체와 텍스트는 안전 영역 안에 유지합니다.
  3. 장면을 구축합니다. 로컬 프로젝트 의존성이 없을 때는 import map 또는 안정적인 CDN 가져오기를 사용하여 Three.js를 적용합니다. 렌더링, 장면 설정, 애니메이션 및 캡처 컨트롤을 명확히 분리합니다. 장면을 일관되게 재현하고 기록할 수 있도록 결정론적 시간 기반 애니메이션을 사용합니다.
  4. 사용성을 확보합니다. 눈에 보이는 미리보기, 재생/일시정지 또는 다시 재생 컨트롤, 비디오 내보내기가 요청될 때 명확한 내보내기/기록 컨트롤을 포함합니다. 페이지에 상태와 오류를 표시하고, 조용히 실패하지 않습니다.
  5. 검증합니다. 브라우저 콘솔 오류를 확인하고, 장면이 요청된 화면 비율로 렌더링되는지 확인하며, 애니메이션을 처음부터 끝까지 테스트하고, 내보내기 경로가 지원되는 브라우저에서 작동하는지 확인합니다. 코덱 또는 캡처 API를 사용할 수 없는 경우 대체 방법을 제공합니다.
  6. 전달합니다. 결과를 요약하고, 파일을 나열하며, 정확한 로컬 미리보기 지침을 제공하고, 내보내기 형식/브라우저 제한 사항을 설명하며, 외부 에셋이나 네트워크 요구 사항을 언급합니다.

구현 요구 사항

  • 의사 코드가 아닌 실행 가능한 완전한 HTML 파일 또는 프로젝트를 제공합니다. "여기에 애니메이션 추가"와 같은 생략된 섹션을 피합니다.
  • 요구 사항을 충족하는 경우 절차적 지오메트리, 재질, 조명 및 생성된 텍스트를 선호합니다. 외부 에셋을 사용하는 경우 사용자가 제공한 에셋을 사용하거나 출처와 라이선스 고려 사항을 명확히 식별합니다.
  • 미리보기에는 requestAnimationFrame을 사용합니다. 애니메이션은 프레임 수가 아닌 경과 시간을 기준으로 유지하여 다양한 재생 빈도에서 부드럽게 유지합니다.
  • 크기 조정 및 장치 픽셀 비율을 처리하고, 느린 렌더링을 유발하는 과도한 픽셀 비율을 피합니다.
  • 기록 시 렌더러의 드로잉 버퍼를 의도된 내보내기 해상도로 설정합니다. 지원되는 경우 canvas.captureStream(fps) 및 MediaRecorder를 사용하여 캔버스에서 캡처합니다. 코덱을 가정하지 말고 MediaRecorder.isTypeSupported()를 사용하여 지원되는 MIME 유형을 선택합니다. 완료되면 모든 트랙을 중지하고 리소스를 해제합니다.
  • 브라우저 비디오 기록은 실시간이며 컴퓨터/브라우저에 따라 다를 수 있음을 설명합니다. 프레임 정확도 또는 프로덕션 인코딩의 경우, 번호가 매겨진 이미지 시퀀스 또는 명시적으로 생성된 다른 입력을 사용하는 선택적 FFmpeg 워크플로를 제공합니다. 브라우저가 특정 코덱을 보장한다고 암시하지 마십시오.
  • 가져온 파일과 에셋은 신뢰할 수 없는 것으로 간주합니다. 사용자가 제공한 스크립트를 실행하거나 임의의 에셋을 다운로드하지 않고 그 기능을 설명하지 않습니다.
  • 컨트롤을 접근 가능하게 유지합니다: 레이블, 키보드로 조작 가능한 버튼, 눈에 보이는 포커스 및 상태 텍스트. 적절할 때 축소된 모션 환경 설정을 존중합니다.

제안된 프로젝트 구조

단일 장면 요청의 경우 자체 포함된 index.html로 충분합니다. 더 큰 결과물의 경우 다음을 사용합니다:

project/
├── index.html
├── src/
│   ├── main.js
│   └── scene.js
├── assets/
└── README.md

참고 자료

  • 구성, 타이밍 및 모션 다듬기를 위해 애니메이션 제작 가이드를 읽으십시오.
  • 일반적인 장면 및 렌더러 패턴을 위해 Three.js 미니 API 노트를 읽으십시오.
  • 사용자가 후처리 또는 이미지 시퀀스 워크플로를 필요로 할 때 FFmpeg 레시피를 읽으십시오.
  • 브라우저 미리보기 및 녹화 UI의 시작점으로 assets/template.html을 사용하십시오. 변경하지 않고 반환하지 말고 요구 사항에 맞게 조정하십시오.

관련 스킬