命令条目: “工具”面板 “工具”卷展栏 “运动捕捉”按钮

使用外部设备(如 MIDI 键盘、游戏杆和鼠标),“运动捕捉”工具可以驱动动画。驱动动画时,可以对其进行实时记录。

3ds Max 中的运动捕捉系统的处理方式如下:          

  1. 在轨迹视图中,向需要由外部设备控制的特定轨迹分配运动捕捉动画控制器。

  2. 分配运动捕捉控制器之后,可以为该轨迹打开“属性”对话框,然后绑定外部设备的类型。例如,旋转运动捕捉控制器包含可以分别绑定每个设备的三个旋转轴。

  3. 绑定设备之后,在“轨迹属性”对话框下面部分中调整设置和参数。这些控件因设备类型而异。

  4. 在“工具”面板中,打开“运动捕捉”工具。您可以测试和记录任何帧范围内的轨迹的全部组合。

3ds Max 附带的运动捕捉设备如下:          

“鼠标输入设备”卷展栏          

“键盘输入设备”卷展栏          

“游戏杆输入设备”卷展栏          

“MIDI 设备”卷展栏          

过程

要向轨迹分配运动捕捉控制器,请执行下列操作:

使用运动捕捉的第一步是,向所需的轨迹分配运动捕捉控制器。

  1. 在“轨迹视图”层次中,高亮显示所需的变换轨迹。

  2. 选择“控制器”“指定”。                  

    3ds Max 将打开“指定控制器”对话框。                  

  3. 选择“运动捕捉”(可能以“位置”、“浮点”、“缩放”或其他开头),然后单击“确定”。

    此时,将会显示“运动捕捉”对话框。其标题栏包括对象的名称和为其分配控制器的轨迹。

    如果打开的是“数据”对话框,请将其关闭,并右键单击轨迹名称,然后选择“属性”。

                     

    分配运动捕捉控制器时,以前分配的控制器将作为该控制器的子级进行维护。这样,便可继续使用标准变换控件调整对象,即便仍旧使用运动捕捉控件,也是如此。

要绑定和调整设备,请执行下列操作:

  1. 分配运动捕捉控制器之后,可以确定要生成运动的设备类型。

    根据控制器的类型,可以绑定一个或多个设备。例如,旋转运动捕捉控制器有三个设备,每个设备对应每个旋转轴。另外一方面,圆柱体半径控制器只能使用一个设备控制半径值。

  2. 为轨迹绑定“属性”对话框中的设备。

要指定设备,请执行下列操作:

  1. 选定旋转轨迹时,单击“属性”按钮。                  

    旋转运动捕捉的“属性”对话框包括三个绑定按钮(一个按钮对应一个轴)。

  2. 单击“Y 旋转”按钮。在结果对话框中,选择“鼠标输入设备”,然后单击“确定”。

    此时,“属性”对话框的下半部分将会显示特定于新设备的控件。假定这是一个没有连接其他对象的段,且需要水平移动鼠标。                  

  3. 在“鼠标输入”的下方,选择“水平”。                  

    使用缩放微调器,可以调整鼠标相对于旋转的运动效果。“翻转”可以反转鼠标移动的旋转方向。

示例:要设置游戏杆控制器以便移动自由摄影机,请执行下列操作:

设置游戏杆控制器,以便在 XY 平面上来回移动自由摄影机。游戏杆在 Y 方向的移动将会影响摄影机的前后移动,而游戏杆在 X 方向的移动将会使摄影机发生旋转。您可以使用“基于方向的增量”,使摄影机在 Y 方向的移动是局部的,而不是全局的。

  1. 在“前”视口中创建“自由摄影机”。

  2. 在轨迹视图中,为摄影机的旋转轨迹分配旋转运动捕捉控制器。

  3. 右键单击旋转轨迹,以便显示“运动捕捉属性”对话框。

  4. 单击“Z 旋转”旁的按钮,然后分配“游戏杆输入设备”。

  5. 在“游戏杆轴”的下方,选中“X”选项(如果尚未选中)。

  6. 选中“积累”,以便在每次释放游戏杆时,旋转都不会归零。

示例:要设置随游戏杆一起移动的摄影机的位置控制器,请执行下列操作:

