Motion por código com agente|INEMA.CLUB-PRO

Aula 3 · 15 min

Pedir ao agente: o método RISE e o teste em cinco quadros

Pedido vago gera animação genérica e dez rodadas de correção. O RISE organiza o pedido em quatro partes: Referências, Ideia, Estilo e Examinar. A última é a que mais salva: o agente confere cinco quadros e corrige antes de você renderizar. Nesta aula você escreve o pedido e confere a resposta com um comando.

Começar a aula
Folha com cinco miniaturas de quadros desenhadas a lápis, uma lupa e um lápis sobre a mesa de edição.

Nesta aula você vai

  1. 1As quatro partes do pedido e o que vai em cada uma
  2. 2O snapshot: cinco quadros em segundos, sem renderizar o vídeo
  3. 3A costura do loop conferida por pixel
  4. 4As 10 falhas de uma animação amadora, para olhar nos quadros

Objetivo: escrever um pedido RISE para o seu agente e conferir o resultado em cinco quadros antes de renderizar.

01As quatro partes do pedido

Clique em cada letra.

Clique em cada bloco do diagrama para ver o que ele faz.

Método RISE do curso motion-rise do INEMA, adaptado ao HyperFrames: o E usa check e snapshot em vez de um canvas próprio.

02O pedido pronto

Um loop de 6 s sobre uma linha do tempo de edição. Copie para a pasta do projeto e cole no agente (Claude Code ou Codex, com o modelo topo da sua assinatura).

Arquivo · kit/prompts/rise-loop.md
R — REFERÊNCIAS
Leia o DESIGN.md desta pasta antes de tudo: cores, fontes e regras de movimento saem dele. Não invente logotipo, cor nem fonte.
Projeto HyperFrames 0.8.176 nesta pasta (index.html já criado pelo init).

I — IDEIA
Um loop de 6 segundos, 1920x1080, sobre uma linha do tempo de edição.
- Início (0–0,6 s): o trilho da linha do tempo e a cabeça de leitura parados à esquerda.
- Meio (0,6–4,2 s): a cabeça de leitura corre até a direita; o título "Cena 1" entra e sai.
- Fim (4,2–6 s): a cabeça volta à esquerda e para. O último quadro é igual ao primeiro.

S — ESTILO
Visual: fundo #0c0c10 com luz suave no centro, trilho #3f3f47, cabeça de leitura #e9b949 (a única cor de destaque), título branco #f4f4f5 em sem serifa do sistema, peso 700.
Movimento: nada em velocidade constante (power1 a power3, entrada e saída suaves); o título fica pelo menos 1,2 s legível; uma coisa se move por vez.

E — EXAMINAR
Escreva tudo numa única timeline GSAP pausada registrada em window.__timelines["main"], sem Math.random e sem Date.now.
Rode `npx hyperframes@0.8.176 check` e corrija até aparecer "Check passed".
Tire 5 quadros com `npx hyperframes@0.8.176 snapshot --at 0,1.5,3,4.5,5.9 --no-end -o quadros`, olhe o contact-sheet.jpg e confira:
o quadro de 0 s é igual ao de 5,9 s; nenhuma letra cortada; nenhuma palavra sozinha na linha; o título aparece inteiro no quadro de 3 s.
Corrija o que falhar e repita até tudo passar. Não renderize o MP4: eu renderizo depois de ver os quadros.
No agente · dentro da pasta do projeto
Leia rise-loop.md e faça exatamente o que ele pede. No fim, me diga o resultado do check e o que você corrigiu depois de olhar os 5 quadros.

03O E na sua mão: cinco quadros e a costura

A pasta kit/exemplos/a3-loop tem uma composição feita a partir deste pedido. O ensaio roda o check, tira cinco quadros e compara o primeiro com o último.

