3dmax制作坦克动画教程

修改
鏉ユ簮: heidou 浏览 3049 日期 2012-11-23 0

大家好,本教程将引导您通过在3ds max中,以及创建一个完整的坦克钻机系统的过程中,... 也许不完全,但肯定有很多的工具,使一个逼真的坦克动画,其实,当你意识到这一点,你就可以有一个小的修改,也能够使汽车钻机。这是一个中等水平的教程,所以你需要一些知识,最大的吊装工具(骨头,IKs通道,约束等)。 3dmax制作坦克动画教程在这个视频,你可以检查水箱中的行为:video_tank.mov(点击右键,目标另存为) 你会学习:

地面投影系统

有了这个系统,我们的钻机将能够探测到的地面和适应地面的表面,我们只需要通过一个点的动画样条线路径。3dmax制作坦克动画教程该系统可以工作,没有花键,但事实却是,未来这个平台需要使用。有很精细与改造关键帧的更复杂的系统工作,但他们是历史依赖和消耗更多的CPU资源比这一个,也许以后我们将检查这些方法。

自动纺轮

该系统使动画师的生活更轻松;以及... 它是钻机是应该做的。3dmax制作坦克动画教程有一个路径坦克将去旅游,我们要在这个距离来定义滚轮行为。在这里,我们将使用一些脚本和一些高中数学,但不要害怕!如果你还没有尝试过这个东西,现在你要学习,它并不难,相信我,其实,我们要使用的整个数学,将是乘法和除法。

自动幻灯片卡特彼勒

的毛毛虫带将被组成的几件通过一个花键它就会被投射到地面太滑动,这是更现实,3dmax制作坦克动画教程比其它系统如使用超过一个全毛毛虫带一个路径变形改性剂,那是因为每个毛毛虫的作品有它自己的行为而不是开始像橡胶变形路径变形的方法。在这里,我们将要使用的脚本控制器,非常类似于车轮的系统,和一些迭代宏操作。这最后一个了很多其他类型的项目的任务将是非常有用的,几句话就意味着在几行代码做了很多重复性的任务。

框的位置及方向

有了这个,我们要计算坦克的框架,车轮位置(这听起来很容易的!),它的方向旋转的车轮车轴的位置。 

大炮瞄准系统

最后,我们将大炮的钻机。这是一块蛋糕,我们将在玩弄一些查找的限制。

现在,让我们开始吧... 我们将使用这个文件:tank_rig_start.rar (点击右键,目标另存为),3dmax制作坦克动画教程这是一个3ds max 9版本的文件。 它解压到你的电脑和打开tank_rig_start.max文件。在这里,我们有一个基本的坦克模型框架,炮塔,炮,一个车轮(我们将克隆人),一个毛毛虫一块,和地面。最后一项开始有很多段和一些噪音和波改性剂适用于同一个平面上。同时,我们有一些红色的花键对象和两个点,他们有一个重要的功能,3dmax制作坦克动画教程我们将使用这些动画的控件,动画师将这些对象的动画(手动调整),钻机将做的魔力! ,所以,他们必须是可见的,足够的帮助动画师的认识和选择,只要他们想要互动的钻机系统。我选择红色作为它的颜色,但你可以选择任何你喜欢的颜色,最好是一个很轻,饱和的色彩。我们有一个样条曲线,这是要定义我们的坦克的路径,当我们完成我们的钻井平台,这花键可以进行修改,只要你喜欢,移动,删除或添加顶点。

地面投影系统

我们要如何预测我们的坦克在地上,有几种方法,比其他一些更复杂的,但我要解释现在是一个最直观的。3dmax制作坦克动画教程其主要思想是采用网状突起项目轮子的位置,我们可以做到这一点使用符合的工具。如果我们有一个网格,每个车轮一个顶点,我们可以预测网,使用此符合,约束车轮的位置,这些预测的顶点。我们将使用的符合几何/可变形的空间扭曲。

