Communitygithub.com

Drama2557/4RealDigital-Video-Studio

Catálogo de técnicas de transição e animação cinemática para motion design: cinco costuras com correspondência de velocidade (zoom-through, zoom-through inverso, cut-the-curve, waterfall cut, rack-focus blur-cut) mais duas técnicas intra-cena (waterfall entry e nudge curve).

O que é 4RealDigital-Video-Studio?

Este skill define um conjunto preciso de sete técnicas de animação e transição para motion graphics, projetadas para criar fluxo narrativo contínuo e impacto visual, com foco em correspondência de velocidade (velocity matching) no ponto do corte. Ele cince cinco técnicas de 'costura' (seams) — zoom-through (para frente e inverso), cut-the-curve (padrão entre cenas), waterfall cut (nível de palavra) e rack-focus blur-cut (florescimento óptico) — mais duas técnicas intra-cena: waterfall entry (cascata de entrada) e nudge curve (reposicionamento lento-rápido-lento). O skill detalha parâmetros como escala Z (com regra de sinal), blur dimensionado (10px para texto, 18-20px para tela cheia), durações, curvas de easing (power4.in/out, expo.out), percentual de deslocamento parcial (~12% do quadro) e regras de stagger/cascata. As implementações GSAP são referenciadas em exemplos externos. É útil para motion designers e desenvolvedores de agentes de IA que precisam de especificações técnicas claras para animações de transição, entrada de texto cinético e reposicionamento de grupos, compatível com ferramentas como Claude Code, Cursor e Codex.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Drama2557/4RealDigital-Video-Studio/tree/HEAD/.agents/skills/cut-the-curve

Perguntar na sua IA favorita

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

Documentação

Cut the Curve — catálogo de técnicas

Cinco técnicas de costura, um princípio: corte na velocidade de pico, combine direção e velocidade em ambos os lados do corte — mais duas técnicas intra-cena (§6 chegadas, §7 slides). A lei da costura — lei vetorial, a corrente, o razão, o Portão da Costura — reside em motion-doctrine; leia-a primeiro. Este skill são os parâmetros e a mecânica. Todos os modelos de código GSAP (worker + registry): examples/gsap-implementation.md.

Catálogo

#TécnicaEscopoEixoUso
1Zoom-Through (para frente)Troca de texto na cenaZ, em direção ao espectadorAprofundar no mesmo pensamento
2Zoom-Through InversoBatida de chegada/recompensaZ, afastando do espectadorAlgo maior pousa
3Cut the CurveEntre cenasX / YO limite padrão, a corrente do filme
4Waterfall CutCostura texto a textoX, por palavraTransferência no nível da palavra entre batidas de texto grande
5Rack-Focus Blur-CutTroca de estado na mesma superfícieX / Y / ZO corte que você quer VER — um floreio de foco puxado de câmera DSLR
6Waterfall EntryCHEGADA na cena (sem costura)Y, de baixoCartões de título, aberturas de segmento, intros de lista
7Nudge CurveSlide de grupo na cena (sem costura)X / YReposicionar um grupo composto para abrir espaço

Direção Z é um sinal

"Mesmo eixo" não é suficiente em Z — o sinal de d(escala)/dt deve coincidir no corte:

Vetor ZEscala de saídaEscala de entradaVariante
Empurrar (para frente)crescendo 1 → 1,2crescendo 0,75 → 1zoom-through
Puxar (para trás)encolhendo 1 → 0,8encolhendo 1,25 → 1zoom-through inverso

Espelhos proibidos: uma saída recuando respondida por uma entrada crescendo do pequeno (puxar vira empurrar — o comum, já que crescer do pequeno é a entrada padrão do elemento), e uma saída empurrando respondida por uma retração superdimensionada. Isso vincula as PRÓPRIAS entradas da cena que chega durante a janela de costura (corte + ~0,5s), não apenas o tween do wrapper: segure o quadro de entrada composto, ou crie sua entrada para corresponder ao sinal. Verifique por regra 7 do Portão da Costura.

