在不平坦的表面上反弹球会导致方向发生变化。在本课,您要使用点辅助对象来控制这些变化,从而使动画易于编辑。
打开场景:
- 在快速访问工具栏上,单击
(打开文件),导航到 \scenes\animation\auto_key 文件夹,然后打开 bouncing_chaos_start.max。 注: 如果对话框询问您是否要使用场景的 Gamma 和 LUT 设置,请接受场景 Gamma 设置,然后单击“确定”。如果对话框询问是否要使用场景的单位,请接受场景单位,然后单击“确定”。
场景是上一课中的反弹高尔夫球。平面具有纹理,这代表带砖缝的砖地。不平坦的表面(如沥青、带有砖缝的砖地等)可使反弹偏离预定方向。
您可以保持反弹,但移除前进运动,并且用 X 和 Y 方向的变化替代它。
移除 X 和 Y 方向的运动:
-
选择球,右键单击它,然后从四元菜单中选择“曲线编辑器”。 提示: 如果“曲线编辑器”打开后轨迹和曲线不显示,请在左侧的控制器窗口中平移,直到看到它们,然后单击以高光显示位置轨迹。
- 高亮显示“X 位置”轨迹。在曲线窗口中拖动以选择所有关键点,然后按
键。 现在,球在原地反弹,不会前进。
- 高亮显示“Y 位置”轨迹,并删除它的所有关键点。
-
关闭“曲线编辑器”。
现在,您需要为球添加更多“混乱”运动:当它碰撞到砖面时,它应继续保持原有方向,但当它碰撞到砖缝时,它应改变方向。
您可以使用球本身为此侧向运动设置动画,但最好使用辅助对象:使用此方法,辅助对象动画独立于球及其反弹轨迹,因此,如果您以后需要更改侧向运动,不会影响到反弹。
创建点辅助对象来控制球:
- 在
“创建”面板上,启用
(辅助对象),然后在“对象类型”卷展栏中,单击以启用“点”。
注: 许多动画师使用“虚拟对象”辅助对象而不是“点”。使用点辅助对象的优点在于您可以调整其大小而不必缩放它。缩放层次结构中的辅助对象会影响其子对象:您通常想要避免此效果。
- 单击
(最大化视口切换)以显示全部四个视口。
- 如果您不在帧 0 处,请单击
(转至开头)。
- 在“顶”视口中,在高尔夫球旁边单击以创建点辅助对象。
- 在点辅助对象的“参数”卷展栏中,单击“外框”以将其启用,然后将外框的大小更改为 40。
- 在主工具栏上,单击
(对齐),然后单击球。
- 在“对齐当前选择”对话框
“对齐位置 (屏幕)”组中,启用“X 位置”、“Y 位置”和“Z 位置”。然后,针对“当前对象”(点辅助对象)和“目标对象”(高尔夫球)选中“居中”。
- 单击“确定”以关闭“对齐”对话框。
将球链接到点辅助对象:
- 在“顶”视口中,
进行放大以获取球和辅助对象的更佳视图。
- 在主工具栏上,启用
(选择并链接)。
- 选择球,接着将其拖至点辅助对象的外框,然后松开鼠标。
现在,球是点辅助对象的子对象:当您移动该点时,球将随着移动。
-
移动点辅助对象。 球及其轨迹将追随点。
-
撤消点辅助对象移动。
设置方向变化动画:
若要使球不规律地移动,需要在球每次碰击地面时使它发生侧向运动(通过点辅助对象)。如果球撞击砖地,它会继续前进。如果球撞击砖缝,则它会改变方向。
最轻松的方法是在“顶”视口中移动点,同时在“透视”视口中观看效果。
- 在“顶”视口中,单击
(最大化显示)以便可以再次查看整个地面。
- 启用
(自动关键点)。
- 将时间滑块拖动至第 10 帧。这是球落地时的第一帧。
- 在“顶”视口中,沿 X 轴移动点,并前进大约一块砖。球应该落于砖上。
提示: 启用

(选择锁定切换)以避免取消选择点辅助对象。该按钮位于
3ds Max 窗口底部附近的状态栏上。键盘快捷键是

。
- 将时间滑块拖动至帧 37 处。再次沿 X 轴移动点,大约前进一块半砖。此时,球应该落于砖缝上。

在帧 37 处,球落于砖缝上。
- 将时间滑块拖动至帧 59 处。在此帧处,再次沿 X 和 Y 向右移动球并使其再次移至砖缝上。

在帧 59 处,球已向右转,只是为了再次落于砖缝上。
- 在帧 81 处,再次更改球的方向,以便它向左移动。
- 到目前为止,您应该已经有了一般了解。将时间滑块从一个地面接触帧移至下一个地面接触帧。帧 81 之后的帧分别为:101、117、134、147、160、173、183、193、202、219、226 和 230。
在球落于砖上时使它按相同方向进行侧向移动,并在它落到砖缝上时更改侧向方向。
下面是在为辅助对象设置动画之后完整的场景看上去的样子:
保存工作:
小结
此教程介绍了使用自动关键点设置动画的一些基本技巧:
此教程还介绍了动画的一些一般原则:
- 质量 通过使对象的表现就像它有重量一样(可能基于现实世界的观察),可大大提高动画的逼真度。
- 缓入,缓出 让运动缓慢开始,然后再缓慢结束,这样在许多情况下也可以提高逼真度。自动关键点默认创建缓入/缓出计时。在一些情况下,正如您所见,这并不是最佳解决方案。当球从硬表面反弹时,运动应该较快。
- 挤压和拉伸 对象在运动时会进行拉伸,在停止时会进行挤压。您可以放大此效果,无论是对于球还是角色,仍旧可以获取成功的动画。