使用表达式实现臂肌的自动凸出

豆豆网   技术应用频道   2008年01月16日  【字号: 收藏本文

内容摘要:Softimage 3D教程-使用表达式实现臂肌的自动凸出

  使用表达式实现臂肌的自动凸出

  1) 手臂的模型你可以自已创建.

  进入右视图,创造一个简单的手臂模型.如下图。

使用表达式实现臂肌的自动凸出 

  Fig.01

  2) 画 IK 骨骼.

  切换到 Actor 模块, 在右视图中使用Actor>Skeleton>draw 2D chain命令画一条有二个关节的骨骼系统。

  第一单击点在肩部的位置,第二单击点在肘部,第三单击点在腕部。

  *结果应该如下图

使用表达式实现臂肌的自动凸出

  3) Enveloping(封套)模型

  选择手臂模型,单击 Actor>Skin>Global envelope 命令,再单击 IK 骨骼.

  单击 OK 应用默认值.

  在右视图中选择并随意移动骨骼受动器,模型应该随骨骼的移动而移动。但是臂肌的变形是不真实的,以下我们要使用NULL物体和表达式来改变这一点。

  4) 测试 IK, 放置 null物体,重新封套.

  移动骨骼受动器,使手臂模型平直伸展,如上图所示。

  创造一个null物体,命名为 "muscle1" 并放置它到上臂肌的中心位置。并沿Z轴旋转。如下图所示

  选择第一个关节(上臂),使用成为 "muscle1" 的父物体.

  使用 Actor>skin>Envelope Assignment>Reassign Automaticaly 命令.进行重新封套。

  移动受动器,你会发现臂肌并没有随相应运动而凸出,这将要使用表达式来完成。

使用表达式实现臂肌的自动凸出

  5) 保存场景

  Actor>Save Scene

  6) 创造"muscle1"物体的运动表达式

  切换到 motion 模块.

  选择 "muscle1" 物体,并选择 Motion>expression>edit 命令打开表达式编辑窗口。

  在 effected elements 文字框应该有 [Muscle1.] 这几个字。

  在其后面输入 etrny [Muscle1.etrny] (受控参数为 Y轴的移动)

  单击 "expression" 文字框,单击 Scn elements 按扭,单击 "jnt1_2"(前臂关节)

  现在 expression 文字框所显示的应该为[jnt1_2.]

  在其反面输入 rotz ,文字框中的显示为 [jnt1_2.rotz]。(null物体的Y轴运动受前臂关节的Z轴旋转所控制)

使用表达式实现臂肌的自动凸出

  7) 调整表达式

  啊啊!!, 发生了什么事?!

  它需要调整,它的移动太夸张了。

  选择 "muscle1" 并进行表达式编辑.

  将 expression 文字框改为 [jnt1_2.rotz / 130] (移动的距离为旋转的1/130)

  到此,所有的工作完成,臂肌将随手臂的移动而进行真实的凸起。

使用表达式实现臂肌的自动凸出

来源:中国教程网    责编:豆豆技术应用

正在加载评论...