知识卡片

动力学与运动学:描述运动的两种视角

专业/工作 · 1294.h

内容

动画中的运动可以用力学的两个分支来自动生成,二者的视角完全不同:动力学通过给物体赋予速度、质量等属性,应用物理定律(重力、碰撞)计算力作用在物体上产生的效果——比如模拟一桶水晃动,就用粒子系统表示无数”小水分子”,靠物理定律逐帧计算每个粒子的位置;运动学则不关心力,只关心物体各部分之间的相对运动方式——比如一个动画角色的手臂摆动,与其去计算肌肉和重力产生的力,不如直接建立骨骼结构、通过控制肩、肘、腕关节的旋转角度(关节变量)来摆出合理姿势,这与人操纵提线木偶的方式如出一辙。发散:这两种方法的取舍取决于运动的本质是”由物理力驱动的连续过程”(水的晃动、球的反弹,适合动力学)还是”由结构约束下的相对位置关系决定”(关节角色的肢体动作,适合运动学)——判断一个运动现象该用哪种方法建模,关键在于问”驱动这个运动的到底是外部施加的力,还是内部结构各部分之间的连接关系”。

参考来源

《计算机科学概论》第10章《计算机图形学》