Lógica de blur (todas as variantes Z)

SujeitoPico blurPor quê
Escala de texto (título, grupo de palavras)10px20px borra os glifos — o corte parece um glitch, não velocidade
Superfície de tela cheia (janela, cartão, screenshot)18–20pxBlur mais claro em superfície grande parece um soluço de renderização

Mesmo pico de blur em ambos os lados no quadro de troca. Aplique blur no WRAPPER, nunca nos filhos.


1. Zoom-Through (para frente)

Corte com correspondência de velocidade no eixo Z; nunca ambos os textos visíveis. Tudo CRESCE: o texto de saída acelera em direção à câmera, uma troca dura esconde no pico de blur, o texto de entrada continua crescendo no plano focal. Apenas títulos e frases curtas. Total ≈ 0,4s.

FaseEscalaBlurOpacidadeEasingDuração
Saída1 → 1,20 → 10px1 → 0,15power3.in (opacidade: tween none separado)0,2s
Corte (tl.set)in: 0,7510pxout: 0 / in: 0,15——
Entrada0,75 → 110 → 0px0,15 → 1expo.out0,5s

A opacidade de saída DEVE ser seu próprio tween linear — power3.in segura a opacidade perto de 1 por muito tempo. Na entrada, todas as propriedades compartilham expo.out.

2. Zoom-Through Inverso (para trás)

O espelho de puxar para trás: o elemento de saída RECUA; o que chega chega SUPERSIZADO (como se estivesse atrás da câmera) e retrai para o plano focal. Tudo ENCOLHE. Gaste em batidas de CHEGADA/recompensa — uma linha de recompensa, uma resposta gigante, um estado final mantido — nunca limites comuns. Total ≈ 0,7s (30% saída / 70% entrada).

FaseEscalaBlurOpacidadeEasingDuração
Saída1 → 0,80 → 10px1 → 0,15power3.in (opacidade: tween none separado)~0,2s
Corte (tl.set)in: 1,2510pxout: 0 / in: 0,15——
Entrada1,25 → 110 → 0px0,15 → 1expo.out~0,5s

Blur é de escala de texto 10px; 18–20px apenas quando ambos os lados são superfícies em tela cheia.

Disciplina de sinal: a cena que chega chega como um quadro composto dentro do wrapper que retrai — sem introdução crescendo do pequeno na janela de costura. Entradas escalonadas acontecem após a retração se estabilizar, ou começam ≥1 e retraem.

3. Cut the Curve (limite de cena padrão)

Corte com correspondência de velocidade X/Y — o padrão para TODOS os limites cena-a-cena, na corrente do filme, não um acento. O herói de saída acelera em uma direção, o corte cai no meio do movimento, o herói de entrada continua na MESMA direção e desacelera. Total ≈ 0,6s; direções ESQUERDA / DIREITA / CIMA / BAIXO (padrão ESQUERDA).

Deslocamento parcial: ~12% do quadro (≈230px a 1920) — nunca movimentos completos para fora da tela.

DireçãoSaídaInício → fim da entrada
Para a esquerdax: 0 → −230x: +230 → 0
Para a direitax: 0 → +230x: −230 → 0
Para cimay: 0 → −230y: +230 → 0
Para baixoy: 0 → +230y: −230 → 0

Mecânica:

  • Eases espelhados: saída power4.in + entrada power4.out, mesma distância e duração — as duas metades de um power4.inOut, então a velocidade coincide exatamente no corte.
  • O truque de fade: a opacidade de saída completa em ~25–30% do seu deslocamento (fade ≈ 0,18–0,3s vs movimento 0,3–0,34s); a entrada começa em ~0,35 de opacidade no meio do caminho. Cronometre o último elemento que desaparece para morrer exatamente no corte — uma lacuna onde nada se move soa como ar morto.
  • Saída 0,2–0,4s; entrada ≥ saída. Blur opcional 8–10px.
  • Fundo de palco: #root deve ser opaco (background: var(--canvas-deep, var(--canvas, #000))) — o corte no meio da janela abre uma janela de opacidade somada < 1 que pisca branco caso contrário (veja seam-craft).

