Maya脚本:轮子自动跟随位移精确旋转

本次案例:轮子跟随位移精确旋转。

  • 表达式原理:让表达式,计算出【前一帧和当前帧】的位移差。计算出位移差之后,我们用【位移差/周长】得到一个百分比,然后我们再用百分比*360度,就得出了每帧旋转的角度。最后我采用一个累加的方式,将累加的值传递到旋转属性值上。

float $last = `getAttr -time (frame-1) 位移属性`;
float $now= `getAttr -time (frame-0) 位移属性`;
float $chazhi = $now - $last;
float $baifenbi = $chazhi/(3.14*直径);
float $jiaodu = $baifenbi*360;
float $default_jiaodu=旋转属性 + $jiaodu;
setAttr "旋转属性" $default_jiaodu;

喵喵动画屋
喵喵动画屋https://miaodonghua.com
一枚默默无闻的2B动画师。

留下一个答复

- 广告 -

推荐文章

Maya中如何使用方形命令成面(Square)?

0
今天我们来看一下Maya曲面菜单下的这个方形命令(Square)。 那么它的作用跟我们的这个平面命令和边界命令是比较相似的。它和这两者的区别在于:我们的这个方形命令必须使用四条相交的曲线才能构成曲面,并且我们在构建的时候,必须要顺时针或者是逆时针选择曲线。 同样的,我们在场景中创建一个四边形曲线,那么很显然这四条曲线都是相交的。我们按住Shift键依次选择这些曲线,然后点击执行方形命令。 这样,这四条曲线相交的部分就会构成曲面。 我们撤销回去,现在我们修改一下曲线的长度。接着我们选择这条曲线,我们让它在水平方向上适当的旋转一个角度。 然后我们按住Shift键依次选择这些曲线,然后执行方形命令。 我们可以看到成面的区域,永远是这四条曲线相交的部分。 可能现在我们会觉得:这个命令就只能做这样的平面,其实不是这样的。我们只要保证这四条曲线是相交的就OK了。至于曲线中间的部分,我们想怎么变形都是可以的。 我们撤销回去,例如现在,我选择这条曲线进入控制点模式,我把它中间的控制点向上提一些。 同样的,我们按住Shift键依次选择这些曲线,然后点击执行方形命令。 这样,我们的这个新曲面就有了新的造型。 然后我们执行曲面下的反转方向命令把这个曲面翻转过来。 同时,我们可以使用默认值重建一下这个曲面,这样这个曲面看上去就好多了。 好了,关于这个方形命令就讲到这里。

Maya中如何使用对齐工具(Align Object)?

