骨骼动力学
让一根骨骼自己跟进、自己安定下来,而不是把每一下最后的晃动都手工打上关键帧。
动力学给一根骨骼的角度、位置或缩放加上弹簧物理,三者各是一条通道、在骨骼的属性里各有自己的开关。一根带动力学的骨骼仍旧跟着你在它父级上设的每一个关键帧走:动力学只是在此之上添了那份滞后和过冲,也就是一条尾巴或一束马尾辫才有、而一次刚性旋转没有的那种运动。
三条通道
角度、位置和缩放动力学彼此独立:只给某根骨骼真正需要的那些打开。角度动力学是大多数绑定用得上的那一条,用于一条肢体或一串垂下来的东西的甩动;位置和缩放动力学是给那些平移或大小本身就该带弹性和滞后的骨骼准备的。
| 通道 | 参数 | 默认值 | 范围 |
|---|---|---|---|
| 角度 | 刚度 | 10.0 | 0.1 到 100 |
| 角度 | 阻尼 | 0.80 | 0 到 1 |
| 角度 | 柔韧度 | 100% | 0 到 100% |
| 角度 | 重力 | 0 | -200 到 200 |
| 角度 | 风敏感度 | 100% | 0 到 200% |
| 角度 | 扭矩 | 0.0 | -200 到 200 |
| 角度 | 权重 | 1.00 | 0.01 到 20 |
| 位置 | 弹簧 | 10.0 | 0.1 到 100 |
| 位置 | 阻尼 | 0.80 | 0 到 1 |
| 位置 | 扭矩 | 0 | -500 到 500 |
| 位置 | 权重 | 1.00 | 0.01 到 20 |
| 缩放 | 弹簧 | 10.0 | 0.1 到 100 |
| 缩放 | 阻尼 | 0.80 | 0 到 1 |
| 缩放 | 扭矩 | 0 | -100 到 100 |
| 缩放 | 权重 | 1.00 | 0.01 到 20 |
什么让一根骨骼安定下来,什么让它过冲
刚度(在位置和缩放通道上叫弹簧)是这根骨骼往它被打了关键帧的姿势上拉得多用力:把它抬高得到干脆、抽动式的反应,压低则是缓慢沉重的摇摆。阻尼,0 到 1,是那股拉力多快失掉能量:接近 0 时骨骼会荡过目标、来回摆一阵才安定下来;接近 1 时它平缓地进去,完全没有过冲。
权重代表质量:更重的骨骼(权重更高)在追上之前落在驱动它的运动后面更远,更轻的几乎立刻就跟上。扭矩不管什么在推这根骨骼,都加上一份恒定的旋转(或者位置、或者缩放)推力,用来做一份稳定的倾倒而不是对运动的反应很合适。重力只在角度通道上有,它任何时候都以同样的方式把骨骼往下拉。柔韧度缩放的是整条通道到底被允许动多少。把它压低,可以把一根骨骼钉得更靠近它被打了关键帧的姿势,同时仍旧漏一点动力学出来。
风
风敏感度决定这一根骨骼对那个共用的风场反应有多强,0 到 200%,默认 100%。风本身(到底开没开、有多大)是在物理面板里为整个场景设一次的;见「物理与风」。一根动力学关着的骨骼从不对风起反应,不管它的敏感度设得多高。
确定性,以及播放头为什么必须走过去
动力学是一套真的模拟,不是随机的抖动:它从骨骼的静止姿势出发,一帧一帧往前推,而每一帧的结果都取决于它前面那一帧。不管你怎么到达某一帧(播过去还是直接拖过去),Celas Studio 都会把那一串帧解算出来,所以同样一次甩动每次都以完全一样的方式安定下来,而一个暂停住的帧也绝不会自己继续飘。