GAMES105笔记与理解(一)
概述
- 计算机角色动画大致可以分为两种,一种是基于物理仿真的,另一种是直接改变物体姿态的,是基于关键帧的。
- low-level control和high-level control的理解:
low-level:每一帧每一个姿态每个关节的控制 —— 精确但低效
high-level:给角色一个高级的目标,比如“到那边拿一杯水”
keyframe animation 技术回顾
- 前向运动学与逆向运动学、关键帧之间的插值方法
- 运动重定向(motion retargeting):但是不能产生新的动作
- 状态机(motion graphs/state machines):重用已有的运动数据来产生新的动作,且可以应用更高级的控制信号,但缺点是状态机的构造非常复杂
- motion matching:不是完整地播放一个动作,而是每一帧结束之后通过最近邻搜索找到新的姿态,该姿态满足运动目标、状态连续性
- learning-based approaches/motion generative models:学习动作的生成,只需给数据不同的动作数据就好,让网络去学习动作内在的规律
- 跨模态动作生成(cross-modal motion synthesis):通过语音生成动作【Ao et al. 2022. Rhythmic Gesticulator. SIGGRAPH Asia 2022】,根据一句话生成骨骼动画【Tevet et al. 2022. MotionCLIP】
physics animation 技术回顾
- Problems of Kinematic Methods
- 物理准确性(穿墙、脚底打滑)
- 环境互动产生的状态(动作会受到环境的影响)
因此也需要physics-based approaches
- physics-based character animation常见模型
生成的不是直接的姿态,而且一些物理控制量,再利用物理仿真去得到姿态。现有的技术也有将motion controll暂时忽略掉,只是考虑动作本身的状态在物理规律下的动作--Ragdoll Simulation
技术回顾
4. “keyframe control”:proportional-derivative(PD) control、Trajectory Crafting
5. Spacetime/Trajectory Optimization:利用计算机生成合理的运动轨迹、可以进行目标重定向;缺点:优化目标函数高维且非常非线性
6. 简化模型(Abstract models):缺点是实现的运动都比较简单(慢慢的走路)、生成的动作细节不足【Yin et al. 2007 SIMBICON】
7. 强化学习:通过跟环境的交互来更新学习
8. Generative Control Policies:不是生成控制量,而是学习运动生成时的运动规律