Games101学习笔记 Lecture21 Animation

一、关键帧Keyframe动画

在这里插入图片描述

  • 动画师创建关键帧,其余员工(人或者电脑)创建中间帧
  • 关键帧动画本质上就是一个插值技术,把每一帧比作一参数向量,对其进行插值求得中间帧
  • 需要更加平滑可控的样条线来进行插值
    在这里插入图片描述

二、物理模拟

  • Physically Based Animation 是通过数值模拟来生成物体运动的动画技术,利用物理学原理来模拟真实世界的物理现象(重力、摩擦、碰撞和弹性等)
  • 模拟布料、流体等

质点弹簧系统

1.方法

在这里插入图片描述

  • 初始建模:
    • 每个顶点表示一个质点
    • 每条边表示一个弹簧(静止长度为边长)
    • 弹性系数、阻尼系统
  • 动态模拟:
    • 确定好一个步长时间 Δ t Δt Δt
    • 每过一个步长时间,所有弹簧的弹力传播并更新一次
  • 实例:
    在这里插入图片描述

2.理想化弹簧

F = k s Δ x F = k_{s}Δx F=ksΔx —— 胡克定律

  • 弹簧的力总是将两个连接点拉向彼此
  • 力的大小与两个连接点之间的位移成正比(越压缩拉伸,力越大)

3.非零长度弹簧

有自然长度l, F = k s b − a ∣ ∣ b − a ∣ ∣ ( ∣ ∣ b − a ∣ ∣ − l ) F = k_{s} \frac{b-a}{||b-a||} (||b-a||-l) F=ks∣∣ba∣∣ba(∣∣ba∣∣l)

  • 问题:无限振荡 —— 弹簧会在两个连接点之间无限振荡,永远不会停止。这是因为弹簧的力总是试图将连接点拉回到自然长度,但由于惯性的作用,连接点会继续运动,导致弹簧不断振荡

4.弹簧阻尼系统

  • 人为附加的虚拟力,与速度方向相反,避免运动爆炸
    在这里插入图片描述

5.质点弹簧系统优化

  • 原来的系统的局限性
    • 切变时会受到影响
    • 发生弯曲时会变的不是一个平面
  • 优化
    • 增加虚拟弹簧(红)(相隔的质点添加一个),稳定形状
    • 增加角弹簧(蓝),保持两个相邻面之间的固有角度
      在这里插入图片描述

粒子系统

  • 粒子与粒子之间不只有碰撞,还有引力

粒子动画的每一帧

  • 动态生成
  • 计算内部力、外部力
  • 通过力来计算粒子的位置和速度
  • 去除死亡粒子
  • 渲染粒子

粒子系统的力

  • 吸引力和斥力

    • 万有引力
    • 在这里插入图片描述
  • 阻尼力:摩擦力、空气阻力等

  • 碰撞力

群体动画

  • 鸟群
    • 其他鸟想融入集体
    • 任何一个鸟不会离其他的鸟太近
    • 个体有自己的运动属性

三、运动学

1.前向运动学

  • 用于根据关节角度计算物体上各个点的位置。它通常用于模拟由关节连接的骨骼结构
  • 动画师会为每个关节设置一系列的角度值,这些角度值随时间变化,从而控制角色的运动
  • 关键概念:
    • 拓扑结构Topology:指明骨骼中哪些部分是连接在一起的
    • 几何关系:关节的几何参数,类型方向等
    • 树状结构:每个节点代表一个关节,诶个树枝代表骨骼
  • 关节类型:
    • Pin Joint:允许在单个方向上旋转,肘关节
    • Ball Joint:允许在两个方向上旋转,肩关节
    • Prismatic Joint(棱柱关节):允许单一方向移动,膝关节
      在这里插入图片描述
  • 好处
    • 直接控制方便
    • 计算相对简单
  • 缺点
    • 可能不符合物理规律
    • 耗时耗力

2.逆向运动学 Inverse Kinematic

  • 用于根据末端执行器的位置计算物体上各个关节的角度。它与正向运动学相反,FK 是根据关节角度计算末端执行器的位置
  • 问题:解有时候不唯一,有时候无解
    在这里插入图片描述

优化——数值法

  • 指的是使用计算机算法进行迭代计算的方法,例如梯度下降法或牛顿法
  • 步骤
    • 选择初始配置: 选择一个合理的初始关节角度,例如关节角度为零
    • 定义误差度量: 定义一个衡量末端执行器位置和目标位置之间差异的指标,例如两者之间的距离平方
    • 计算梯度: 计算误差度量对关节角度的偏导数,即梯度
    • 应用梯度下降法: 沿着梯度下降的方向更新关节角度,使误差度量逐渐减小,最终达到最小值

3.绑定 Rigging

  • 用于创建高层次的控制器,使动画师能够更快速、更直观地修改角色的姿势、变形和表情等

4.动作捕捉

  • 它通过记录真实世界中的表演(例如人执行动作)来获取动画序列。然后,从收集到的数据中提取姿势随时间的变化,并将其应用于动画角色

恐怖谷效应 Uncanny valley

  • 是指随着人工智能或机器人外观越来越接近人类,人们对它们的情感反应会经历一个先上升后下降的过程。当外观接近人类但还不够逼真时,人们会感到不适和恐惧,就像掉入了一个“恐怖谷”

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 08:56:03       48 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 08:56:03       53 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 08:56:03       41 阅读
  4. Python语言-面向对象

    2024-07-20 08:56:03       52 阅读

热门阅读

  1. docker

    2024-07-20 08:56:03       19 阅读
  2. OLAP分类

    2024-07-20 08:56:03       17 阅读
  3. MySQL 处理重复数据

    2024-07-20 08:56:03       18 阅读
  4. Eureka基本概念

    2024-07-20 08:56:03       16 阅读
  5. Ubuntu下使用notify-send

    2024-07-20 08:56:03       15 阅读
  6. 【22】Android高级知识之Window(三) -WMS

    2024-07-20 08:56:03       16 阅读
  7. HMACSHA256的原理和在C# 中的使用

    2024-07-20 08:56:03       18 阅读
  8. 内网渗透简介

    2024-07-20 08:56:03       16 阅读
  9. Go网络编程-HTTP程序设计_2

    2024-07-20 08:56:03       17 阅读
  10. 基于Go 1.19的站点模板爬虫

    2024-07-20 08:56:03       15 阅读
  11. 财迷换钱

    2024-07-20 08:56:03       15 阅读