Communitygithub.com

SolijonSolayev/html-3d-video

Crie vídeos 3D animados e polidos como HTML renderizado no navegador usando Three.js, com pré-visualização e exportação para vídeo. Use quando for solicitado a criar um vídeo 3D, cena 3D animada, clipe de motion design ou entrega em vídeo baseada em navegador.

O que é html-3d-video?

Esta skill permite que agentes de IA criem animações 3D completas e auto-contidas como arquivos HTML renderizados no navegador usando a biblioteca Three.js. Ela é ideal para desenvolvedores e designers que precisam gerar rapidamente clipes 3D animados, vídeos promocionais ou demonstrações de produtos sem depender de software de edição pesado. A skill suporta qualquer ambiente que possa executar HTML, incluindo Claude Code, Cursor ou Codex, e fornece um fluxo de trabalho claro: esclarecer o briefing, planejar a cena, construir com Three.js (usando CDN ou mapas de importação), adicionar controles de pré-visualização e reprodução, e exportar usando MediaRecorder para captura de vídeo no navegador. Ela enfatiza animação baseada em tempo determinístico, tratamento de redimensionamento e proporção de pixels, e inclui fallbacks para codecs ou APIs de captura não suportadas. Para produção frame a frame, também oferece um fluxo opcional com FFmpeg. A skill prioriza implementações pequenas e legíveis, com geometria procedural e materiais, evitando dependências desnecessárias, e mantém os controles acessíveis e informativos.

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

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Criador de Vídeo 3D em HTML

Crie um projeto de animação HTML completo que pode ser pré-visualizado em um navegador e capturado como vídeo. Prefira uma implementação pequena e legível em vez de dependências desnecessárias. Explique quais arquivos você criou e como pré-visualizá-los/exportá-los.

Fluxo de trabalho

  1. Esclareça o briefing a partir do contexto. Identifique o assunto, estilo visual, duração, proporção, cores, texto e público-alvo. Pergunte apenas os detalhes necessários; caso contrário, escolha padrões sensíveis e mencione-os. Padrão: 1920×1080, 30 qps, 8–12 segundos e um final contínuo ou bem resolvido.
  2. Planeje a cena. Descreva a cena, movimento da câmera, iluminação, batidas de animação e quadro final antes de codificar. Mantenha objetos importantes e texto dentro da área segura.
  3. Construa a cena. Use Three.js com um mapa de importação ou um CDN estável quando não houver dependências de projeto local. Mantenha renderização, configuração de cena, animação e controles de captura claramente separados. Use animação baseada em tempo determinístico para que a cena possa ser reproduzida e gravada de forma consistente.
  4. Torne utilizável. Inclua uma pré-visualização visível, controles de reprodução/pausa ou repetição, e um controle claro de exportação/gravação quando a exportação de vídeo for solicitada. Mostre status e erros na página; não falhe silenciosamente.
  5. Valide. Verifique erros no console do navegador, confirme que a cena renderiza na proporção solicitada, teste a animação do início ao fim e verifique se o caminho de exportação funciona em um navegador compatível. Forneça uma alternativa quando um codec ou API de captura estiver indisponível.
  6. Entregue. Resuma o resultado, liste os arquivos, forneça instruções exatas de pré-visualização local, explique o formato de exportação/limitações do navegador e mencione quaisquer ativos externos ou requisitos de rede.

Requisitos de implementação

  • Entregue um arquivo HTML completo e executável ou projeto, não pseudocódigo. Evite seções omitidas como "adicione animação aqui."
  • Prefira geometria procedural, materiais, luzes e texto gerado quando isso atender ao briefing. Se ativos externos forem usados, use ativos fornecidos pelo usuário ou identifique claramente a fonte e as considerações de licenciamento.
  • Use requestAnimationFrame para pré-visualização. Mantenha a animação baseada no tempo decorrido, não no número de quadros, para que permaneça suave em diferentes taxas de atualização.
  • Lide com redimensionamento e proporção de pixels do dispositivo; evite proporções excessivas que causem renderização lenta.
  • Defina o buffer de desenho do renderizador para as dimensões de exportação pretendidas ao gravar. Capture do canvas com canvas.captureStream(fps) e MediaRecorder quando compatível. Selecione um tipo MIME compatível com MediaRecorder.isTypeSupported() em vez de assumir um codec. Pare todas as trilhas e libere recursos ao finalizar.
  • Explique que a gravação de vídeo no navegador é em tempo real e pode variar conforme máquina/navegador. Para codificação precisa de quadros ou produção, forneça um fluxo opcional com FFmpeg usando uma sequência numerada de imagens ou outra entrada gerada explicitamente; nunca implique que o navegador garanta um codec específico.
  • Trate arquivos e ativos importados como não confiáveis. Não execute scripts fornecidos pelo usuário nem baixe ativos arbitrários sem explicar o que eles fazem.
  • Mantenha os controles acessíveis: rótulos, botões operáveis por teclado, foco visível e texto de status. Respeite as preferências de movimento reduzido quando apropriado.

Estrutura de projeto sugerida

Para uma solicitação de cena única, um index.html auto-contido geralmente é suficiente. Para uma entrega maior, use:

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

Referências

  • Leia o guia de craft de animação para composição, temporização e polimento de movimento.
  • Leia as notas da mini API Three.js para padrões comuns de cena e renderizador.
  • Leia as receitas FFmpeg quando o usuário precisar de um fluxo de pós-processamento ou sequência de imagens.
  • Use assets/template.html como ponto de partida para uma pré-visualização no navegador e interface de gravação; adapte-o ao briefing em vez de retorná-lo inalterado.

Habilidades Relacionadas