摄影机绕全局 Z 轴的旋转将由该游戏杆在 X 方向的运动控制。可以对该摄影机的位置控制器进行设置,以便使该摄影机可以随游戏杆在 Y 方向的运动而来回移动。

  1. 向摄影机的位置轨迹分配位置运动捕捉控制器,然后访问其“属性”对话框。

  2. 同时向“X 位置”和“Y 位置”按钮分配游戏杆输入设备。

  3. 单击“编辑绑定 X”按钮,然后选中“游戏杆轴”下方的“Y”选项。

  4. 选中“积累”。

  5. 单击“编辑绑定 Y”按钮,然后选中“游戏杆轴”下方的“Y”。

  6. 选中“积累”。                  

    此时,游戏杆在 Y 方向的运动将会同时影响摄影机在 X 和 Y 方向的位置。    

继续示例:要添加基于方向的增量选项,请执行下列操作:

如果此时已测试该摄影机,沿着 Y 方向前后移动游戏杆时,将会生成对角线运动,原因在于位置轨迹将会获得同等数量的 X 和 Y 值。添加“基于方向的增量”选项时,将会更改上述操作。

  1. 单击“X 编辑绑定”按钮。

  2. 在“基于方向的增量”选项的下方,单击控制器旁的按钮。

    此时,将会显示一个对话框,其中列出了一组控制器。

  3. 为摄影机查找和选择旋转运动捕捉控制器。

  4. 将“方向”选项设置为 Z(方向所指的局部轴)。

  5. 将“组件”选项设置为 X(匹配的“编辑绑定”按钮)。

  6. 单击“Y 编辑绑定”按钮。

  7. 单击控制器旁的该按钮,然后分配旋转运动捕捉控制器。

  8. 将“方向”选项设置为 Z,然后将“组件”选项设置为 Y。

  9. 打开“运动捕捉”工具,启用列表中的两个轨迹,并单击“测试”按钮,然后在“顶”视口中查看摄影机时移动该摄影机。                  

    沿着 Y 方向移动游戏杆时,摄影机也会随之前后移动。沿着 X 方向移动游戏杆时,将会旋转摄影机,但是,此时,继续沿着 Y 方向移动摄影机时,该摄影机将会沿着其局部轴前后移动。                  

界面

“运动捕捉”卷展栏                

“记录控制”组                  

 

测试和记录动画。使用前三个按钮,可以直接控制记录,而使用“开始/停止”按钮,可以通过 MIDI 设备控制记录。                  

开始

开始使用“轨迹”列表下方“记录范围”下方设置的值进行记录。

停止

在到达“输出”帧之前停止记录。另外,还可以按 Esc 或鼠标右键停止记录。

测试

测试运动。没有做任何记录。重新单击“测试”、Esc 键或鼠标右键即可退出。

测试期间播放

启用并单击“测试”后,场景中的动画将会在测试运动期间循环播放。请注意,“运动捕捉”列表中选定的轨迹不会播放,原因在于这些轨迹正在等待来自指定外部设备的输入。

开始/停止

显示“开始/停止触发器设置”对话框。您可以选择要控制记录的 MIDI 设备的类型。

启用

使用指定的 MIDI 设备而不使用“开始”、“停止”和“测试”按钮进行记录。

提示在“时间配置”对话框中,可以减小视口播放速度,并以较低的速度进行测试或记录,然后将速度重置为常值,以便查看相应的结果。

“轨迹”组                  

“轨迹”区域显示了已经分配运动捕捉控制器的所有轨迹。此后,选择要受“记录控制”组中三个按钮影响的轨迹。单击某个轨迹,以便启用或禁用选择框。只有显示红框的选定轨迹才会受“记录控制”组的影响。                  

通过单击轨迹或使用“全部”、“反选”和“无”按钮,可以对其进行选择。此后,可以创建轨迹的命名选择集。要创建命名选择集,请单击所需的轨迹,然后在轨迹列表上方的“编辑”字段中输入相应的名称。要选择以前命名的集,请打开“编辑”窗口,然后从该列表中进行选择。若要删除命名集,请从该列表中将其选中,然后单击右侧的(“删除”)。

注意特定轨迹一次只能属于一个命名选择集。                      

全部

向“记录控制”组分配所有轨迹。

反转

选定轨迹后,将会向“记录控制”区域分配未选定的轨迹。

不向“记录控制”组分配轨迹。                            

