animation-quality-gate

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Animation Quality Gate

动画质量门

Do not accept an animation because it rendered. Accept it only after a contact sheet and failure analysis pass.
不要仅因动画完成渲染就予以验收。只有在contact sheet验证和失败分析通过后,才能验收动画。

Review dimensions

审核维度

  1. Subject dominance — the main asset remains readable and is not overwhelmed by HUD/context.
  2. Layer separation — base subject, texture state, glow, HUD, and background are separate enough to control.
  3. Silhouette stability — silhouette stays constant unless deliberate morph is specified.
  4. Texture coherence — no ugly full-image crossfade, crop pop, or unregistered morph.
  5. Motion coherence — arcs/dots have a reason, restrained speed, and coherent easing.
  6. Export truth — the final export can reproduce the effect or limitations are explicit.
  7. Frame aesthetics — sampled frames look good as stills.
  1. 主体突出度 —— 主要元素清晰可辨,不会被HUD/背景元素掩盖。
  2. 图层分离度 —— 基础主体、纹理状态、光晕、HUD和背景足够独立,便于控制。
  3. 轮廓稳定性 —— 除非指定了刻意变形,否则轮廓应保持一致。
  4. 纹理连贯性 —— 不存在难看的全画面淡入淡出、裁剪跳变或未对齐的变形。
  5. 动效连贯性 —— 运动轨迹(弧线/点)具备合理性,速度适中,缓动效果连贯。
  6. 导出真实性 —— 最终导出文件能够复现动画效果,或明确标注限制条件。
  7. 单帧美观度 —— 采样帧作为静态画面时视觉效果良好。

RALPH trigger

RALPH触发条件

If a user calls an animation ugly/bad, stop rebuilding immediately. First:
  • collect preview frames/contact sheet;
  • identify the failed dimension(s);
  • invoke
    quality-refinement-autoloop
    if the stack lacks a method;
  • add/refine generic skills only after sanitization;
  • only then rebuild the animation.
如果用户反馈动画难看/效果不佳,需立即停止重新制作。首先:
  • 收集预览帧/contact sheet;
  • 确定未通过的审核维度;
  • 若现有流程中缺少对应方法,调用
    quality-refinement-autoloop
  • 仅在完成问题修正后,添加/优化通用技能;
  • 之后再重新制作动画。

Hard gates

硬性要求

  • No final animation without a contact sheet.
  • No GLB claim for texture swaps implemented only with Blender Python handlers.
  • No decorative context elements in base avatar export unless requested.
  • No morph that violates locked geometry constraints.
  • 未生成contact sheet的动画不得作为最终版本。
  • 仅通过Blender Python处理器实现的纹理切换,不得声称支持GLB格式导出。
  • 基础角色导出文件中不得包含装饰性背景元素,除非用户明确要求。
  • 不得出现违反锁定几何约束的变形效果。

Scripts

脚本

  • scripts/animation_contact_sheet.py
    builds a contact sheet and frame-to-frame difference report from rendered frames.
  • scripts/animation_contact_sheet.py
    可从渲染帧生成contact sheet和帧间差异报告。