# Print texture transitions

A print-textured transition: ink-bleed-reveal, where feathered bleeding edges soak in and consume the old scene.

- Category: transition · Tags: shotcraft, remotion, transition
- Spec: 1920×1080 @ 30 fps · 4.39s (16:9)
- License: Apache-2.0 · Tier: free
- JSON: https://gimgs.net/motion/print-texture-transitions.json
- Kind: remotion
- Source (TSX): https://gimgs.net/motion/print-texture-transitions/template.html
- Repo: https://github.com/Vincentwei1021/video-shotcraft
- Credits: video-shotcraft (Vincent Wei) — https://github.com/Vincentwei1021/video-shotcraft
- Page: https://gimgs.net/motion/print-texture-transitions.html

## Params

_No params._

Default params (base64url for `?p=`): `e30`

## Prompt

## When to use

A paper-and-ink-aesthetic seam for scene changes; a third family alongside the shot-transitions six and the transition-travel three — a "medium development"-type transition

## Intention

The transition vocabulary already has hand-off (the shot-transitions six) and travel (transition-travel), both spatial/optical metaphors. This style opens a third family: the **medium metaphor** — the new image doesn't "arrive," it's "printed in," drawing directly on the library's paper-and-ink physical imagination: like a drop of ink landing on rice paper and bleeding out to consume the old scene, organic and hand-written in feel. A natural fit for films with a paper/ink tonality, and another "medium family" seam alongside light-leak-burn (accent-color light leak).

## Duration & energy

- Duration: 4–4.5s (bleed 55–80f + static hold ≥30f)
- Energy: Medium (gradual development, no impact beat)

## Shot recipe (original Chinese — timing, easing, parameter table, known pitfalls)

## 意图
转场语言已有交棒（shot-transitions 六式）和穿越（transition-travel）
，都是空间/光学隐喻。本式开第三族：**介质隐喻**——新画面不是"到来"
而是"印染"出来的，直接调用库内纸墨审美的物理想象：像一滴墨落在
宣纸上洇开吃掉旧景，有机、书写感。天然亲和 paper/ink 调性的片子，
是 light-leak-burn（强调色漏光）之外的另一个"介质系"接缝选择。

## 单式选型
| 式 | 做法 | 适用 |
|----|------|------|
| B ink-bleed-reveal 墨渗揭示 | 新页透过须状渗边的有机圆形遮罩从落墨点洇开，快慢不匀吃掉旧景 | 旧景→新景替换；书写感、叙事调性 |

## 参数表
| 参数 | 典型值 | 调节手感 |
|------|--------|----------|
| 渗边 | SVG mask 白圆挂 `feTurbulence(fractalNoise, baseFrequency 0.02, octaves 3, seed 固定)` + `feDisplacementMap scale 60→160 随帧涨` | filter 只揉遮罩形状、内容始终清晰；seed 必须写死（确定性） |
| 洇开 | 半径 [20,98f]→[0,1450px] Easing.out(quad)，乘 `1+0.08·sin(0.32f)·env` 快慢不匀扰动（env 末 20f 衰减归零） | 匀速圆扩张读作普通 iris——扰动即"墨的脾气" |
| 收尾摘罩 | 洇满后（帧 ~100）摘掉 SVG mask 直接铺新景 | feTurbulence 有亚像素抖动，不摘则结尾永不真静止（本批实渲判例） |
| 收尾 | 新景就位后真静止 ≥30f | R1 |

## 已知坑
- demo 在灰阶/占位素材上调校通过——参数是调校起点非实战定稿，
  首次实战须以真实素材回验
- 一缝一式规矩同 shot-transitions：介质转场不与白闪/震屏叠加；
  本式与 light-leak-burn 介质系同片合计 ≤2 次，多了片子读作印刷厂宣传
- 洇开中段旧景内容会透过噪声孔洞碎片式短暂露出——读作墨渍肌理
  属可接受有机效果，但旧景若是人脸/logo 等高辨识元素会读作故障，避开
- 慢转场（55–80f 动作段），高节奏连打段落别用——那里去 E 式甩镜

## 参考实现
demos/transition/print-texture-transitions/
（InkBleedReveal.tsx）

## Reference implementation (Remotion)

- demos/transition/print-texture-transitions/InkBleedReveal.tsx — https://raw.githubusercontent.com/Vincentwei1021/video-shotcraft/main/demos/transition/print-texture-transitions/InkBleedReveal.tsx

The component imports shared fixtures from `demos/_fixtures` and helpers from `assets/lib` in the repo; SKILL.md there documents the render workflow.


## Flow

1. **Read the recipe**
   Prompt = when to use, intention, parameter table with typical values and how each one feels, known pitfalls. Treat values as calibrated starting points.
2. **Get the code** — tool: git
   `git clone https://github.com/Vincentwei1021/video-shotcraft && cd video-shotcraft && npm install`
3. **Register + render** — tool: remotion
   `npx remotion render <CompositionId> out.mp4   # component: demos/transition/print-texture-transitions/InkBleedReveal.tsx`
4. **Or re-implement**
   Port the timing/easing from the recipe to HTML + WAAPI (gimgs motion contract) or any engine; keep the same segment windows and easing.

## Render

Clone https://github.com/Vincentwei1021/video-shotcraft (npm install). The component lives under demos/{category}/{name}/ and imports shared fixtures from demos/_fixtures and helpers from assets/lib. Copy it (with those imports) into a Remotion project, register a <Composition> with the template's width/height/fps/duration in Root.tsx, then `npx remotion render <CompositionId> out.mp4`. SKILL.md in the repo documents the full Claude Code / Codex workflow. The prompt below is the shot recipe (timing, easing, parameter table, pitfalls) — enough to re-implement the shot in HTML/WAAPI or another engine if you prefer.

## Contract

React/Remotion composition (TSX) from the open-source video-shotcraft library (Apache-2.0). It is not a browser-playable template: clone the repo, register the component in a Remotion project and render with `npx remotion render`. The recipe (prompt) describes timing, easing and parameters so you can also re-implement the shot in any engine.
