- 最后登录
- 2016-4-28
- 注册时间
- 2013-5-21
- 阅读权限
- 50
- 积分
- 1483
- 纳金币
- 8547
- 精华
- 115
|
maya节点连接问题
这篇教程将讨论怎样不用 instance 来关联复制,在讨论一些混合变形的一些问题
这有几个问题
1 , 我们需要创建一些形状差不多得物体,当我们改变主物体的时候,复制体也反映出这些变化,但是我们也能自由得改变复制物体,而这时候,主物体不发生形变。
2 , 如果我们关联复制 instance ,如果选择着一些物体(主物体和这些复制物体)中得一个改变她的组分,其他得都跟着变化,这是很讨厌得
3 ,当我们创建混合变形( blend shape )的时候,我们就不能改变着模型了,只要我们一动混合变形得滑条,刚才我们在模型上得组分变形就全没了,我们现在需要改变模型,同时那些混合变形的目标体也跟着变形。其实第一个问题,在 max 里面有这种复制方式
我们就根据这几个问题来进行我门的教程
先看看关联复制是怎么样得
打开 edit-%26gt;duplicate 得选项框,选 instance 关联复制。
但是如果打开 outliner, 右键 show shapes ,你将会看到所有的复制得物体都具有相同的 shape node
再来看看 hypergraph, 选择 pcube1, pcube2 and pcube3 ,展开上下游节点。
仅有一个形态接点显示出来,但是颜色不是白色,灰色,而是粉色,双击箭头,打开连接编辑器,你将看到 instobjgroup 到 dagsetmembers 之间的连接,
因为现在只有一个形态节点( shape node ) , 所以所有的变形节点都使用这个形态节点,所以你变形任何一个关联复制体,其他的都将产生相同的变化,同样的,当你选择一个物体的组分的时候,其它的的也会别选择。
使用关联复制,不能解决我们前面问题 1 和问题 2 ,我们不能只变形关联复制体而是其他的不变形。所以我们需要其他的办法
幸好, maya 是基于节点的应用程序,用户可以在这些接点之间定义自己的数据流动。
我们做个例子
创建一个 polygon 的球和方盒,重命名为 box 和 ball, 把他们排列一下,使得你能清楚地看到他们俩。
打开 hypergraph ,选在 box 和 ball, 显示他们的上下游节点。
boxshape 节点是 box 的形态节点,同样的, ballshape 是 ball 的形态节点,
现在我们想要 box 跟随 sphere 的形态,所以他现在不应该是个方盒,而应该是个球。
在 hypergraph 里面托拽 ballshape (主)节点到 boxshape (从) , 出现的菜单选择 other...
连接编辑器 connection editor 就会打开, ballshape 在 outputs , boxshape 在 inputs ,在 outputs 里面找到 "outmesh" ,在 inputs 里面找到 "inmesh" ,你会发现在 inputs 里面的 "inmesh" 是灰色的 , 这显示了已经有一个 input 连接了,没关系,我们覆盖它以前的连接就可以了。
在 outputs ,选择 outmesh ,在 inputs. 选择 inmesh 。
现在你可以看到,原来的方盒现在变成了圆球了,在 hypergraph 里面可以看到,从 ballshape to boxshape 粉红的箭头 , boxshape 不再从 polycube1 输入连接了
现在我们来检查一下效果,
1 ,我们改变 ballshape , boxshape 会跟着变化吗?(就是改变球的形状,以前是方盒,现在是球的那个物体会跟着变化吗?)
2 ,我们改变 boxshape , ballshape 会跟着变化吗?
如果满足了条件,那么我们就完成了的 3 个问题的前两个。
下面来看这片教程最开始提出第 3 个问题,关于 blendshape 的问题
在一些其它的软件中,使用类似于 blendshape 的工具的时候,如果你变化主物体,则其他的目标体也会自动得产生变化,举一个例子,如果你做了 30 个目标体,已经设置好了 blendshape, 这时候导演对你说, bob ,颧骨太高了,我想要低一些,前额太小了,变大一些,下颚太方了,变得圆一些。这时候,如果你能只改变主物体,那些目标体都能跟着变化就好了。
先叫我们看一下 blendshape 在 hypergraph 里面是怎样工作的。
在这个例子里面我们就用跟简单的多边形物体吧,建一个 2*2*2 的方盒,做 3 个目标体,
target1, target2, target3 ,把他们在稍变形一下,如下图
创建了混合变形后,在 hypergraph 里面注意,将会涉及到一些节点,一个中间物体(通常在它名字里面带有 orig )一个 tweak 节点,当然还有一个 blendshape 节点。
现在把主物体变形一下
下面我们再找一个更好的办法,如果变形主物体,而这个变形也会执行到其他的目标物体上就好了
这种情况我们还是使用前面的讨论,但是我们需要连接合适的节点得合适的属性才可以。
连接 tweak 节点得 outputs 到 targetshape 的 inmesh 。
把所有的目标体都这样连上,这时候如果你变形主物体,就会发现,变形也会影响到其他的目标体,主物体和目标体都会产生相同的变化,
好了现在我们在这篇教程最开始的 3 个条件都满足了。
(本maya教程完)
|
|