录制帧率

决定观看与录制的流畅度

  • Android 合格 ≥ 15 FPS
  • iOS 合格 ≥ 8 FPS
  • 满帧状态 ~30 FPS
  • 卡顿阈值 < 9-12 FPS

* 此帧率指手机渲染能力,与动画本身 FPS 无关

内存增量

特效启用后占用的新增内存

  • 安全区 < 100 MB
  • 危险区 > 200 MB

暴涨原因:高分辨率图片/序列帧、重复创建的 Texture/Material

包体与加载

包大小越大,加载越慢

  • 包体上限 ≤ 8 MB
  • 推荐大小 < 5 MB
  • 加载时间 < 4 秒

* 黑屏、白屏代表加载失败或资源未准备好

占用率

复杂算法、粒子、大量序列帧都会压垮 GPU

  • 算法推理 最耗 GPU
  • 粒子/VFX 高负载
  • PBR 材质 高负载

优化帧率和内存后占比通常也会下降

资产优化策略

尺寸压缩

通用素材 512px,装饰小图 200px。

美妆合并

美瞳/眉毛/面具图层尽量合并,减少 Draw Call。

!

避免叠加高耗能

分割 + Blingbling + 染发 = 必卡。

序列帧优化

单组推荐 20-50 帧,建议帧率 12 FPS(无需 30 FPS)。多组叠加是 GPU 杀手。

美妆性能排序

美瞳 → 眉毛 → 面具 → 白牙 → 眼妆(从高到低)。将多层美妆图合并为一张。

!

高风险 2D 效果

背景抠图、分屏、Blingbling、染发。叠加会大幅降低性能,不建议同时使用多项。

材质球 (Material)

优先使用 Unlit (无光)。PBR 材质总数 < 5。

模型规范

必须居中、清理历史、冻结变换。禁止负 Scale。多模型应尽量挂载在同一人脸下,避免多张脸重复追踪。

灯光 (Light)

最多 3 盏。非必要关闭所有阴影。

材质优化

多个模型共用同一个材质球,避免重复实例。关闭 Alpha Test。降低法线贴图和复杂纹理的使用。

性能优化策略

高负载视觉与增强功能(需谨慎叠加)

分割(Segmentation)

实时背景抠图,高耗时高计算量。

全身驱动 / 骨骼跟踪

实时骨骼推理与驱动,负载极高。

大规模粒子与复杂 VFX

大量粒子、长生命周期、复杂计算都会推高 GPU 压力。

多视频纹理并行播放

尤其是 Android,多路解码极易崩溃。

高分辨率全屏多层叠加

会造成 Overdraw(过度绘制),是移动端常见瓶颈。

Skybox / 大范围环境渲染

持续渲染整个场景的背景环境,属于高负载模块。

ScriptGraph 与系统优化

ScriptGraph 性能规范

  • 避免巨大图表

    避免构建巨大且杂乱的图表结构。

  • 减少循环

    避免在单帧执行大量循环(For Loop)。

  • Timer 管理

    减少使用多个 Timer 造成持续开销。

  • 数组与字符串

    避免动态扩展大数组(会触发频繁内存分配与 GC)。避免每帧执行字符串拼接等高成本操作。

视频纹理与物理系统

  • 视频纹理规范
    • 分辨率:建议低于 720p
    • 时长:控制在 10 秒以内
    • 并发:避免多视频同时播放(移动端并发解码能力有限)
  • 物理系统优化

    在 Effect Settings 中降低"接触速度迭代次数"和"位置迭代次数"。减少物理刚体数量。避免复杂的多点碰撞与实时链式结构。