场景动画
支持:技能 hyperframes(渲染契约、时间线、剪辑规则)、hyperframes-registry(在手动绘制之前先寻找现成的块,例如:glitch、CRT、图形)和 graphify,用于在 lib 中查找部件(graphify explain "pavio_scene")。
从 template/build/generate.py 开始,它已经包含了针对脚本每个部分的示例场景。
每个片段的正确部件
| 片段 | 部件 | 备注 |
|---|---|---|
| 第 0 帧 / 钩子 | hook_html + shake + drift | 同一标题在循环中再次出现 |
| 所说的短语 | kline + words_js; 关键词处使用 slam | 每行 2–4 个单词 |
| 谜团 | 点亮的灯光,在 "PIOR"/"DATA" 处使用 slam | 旋转的日历("20??") |
| 数字 | counter(...) + 冲击缩放 + shake | 使用 pt-BR 格式(toLocaleString) |
| 地点或目标 | 脉动的 ping 环 | 配合日期或 mono 字体 |
| 冲突 | 碰撞的箭头 + 闪烁 hit | A 方 × B 方 |
| 双方或国家 | SVG 旗帜 + 绘制出的线条(pathLength="1")+ 带标签的旅行点 | 不绘制盾徽 |
| 列表进度 | pavio_scene,每项燃烧的引信,在高潮处爆炸 | 代替 "1/3";仅作为最后手段使用 step_badge |
| 破坏、规模 | 充满屏幕的点(clip-path)+ 巨大的计数器 | 数据字体使用 mono |
| 电视窗口 | tvv + enter_tv | 用于横向片段 |
| 沉重 的结尾 | 柔和的问题、缓慢填充的心形、深色 follow_card、淡出至黑色 | 无弹出、火花、闪烁或剪切 |
| 轻松 的结尾 | like_block + plane_svg + follow_card | 可以有弹出和闪光 |
| 循环 | 钩子的反向片段结束于第 0 帧 + 同一标题 | 从黑色(沉重)或使用 osd_rewind(轻松)开始 |
规则
- 每 1.5–2.5 秒有变化,每个场景有且仅有一次交互。
- 时间: 局部在
scene()内,全局在SCENES、剪切、效果和字幕中。 - 安全区域: 文本 x 90–900 和 y 170–1330。长行:减小字体(Archivo Black 每个字母约占 0.75 字符宽度)。
- @ 品牌标识: 库将其放在字幕下方(
WM_TOP);不要另行绘制。 - 剪辑规则:
- 不要动画剪辑自身的 visibility/opacity;
- 在随后的 fromTo 中使用
immediateRender:false; - 使用
repeat+yoyo实现连续效果(火花、脉冲); - 无随机性(颗粒使用固定种子)。
- 基调: 在沉重的视频中,红色脉冲最多 0.32 的不透明度;在轻松的视频中,颜色更鲜艳。