默认情况下,将会向每个轨迹提供一个名称,它包含对象的名称以及紧跟其后的反斜杠和参数名称。例如,Sphere01Angle 是一个应用于分配给球体的修改器之一的“角度”参数。重命名轨迹时,不仅可以使用轨迹视图中的“属性”对话框,而且可以双击“运动捕捉”工具中的轨迹名称。每个“属性”对话框的上卷展栏都包含一个“轨迹名称”字段。“轨迹名称”字段中输入的任何名称都显示在“属性”对话框标题栏中“命令”面板的“轨迹列表”中,且位于轨迹视图中“层次”列表中“数据”轨迹的旁边。                    

“记录范围”组                  

 

指定记录影响的帧范围。您还可以设置帧的预卷 范围(如下所述)。

预卷

指定按下“开始”按钮时开始播放动画所在的帧编号。如果该数字大于或等于“内”编号,将会忽略“预卷”编号。例如,如果“输入”为 0,“而“输出”为 200,则“预卷”为 -100 时,将会在开始记录之前提供 -100 帧。如果“预卷”为 50,则毫无意义。如果“预卷”和“外”编号定义的范围大于当前段,记录时,将会暂时放大该段。

输入

指定单击“开始”后记录开始所在的帧编号。

输出

指定单击“开始”后记录结束所在的帧编号。单击“停止”,可以在此前停止记录。

预卷期间激活

激活该选项时,运动捕捉在整个预卷帧期间都处于活动状态。此时,将会产生运动,但不会予以记录。因为到达“内”帧时活动运动可能与动画不符,所以会使运动在“内”帧处突然发生改变。如果未激活该选项,到达“内”帧之前,将会禁用或冻结运动。

“采样”组                  

 

捕捉运动数据时,将会以相对于当前帧速率的速率对其进行采样。其中,默认速率值为每秒 30 帧。采样速率随帧速率的增加而增加。                  

每帧

使用这两个单选按钮,每帧可以选择一个或两个采样。这是一种以字段速率进行采样的简便方法。如果对字段进行渲染,捕捉速率不必达到每秒 60 帧。控制器可以在采样之间插补。

减少关键点

减少捕捉运动时生成的关键点。

阈值

在“阈值”字段中输入的值可以约束 3ds Max 更改选定轨迹的方式。对任何帧而言,新动画和原始动画之差小于阈值。                            

较低的阈值与原始动画的匹配度高,但是不会大幅减少关键点数。                            

较高的阈值生成的关键点最少,但不能提高与原始动画的匹配精度。                            

注意如果激活“减少关键点”,每完成一次记录,还需要额外的计算时间。                              

“开始/停止触发器设置”对话框              

预设

选择 MIDI 设备的类型。如果选择“第二个媒体控制站”,可以使用其按钮执行“停止”、“播放”和“记录”操作。(媒体控制站是一种 MIDI 设备,它包含标准的 VCR 类型播放按钮和一个缓进。)通过选择“自定义”,可以启用该对话框中的其余微调器。您可以在该对话框中设置通道和音符编号。另外,也可以使用“自定义”来定制“媒体控制站”使用的控件。            

通道

指定分配给 MIDI 设备的通道。                      

音符编号

使用后面带该标签的“停止”、“播放”和“记录”微调器,可以指定哪些音符事件可以触发哪项功能。

  • 停止该音符事件可以停止播放或记录。在“媒体控制站”中,它可能是方形按钮。其作用与单击“记录控制”组中的“停止”按钮相同。

  • 播放播放动画。这是“媒体控制站”中的箭头按钮。

  • 记录如果该音符由自身发送,其作用与单击“记录控制”组中的“测试”按钮相同。要记录运动捕捉,必须同时按下“播放”和“记录”按钮(其作用与单击“记录控制”组中的“开始”按钮相同)。您可以在按下“记录”按钮之前或后按下“播放”按钮,然后在按下“记录”按钮之前或之后按下“播放”按钮。释放该按钮后,将会开始进行记录。                        

“鼠标输入设备”卷展栏              

               

通过鼠标的水平或垂直运动控制动画。可用的设置包括:                

水平/垂直

指定驱动动画的鼠标运动。                    

比例

缩放鼠标移动相对于动画响应的效果。(微调器值:浮点值,0 至 999,999)

翻转