push-slide existe, mas viola o deslocamento parcial e a fase de meio-movimento; prefira cut-the-curve.

4. Waterfall Cut (cut-the-curve palavra por palavra)

Cut-the-curve na granularidade de PALAVRA — o corte mais forte para a esquerda para costuras texto a texto. Palavras de saída saem em suas próprias curvas; palavras de entrada entram em cascata no meio do voo — uma onda que o olho monta através da costura.

Escopo: criado pelo worker dentro de uma composição multi-batida (camadas .beat empilhadas em tela cheia), NÃO um tipo registry/injector — ele faz tween em spans de palavra, não wrappers de clipe. O limite para dentro e para fora do bloco de batida de texto ainda recebe uma transição de registry normal. Não conta contra o orçamento de 2–3 transições.

ParâmetroValorPor quê
Deslocamento±230px (~12% quadro)deslocamento parcial + velocidade > push de tela cheia
Saída0,34s power4.ina aceleração É o corte
Fade de saída0,18s, começa com xpalavra desaparece em ~25–30% do deslocamento — sem arrasto
Stagger de saída+0,022s na ordem de leituraa linha descasca, não um slide de bloco
Entrada0,3s power4.outmetade de trás do composto — correspondência de velocidade
Opacidade inicial da entrada0,35ignição no meio do caminho; 0→1 binário aparece
Gaps de entrada0,05s × decaimento 0,84cascata acelerando, resolve composto

Regras:

  • Uma direção por cadeia, montando a corrente. Zoom-through inverso é apenas a batida de CHEGADA da cadeia.
  • Pré-defina todas as palavras para x: +230, opacity: 0 no tempo de construção — immediateRender: false sozinho deixa palavras não iniciadas visíveis em repouso.
  • Uma primeira batida curta pode sair em linha inteira: seu fade termina ~0,02s antes do corte para que ainda esteja em movimento quando as próximas palavras acenderem — sem lacuna morta.
  • Apenas transform/opacity (seguro para seek); fundo de palco opaco se aplica.

5. Rack-Focus Blur-Cut (o corte visível)

A variante onde o corte é VISTO: um PIQUE de desfoque de desfoco esconde uma troca dura de um único quadro — um foco puxado de câmera DSLR à mão. Use como um floreio ocasional para uma troca de estado da MESMA superfície dentro de um tema visual; nunca o limite padrão.

Diferenças dos outros: a saída permanece TOTALMENTE OPACA até o corte (o blur esconde a troca — sem fade antecipado); eases power2.in / power2.out (óptica suave, não momentum).

Regras:

  • Dispare apenas em uma batida narrativa, ≤ uma vez a cada ~8s; nunca no meio de uma legenda ou durante uma pausa.
  • Corte no PIQUE do blur (≥6px; pico 8–12px, máximo ≤16–18px) — trocar na subida mostra o corte.
  • Uma escala sutil (~1,06 de respiração de lente) vende como óptica.
  • Mesma direção em ambos os lados — a lei vetorial ainda vale. Duração da entrada ≥ duração da saída.
  • Aplique blur no wrapper; nunca blur + opacidade em um tween em um elemento (bug de composição sem cabeça); nunca aplique blur diretamente em <video> (envolva-o).

6. Waterfall Entry (chegada na cena — não uma costura)

Cascata de CHEGADA escalonada: palavras/elementos chicoteiam de baixo (uma direção consistente), cada um começando antes do anterior se estabelecer — uma onda acelerando que se resolve em um layout composto. Cartões de título, aberturas de segmento, intros de lista/recurso. O irmão de costura é §4; não misture suas regras:

§6 Entrada (chegada)§4 Waterfall Cut (costura)
Opacidade0→1 BINÁRIO via tl.set na entrada — nunca fadeacende em 0,35 no meio do caminho — o fade É o truque de velocidade
Eixo padrãoY, de baixoX, montando a corrente
Lado de saídanenhumpalavras saem em power4.in espelhado