0
今天我们来看一下在Maya中如何利用多种对齐工具来对齐物体对象?在上一小节,我们讲的是:利用这三种点到点的命令来对齐物体对象。 那么,在这个小节里,我们接着来看一下其他的几种对齐工具:Align Object-对齐对象;Position;Along Curve-沿着曲线放置;Align Tool-对齐工具以及Snap Together Tool-捕捉到一起的工具。 首先我们来看下这个Align object-对齐对象。 我们打开它后面的选项设置,那么在这里面,我们可以选择对齐模式、对齐的轴向以及可以【选择平均值对齐】或者【选择最后一个对象对齐】。 下面我们来详细讲一下这5种对齐模式:对齐的轴向,我们就选择默认的世界坐标X轴,只要我们知道了X轴是怎么对齐的,其他轴向也是同样的原理,这里我们使用默认的【选择平均值对齐】。 那么因为我选择的是X轴对齐,所以它和Y轴Z轴是没有关系的。所以为了更加直观的展示,我使用视图书签切换为我预先设置好的视图。那么在这里面,我们可以看到,我们的视角是和XZ平面是平行的 并且X轴的正方向也调整为垂直向上,这样我们就可以清楚的观察到物体对象的变化。 这里我们创建一个球体,移动到一旁,然后创建一个圆柱,我们将它z轴转-90°,缩放到一个合适的大小,移动到一旁,然后再创建一个圆锥,同样的我们将它z轴旋转-90°,移动到一旁。那么这里,我旋转-90°是为了更加直观的观察物体变化,它对我们的结果是没有任何影响的。 首先我们来看下第一种:Min最小值对齐。意思就是:就是利用靠近最小值的边界来对齐物体对象。 可能单从字面上,会非常难以理解,会非常不理解这个最小值是怎么定义的,这个边界又怎么确定的?同样的我们还是来看下这三个模型,首先我们要确定,当前X轴的正方向,这个非常重要。我们都知道X轴,正方向的值最大,负方向的值最小,我们可以把单个物体对象,最靠近X轴正方向的边界,定义为【最大值】,将最靠近X轴负方向的边界,定义为【最小值】。 现在当我们再来回顾这个【最小值对齐】的时候,就会变得非常容易了。因为我们确定了三个物体对象,底部的边界全部都为最小值,顶部的边界都为最大值。 当我们选择这三个物体对象,点击应用对齐的时候,我们就可以看到,最小值所在的边界,就被很容易的对齐了。 我们将物体恢复原位,然后,我们再来看下第二种:中间值对齐。说白了也就是对齐物体对象的中心,同样的只要选择这三个物体对象,然后点击应用,能将他们的中心位置对齐,这个非常简单。 然后我们将物体恢复原位,我们来看下第三种:最大值对齐。它和第一种最小值对齐是刚好相反的,当我们选择这三个物体对象,点击应用的时候,我们可以看到,这次对齐的是最大值所在的边界,这个就是最大值对齐。 我们将物体恢复原位,我们来看下第四种:距离对齐。那么在这个案例中,圆柱和圆锥之间距离就代表了对齐的总距离,而这个距离对齐的作用:就是让中间的物体的对象均匀的分布。 当我们选择这三个物体对象,点击应用的时候,我们可以看到,中间的球体沿着X轴方向对齐到了合适的位置,这个就是距离对齐命令, 我们将物体恢复原位,我们再来看一下最后一种:堆栈对齐。堆栈的意思就是将对象排成一行一行的,让它们的边和边交界处,没有距离。同样的,当我们选择这三个物体对象点击应用的时候,我们可以看到,物体对象边和边交界的地方,在X轴方向上是紧密排列的,这个就是堆栈对齐。 我们将物体恢复原位,切换到最小值对齐模式,下面我们来看下这个【对齐到最后选择的对象】,这里面的【最后选择的对象】就是指:当我们在选择物体对象对齐的时候,我们最后加选的这个绿色高亮显示的物体对象。 假设现在我们选用最小值对齐模式,当我们点击应用之后,我们可以看到:其他的两个物体对象的最小值边界都会和这个球体最小值边界对齐,并且这个被对齐的球体对象,是不会移动位置的。 至于后面的这个中间值、最大值其实都是一样的原理。我们选择中间值,点击应用,其他两个物体对象的中心会和球体中心对齐。 这也是它和这个【选择平均值对齐】的一个很大区别。 我们选择最大值,点击应用,其他两个物体对象的最大值边界会和球体最大值边界对齐,这个就是对齐到最后选择的对象。 我们将窗口关闭,我们来看下这个Position Along Curve沿着曲线放置,它的意思就是:沿着曲线,等距离放置所选择的对象。 现在,我们将物体恢复原位,我们切换视角,我们使用EP曲线工具在场景中画一条曲线。现在我们选择三个物体,加选这条曲线。 然后点击【沿曲线放置】,我们可以看到,三个物体已经被成功的沿着曲线的方向,均匀放置,这个就是沿着曲线放置命令,非常简单。 然后,我们再来看下这个Align tool-对齐工具,这个呢,是我们最常用到的工具,使用也很简单。 我们重新创建一个大立方体,还有一个小立方体,例如现在,我们就尝试用小立方体对齐到大立方体。 我们选择小立方加选大立方体,点击对齐工具命令,这个时候,在这两个立方体之间就会出现这样的一个透明的边界框。 为了更好的观察,我们可以切换为线框显示。现在,只要我们点击对应的图标就能执行对应的对齐命令。 这里我们不用去死记每个图标什么意思,因为我们只要按下鼠标左键不动的时候,就会出现黄色的提示,它会告诉你物体将要移动的方向和将要对齐的平面,非常的容易理解。 这个对齐工具很简单,就不多说了。我们切换到着色模式下,按下Q键取消对齐命令。我们将物体恢复原位,我们来看下这个Snap together tool-捕捉到一起的工具,那么这个就更加简单了。 这里,我们打开工具选项会自动进入对齐模式,我们可以看到,这里默认是:移动并旋转,也就是在对齐的时候方向也会跟着变化。 例如我要将小立方体的这个面对齐到大立方体的这个面。 我只需要在小立方体的这个面上单击,然后再到大立方体的这个面上单击。 然后只要按下回车键,就能轻松将两个立方体捕捉到一起。 我们将物体恢复原位,我们点击左侧命令,再次进入对齐模式。 这次我们选择【只移动对象】。 同样的操作,我们按下回车键,我们会看到,这次物体对象只是移动对齐到面,并不会改变它自身的方向。 同样的,我们将物体恢复原位,我们点击左侧命令,再次进入对齐模式。我们来看下这个捕捉到到多边形上的面。其实准确的意思是:捕捉到面的中心,那么在没有勾选它的时候,我们可以在面的任意位置进行标记。 当我们勾选它之后,无论我们选择面上的什么位置做标记,都会默认捕捉到面的中心位置,这个就是捉到多边形上的面。 好了,关于Maya的对齐工具就讲到这里。