翻转响应相对于鼠标移动的方向。例如,向右水平移动鼠标时,将会对旋转控制器产生顺时针效果。激活“翻转”时,将会翻转旋转成逆时针方向。

“键盘输入设备”卷展栏              

用于分配大多数键盘键,以便驱动动画。                

“关键点分配”组                  

单击“分配”按钮,然后按任何键。此时,分配的键将会显示在右侧的列表中。或者,可以打开该列表,然后从其中选择某个键。                  

指定

单击“分配”按钮,然后按任何键。此时,分配的键将会显示在右侧的下部列表中。

[下拉列表]

您可以打开该列表,然后从中选择某个键。

“封套图形”组                  

显示振幅曲线随时变化的表示。                  

“封套参数”组                  

指定相对于按键和释放键操作封套生效的时间。                  

击打

显示按键后使该值达到最大所需的时间。

衰退

显示达到最大值后使该值减小到“持续”微调器指定值所需的时间。

持续

继“击打”和“衰退”之后,此处指定的值是释放键之前持续的值。

释放

释放键后,它是该值减小为 0 时所需的时间。

“参数缩放”组                  

设置封套的比例和输出值的范围。                  

时间

指定“击打”、“衰退”和“释放”参数的比例。该值表示一个单位包含的秒数。例如,如果该值为 1.0,则“击打”值为 1.0 相当于 1 秒。

范围

设置控制器的最大输出值。    

注意该控制器将会忽略 CtrlAltShift 键的状态。

提示因为一个键盘键只能生成正值或负值,所以,如果要控制“弯曲角度”的两个方向,例如,可以使用列表控制器。首选,确保该列表包含第一次分配的标准控制器(如 Bezier 控制器),以便保持中心位置。然后,向该列表中添加两个键盘运动捕捉控制器(一个分配给一个键,其他分配给另外一个键)。将一个控制器的范围设置为正,而将另外一个控制器的范围设置为负。                          

“游戏杆输入设备”卷展栏              

“游戏杆输入设备”驱动程序是专门为 Microsoft Sidewinder 游戏杆设计的,它包含的控件超过了标准游戏杆。另外,还可以将该设备驱动程序用于标准游戏杆。  

“游戏杆轴”组                  

X、Y、Z

指定哪些游戏杆指令可以驱动动画。(标准游戏杆只有 X 和 Y 轴。扭曲游戏杆时,Sidewinder 提供有 Z 轴。)

减速

对于 Sidewinder,这是游戏杆之旁的滑块。

比例

缩放游戏杆操作相对于动画响应的效果。(微调器值:浮点值,0 至 999,999)

翻转

翻转响应方向。

积累

禁用该选项时,游戏杆的位置表示绝对位置,所以,只能在游戏杆限制定义的“矩形”内操作。游戏杆返回到停止位置时,生成的值会恢复为 0。启用该选项时,游戏杆表示当前位置发生了更改。例如,向前移动游戏杆时,可能会使对象开始移动。此后,它将会继续移动,直到该游戏杆返回到停止位置为止。

“游戏杆按钮”组                  

触动盖的触点(左右、上下)

Sidewinder 包括主游戏杆尖端的小型游戏杆。指定该游戏杆在动画中控制的方向。

1、2、3 和 4

指定 Sidewinder 游戏杆中四个按钮之一。这些按钮与触动盖的触点的工作方式相同,但不同的是每个按钮只能在按下时增加方向值。释放按钮时,该值将会恢复为 0(居中)。

增大/减小

只有在选择其中一个数字游戏杆按钮选项时可用的三个选项之一。该选项(增大/减小)表示,按下按钮时可以增大值;释放按钮时可以减小值。

增大

启用时,按下按钮时可以增大值;释放按钮时可以保持值不变。

绝对

启用时,如果按下按钮,分配的参数会转为“速度”微调器中设置的值;如果释放按钮,该参数会恢复为 0。请使用此选项打开/关闭动画,如闪烁的灯光。

速度

用于控制使用触动盖的触点或四个按钮时值的更改速率。如果使用按钮选项和“绝对”选项,按下按钮时,将会指定输出值。(微调器值:浮点值,-999,999 至 999,999)

“基于方向的增量”组                  

提供了各种组件,用于从旋转控制器生成移动方向。这些选项主要是在设置第一人称飞行动画时(如控制摄影机时)使用。                  