Coreografia:

  • Sobreposição, não fila — o próximo elemento começa dentro de ±2 quadros do anterior se estabelecer; gaps ENCOLHEM na cascata; o último elemento encaixa.
  • Velocidade varia por peso — elementos pesados/âncora viajam mais longe e por mais tempo; palavras leves/pontuação encaixam apertado:
ParâmetroÂncora/pesadoPalavra normalLeve/pontuação
Deslocamento Y60–80px40–50px30–48px
Duração0,16–0,20s0,13–0,16s0,10–0,13s
Sobreposiçãogap de 0–2qsobreposição de 1qsobreposição de 1–2q
  • Ease power4.out (expo.out para snap extra); nunca .inOut em uma entrada.
  • Uma direção por cascata.
  • Divida a ÚLTIMA palavra em fragmentos para estender o clímax; fragmentos viajam mais longe.
  • Após o estabelecimento, o grupo geralmente desliza para abrir espaço para a próxima batida — isso é §7.

7. Nudge Curve (slide de grupo na cena — não uma costura)

Reposicionamento lento-rápido-lento de um grupo composto (linhas de palavras, pilhas de cartões, listas) para revelar conteúdo ou abrir espaço. Nenhum ease embutido único produz isso — power4.inOut bate e para. Encadeie três tweens em uma propriedade:

FaseEaseDistânciaTempoSensação
1 ramp-inpower3.in~10%~20%mal se move — o movimento registra, sem solavanco
2 burstnone (linear)~65%~18%~2× px/quadro média — proposital
3 caudapower4.out~25%~62%rastejamento decaindo para descanso — mata o estalo

Regras:

  • A cauda é ≥3× o ramp-in em TEMPO. Se ainda estalar: estenda o tempo da cauda (não a distância) ou use power5.out.
  • A fase 2 permanece linear — aplicar easing perde o contraste do burst.
  • Revele novo conteúdo DURANTE a fase 2 — o burst mascara sua aparição.
  • Mesmas proporções na vertical; escale as distâncias proporcionalmente, mantenha as proporções de tempo.

Escolhendo uma Variante

Zoom-ThroughZoom-Through InversoCut the CurveWaterfall Cut
EscopoTroca de texto na cenaBatida de chegada/recompensaEntre cenasCostura texto a texto
Sinal Z / eixocrescendo (empurrar)encolhendo (puxar)X / YX, por palavra
Deslocamento/escala1→1,2, depois 0,75→11→0,8, depois 1,25→1±230px±230px
Pico blur10px texto / 18–20 tela cheia10px texto / 18–20 tela cheia8–10px opcionalnenhum
Easespower3.in / expo.outpower3.in / expo.outpower4.in / power4.outpower4.in / power4.out
Sensaçãoprogredindo atravéschegando emcarregado lateralmenteuma onda através da costura

Anti-Padrões

| Não faça

…

[truncado para tradução]

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Drama2557/4RealDigital-Video-Studio

Overlay doctrine for the embedded-captions workflow — the caption MODEL (drop / rail / embed) and the rule that captions are an OVERLAY composited on top of the film, never a reserved bottom band you shift content up to avoid. Load when adding captions/subtitles to a talking-head or launch video, when deciding whether a phrase should be dropped, ride the verbatim rail, or be promoted to a scarce embedded climax, when laying out a composition that will carry captions (do NOT reserve a keep-out band), or when centering a composition on the true frame center under captions. Quotes the rail+embed model from embedded-captions and constraint #13 (captions overlay, keep-out band retired) from the product-launch-video scene agent. Applies ON TOP of embedded-captions.

Drama2557/4RealDigital-Video-Studio

Turn a weekly changelog .md into a finished branded changelog video (square 1080, ~45-60s, Annie VO, animated brand background, mock-UI visualizations, lowkey captions). Use when the user provides a changelog/digest markdown and wants the weekly video, or says "changelog video". Self-contained — fonts, background, lexicon, and scripts ship in this skill.