Terminal · check, cinco quadros e costura
K=~/projetos/formacao-cinema-ia-motion-v72/kit
export HYPERFRAMES_NO_TELEMETRY=1 NO_COLOR=1
unset GEMINI_API_KEY   # sem isso, o snapshot manda os quadros ao Gemini sozinho
E=${TMPDIR:-/tmp}/ensaio-motion/a3; rm -rf "$E"; mkdir -p "$E"
cp -r "$K/exemplos/a3-loop" "$E/loop"; cd "$E/loop"
npx -y hyperframes@0.8.176 check 2>&1 | grep -E "Check passed|✗"
npx -y hyperframes@0.8.176 snapshot --at 0,1.5,3,4.5,5.9 --no-end -o quadros > snapshot.log 2>&1
bash "$K/costura.sh" quadros; echo "saída: $?"
Terminal · o erro: tirar a volta da cabeça de leitura
K=~/projetos/formacao-cinema-ia-motion-v72/kit
export HYPERFRAMES_NO_TELEMETRY=1 NO_COLOR=1
unset GEMINI_API_KEY
cd ${TMPDIR:-/tmp}/ensaio-motion/a3/loop
sed -i '/x: 0, duration: 1.2/d' index.html   # tira a volta da cabeça de leitura
npx -y hyperframes@0.8.176 snapshot --at 0,1.5,3,4.5,5.9 --no-end -o quadros > snapshot.log 2>&1
bash "$K/costura.sh" quadros; echo "saída: $?"
Exemplo do repositório
◇  Check passed
5 quadros em quadros/
COSTURA: igual (quadro inicial = quadro final)
saída: 0

Os quadros ficam em quadros/ (frame-00-at-0s.png até frame-04-at-5.9s.png) com um contact-sheet.jpg, a grade que você e o agente olham.

04O que olhar nos cinco quadros

As 10 falhas do motion-rise, em quatro grupos. Cole a lista no fim do pedido ou confira você mesmo no contact-sheet.

1. Texto

Letra cortada (altura de linha 1,1 ou mais; confira g, j, p, q, y).

Palavra sozinha na última linha: reescreva ou amarre as duas últimas palavras com espaço que não quebra.

Todo texto parado pelo menos 1,2 s.

05Prática

O ensaio, o erro e o seu agente.

E1 · Cinco quadros e costura

5 min

Rode o bloco "check, cinco quadros e costura" e abra quadros/contact-sheet.jpg.

Pronto quando: ◇ Check passed, 5 quadros em quadros/, COSTURA: igual (quadro inicial = quadro final) e saída: 0.

E2 · Ver a costura abrir

5 min

Rode o bloco do erro, que apaga a volta da cabeça de leitura.

Pronto quando: COSTURA: diferente — o último quadro não volta ao primeiro e saída: 1.

E3 · O seu agente faz o loop

20 min

Num projeto novo (npx hyperframes@0.8.176 init meu-loop --non-interactive), copie kit/prompts/rise-loop.md e kit/exemplos/a4-marca/DESIGN.md para a pasta e mande o pedido ao seu agente. (o DESIGN.md vem pronto; a aula 4 explica cada seção). Depois rode você mesmo o check e o snapshot do bloco.

Pronto quando: Na pasta meu-loop: npx hyperframes@0.8.176 check termina em Check passed e bash ~/projetos/formacao-cinema-ia-motion-v72/kit/costura.sh quadros; echo "saída: $?" → COSTURA: igual e saída: 0.

06Teste da aula

A explicação aparece depois da sua resposta.

Pergunta 1 de 4

Qual parte do RISE diz ao agente como provar que terminou?

07Em três frases

RISEReferências, Ideia, Estilo e Examinar, nessa ordem, num arquivo que fica na pasta.
Cinco quadrosO snapshot mostra o vídeo em segundos; o costura.sh confere o loop por pixel.
Correção específicaO que mudar e como conferir, nunca "melhora".

Para ir além

Aula anteriorPróxima aula