【GAMES104】总结

Lecture 09

reference

PPT

Animation Blending 动作融合

在这里插入图片描述
不同的动作通过LERP进行插值。

Blend Space

包括1D的和2D的。
在这里插入图片描述
在这里插入图片描述
但是动画素材在采样空间(Blend Space)上的分布其实是不均匀的,比如侧向走到侧向跑,其实很快就进入到跑步的一个过程里去了。所以为了更真实的表达,会加入很多动画,但是在计算的时候,好多一起做blend,代价会比较大,所以用Delaunay三角空间。
在这里插入图片描述
每次做Blend时候,选择临近的三个节点做重心坐标。

Skeleton Masked Blending

在这里插入图片描述
在引擎(Unity)里面做类似这样的效果,就可以在Blend Tree处多加几个Layer,每个Layer控制不同的部位,做出对应的动作。

Additive Blending

在原有的Animation Clip里引入新的动作,生成不同的动作,就叫Additive Blending;可能会带来意想不到的错误,所以尽量少用。

Animation State Machine (ASM)

有了动画之间的融合Blending之后,不同的动画片段该怎么控制呢?
比如对于起跳而言,我们一般是拆成三步来做,分别是“起跳——在空中——着地”,对于有多个状态连起来构成的动作,我们用动画机来做。

ASM的定义

ASM包括nodes和transitions。nodes包括Blend Space,即融合动作的空间,和动画片段;transition包括出入节点、持续时间和曲线。

Fades

动画之间的fade可以是smooth的,也可以是frozen的。比如跑步起跳,可以是跑步的贡献越来越少,逐渐跳起,也可以是站住不动,起跳的。
在这里插入图片描述

Animation Blend Tree(动画树)

结构化的、分layer的ASMs和操作。类似表达式树:
在这里插入图片描述
动画树里的非叶子节点,是通过子节点运算、插值得到的。
在这里插入图片描述

Inverse Kinematics(IK)

在这里插入图片描述
比如在地面上走路,没有IK就只能穿模行走。

Two Bones IK

在这里插入图片描述
在这里插入图片描述
但是IK可能得到很多结果,通过一个参考向量。如下是通过参考向量得到平面,确定了唯一的位姿。
在这里插入图片描述

IK的问题

IK还有很多问题亟需解决。
在这里插入图片描述

在这里插入图片描述
IK的问题有很多,其中最首先可以解决的是,判断一个物体够不够得到。
在这里插入图片描述
人类的骨骼是很复杂的。
在这里插入图片描述

IK的优化

CCD (Cyclic Coordinate Decent)

FABRIC (Forward And Backward Reaching Inverse Kinematics)

Jacobian Matrix

Other IK Solution

在这里插入图片描述

IK is still chanllenge

在做IK的时候,是把骨骼当成理想线,但实际上加上蒙皮之后,模型应该是有厚度的,这点需要考虑进去;
还要就是IK在运动的时候,引入预测,即预先知道要做什么,身体做出反馈;在很多游戏里其实是基于距离的检测,比如当玩家靠近山洞的时候,半弯腰。

Facial Animation

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Key Pose Blending

在这里插入图片描述
在这里插入图片描述

FACS In Morph Target Animation

引入Morph,存放不同的面部表情中,相对于标准脸的顶点的偏移。
在这里插入图片描述

UV Texture Facial Animation

在这里插入图片描述
使用一系列的2D纹理呈现面部表情。

基于真实面部肌肉的表情模拟

在这里插入图片描述

Animation Retargeting

动画重映射:在不同角色间共享动画。
忽视了不同角色本身骨骼的不同,保存的是每个骨骼相互之间的偏移量,所以原本驼背的角色不会因为用了笔直的角色的动画而变得笔直。
动画重映射还有问题是角色体型、服装可能会导致穿模,且有些动作的语义(比如拍手)不能完美复刻。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_39006214/article/details/127451861