变形时长
4.4s
粒子格
1px
飞散幅度
14px
暂停
这个动效是怎么做出来的
文字是矢量清晰渲染
——画布内部以 4× 分辨率(728×352)原生绘制,逐字超采样后面积降采样,稳定态笔画为纯白实心。
不是扫过、不是遮罩
——整行文案「粒子溶解 → 粒子重组」直接形变:旧文案先被打散成粒子飞离原位,同一批粒子再落位拼成新文案。
两段文案的飞散幅度一致
——「AI时代的」与「灵感指南」的位移峰值取同一个基准(
ampK
),不会出现一套炸得开、另一套收得紧。
APPSO 字标与正文是一个整体块,四边到橙框都是 14.50px
——不只看正文:把顶部字标与下方文字合起来看成一个块,这个块到橙框的上下左右留白是同一个数值。两套文案各自都做到了 14.50px(「AI时代的」因字形墨迹比「灵感指南」宽 1px,其字槽跨度按目标留白单独反算为 103.0px)。为此橙框内高由 61.25px 加高到 72.75px。
粒子不越出橙色边框
——每个粒子在生成时就记住了它朝上下左右到边框的可用空间,飞散位移与抖动会被逐方向等比压缩夹取,绝不会飞到框外;14px 的飞散量本就收在可用空间之内,实际基本不会触发夹取。
散尽即彻底空屏
——旧字粒子飞散完毕到新字粒子聚起之间是纯净空场,不放任何零星碎点,旧文案不会以任何形式留下残影。
清晰度与 APPSO 字标同级
——实心笔画与字标走同一条高分辨率渲染链路(超采样 4× + 面积降采样,不做任何模糊),稳定态为纯白实心。
旧文案会彻底消失
——时间轴被切成互不重叠的两段:
旧字实心淡出 → 旧字粒子散尽
之后,
新字粒子聚起 → 新字实心浮现
才开始,中间有一段只剩零星飞散点的空场,两套文案绝不会叠在一起。
字形本身不变
——两套文案共用同一字体与同一套字槽(
ctr / sc / dys
逐字中心/字号/纵向偏移),换文案时只换字,不动版式。
窗口再小也不会裁掉画面
——页面内容顶部对齐、可正常滚动,舞台宽度自适应窗口(最大 728×352,等比缩放)。旧版把内容垂直居中,窗口比内容矮时上半截会被推到视口之外且
滚动不回去
,红卡上沿被裁、字标顶看起来就贴在了橙框边缘。
粒子不侵入顶部 APPSO 字标
——红卡与字标是常驻底板(同样高分辨率),粒子只在文字带内生成与飞散,顶部为安全区。
高性能
——粒子属性预先打包成数组,每帧只用一次路径批量描边(相同粒子数下实测比逐粒子绘制快
5.4 倍
);稳定态整帧跳过重绘,切到后台不吃 CPU。