Drama2557/4RealDigital-Video-Studio

Add captions or subtitles to an existing single-subject talking-head video without editing the footage. Use for plain verbatim captions, cinematic captions embedded behind the subject, VFX captions, “炸/特效/酷炫字幕,” or a named identity from the 35-style catalog. Route by visual identity, not by backend engine. The quiet `anchor` rail is the default; embed every word only when the user explicitly wants a fully cinematic treatment. The workflow runs locally end to end, including transcription and subject matting; split multi-shot footage before applying it.

Drama2557/4RealDigital-Video-Studio

Turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video: there is no site or footage to capture, so the visuals are invented per scene (typography, abstract graphics, diagrams, data-viz). Use for topic explainers, concept breakdowns, how-tos, listicles. Not a video built from a website (/product-launch-video — promo or tour). Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

Import Figma content into a HyperFrames composition — rendered assets, brand tokens, components, storyboard sections → reconstructed motion (frames read as states, not slides) (REST/CLI), connector-assisted motion when available, and shaders from a connector or native export. Use when the user pastes a figma.com link or asks to bring a Figma design, frame, logo, brand, or animation into a video/composition.

Drama2557/4RealDigital-Video-Studio

Author or edit a custom HyperFrames composition when no specialized workflow fits, or when BRIEF.md sets flow: companion. Use for longer or multi-scene pieces, brand and sizzle reels, montages, static loops, static title cards, footage remixes, and freeform builds. Use motion-graphics instead for a short unnarrated motion-first unit, including an animated title. Route fresh creation through hyperframes before using this skill.

Drama2557/4RealDigital-Video-Studio

Use the HyperFrames CLI development loop: init, add, catalog, capture, lint, check, snapshot, compare, grade-compare, preview, play, present, beats, keyframes, single or batch render, publish, cloud, cloudrun, feedback, lambda, doctor, browser, info, upgrade, skills, compositions, docs, benchmark, telemetry, transcribe, auth, tts, and remove-background. Also use when diagnosing build or render failures. validate, inspect, and layout are deprecated aliases; use check. Covers local, HeyGen-hosted cloud, AWS Lambda, and Google Cloud Run rendering.

Drama2557/4RealDigital-Video-Studio

The HyperFrames composition contract — build one renderable project. Use for composition structure, the `data-*` timing attributes, `class="clip"`, tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Also covers Tailwind projects and the STORYBOARD.md / SCRIPT.md plan formats. Read before writing composition HTML.

Drama2557/4RealDigital-Video-Studio

Non-animation creative direction for HyperFrames videos. Use for design spec (frame.md / design.md) handling, palettes, typography, narration, beat planning, audio-reactive visuals, composition patterns, and brand / style decisions. For atomic motion patterns and scene blueprints, use `hyperframes-animation`.

Drama2557/4RealDigital-Video-Studio

Install, discover, and wire registry blocks and components into HyperFrames compositions. Use when running hyperframes add or hyperframes catalog, installing one item or every block matching a tag, wiring an installed item into index.html, or working with hyperframes.json. Covers discovery, install locations, block sub-composition wiring, component snippet merging, and authoring a new block or component to contribute upstream (idea → scaffold → validate → PR).

Drama2557/4RealDigital-Video-Studio

Agent Media OS, the single skill for every media need in a HyperFrames project. Resolve BGM, SFX, image, icon, brand logo, voice, color grade, or LUT into a frozen local file or paste-ready block + ledger record (one verb, `resolve`); generate via TTS / music / image models when the catalog misses; produce voiceover, transcription, captions, and background removal through one shared audio engine; operate on media (cut / reframe / transform); and reuse assets across projects. Also use for vague feedback that real footage looks dark, flat, boring, should feel retro/camcorder/print/ASCII, needs privacy, or needs a media reveal.

Drama2557/4RealDigital-Video-Studio

