MAYA脚本:平移旋转自动归零

//by 喵喵动画屋  旋转归零

string $lanzi[] = `ls -sl`;
int $shuliang = size($lanzi);
print($shuliang+"\n");

for($i=0;$i<$shuliang;$i++)
{
    print($lanzi[$i]+"\n");
    
   int $rotate_ret = `getAttr -se ($lanzi[$i]+".rotateX")`; 
   if($rotate_ret==1)
   {
        setAttr ($lanzi[$i]+".rotateX") 0;  
   }
   
   $rotate_ret = `getAttr -se ($lanzi[$i]+".rotateY")`; 
   if($rotate_ret==1)
   {
        setAttr ($lanzi[$i]+".rotateY") 0;  
   }
   
   $rotate_ret = `getAttr -se ($lanzi[$i]+".rotateZ")`; 
   if($rotate_ret==1)
   {
        setAttr ($lanzi[$i]+".rotateZ") 0;  

   }
   
   

     print($rotate_ret+"\n"); 

}


//by 喵喵动画屋  平移归零

string $lanzi[] = `ls -sl`;
int $shuliang = size($lanzi);
print($shuliang+"\n");

for($i=0;$i<$shuliang;$i++)
{
    print($lanzi[$i]+"\n");
    
   int $translate_ret = `getAttr -se ($lanzi[$i]+".translateX")`; 
   if($translate_ret==1)
   {
        setAttr ($lanzi[$i]+".translateX") 0;  
   }
   
   $translate_ret = `getAttr -se ($lanzi[$i]+".translateY")`; 
   if($translate_ret==1)
   {
        setAttr ($lanzi[$i]+".translateY") 0;  
   }
   
   $translate_ret = `getAttr -se ($lanzi[$i]+".translateZ")`; 
   if($translate_ret==1)
   {
        setAttr ($lanzi[$i]+".translateZ") 0;  

   }
   
   

     print($translate_ret+"\n"); 

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

留下一个答复

- 广告 -

推荐文章

Maya中如何让创建的对象位于世界坐标中心(Interactive Creation)?

0
创建Polygon基本体和NURBS基本体有两种方式,一种就是我们常用的:交互式创建,创建的同时确定底面,再确定高度。 另一种就是我们想要的:默认创建物体位于世界坐标原点。 两种方式的转换在Create菜单下NURBS Primitives和Polygon Primitives中,去掉勾选Interactive Creation交互式创建就行了。 一般创建完基本体以后肯定是要调整模型结构的,所以多数情况不使用交互式创建,当然交互式创建可以直观地构建你要的基本体。

Maya中如何合并焊接顶点(Merge Vertices)?

0
今天我们来认识一下在Maya多边形建模中的【合并顶点工具】。那么合并顶点工具主要分为三种分别是:合并到中心点、合并顶点、目标焊接点。 那么平时我们也把它们叫做焊接点命令,那么它和我们的【点到点吸附】是不一样的:【点到点的吸附】表面上变为一个点,实质是两个点重合在一起,而【合并点、焊接点】则是真正的把多个点融合变为一个顶点。 我们首先创建一个立方体,然后复制一个出来。我们使用合并命令将两个物体变为一个整体。 我们首先进入点模式,那么首先来说下第一种:合并到中心点命令(Merge Vertices To Center )。例如我们要合并这两个顶点,让它们合并后的顶点处于两点之间。 我们可以选择这两个顶点,按住Shift键,右键选择【合并顶点选项】,选择【合并到中心点】。 这样,这两个顶点就被合并到它们之间的中心位置了。 我们撤销回去,假设我们要合并多个顶点。同样的我们可以选择多个顶点,然后选择合并到中心点。这样,软件会自动计算合并到这几个点之间的中心位置。 然后我们再来说下第二种:合并顶点命令(Merge Vertices)。 如果只是合并两个顶点我们只需要按住Shift键,打开【合并顶点菜单】,选择【合并顶点命令】。 我们可以看到:它的作用和我们上面讲到的合并到中心顶点是一样的效果。那么比较大的区别在于:这个合并顶点命令更加的灵活,它可以按照顶点之间的距离来决定是否合并顶点。我们撤销回去,我们打开【合并顶点的选项设置】来看一下,那么这里有一个:【顶点距离阈值】和一个【始终合并两个顶点】的选项。 那么这里,这个顶点距离阈值,默认的是0.01个网格,意思也就是:只要任意两个顶点之间的距离在0.01的范围内,就会被合并。而这个0.01已经无限接近于两个重合的顶点。那么很显然,我们的这些个点,任意两个顶点之间的距离肯定是不满足0.01的。 所以就算我们选择这些个顶点,点击应用,这些个顶点是不会被合并的。 那么为了讲明白这个阈值的问题,我们可以进入前视图中,适当的改变一下顶点与顶点之间的距离。我们让上面的这组顶点的距离都小于1个网格,然后我们再来调节一下下面的这两组顶点,让顶点之间的距离大致为1~2个网格左右。 那么假设我们要把【顶点距离】小于等于1的顶点合并,我们就可以把距离阈值设置为1。那么因为上面的这两组顶点距离满足【小于等于1】的阈值范围。 所以我们选择这些个顶点,点击应用后,上面的这组顶点就被合并了。 我们撤销回去,那么假设我们要放宽合并的要求,把下面的这组顶点也合并。 那么刚才我们就确定了:下面的这两组顶点距离大致在1~2个网格左右,我们可以将阈值设置为2。那么因为上面和下面都满足【小于等于2】的阈值范围。 所以我们选择顶点,点击应用后,这四组顶点就分别合并到一起了。 当然,这里我们要特别注意,我们所说的这个顶点距离指的不仅仅这种特殊的横向的点对点的情况。只要是我们选择的,任意位置的顶点,只要距离满足这个阈值,都会被合并。 那么这里没有特殊的合并要求,一般就不要去修改它。至于下面的这个【始终合并两个顶点】保持勾选就可以了。原因很简单,如果我们取消勾选:会导致我们在合并两个顶点的时候,会受这个阈值范围的控制。 反之,保持勾选,可以在合并两个顶点的时候不受约束,合并多个顶点的时候受约束这个非常符合我们日常的使用习惯,所以这里保持勾选就OK了。 下面我们来讲下最后一个:焊接目标点(Target Weld Tool)。那么这个就是很简单了,意思就是把一个顶点焊接到另一个顶点上。 那么默认情况下,们只要按住Shift键,右键选择合并顶点,选择焊接到目标点,左键按下选择一个顶点,然后鼠标移动到目标顶点。 确定无误之后,松开左键。这样,下面的这个顶点就被焊接到上面的这个顶点。 当然,我们也可以选择多个顶点,焊接到目标点。 另外如果我们不想合并到目标点,想要合并到中心位置。我们只要打开它的选项设置,然后选择合并到中心点。 同样的操作,我们选择合并的时候,黄线中间的这个绿点就是中心点的预览位置,非常简单。 好了,关于合并顶点工具就讲这么多。

Maya中如何使用5种灯光照明方式?

0
今天我们来讲一下Maya灯光的照明方式。 我们先把这个照明窗口独立显示出来。 我们首先来看第一个Use Default Lighting,就是使用默认照明的意思。这个默认照明,我们也可以把他叫做完全照明。我们要知道,我们创建完场景之后,场景中是没有灯光的。这个默认灯光的作用就只是帮助我们看到场景中的物体对象,而它对于我们最终的渲染结果是没有任何影响的。 现在,我们在场景中分别创建一个平行光。 创建一个点光源。 再创建一个聚光灯。 我们来依次来看一下,下面的这几个灯光模式。 这个Use All Lights,是使用所有灯光的意思。我们选择它,就可以看到所有灯光交互的场景。 下图分别是平行光产生的投影,聚光灯产生的投影,点光源产生的投影。 这个Use Selected Lights,是使用选定灯光的意思。既然是选定选定,而我们现在并没有选定任何灯光,所以我们当选择,切换到这个照明模式之后,场景中就会变得一片漆黑。 只有当我们选择灯光之后,对应的灯光效果才会被启用。 当然这里可以选择单个,也可以选择多个灯光。 然后,我们来看下这个Use Flat Lighting,是使用平面照明的意思。既然是平面照明,那么它就不会产生阴影,这里,我们可以把它理解为这是一种环境光着色。 然后,这个是Use No Lights,是不使用灯光。换而言之,开启之后,我们整个照明系统都是被禁用的,什么环境光,着色都是不存在的。 然后,我们切换为默认照明模式,我们来看下这个Two Sided Lighting双面照明。 既然是双面照明,也就是我们模型外部内部都会被照明。当然现在这个模型是封闭的,我们看不到内部的情况。现在我把这两个面删除,我们就可以清楚的看到内部的情况。 假如我们取消双面照明,那么内部就会漆黑一片。 最后我们来看一下这个Shadows阴影,这个就不用多说了,我们可以切换到使用所有灯光模式下,在这里,我们可以决定是否显示灯光下的阴影,它和我们快捷视图栏的这个阴影按钮是相对应的。 好了,关于Maya灯光的照明方式就讲到这里。

Maya中如何创建灯光和设置灯光(Create & Ligth Setting)?

0
今天我们接着来讲一下Maya灯光的创建和设置方法。那么在开始之前,我们首先要弄明白两个问题。第一个就是:灯光预览的问题。那么当前的这个场景之所以被照亮,是因为我们在“照明”菜单下,使用的是场景默认照明。 如果我们要看到所有灯光在场景中的交互情况,我们可以把照明方式切换为“使用所有灯光”。 现在我们只要创建一盏灯光,就可以很直观的看到预览效果。 那么这里少了一个阴影效果,我们可以在快捷视图栏,直接开启阴影显示就可以了。 那么这些照明方式仅仅是用来预览调试的,它并不会因为我们选择哪一个照明方式而改变最终的渲染结果。 然后我们来说下第二个问题,也就是渲染灯光的问题。我们把这个点光源删除,我们打开Maya软件渲染器,我们渲染一下。那么可能很多人心里会有这样的疑问:为什么即便我们在场景中,没有创建任何灯光,但是我们在使用Maya默认渲染器的时候,依旧可以渲染出图像? 而当我们换做Arnold渲染器进行渲染的时候,它的结果就是正常的黑色,什么也看不到。 这是因为在Maya默认渲染器中,在这个公用属性,最下方的渲染选项中,“默认照明”是启用的。如果我们把它禁用,这个“默认照明”就不会再被渲染出来了。 那么我们刚才讲的这两个问题,虽然不是什么实用技巧,但是还是要有所了解。 那么接下来,我们就具体来看一下这几种灯光。首先我们来看下第一个:环境光。那么环境光主要就是用于提高环境的整体亮度。我们Ctrl+A打开它的属性设置,那么这里,我们只要知道怎么设置环境光颜色,并且能够根据实际情况来调整环境光的强度就可以了,那么因为这个环境光不支持Arnold渲染器,并且使用的频率也不是很高,我们做一个了解就可以了。 我们来看下第二个:平行光。那么平行光,是一个方向性的灯光。我们对它进行缩放或者移动位置,都不会对我们的实际灯光效果产生影响。 那么调节这个平行光,我们除了可以旋转,我们还可以T键显示操纵器,然后通过这两个控制点来固定光源的方向。 那么这个平行光的颜色,还有这个强度,我们都会调节,这里就不多说了。那么如果当们在场景中想要暂时关闭平行光,我们禁用这个“默认照明”就可以了。 然后我们来看下这个漫反射开关和这个镜面反射。这个镜面反射效果,我们也把它叫做高光效果。那么因为这个小房子,使用的是Lambert材质,镜面反射效果并不是很明显。所以这里我们单独创建一个球体来演示,我们给它赋予一个blinn材质球。 那么现在,这个漫反射一旦被我们关闭,我们的物体就不再会反射我们的平行光。 而至于比较亮的这块,实际上就是镜面反射的效果。 同样的,也可以在这里对它进行单独的开关,我们把这个球体删除。 我们打开渲染器,我们渲染来看一下效果。那么这里,我们会发现一个比较明显的问题。我们的Maya软件渲染器,并没有渲染出光线所产生的阴影效果。 那么这里,就有两个设置非常非常的重要。首先我们要在这个阴影属性下,启用这个“使用光线跟踪阴影”。 其次我们要打开渲染设置,切换为Maya默认的渲染设置。我们在这个“光线跟踪质量”中启用“光线跟踪”。 这样,当我们在使用Maya软件渲染器的时候才能正常的渲染出阴影效果。 当然,如果我们使用的是Arnold渲染器,刚才的设置我们可以忽略,因为Arnold本身就是一个独立的光线跟踪渲染器,所以光线跟踪阴影,开启与否并不会影响到它最终的渲染结果。 另外如果我们习惯性的使用Arnold渲染器,最好就不要在这里进行预览。因为很多时候,有可能会导致软件崩溃的问题,我们可以在Arnold菜单下,打开单独的Arnold渲染预览窗口。 另外,如果我们要实时反馈渲染效果,我们可以在渲染菜单下启用IPR渲染就OK了。 我们把这个平行光删除,然后我们来看下第三个:点光源,我们给它移动一个适当的位置。 那么点光源,主要就是用来模拟灯泡或者是作为补光工具来进行使用。这里我们重点要说的是,它的这个光强度的数值,那么这个默认的光强度,在Maya软件渲染中是可以很容易的渲染出灯光的。 而当我们放到Arnold渲染器中进行渲染的时候,几乎就是黑漆漆的一片。 那么这个并不是因为我们的灯光不支持Arnold渲染器,而是因为Arnold渲染器中的所有灯光都是具有衰退效果的,所以想要获得明显的效果,我们的这个光强度需要提升到很高的数值。然后这个衰减率我们可以使用线性或者是二次衰减都是OK的。 我们把这个点光源删除,然后我们再来看一下第四个:聚光灯。我们给它适当的摆放一个位置,那么调节这个聚光灯的时候,我们这样手动调节,有的时候并不是非常的方便。 这个时候,我们就可以在面板菜单下,使用“沿选择对象查看”。 那么这个圈内的物体就是聚光灯的照射范围,这样,我们就能很快的把聚光灯的位置调整好。 然后我们在面板菜单→透视中,选择透视摄影机就可以回到场景中。 那么除了这种调节方法,我们同样的可以T键,通过操纵手柄来进行调节。 那么这里,如果我们要扩大照射范围,我们可以单击这个属性切换按钮,只要拖动这个边上的控制点,就可以改变这个锥角度的大小。 当然,我们也可以在属性当中对锥角度进行参数设定。 那么如果我们需要这个灯光的边缘有比较柔和的过渡,我们是可以适当的减少它的半影角度,还有这个衰减值。 那么半影角度的实际控制点我们只要再次点击属性切换。同样的,拖动虚线上的控制点就可以进行调节,那么这个就是聚光灯的调节方法。 我们把这个聚光灯删除,然后我们来看下第五个:区域光源。那么这个区域光源跟前面的光源就有点不一样了。因为我们的区域光源,缩放是比较重要的,它的这个方形区域,直接就决定了发光的范围。 同样的,这里我们可以T键进行调节。 那么在这个场景中,假设我们在外墙有一个方形灯的照明模型。我们就可以把这个光源移动过来,适当的缩放,调整位置。然后我们可以适当的增加一些光强度,这样,这个墙灯的效果就出来了。这个很简单,没什么可以说的。 我们把它删除,最后我们来看下第六个:体积光源。我们先让它的中心光源移动出来。假设我们的这个塔顶有一盏光源,我们需要适当的调节,让它照亮塔尖的一部分。然后我们给它做一个放大处理,并且我们适当的增加一些光强度,那么这个体积内的物体,就是需要被照亮的部分。 但是这里,我们会发现一个问题:无论我们怎么缩放,这个灯光的照明范围始终没有发生变化。这并不是因为缩放对它不起作用,而是因为这个viewport 2.0无法直接预览到体积光的变化。 这个时候,我们就可以打开Maya渲染器,我们选择Maya软件渲染器对它进行渲染。那么现在我们就可以看到体积光的实际照射范围。 那么如果我们要把这个照明范围扩大到屋顶范围,我们就可以再次将这个体积光放大,然后我们再次进行渲染。这样,这个体积光的效果就体现出来了,非常简单。 当然,如果我们不想要这个球体效果,我们还可以将它设置为盒子或者是圆柱都是可以的。 另外假设我们需要一个特定的角度产生体积光,我们可以在这里对它的圆弧度数进行调整就可以了。 那么这些,就是关于这6种灯光的基础创建和设置方法。而至于一些比较深入的调节方法。后面我会通过案例来给大家做具体的分析讲解。 常见问题:(1)如何关闭“默认照明”渲染?打开Maya软件渲染器设置→公用属性→渲染选项中→关闭“默认照明”(2)为什么我的通用灯光在Arnold中渲染不出来?原因:Arnold渲染器中的所有灯光都具有衰退效果,所以想要获得明显的效果,光强度需要提升到很高的数值,其次衰减率可以使用线性或者是二次衰减。(3)为什么我的Maya软件渲染器渲染时没有阴影效果?首先在灯光阴影属性下,启用“使用光线跟踪阴影”,其次打开软件渲染设置,在“光线跟踪质量”中启用“光线跟踪”,两者缺一不可!

Maya中如何将帧范围设置为音频长度(Set Frame Range To Sound Length)?

0
例如,我们到我们导入的音频长度如下图。 但是当我们导入音频之后,我们无法判断视频到底是多少帧。 这个时候我们就可以右键选择设置范围(Set Range To) >>选择声音长度( Sound Length)。 这样帧范围就会根据音频的长度来设置帧范围。