SuperAPI AI 工具集

game-development

编程与开发

查看项目

更新于 10-15 17:59

技能介绍

用途

该技能面向游戏开发中的动画实现,目标是把迪士尼的12条动画原则应用到游戏引擎、玩家反馈和互动娱乐中,帮助在 Unity、Unreal 或其他游戏引擎里实现游戏动画、玩家反馈、角色移动等内容。

主要能力(12条原则 → 游戏实现)

  • 挤压与拉伸:角色形变、冲击帧。
  • 预备动作:起手动画、蓄力指示。
  • 舞台调度:相机焦点、环境提示。
  • 顺画 / 摆姿:程序化动画与关键帧动画。
  • 跟随与重叠:披风、头发、武器拖尾。
  • 慢入 / 慢出:动画曲线、攻击与恢复。
  • 弧线:投射物路径、跳跃轨迹。
  • 次级动作:粒子、镜头震动、音频同步。
  • 时间:帧数据、命中定格、响应窗口。
  • 夸张:风格化移动、受击反应。
  • 扎实造型:一致剪影、远距离可读。
  • 吸引力:角色个性、令人满意的反馈。

使用要点(来自资料正文)

  • 挤压与拉伸:落地冲击时使角色形变;高速移动时拉伸;用冲击帧定格并挤压以体现力量;形变时保持体积一致。
  • 预备动作:攻击起手向玩家预告;起跳前下蹲;蓄力攻击展示积攒过程;敌人起手动作预警即将到来的伤害。
  • 舞台调度:相机取景重要动作;环境光照引导注意力;敌人摆位形成可读的战斗场景;UI 不遮挡关键玩法信息。
  • 顺画 / 摆姿:程序化动画(布娃娃、物理)属顺画;关键帧攻击连招属摆姿;两者可混合,以关键帧为基底叠加程序化次级运动。
  • 跟随与重叠:次级元素(头发、布料、尾巴)在身体停下后继续运动;武器拖尾在挥砍后延续;落地恢复延长到初次冲击之后。
  • 慢入 / 慢出:使用动画曲线,角色运动不要用线性;攻击起手快出、恢复慢入;跳跃顶点缓动以控制漂浮感。
  • 弧线:跳跃遵循抛物线;挥剑沿曲线路径;投射物自然成弧(除非是即时命中);翻滚应走曲线而非线性平移。
  • 次级动作:冲击时镜头震动;命中时粒子迸发;手柄震动与动作同步;音效设计强化视觉时间点。
  • 时间:命中定格(冻结帧)强化冲击,通常2-5帧;攻击的起手/生效/恢复帧数据影响手感;对输入的响应低于100ms。
  • 夸张:游戏动画需在远距离与高速下可读;姿势夸张到超出写实20-30%;受击反应比物理更戏剧化;风格化服务于清晰度。
  • 扎实造型:剪影在所有缩放级别都可读;角色比例在各动画间保持一致;关键帧姿态有力;避免切线混淆形体。
  • 吸引力:待机动画体现角色个性;移动本身令人满足,与机制无关;玩家应乐于观看自己的角色移动。

引擎模式(代码示例)

Unity:

// Squash and stretch on landing
IEnumerator LandingSquash() {
    transform.localScale = new Vector3(1.2f, 0.8f, 1.2f);
    yield return new WaitForSeconds(0.05f);
    // Ease back to normal
    float t = 0;
    while (t < 1) {
        t += Time.deltaTime * 8f;
        transform.localScale = Vector3.Lerp(
            new Vector3(1.2f, 0.8f, 1.2f),
            Vector3.one,
            EaseOutElastic(t));
        yield return null;
    }
}

// Hit-stop for impact
IEnumerator HitStop(int frames) {
    Time.timeScale = 0f;
    for (int i = 0; i < frames; i++)
        yield return null;
    Time.timeScale = 1f;
}

Unreal:

// Animation curve for easing
UPROPERTY(EditAnywhere)
UCurveFloat* JumpArcCurve;

// Apply curve to movement
float CurveValue = JumpArcCurve->GetFloatValue(NormalizedTime);

时间参考(60fps 帧数据,需按目标帧率调整)

动作类型 起手 生效 恢复
轻攻击 3-6f 2-4f 8-12f
重攻击 12-20f 4-8f 16-24f
跳跃 3-4f -- 4-6f
闪避 2-4f 8-12f 6-10f