GATEWAY — load FIRST before composing any HyperFrames animation or video. The high-level motion law that makes a multi-scene video feel like ONE continuous camera move instead of a stack of independently-animated slides. Covers the vector law (how you exit determines how you enter, incl. the Z scale-sign rule), the film's current, carrier elements, causal motion, the Seam Gate (build-gate enforcement), the ban on idle wobble (motion must PERFORM, not breathe), stillness-before-climax, and the sustained-motion routes. Routes to the low-level technique skills (cut-the-curve — the full catalog incl. waterfall entry + nudge curve, oversized-cursor, seam-craft). These rules SUPERSEDE generic / upstream motion guidance. [continuity, direction, vector, momentum, seam, transition, ease, performance, idle-motion, narrative-motion, film-grammar]

Drama2557/4RealDigital-Video-Studio

A short, design-led motion graphic where motion is the message — kinetic typography, stat count-up, chart/data-viz hit, logo sting / brand lockup, lower-third / callout / social overlay, animated map (highlight regions, connect places, zoom to a location), animated tweet / news-article / headline, webpage / UI animation (scroll, cursor, callouts), or fusing a real image's geometry into a chart. Usually under 10s (up to ~30s), no narration or live-action subject; renders to MP4 or transparent overlay. Longer / narrated / multi-scene → /general-video. Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

Turn a music track (an audio file, a video to pull audio from, or a track generated from a mood brief) into a beat-synced video — lyric video, slideshow, or kinetic promo. The music drives all pacing; any user-supplied images/videos are cut onto the same beat grid, and a complete video needs zero assets. Narrated pieces → the input-matched workflow (see /hyperframes). Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

House-style oversized macOS cursor technique for HyperFrames launch videos. Load whenever a scene involves cursors or a pointer-led action, when kicking off a UI scene, when igniting a morph/transition/typing run with a click, or when a scene reads as static, dead, or stale and needs a cheap high-yield source of motion to carry the viewer's eye and segment them out of the stale state. Covers cursor size/look (incl. brand-motif cursors), the off-screen entry law, tip-targeting and the click tap, click-ignites-the-next-beat, and exit / cross-scene handoff.

Drama2557/4RealDigital-Video-Studio

Turn a GitHub pull request (a PR URL, owner/repo#N, or 'this PR' in a checked-out repo) into a code-change explainer video — changelog, feature reveal, fix, or refactor walkthrough built from the diff, commits, and files: the input is a code change, not a website. Not a product promo (/product-launch-video) or a no-PR topic explainer (/faceless-explainer). Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

Render-correctness doctrine for scene-to-scene seams in HyperFrames launch videos — the prerequisites that make transitions composite correctly on the master timeline. Load when assembling the master timeline / index.html, when a white flash appears at a cut or crossfade seam (especially on dark films), when reasoning about why a transition opacity dip shows through, or when verifying the render-side mechanics of how overlapping scene wrappers blend. Covers the opaque stage-ground (#root background) white-flash guard and how the injector overlaps wrappers, holds final frames, ping-pongs tracks, and stamps lint-clean template code onto the master timeline. Does NOT contain the per-transition catalog — see the transition registry for individual transition entries.

Drama2557/4RealDigital-Video-Studio

Author a HyperFrames slideshow — a presentation, pitch deck, or interactive deck with discrete slides, fragment reveals, branching, hotspot navigation, and built-in presenter mode with speaker notes; also converts an existing page into a deck. Output is a navigable deck, not a rendered MP4. If the user didn't explicitly ask for a slideshow, confirm before authoring. Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

Package an existing talking-head / interview / podcast video with timed, designed GRAPHIC OVERLAY cards — kinetic titles, lower-thirds, data callouts, quotes, side panels, picture-in-picture — synced to the transcript, on a 16:9 / 9:16 / 4:5 canvas of your choice; the clip plays untouched underneath. Trigger on "graphic overlays", "on-screen graphics", "package / dress up my video". Not plain subtitles (/embedded-captions). Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

Agent skill / project related to launch or product demo video: Drama2557/4RealDigital-Video-Studio

Habilidades Relacionadas