动画和约束 | Animation and Constraint
此类拼图用于对动画片断进行操作,做程序化的动画,以及限制对象的运动。
![](files/puzzles/puzzles-animation.jpg)
内容
- 动画拼图参考
- play animation(播放动画)
- stop animation(停止动画)
- pause animation(暂停动画)
- resume animation(恢复动画)
- set animation frame(设置动画帧)
- get animation frame(获取动画帧)
- is animation playing(动画正在播放)
- set animation speed(设置动画速度)
- get animation speed(获取动画速度)
- on animation frame do(在动画的第...帧执行)
- get animation(获取动画)
- clone animation(克隆动画)
- animate param(动画参数)
- updated value(更新值)
- 约束类拼图参考
动画拼图参考
play animation(播放动画)
播放一个动画片段。动画片段的名称对应于在Blender、3ds Max或Maya中被指定动画的对象(每个对象只能指定一个动画片段)。使用 animation selector(动画选择器)为这个拼图提供一个动画片段。
使用 "from" 和 "to" 字段来指定帧范围。使用 "speed" 字段来指定播放速度。选中 "reversed" 复选框可以实现倒放。下拉菜单可以用来改变动画模式: "auto" 允许使用三维软件中指定的动画模式,而其他模式则会覆盖Blender、3ds Max或Maya中的设置。
动画完成后, when finished: do 插槽中的拼图将被执行(这仅对 "once" 动画模式有效)。
![](files/puzzles/puzzles-animation-play.jpg)
此拼图也适用于动画片段列表。
stop animation(停止动画)
停止播放一个动画片段。也适用于一个动画片段列表。
![](files/puzzles/puzzles-animation-stop.jpg)
pause animation(暂停动画)
暂停一个动画片断的播放,以便以后可以从暂停的那一帧开始继续播放。也适用于一个动画片段列表。
![](files/puzzles/puzzles-animation-pause.jpg)
resume animation(恢复动画)
恢复之前暂停的动画片断。也适用于一个动画片段列表。
![](files/puzzles/puzzles-animation-resume.jpg)
set animation frame(设置动画帧)
设置一个动画片段到指定的帧。也适用于一个动画片段列表。
![](files/puzzles/puzzles-animation-set-animation-frame.jpg)
get animation frame(获取动画帧)
获取一个动画片段的当前帧。
![](files/puzzles/puzzles-animation-get-animation-frame.jpg)
is animation playing(动画正在播放)
检查一个动画片断(或列表中的动画)是否正在播放。
![](files/puzzles/puzzles-animation-is-playing.jpg)
set animation speed(设置动画速度)
改变动画播放速度。动画不会在速度变化时重新播放。开启“reversed”选项可反转动画播放速度(即速度乘以-1)。也适用于动画剪辑列表。
![](files/puzzles/puzzles-animation-set-animation-speed.jpg)
get animation speed(获取动画速度)
获取动画播放的速度。
![](files/puzzles/puzzles-animation-get-animation-speed.jpg)
on animation frame do(在动画的第...帧执行)
在指定帧时执行 do 插槽中的拼图。
![](files/puzzles/puzzles-animation-on-animation-frame-do.jpg)
get animation(获取动画)
检索一个指定对象的动画片段。也适用于对象列表,组(或者组的列表)以及 all objects(所有对象) 拼图。返回值始终是一个动画片段列表(即使只有一个动画片段)。
![](files/puzzles/puzzles-animation-get-animation.jpg)
clone animation(克隆动画)
在指定的范围内克隆一个动画片段(或一个动画列表)。
![](files/puzzles/puzzles-animation-clone-animation.jpg)
animate param(动画参数)
在用 duration 指定(以秒为单位)的时间内,将在 from 和 to 之间的数字参数(或列表中的所有参数,或 字典)动画化。easing下拉菜单允许您指定动画模式(见下文)。
repeat字段指定了第一个动画完成后的重复次数。复选框 yoyo 可以实现往复运动(当 repeat > 1 时有效)。
在 on update do 插槽中的拼图在参数被动画化时,每一个渲染帧都会被触发。在 when finished do 插槽中的拼图会在动画结束后被触发。
![](files/puzzles/puzzles-animation-animate-param.jpg)
此拼图包装了 Tween.js 库,暴露了它所有的 31种缓动模式(如图),持续时间,重复和yoyo设置,以及更新与完成回调。
![](files/puzzles/puzzles-animation-animate-param-easing-modes.jpg)
中间值可以用一个 更新值 拼图来检索,通常放在 on update do 槽内。
updated value(更新值)
返回由 animate param 拼图生成的中间值。根据动画参数的类型,可以是一个数字,一个列表或者一个 字典。
![](files/puzzles/puzzles-animation-updated-value.jpg)
此拼图可以放在场景中的任何地方,但通常放在 animate param 拼图的 on update do 插槽中工作,以执行逐帧刷新操作。
约束类拼图参考
如果一个对象不属于另一个对象的父对象,那么约束就会在世界空间中发挥作用。否则,它们将在父对象的空间中工作——您可以在Blender、3ds Max或Maya中选择父对象来显示坐标轴。
limit transform(限制变换)
创建一个约束,以限制对象沿选定轴的位置、旋转或缩放。约束的 id 应该是唯一的,否则将会替换现有相同id的约束。在 min 和 max 插槽中指定允许移动的范围。 约束可以限制两个对象之间的距离,因此距离槽指定距离限制,即约束球体的半径, 等于 , 最大 , 最小 模式分别约束 在球面,在球内,在球外 。
![](files/puzzles/puzzles-constraints-limit-transform.jpg)
copy transform(复制变换)
创建一个约束,从另一个对象复制对象的位置、旋转、比例或所有变换。约束的 id 应该是唯一的,否则将会替换现有相同id的约束。
![](files/puzzles/puzzles-constraints-copy-transform.jpg)
remove / mute / unmute constraint(删除/静音/取消静音约束)
将对象上指定的约束删除、静音或取消静音。如果对象上指定有其他约束,将保持不变。
![](files/puzzles/puzzles-constraints-remove-mute-unmute-constraint.jpg)
在使用拼图时遇到困难?
欢迎您随时在 论坛上提问!您还可以加入中文用户社区QQ群(171678760),在线寻求帮助。