Maya中如何使用附加曲线命令(Attach Curves)?

0
今天我们来讲一下:在Maya曲面建模中曲线菜单下的这个【附加曲线命令-Attach Curves】。 那么说白了就是以多种方式将两条曲线连接融合到一起。例如我们使用ep曲线工具在场景中画两条曲线,我们只要选择它们,然后在曲线菜单下执行附加命令。 这样这两条曲线就融合到一起了。 那么下面我们打开的它的选项设置,我们来看下一些比较细节的参数。我们可以看到,我们刚才们默认使用的附加方法是:融合曲线。那么这个模式融合的曲线,它的接合部分是比较平滑的,并且我们可以设置它的这个接合部分的偏移值,那么这里默认的是0.5,也就是处于两条曲线之间的中心位置。 可能这里我们就会比较困惑,我们怎么才能快速判断出接合部分的偏移方向?那么这里我们只要记住:我们的这个偏移值永远是以绿色高亮显示的这根曲线作为参考的。 假设我们设置为0,也就是几乎没有偏移,所以我们可以预判:接合位置一定是靠近绿色曲线的这一端。 当然,如果我们在选择曲线的过程中,最后选择的是左边的这根曲线。那么左边的这条曲线就会变为绿色高亮显示,那么相同的参数设定,我们点击应用。 它的接合位置就会偏向左边的这个位置。所以这里我们不难看出,我们的这个偏移值。不能一根筋的认为:它一定是偏向左或者偏向右,具体还是要以我们最后选择的这根绿色曲线作为参考对象。 我们先重置一下参数,那么下面的这个是【插入结】。我们勾选它,选择曲线,点击应用后,我们可以看到,相比我们之前的这根曲线,我们当前的这根曲线的接合部分,更接近这两条这曲线的末端形状。当然,具体要到一个什么样的程度,我们可以调节下面的这个插入值,这个值越接近0,形状就会保持的越多,值越大,自然就会像上面的这个曲线形状过于的平滑。 我们重置一下参数,然后下面的这个是【保持原始】,也就是保持原始曲线。 那么我们取消勾选之后,我们再次融合曲线,原始曲线就会直接被移除不再保留了。 我们撤销回去,我们先重置一下参数,最后我们来看下附加方法中的另一个:连接曲线。 那么这个就比较简单,相比这个【融合曲线】模式,我们的这个【连接曲线】是以最小曲率来进行连接的。我们选择曲线,点击应用,我们可以看到,曲线的末端直接就被接合上了,过度显得非常的生硬。 然后,我们再来看这个被激活的【多结点】选项,那么刚才我们使用的是保持,也就是保持这种比较生硬的连接。 那么另外的这个移除,作用就是给接合的部分做一个平滑处理,我们选择曲线,点击应用。我们可以看到:这次这个接合部分的过度,就显得平滑了许多。 至好了,关于这个附加曲线命令就讲这么多。

Maya动画控制区的认识