注意只有在“游戏杆轴”组中选中“积累”时,才能使用该区域中的项。

控制器

分配要通过其生成方向的旋转捉控制器。

清除

删除分配的控制器。

方向 X/Y/Z

指定要用作方向的局部轴。例如,对“自由摄影机”而言,它会是 Z,原因在于该摄影机指向 Z 方向。但是,如果驾驶的汽车指向 Y 轴,则最好使用 Y。

组分 X/Y/Z

指定要使用的编辑绑定。使其与“设备绑定”下方的“编辑绑定”按钮匹配。例如,如果选择“Y 编辑绑定”按钮,将会选中“Y 组件”选项。

“MIDI 设备”卷展栏              

使用 MIDI 设备控制动画。                

“MIDI 通道”组                  

包含 16 个按钮。单击以便指定为其分配 MIDI 设备的通道。

“MIDI 触发器”组                  

定义要生成运动的 MIDI 事件(消息)的类型。它包含四个选项。  

  • 音符选中此选项时,音符编号或音高将会定义输出值。该值是从音符范围内的音符生成的,如下面的“音符范围”组中所述。如果音符是音符范围的下限,该值是“参数缩放”组下方指定的最小值。如果音符是音符范围的上限,该值是相同区域中指定的最大值。范围内的音符都可以插补在最小值和最大值之间。(注意,最小值不一定要小于最大值。)按下不同的键时,生成的值将左右滑动。按键越难,值的更改速度就越快。“速度”设置可以从整体上定义按下键时值的更改快慢程度。          

  • 速率选中该选项时,按下音符的速率将会确定输出值。“音符范围”组下方设置的音符可以指定按下后生效的音符。按下“音符范围”内的键时,该值一直是最小值。按下该键时,该值会根据按键的难易程度接近最大值。(事实上,该值沿着抛物线的轨迹向最大值接近。)“持续”设置可以定义值沿着抛物线的轨迹移动的时间。选中“变量”时,持续长度也可以通过按键的难易程度进行缩放。        

  • 弯音MIDI 乐器的弯音按键将会定义输出值。在这种情况下,“音符范围”不适用,所以没有提供。                      

  • MIDI 控制器在连接不同于典型键盘的 MIDI 控制器类型时指定音符事件。例如,如果使用的是 MIDI 滑块框,请选中“MIDI 控制器”选项,然后使用 # 微调器指定特定滑块的音符事件。                      

“音符范围”组                  

低音/高音

对这些音符进行设置,以便在启用“MIDI 触发器”下方的“音符”选项时,指定音符范围的低端和高端值。

“参数缩放”组                  

包含用于指定生成值范围的“最小”和“最大”微调器。请参见“音符”和“速率”。                  

MIDI 通道查看器

单击以显示一个对话框,从中可以测试 MIDI 设备,以查看正在接收事件的 MIDI 通道和正在触发的音符。                    

“MIDI 通道查看器”对话框                

“MIDI 通道”组                  

提供排成一列的 16 个按钮和表示 16 个 MIDI 通道的进度栏。选择要查看音符活动的通道。如果任何通道中包含事件,该通道进度栏将会亮起。                  

“MIDI 音符”组                  

使用 11 个八度音阶按钮,可以选择要查看的八度音阶。如果使用该八度音阶播放音符,“音符”栏中的相应进度栏将会亮起。                  

MIDI 控制器编号

使用不同类型的 MIDI 控制器(如滑块框)时,可以指定音符事件,然后在激活该事件时查看相应的进度栏是否亮起。您可以查找正确的音符编号,方法是激活该事件,同时查看对话框底部的“音符编号”字段。

通道

这是四个文本字段之一。这些文本字段可以在激活事件时显示 MIDI 设备生成的所有值。“通道”字段可以显示当前选定的通道。

事件

显示正在发送的 MIDI 事件的类型。类型可能如下:

启用音符:9

禁用音符:8

弯音:14

MIDI 控制器:11

速率

显示速率。速率的含义因事件而异。对最常见的事件而言,按下音符时,该值表示的是击打键的速率。但是,对其他事件而言,可能会生成连续值。例如,弯音事件可以传输弯音的位置。                    

音符编号

为事件显示相应的音符编号。例如,如果使用的是非键盘 MIDI 设备,如滑块框,可以使用该选项识别特定滑块的音符编号。                    

,