首先,我们要克隆的车轮,这是帮助我们定义网格的顶点将要。然后,我们将只用一个车轮。3dmax制作坦克动画教程 选择的框架和轮(大)和隐藏未选择。复制轮在同一个地方(CTRL + V),在该对话框中选择复制框,然后按确定,然后在不取消选择这个副本,将其放置到对面的框架,将其x位置,从消极到积极的价值(这是以确保其位置正好相反)。然后,选择两个轮子并拖动,将它们复制到在屏幕的下侧,计算从第一轮的短距离,有一点,我们要沿着框架有5个车轮每边。在克隆选项对话框中选择4个拷贝数的微调。 现在,让我们创建一个4长度的段段平面1的宽度。在绘制到视口,配置捕捉工具捕捉到支点。捕捉切换按钮上按一下滑鼠右键,在栅格和捕捉设置对话框检查透视。3dmax制作坦克动画教程现在,隐藏在框架和从顶视图中创建的平面对齐,从顶端左车 ​​轮的底部右轮。这架飞机命名为为ProjectedPlane 飞机上的z位置置零,这架飞机现在应该在底部的车轮。同时也增加了一个shell修改它的内部和外部的金额为零,。如果没有这个修饰符的投影不会工作,因为符合空间扭曲,不符合开放的网格。 在此之后,我们将在第一轮工作,所以删除其余的人。这似乎是浪费时间的副本,然后删除它们。但是,他们是有用的定义车轮的位置,使我们能够建立预测网,而无需任何后患,它的顶点位置。 创建一个点辅助性的大小为0.3和你喜欢的显示形式,我选择一箱。 捕捉它的第一个平面的顶点的顶点在那里的第一轮是会受到制约,因为我们做之前捕捉到支点,我们可以做的相同捕捉到顶点,命名这个帮手为“Helper_Attached_01”,这一点将帮助我们将约束的车轮平面的顶点。它会被连接到飞机上的顶点使用的附件约束,该控制器连接节点,以网格的面孔,但我们可以使用它作为一个顶点附件约束只是定义该点的位置在脸上。旋转车轮的枢纽(与影响枢轴只有层次面板)局部Y90度以上。这是确保,我们的车轮的旋转将工作精细设置了纺纱以上的x-轴的第一个1轴顺序。 然后,链接轮的Helper_Attached_01Helper_Attached_01作为母公司)。 选择的Helper_Attached_01和添加附件约束,选择飞机为目标。现在的问题是在其他位置,我们必须配置及其附件的约束。在运动面板下的附件属性卷展栏设置下一个参数:面= 7A = 1B = 0。3dmax制作坦克动画教程面对的是其中该点,我们将连接和AB的重心坐标,有用以放置点刚刚超过其相应的顶点。确保对齐到面属性被选中。 如果车轮有一个错误的方向,你要旋转的辅助来解决它,只要确保车轮的方向,它之前。3dmax制作坦克动画教程 如果脸上,AB的值不为你工作,你可以改变它们,直到你得到正确的点的位置。 最后,我们要创建符合空间扭曲和投影平面。创建面板- >空间扭曲- >几何/可变形” - >“顺应。从顶视图中绘制它与任何你喜欢的大小,它必须指向下方。取消隐藏的名字地面。在修改面板中,选择对象,并设置地面,经零的防区外距离(这个参数定义了一个从网格偏移位置) 投影面绑定到这个空间扭曲绑定到空间扭曲工具。这是它现在!我们的钻机的第一部分已完成,现在我们有一个多投影面投影在地面的表面改性剂。3dmax制作坦克动画教程如果我们把我们的投影平面,我们可以看到它是如何适应实时的。

自动纺轮

首先,我们需要建立我们的坦克的路线,所以我们可以沿着这条道路的距离定义车轮的旋转的。3dmax制作坦克动画教程我们不能只使用了坦克的当前位置,因为车轮的纺纱取决于坦克的行驶距离。例如,如果我们的坦克从点一个到的点其轮的旋转中C点的将是不同的,如果它AB和然后到C,不以重要,它是终于在同一个地方,这是因为的距离是不同的。所以,如果我们创建一个样条线作为它的路径,我们可以确切地知道所行驶的距离坦克沿着这条道路走下去。 3dmax制作坦克动画教程名称取消隐藏路径”Control_Main“的对象,我们要使用这最后一个点,是要沿着路径。选择Helper_Attached_01和链接的ProjectedPlane,然后链接ProjectedPlaneControl_Main,现在的层次结构作为在下面的图片所示。 ProjectedPlane对准的Control_Main,请一定要检查所有的位置和方向轴和两个对象在枢轴点对齐。现在这架飞机看起来怪怪的,但我们会解决这个问题在下一个步骤中。 这个层次,我们要确保轮和projectedPlane的,将按照Control_Main的溃败和它的方向