0
Maya的动画控制区在Maya中非常重要,这里面,我们可以非常方便的进行关键帧的设置和调节。 第一个:时间滑块,它的主要作用是用于控制播放范围、关键帧以及受控的关键点。时间滑块上的红色标记是我们设置的关键帧,我们使用鼠标在时间滑块上,点击帧的序号,可以跳转到指定帧动画。使用鼠标拖动,可以控制动画,向前或者向后预览动画。 时间滑块后面的这个编辑框,是设置当前的时间帧,我们可以直接输入对应的帧序号,也可以直接在时间滑块上点击对应的帧序号,都可以实现设置当前的时间帧。 第二个:动画控制区按钮,因为他们是相对称的功能关系,所以从中间往两边来介绍。 这个是向后播放 这个是向前播放 这个是前进到下一个关键帧 这个是后退到上一个关键帧 这个是前进一帧 这个是后退一帧 这个是跳转至帧范围结尾的最后一帧 这个是跳转至帧范围开头的起点 第三个:范围滑块,它是用于控制上面“时间滑块”中的播放范围。 下面分别是动画开始的时间帧和动画结束的时间帧,这两个参数是决定了整个动画帧的总范围。 在这个场景中,我们默认范围是1到200帧,而下面的这个是动画开始播放的时间帧和动画结束播放的时间帧范围(1到100帧)。 这两个参数,就是相当于,从总范围中选择一段作为播放范围。在这个场景中,我们就是从总范围(1到200帧)当中选择(1到100帧)作为播放范围。 同时,关于设置开始播放和结束播放的时间帧,我们还可以拖动时间滑块任意一端,就可以很方便的设置播放范围。 至于后面的这个是动画层菜单和角色层菜单,是在复杂交互场景中,才会用所用到的功能。 第四个:播放选项,这个是帧速率,也就我们通常所说的fps,我们可以根据自己的需要设置帧速率,而平时我们使用的标准帧速率为24帧/s。 后面的这个是动画播放状态,当前这个图标是播放一次,也就是播放到最后一帧就自动停止。 我们点击图标切换播放状态,当前这个图标是往返循环,意思就是向前和向后循环播放。 我们再次点击切换,当前这个图标是连续循环,这和我们听歌时候的单曲循环是一样的原理。 然后,后面的这个是缓存播放,用于查看我们对动画所做的更改,而并不需要再次创建播放预览。默认是开启状态,我们可以在时间滑块底下看到蓝色的部分。 最后的这两个分别是自动关键帧和时间滑块首选项,因为是认识界面,所以这里只做了解,我们在后面的案例中,再做具体分析。 好了,Maya动画控制区就讲到这里。

Maya中如何显示法线和反转法线(Face Normal+Reverse)?

0
今天我们来了解一下在Maya多边形建模中如何显示法线和反转法线(Face Normal+Reverse)?那么在Maya当中,法线的作用就是决定了面的方向。要显示物体表面的法线也很简单,我们只要选择模型,在显示菜单,多边形选项下,选择面法线显示就可以了。 我们可以看到:模型上面和法线都是一一对应的,并且和我们的面是垂直的关系。 我们进入面模式,把模型上的一部分面删除。我们可以看到,这个模型内部的面漆黑一片,这是因为内部的面处于面法线相反的方向。同理,我们逆向思考,我们可以通过黑面来确定法线的方向是不是有问题。 我们把另外一个法线有问题的模型显示出来,我们按下6键开启纹理贴图显示。我们可以看到:这个模型上有一个很明显的黑面是没有贴图的。 同样的,我们选择这个模型,先给它开启面法线显示。我们可以看到这些个黑面上的法线方向是朝向内侧的。 想要修复这个黑面的问题,我们需要进入面模式,按住Shift键选择这几个法线有问题的黑面,在网格显示菜单下执行【反转法线】命令。 这样这几个面的法线就被【反转】过来面上的贴图也就正常了。 现在我们打开【反转法线】的选项设置,在这里有一个反转法线的模式:总共有三种反转模式:第一种,也就是我们刚才默认执行的:对选择的面执行反转法线。 而第二种则是在第一种反转面的基础上,同时把面提取出来。 我们撤销回去,同样的我们选择这几个面,应用反转。 我们按下W键移动,这个面会直接从模型上分离出来,这个就是反转并提取面模式,我们撤销回去。 然后,我们再来看下第三种:反转在壳上的所有面。这个壳指的就是我们这个模型上的所有表面。 那么这里,由于反转的是模型上的所有面,所以我们只要选定这个模型上的任意面或者是框选整个模型上的所有面,这个操作的目的只有一个:就是确定目标对象。 然后我们点击执行反转,这样原先向外的面,就会翻转到内侧;原先向内的面,就会翻转到外侧,这个就是反转在壳上的所有面。 那么下面的这个是用户法线选项:一个是保持用户法线方向,一个是反转用户法线,这里保持它默认的【反转用户法线】就OK了。 好了,关于显示法线和反转法线就讲到这里。