选择Control_Main添加一个Path_constraint,选择路径样条线为目标。3dmax制作坦克动画教程我们需要配置一些设置在运动面板。这一点需要跟随的路径和它的轴必须是“z”和翻转。通过这些设置projectedPlane具有合适的形状,因为它现在是与地面平行。

在纺纱中表达

我们需要一个数学表达式轮的X-旋转控制器。在这个表达式中,我们需要找到的X旋转值就由坦克的行驶距离。3dmax制作坦克动画教程我可以给你的表达,不知道是怎么做的,你可以使用它,但我不会是一个好老师,如果我做起来很简单! 认真说起来,它的更好,你开始了解如何使表达式为未来钻机的挑战。3dmax制作坦克动画教程所以,在这里,我们走了,一个小,很容易的数学课: 我们怎样才能找到轮的X-旋转吗?想想前往一整圈的距离,周长需要。此距离为等于其周边(2 半径)。 沿的距离的匝数要找到的数字,我们可以采取这个距离和除法它由距离行进一匝(如前面提到的,一个又是等于周长)。例如,如果我们有一个距离的3倍车轮的周长,将第一个值在外线会给我们一个数的3圈。 我们该怎么做下一回合的数量吗?我们可以乘它通过其等价的度,360度或2 . PI的弧度,和我们得到了我们的表达! 这表达如下: (距离/2PI 半径)). 2 . PI 其实,我们可能会取消(2 . PI)值本身。2 . PI / 2 . pi是等于一(1),因此,我们可以删除这些数字,它们是不相关的,现在 我们得到了距离/半径。 什么样的距离呢?我们怎样才能找到它呢?沿着路径的路径约束,使用的百分比和路径的长度,我们可以做到这一点。一个值的其他会给我们带来什么,我们希望:距离=Percent/100. SplineLength,我们将在这里,我们需要一个百分点,从01%,由100。当%00的距离为,当百分比是100%时,该距离等于样条的长度。50%会给我们一个样条线的长度的一半,所以......最后,表达如下:(Percent/100. SplineLength /半径(R 现在,我们打算把这个表达式轮的X-旋转控制器,我们将使用脚本控制器。 选择轮,在运动面板中打开指定控制器卷展栏中,选择旋转:Euler XYZ控制器,然后单击指定控制器按钮,选择旋转列表。,具有一系列的旋转中,我们可具有2控制器层,一个用于手动调整的脚本和另一个。3dmax制作坦克动画教程打开旋转列表,可用的控制器分配的Euler XYZ控制器,该控制器是手动调节,所以我们需要将其设置为通过双击它在旋转列表卷展栏,或通过单击设置激活按钮。当控制器,这个人会是一个我们将修改的旋转的小发明(手动调节)。 回到第一Euler XYZ控制器在指定控制器卷展栏上,打开它,在X-旋转控制器分配浮动的脚本控制器 在表达式文本框中写:SplineLength = curveLength路径,这条线使我们能够路径的长度使用的curvelengthMAXScript的功能(这是行不通的,如果路径样条线缩放)。在下一行写的表达,(Percent/100. SplineLength /半径(R)。 然后,我们创建变量,并将它们分配给它们各自的值。 你必须在创建变量组编写的变量名称完全一样他们书面在表达文本框中。开始写的路径,然后单击创建按钮,做同样的百分比和半径。 我们不需要创建的SplineLength变量,因为它要得到它的价值,里面的脚本。 自动进稿器:gen3d] 如果我们评估表达现在,我们就什么也得不到,因为我们需要将变量分配到各自的值。 -变量列表中,单击选择路径中的指定节点按钮,在轨迹视图中选择路径样条线对象选择对话框。 3dmax制作坦克动画教程-选择百分比在变量列表和点击的指定曲目按钮,选择的control_Main的路径约束%控制器。 -选择半径在变量列表和点击的分配常数按钮,写0.473(你可以找到它使用的磁带帮手对象测量车轮的直径和,然后除以由两个)。 您可以指定车轮的半径参数半径变量,如果你需要到改变的车轮半径在未来, 如果你评估现在,我们得到我们的自动旋转系统!您可以检查出来通过移动control_main的对象。

自动幻灯片卡特彼勒

右让这3部分坦克下WYA教程的第2部分。3dmax制作坦克动画教程在我们开始之前创建的毛毛虫,我们必须完成我们的车轮的设置,然后将克隆了四次。 首先,我们将建立我们的车轮的控制对象(“Control_Wheel_01”),如前面提到的第一页,这些动画师的调整和自定义动画控制对象将是有益的。 基本上,我们要变换控制器的实例。像实例化的对象的实例,改变任何一个控制器将改变所有的人。 为此,首先取消隐藏“Control_Wheel_ 01”的名字,对齐到车轮(位置和方向),并在其位置的偏移和方向的仅影响对象按钮,按下层次面板(一个看图片,支点必须是在同一个地方)。3dmax制作坦克动画教程 Control_Wheel链接的的“Helper_Attached_ 01”。由于变换控制器是尊重家长的转型,我们需要确保这两个对象具有相同的parent.Next中,选择Wheel_01和打开轨迹视图(你也可以打开迷你曲线编辑器,按一下按钮,在左边的在屏幕的底部)。浏览直到您找到该轮的变换控制器,单击它,然后右键,选择复制。3dmax制作坦克动画教程然后,导航,直到你找到的Control_Wheel的变换控制器,单击它并右键单击它,这个时候选择粘贴和检查实例中的粘贴显示对话框。 现在两种对象,车轮和Control_Wheel是变换的控制器实例,你可以检查它通过移动Control_Wheel

克隆轮

双击Helper_Attached_01(这是比较容易,如果你这样做的线框模式),它会选择在其层次结构中的所有对象,包括它本身。克隆按CTRL + V在这两个选项(对象和控制器),选择复制。3dmax制作坦克动画教程如果你的克隆轮的方向偏移,您可以修复它选择的名字的Helper_Attached_02和旋转。 然后,选择按名称Helper_Attached_02如果你还没有,去运动面板中附件参数卷展栏,并减少脸部第二轮数,直到你得到正确的位置,这个数字可能小于2个单位的第一轮(如果此卷展栏不会出现,你需要激活的位置PRS参数卷展栏上的按钮)。做同样的过程3次以上的其它车轮。3dmax制作坦克动画教程在过去的车轮,你需要改变AB的值,以固定其位置(A = 0B = 1),面值为1

创建卡特彼勒

正如前面提到的第一页上,毛毛虫是基于几件左右滑动样条曲线。3dmax制作坦克动画教程所以,现在,我们将创建样条线。 选择projectedPlane,在修改面板中关闭它符合约束力的改性剂,按一下灯泡,并设置其世界上的位置和旋转值为零。这是暂时的,它是做的下一个步骤更容易有坦克对准视口。 要创建小轮子,双单击的Helper_Attached_01以选择它的车轮和控制对象,克隆他们按ctrl + v,选择复制在这两个选项。我们需要到克隆轮的辅助,因为我们需要在相同方向(控制器在尊重家长的变换)的父母,选择的Helper_Attached_06,3dmax制作坦克动画教程在运动面板上选择的位置列表控制器和取代它的一个位置XYZ控制器,这样做,我们正在删除附件的约束。 修复其旋转-90度超过其z轴的方向,并将其放置在后顶侧的坦克(见图片),取消隐藏的框架和链接帮手。然后选择轮和减少它的半径值,如0.373,你就不得不减少它在脚本控制器。 创建前小轮,双击的Helper_Attached_06,克隆的对象,选择的名称Helper_Attached_07,并把它放置在前面的坦克。 左视图开始创建样条线添加顶点底部的车轮,每个车轮每顶点,继续上面的小轮(见下图)。最后,确保所有顶点的贝塞尔型大所示的画面(选择顶点- >右键- >左上四- >贝塞尔)的切线,切线将产生一个光滑插值样条曲线而变形了地面的表面。3dmax制作坦克动画教程从顶视图中,移动车轮的中间线。为这样条为“CaterpillarSpline”命名。

在左视图中创建样条线添加顶点底部的车轮,每个车轮每顶点,继续上面的小轮(见下图)。3dmax制作坦克动画教程最后,确保所有顶点的贝塞尔型大所示的画面(选择顶点- >右键- >左上四- >贝塞尔)的切线,切线将产生一个光滑插值样条曲线而变形了地面的表面。从顶视图中,移动车轮的中间线。命名为的样条为“CaterpillarSpline” 接下来,我们需要创建一个帮手,每个样条曲线的顶点。使用顶点单元进行此操作的工具,并为他们设置一个大小为0.2。我们要用这些佣工变形样条曲线的顶点。将它们命名为Helper_CaterpillarPoint_1Helper_CaterpillarPoint_2 .... 开始在第一车轮由助手。3dmax制作坦克动画教程你可以使用的工具菜单中的重命名对象工具。 有一些变形样条线的节点,如样条线IK控制修饰符的方法。但我没有用它在这个平台的顶点,因为在一些坦克的方向并没有表现良好,另外,它有问题,当您将它复制。3dmax制作坦克动画教程所以,最后我决定使用蒙皮修改。这个修饰符会影响样条曲线的顶点作为它确实与网格顶点,它是不昂贵的个人电脑(样条曲线有一个非常少的顶点)和它并没有有问题的样条线IK控制等做。 蒙皮修改的样条,然后添加所有的Helper_CaterpillarPoints,为骨骼。修改每个顶点和切线点的权重就各自的助手,直到你得到想要的结果。 现在,链接的底部helper_CaterpillarPoints其各自的Helper_Attached点,这样做样条曲线将被连接到的ProjectedPlane。的其余的CaterpillarPoints的链接的框架,并将其链接的框架的ProjectedPlane(不要忘了这样做)。 佣工车轮的位置,我们需要一个位置约束。选择wheel_01毛毛虫辅助的位置约束,它的目标选择轮。我们不能使用保持初始偏移选项,因为它定义而不是相对于坦克的位置,因此,一些坦克的方向,助手将有一个错误的位置。要将其放置在它之前指定一个位置XYZ控制器中可用的控制器的位置列表中,并活跃在位置列表卷展栏,你可以删除第一个位置XYZ控制器,它是无用的。然后将辅助之前(你可以做到这一点对准的Helper_Attached对象)。 做同样的过程,其余的车轮。需要被限制在小轮子上的毛毛虫助理。

卡特彼勒件

作品的幻灯片使用路径约束的样条线,我们已经创建,然3dmax制作坦克动画教程后我们就可以添加一个脚本控制器在其百分比沿路径控制器来定义它的滑动,就由坦克移动的距离。 取消隐藏的名字的Caterpillar_Piece_01,链接到的帧,并添加路径约束使用CaterpillarSpline为目标。在运动面板中的路径参数卷展栏中设置参数图中所示。允许选项将启用倒片通过花键有正确的方向,不作任何处理的情况下。 然后在其局部X轴,然后在其局部Z-90-90度旋转件。 现在,我们将脚本添加到百分之控制器。在运动面板- >指定控制器卷展栏上(你可以同时做它在轨迹视图)分配一个浮动列表控制器在%控制器中,在列表的可用的控制器分配一个贝塞尔浮动控制器,3dmax制作坦克动画教程并在在第一控制器(线性浮法)分配浮动脚本。我们创建一个列表控制器,以定义一个额外的价值与第二个控制器,所以,以这种方式,我们可以定义一个偏移每个毛毛虫的一块的相同脚本控制器为所有这些。 的脚本几乎在相同的比车轮的旋转。但就在这个时候,我们不使用半径,相反,我们将使用的卡特彼勒长度。开始写的第一行前面的脚本: SplineLength = curvelength路径 ,然后添加后的下一行第一个:CatLength = curvelength卡特彼勒 在最后一行替换的CatLength半径,并在此行开头放置一个减号:- (占/ 100)的. SplineLength / CatLength 不要忘了创建变量和分配各自的节点或曲目。在卡特彼勒变量,我们需要,,以为节点分配CaterpillarSpline,。 在这种情况下,我们发现沿毛毛虫的caterpillarLength(周长)的距离除以片的回合数。 3dmax制作坦克动画教程这是控制器处理,从011100%,在这种情况下为1匝沿花键。

克隆件

要复制件我们需要做同样的过程50次。 幸运的是,有方法来做到这一点非常迅速,反复的宏操作。正如我所说的第一页上的几行代码,这意味着做出了很多重复性的任务。 MAXScript菜单- >新建脚本。在文本字段中粘贴这些行代码:i = 149做( newPiece =复制Caterpillar_Piece_01 newPiece.position.controller [2]percent.controller [2]。值=i/50作为 它的工作原理: 对于i = 149 首先,我们需要定义的迭代范围内使用的句子,使用变量“i”我们开始定义的迭代器的第一个数字,在这种情况下,我们从1开始, ,然后定义迭代的最后一个数字,在3dmax制作坦克动画教程这种情况下49,我们会执行相同的过程49次。,内部迭代当前循环次数存储在变量“i”,我们可以用这个数字来设定一个%的偏移电流片副本。 parenthesys我们之间描述的过程中,我们需要重复49次。newPiece =拷贝$ Caterpillar_Piece_01 在这行代码中,我们创建副本的一块,并将其存储在的“newPiece”变量,我们需要到使用的“$”字符对象的名称前可以向使用这个对象内部的MAXScript。如果对象的名称有任何空间就可以了,在MAXScript我们需要以取代这个空间的“_”字符。newPiece position.controller [2]percent.controller [2]。值(i/50作为持股量). 100 这条线,我们定义的百分比抵消。点字符(。)我到一个访问物业,第一个访问的newPiece的位置属性,然后的第二个控制器的位置,那么其百分比,然后的第二个控制器的这个百分比,3dmax制作坦克动画教程并最终该控制器的值。我使用的变量(电流回路)找到右偏移量,如果我们将这个数字我们获取一个值范围从01,乘以100%,各自到当前的复印份数总数的。我使用浮动,以确保该部门会带给我一个小数 其实只有一条线,它是太长了。在这里,我们复制实例%的控制器,脚本控制器。如果我们需要进行任何配置,该控制器的未来,我们需要使它只有一次。也有是只有一个脚本控制器执行只有1时间提供所有的作品共享的值。 3dmax制作坦克动画教程v后,你将在代码中的文本字段的maxscript编辑器去文件- >评估所有。现在,我们得到了50块!迭代宏操作,这仅仅是一个非常小的解释,你可以检查MAXScript参考了很多的信息。此外,您还可以使用宏录制找到的maxscript中最大的操作代码,你可以激活它的MAXScript菜单- >宏记录器。它使一个粉红色的文本字段中的MAXScript的监听器(MAXScript的菜单- > MAXScript的监听器)。如果你提出一个操作中的最大脚本将出现在这个文本字段,不幸的是不是所有的最大的操作出现。 加入我们下周,我们总结了该型坦克装备与创建fullt移动炮塔和大炮。

框的位置及方向

在我们创建框的位置和方向,我们需要复制的车轮和履带式坦克的左侧。但是,有一个问题,我们需要处理。原来的caterpillarSpline经过克隆的毛毛虫,有皮肤的克隆佣工的骨头,而不是原来的。幸运的是有一个技巧,避免这种情况,只要关闭caterpillarSpline皮肤调节剂。 隐藏的框架,炮塔和炮对象。3dmax制作坦克动画教程选择所有的轮子,佣工,片,和控制对象的右侧。在顶视图中绘制一个选择矩形内的所有对象(见下图),取消选择ProjectedPlane在此之后,你可以做到这一点。按Ctrl + V,并检查这两个选项的副本。 现在选择的名字caterpillarSpline,打开它的皮肤调整,做到这一点也与caterpillarSpline01 选择的名称Helper_Attached_14,在运动面板中改变它的AB的值来设置新的位置(可能是您只需要设置A = 0),13121110 Helper_Attached对象做同样的过程。前轮会有所不同,改变它的脸(FACE = 2),设置 镜像的位置的Helper_Attached_09Helper_Attached_08A = 1B = 0,将其旋转180度,在其局部Z轴。新Wheel_Small佣工)改变他们的x位置值从负到正的价值。 现在,选择所有的Control_Wheel对象,3dmax制作坦克动画教程改变对象的位置仅影响对象按钮,激活层次面板,把它们放在对面的轮毂。

创建车轴

这些轴,我们可以控制框架的方向。在创建中,框架将有自己的方向的平均。我们将使用骨骼与IK解算器。 隐藏但车轮和projectedPlane的。在顶视图中创建一个骨的左车轮右侧车轮使用捕捉工具,枢轴激活,设置在创建面板的宽度和高度为0.3,不删除末尾的骨头。命名为大骨头Axle_Main_01Axle_Main_02 ....完骨为Axle_End_010203 ... 添加每对骨骼IK解算器,可以减少在运动面板的IK目标大小,3dmax制作坦克动画教程链接的主桥的骨头到他们各自的轮毂和做相同的IK解算器(见图片)。 现在,在车轴有一个就到车轮的方向,但他们还需要一个额外的取向方面的整体系统,我们将使用IK解算器旋转角度这一点。那将是非常有用的,例如,在地面倾斜的框架需要向前或向后旋转。 创建一个点帮手,这个帮手将IK解算器旋转角度的目标,所以我们需要把它的中心油箱。选择这个helper类名IT Helper_AxlesSwivelTarget和中间轴对齐,在对齐对话框中的目标对象组检查中心,并确保所有位置轴进行检查。然后,将其链接到中间的轴。3dmax制作坦克动画教程 选择第一个IK目标,在运动面板设置Helper_AxlesSwivelTarget使用拾取按钮,在“IK解算器平面组的目标,其他IK目标做同样的事,但中间的一个。这中间的骨头会不会有旋转的目标,因为这个原因,我们不能把它连接到轮,如果我们这样做,它会旋转的车轮。, 选择中间Axle_Main骨,并将其链接到ProjectedPlane。然后添加一个位置约束,与砂轮目标,这是替换的链接工作,在做之前没有旋转的问题,选择中间的IK目标,并设置旋转的天使= 180,这个值轴将有相同的方向,其他的人。 我们现在有一个小问题来解决,前轴;Axle_Main_04Axle_Main_05尊重其他轴相差180度。因此,方向限制,将无法正常工作,我们希望这些骸骨。我们可以做的是创建了一个180度的旋转抵消这些轴的帮手。创建和为它们命名Helper_Axle_04Helper_Axle_05,调整它们各自的轴,检查所有的位置和方向轴中心选项中的目标对象组。将它们链接到其各自的轴旋转180度,超过当地的x轴。 创建另一个助手不同的大小和形状,将它的AxlesSwivelTarget,并将其命名为Helper_Frame。添加位置约束,并将其添加为目标的车轮(动态面板)。然后添加一个方向约束和添加为目标Axle_Main_01Axle_Main_02Axle_Main_03Helper_Axle_04Helper_Axle_05。取消隐藏帧,并将其链接到这个新的帮手。 我们的框架方向和定位系统就完成了!,你可以检查他们的z轴移动的车轮。

框架,炮塔和炮的控制对象设置

就像我们以前那样的车轮的控制对象,我们会做同样的框架,炮塔和大炮的对象。 取消隐藏所有中,选择Control_Frame和它的框架对齐,检查整个的位置和旋转轴在目标对象组中的枢纽选项。随着仅影响对象按钮,在层次面板,创建一个偏移的方向和位置,直到你找到一个好地方,此对象的方向(见下图)。3dmax制作坦克动画教程由于这种控制对象具有相同的变换控制器的框架,是很好的调整其枢纽的框架,以确保我们将具有相同的副本,例如,控制器的位置和方向后 同其余的控制。对象与他们各自的坦克对象。 创建坦克的部件的层次结构,链接炮塔的框架,在cannon_base的炮塔和的cannon_extensioncannon_base 由于我们做车轮的控制对象,我们需要链接控制对象它们各自的对象的父。3dmax制作坦克动画教程 在轨迹视图复制实例的每个对象和控制对象的变换控制器,你可以很容易的迷你曲线编辑器。 现在我们可以得到projectedPlane的前,选择它,对齐的Control_Main(位置和方向),并激活其符合绑定修改。

大炮瞄准系统

炮基地将有约束看看,也炮塔,但只有在其z轴。3dmax制作坦克动画教程两个对象,我们需要创建一个点辅助,终于在控制器的外观,对象将继承其旋转。 创建两点帮手,他们的名字Helper_LookAt_TurretHelper_LookAt_Cannon。选择Helper_lookAt_Turret和调整它的炮塔,将其链接到炮塔的家长(帧)和它分配一个LOOKAT的约束对象为目标的Control_Target。然后选择Helper_lookAt_Cannon,对准大炮基地,将其链接到的炮基地父(塔),并分配给它的Control_target的一个LOOKAT约束的对象作为目标。 您可能会喜欢做的事,没有干扰在视口中LOOKAT viewline ,这样你就可以把它隐藏在运动面板中,设置零“viewline长度值中的look_at的约束卷展栏中, 有一些方法来获取对象的旋转,有一个LOOKAT的约束,喜欢用接线与一个ExposeTM的助手,公开对象的变换值,即使它分配任何约束。但是,我更喜欢使用脚本控制器,因为我并不需要任何额外的对象,使其工作。 选择的炮塔,在运动面板- >“指定控制器卷展栏,选择旋转XYZ欧拉控制器和分配旋转控制器列表来。正如前面提到的,该控制器将使我们有两个控制器的的脚本控制器和其他人进行手动调整第一层, 在可用的控制器分配的Euler XYZ控制器,回到第一的Euler XYZ,并在Z轴旋转控制器分配一个的脚本控制器。 在表达式中,我们首先需要找到当地的转动值的助手,这是因为控制器需要在本地模式(本地值中最大的父母)。我们能做到这一点使用这个助手和其母公司的转换值。三维软件的方式,继承了从一个对象到它的孩子是父母的变换矩阵相乘,其子女局部变换矩阵的转换值。有记住这个,我们可能会发现孩子的本地TM做的逆过程。3dmax制作坦克动画教程在数学的逆过程的两个矩阵相乘的不是分裂他们,这是一个特殊的过程被称为,最多有一个MAXScript的功能此。 所以,表达如下:辅助性的变换.逆父的改造 由此产生的转换我们需要提取的旋转值:(外佣的变换逆父的变换)。旋转 然后,我们需要将这个旋转四元数的值欧拉角值,以便能够获得其Z轴旋转值。要做到不使代码行太长,我分配这个旋转到一个变量中,并继续到下一行。3dmax制作坦克动画教程 所以,它如下: ROT =(外佣的变换.逆父的变换)。旋转 (根腐病作为eulerangles)。 Ž 的辅助,我们要创建一个的变量称为helper_lookAt分配为节点的Helper_lookAt_Turret的。作为一个对象的属性,我们可以得到父节点。如下的表达最终 腐烂=helper_lookAt.transform .helper_lookAt.parent.transform)的旋转degtorad(作为eulerangles腐)。 degtorad是需要的,因为控制器处理旋转的弧度值。 Cannon_base将所需要的所有旋转值的helper_lookAt。我们不能直接分配LOOKAT约束的大炮,因为我们将无法进行手动调整。3dmax制作坦克动画教程我们可以手动调整旋转列表中指定一个额外的Euler XYZ控制器,但它会有意想不到的行为,当我们旋转它(这个问题发生在旋转控制器,位置控制器,它不发生,并在炮塔的情况下,它不会发生,因为我们只使用了一个有轴)。 但是,有一种方法使人们有可能,我们要链接的大炮的助手。选择cannon_base,并在Control_cannon_base的对象,将它们链接到的Helper_lookAt_cannon,然后选择cannon_base,将它的Helper_lookAt_cannon(方向),现在它有一个错误的方向,因此其局部Y轴旋转90度。 这样做的,大炮将继承佣工的方向,也是我们就可以进行手动调整。 您可以将Control_Target,检查了这一点!

好了,最后这个是什么,出罐钻机完成!。您可以Control_Main对象的动画抛出的路径样条线,只要你喜欢,还可以修改此样条线。

最后的注意事项

为了适应你的坦克最终模型这个平台,你只需要调整和坦克的对象模型的部分连接起来。3dmax制作坦克动画教程如果你想要一台更舒适,您可以创建层的最大层经理,助理,其他为控制对象等,你也可以阻止某些对象在一定的位置和/或旋转轴(层次面板- >”链接信息按钮)炮塔的xy的旋转轴线旋转,以避免水箱中,是不可能的变动的例子中。该钻机的对象,如框架或炮塔的几何对象,但如果你想他们可能是骨头,最后的节点。最后,像任何其他钻机,你必须要小心尺度。 我希望你喜欢这个教程,更多的东西很快就会到来!

 

评论

{{ username ? username.charAt(0).toUpperCase() : '?' }}
Ctrl+Enter 发布
{{ (c.username || c.author_name || '?').charAt(0).toUpperCase() }}
{{ c.username || c.author_name }} {{ Utils.formatDate(c.created_at) }}