咨询电话:400-810-1418服务与监督电话:400-006-6572

角色动画教程:如何制作脸部动画

发布时间:2019-06-06 09:44:28

今天给大家分享一篇角色动画教程,教你如何制作脸部动画,一起来学习下吧!

0.jpg

2002年,当我第一次学习使用Maya创建人物装备时,在Playstation 2标题超人:Apokolips的影子中,我们使用的装备并不是最有效的,并且Set Driven Keys(SDKs)几乎用于所有东西。

手是由他们驱动的,面部表情也是如此,事实上几乎每个控件都涉及某种SDK。不要误会我的意思,Set Driven Key是Maya中一个功能强大的工具,但你可能需要通过大量的Maya教程来解决它。设置起来可能非常耗时,并且容易破解并且难以修复。此外,您的场景大小最终会因动画曲线数据而变得臃肿。

在过去的几年里,我一直在Maya尝试另一种方法,但这次是针对更高端的钻机,而不是游戏钻机。一种更有效,在大多数情况下更容易,更快速地实施到钻井平台。该过程应该为您提供钻机创建的基础知识。

在本教程中,我将带您完成操纵角色面部的步骤,但不是关注更基本的区域,如关节放置和重量绘画,我们将会看到Maya经常被忽视的方面......实用程序节点。

单词节点看起来像是一个令人生畏的单词,并且与涉及定位器,样条和其他复杂系统的高度复杂的装备相关联,但不要担心。通过这种设置,您将使用blendShapes,关节和节点的组合,以形成具有各种情感的高度灵活的角色。

一旦您按照这个过程,您就可以将此装备用于另一个角色,添加更多控件以简化动画并更容易创建3D艺术。本教程还附带了一个视频。

找到你需要的所有资产在这里。

01.创建网状拓扑

1.jpg

确保你的边缘循环遵循肌肉线

在开始构建装备之前,您需要进行一些调查工作。您正在装配的模型及其拓扑结构对于角色的移动效果至关重要,尤其是在这种情况下,如果您专注于脸部。重要的是拓扑结构不仅干净,而且边缘环路遵循自然肌肉线条。如果他们这样做,脸会以更加现实的方式变形。

02.制作基础形状

2.jpg

创建第一批blendShapes

一旦您对拓扑感到满意,就可以开始创建第一批blendShapes了,现在这样做也会在早期突出显示网格的任何问题区域。这些blendShapes是完整的面部姿势,涵盖了所需的所有主要表情,但划分为关键区域,如嘴和眼睛。我们正在寻找这里的基本形状,如微笑,皱眉等,以及上眼睑和下眼睑完全闭合。

03.添加更多形状

3.jpg

请记住为宽口和窄口添加blendShapes

使用这个装备,你将依靠八个主要控制来操纵嘴唇,所以重要的是还要为宽口添加blendShapes以及也可以兼作折叠的窄口。这是如此操纵单个控件可以基本上拉动嘴角以实现大量表达并在所有四个blendShapes之间一次移动。

04.拆分blendShapes

4.jpg

将形状分成左右两侧

创建主要形状后,是时候进入第二阶段了。您接下来需要做的是将它们分成左右两侧,这意味着您可以独立构建它们。快速执行此操作的方法是创建blendShape节点,然后编辑其权重,如左侧框中所示。这会将其影响限制在模型的一侧,这意味着您可以复制它并保留此副本以创建您的特定方。

05.建造骨架

5.jpg

接下来,构建你的骨架

面部装备的下一个阶段是构建你的骨架,如前所述,对于这个设置,我们将使用关节和blendShapes来构造角色特征。我喜欢使用blendShapes,因为它们可以为您提供更精确的形状,但接缝可以帮助推动和拉动面部区域,从而为您提供更大的灵活性。

06.控件还是用户界面?

6.jpg

无论您使用控件还是单独的UI都取决于您

无论您是创建浮动在角色脸部前面的控件还是使用单独的用户界面,都取决于您,或者更有可能取决于将使用您的装备的动画师。现在是时候开始创建这些控件了,在本教程中我们将使用两者的组合。主UI将用于控制大多数blendShapes,但是一系列控件也将有助于在需要在所有三个轴中移动的位置操纵装备。

07.使用直接连接

7.jpg

通过使用直接连接避免这样的场景

当我们使用单独的UI时,您必须以不同方式接近钻机。传统上,您可以使用约束将特定关节绑定到其主控件,反过来,此控件自然会跟随头部。使用UI时,控件是静态的,不会跟随头部,因此使用约束会将关节锁定到控件,这意味着如果移动头部关节保持原位。解决这个问题的方法是使用直接连接而不是约束。

08.连接编辑器

8.jpg

直接连接有自己需要解决的问题

但是,通过“连接编辑器”使用直接连接将强制转换,旋转和缩放属性与控件的匹配。您的关节固有地应用了转换值,这些转换值在连接时最终会更改。您可以使用偏移系统,也可以在每个关节的位置创建一个定位器,冻结其变换,然后将约束父约束到定位器。因此,现在具有零属性的定位器将驱动关节。

09.连接定位器

9.jpg

使用“连接编辑器”将控件连接到定位器

现在定位器就位并且关节父约束它们,您可以使用连接编辑器将控件从UI的属性连接到定位器。如果定位器也是头控器的父级,它们将跟随其移动,无论UI控件在何处。此外,关节现在将相对于头部位置移动而不会锁定到UI,这意味着您还可以将UI放置在场景中的任何位置。

10.条件节点

10.jpg

一个条件节点,昨天

是时候开始连接blendShapes并引入第一个实用程序节点,它将是Condition节点。这是我最喜欢的实用程序节点,它所做的是获取一个值,如控件的Y转换,如果它超过或低于特定值,则输出另一个值。例如,如果控件在Y平移中超过0,那么我们可以触发微笑blendShape,否则,它将被忽略。所以让我们设置一下。

11.带来一切

11.jpg

只需将它全部放入节点编辑器即可

打开节点编辑器并选择Lip_Left_Outer_Control,单击将所选节点添加到图形按钮以将其带入。现在按节点编辑器中的Tab键并在小窗口中键入Condition并从下面的菜单中选择它以创建它。最后选择角色头部模型上的主要blendShape节点,称为Head_BShapes,再次按照第一步将其带入节点编辑器。

12.连接节点

12.jpg

这是它开始变得有点复杂的地方; 挂在那里!

现在将Lip_Left_Outer_Control.translateY属性连接到Condition节点中的First Term属性。

将第二个术语保留为0并将操作更改为大于。

接下来将Lip_Left_Outer_Control.translateY连接到ColorIfTrueR。(这意味着当第一学期大于第二学期时,它将使用真实值。)

将OutColorR属性连接到Left Smile blendShape属性并移动控件以查看发生的情况。

13. MultiplyDivide节点

13.jpg

慢慢微笑blendShape的动作有点慢

现在只有当控件在Y轴上移动时才会触发微笑blendShape,但它可能会影响它太多。您可以使用multiplyDivide节点来减少其影响并减慢移动速度。在节点编辑器中,按Tab键并创建multiplyDivide节点。

将Lip_Left_Outer_Control.translateY属性连接到multiplyDivide节点中的input1Y属性,将其OutputY属性连接到Condition节点上的ColorIfTrueR属性。

14.调整值

14.jpg

更改Input2X属性以更改移动的内容

当你移动Lip_Left_Outer_Control时,笑容看起来没有什么不同,直到你调整multiplyDivide节点中的Input2X属性,这是Input1X值除以的量。将此值更改为0.5会使混合形状移动的量减半,因为它将Y平移值减半。同样,-0.5的值会将其反转一半,这在连接未来控件时很重要。

15.连接更多控件

15.jpg

使用相同的过程来触发宽口混合形状

这只是blendShape添加的微笑,但您现在可以按照相同的过程使控件的X平移触发宽口blendShapes。使用相反的方向,因此减去X和Y运动,触发皱折和皱眉形状,确保您还将条件节点中的操作更改为小于。这将确保仅当值低于0而不是高于0时才触发那些blendShapes。

16. UnitConversion节点

16.jpg

使用简单的直接连接进行下颌运动

您并不总是需要创建一个新节点来编辑控件对某些内容的影响。通过下颌运动,您可以使用简单,直接的连接来控制颚关节的旋转,而不是使用实用节点。连接时,Maya将默认在您可以使用的连接之间自动创建unitConversion节点。

17.减慢下巴的速度

17.jpg

编辑“转换因子”属性以减慢下颌速度

如果您发现下颚旋转太快,则可以编辑unitConversion节点中的Conversion Factor属性,而不是引入另一个multiplyDivide节点来减慢它的速度。

18. BlendColors节点

18.jpg

使用blendColors节点在两个其他值或控件之间进行混合

只需这几个节点,您就可以看到我们已经取得了多少成就,从这里您可以愉快地按照自己的方式工作并连接其余控件。但是,我们可以在blendColors节点的帮助下完成更多工作。即使这可以与您的典型RGB值一起使用,您也可以利用此节点在两个其他值或控件之间进行混合,从而使切换和混合更容易。

19.粘嘴唇

19.jpg

使唇部与blendColors节点粘在一起

任何口腔装备的一个重要部分是它能够使嘴唇粘在一起,无论下颚在哪里。想象一下角色需要咀嚼的东西,即使下颚移动,嘴唇需要保持密封。为了帮助实现这一目的,您可以使用blendColors节点来指示下唇驱动器定位器是否遵循下颌或上唇控制。

20.唇组

20.jpg

将唇控定位器分为三组

首先,您需要将唇控定位器分为三组。Upper_Lip,Lower_Lip和Corner_Lip并确保它们的枢轴与下颌关节处于同一位置。这是因为它们围绕同一点旋转。接下来将StickyLips_Control,Lips_Control,Lower_Lip组以及Jaw驱动程序定位器带入节点编辑器并创建一个新的blendColors节点。

21.连接嘴唇

21.jpg

将所有这些事情挂钩到其他一些事情上

将Lips_Control.rotate属性连接到blendColors.color1属性。重复使用钳口定位器将其旋转连接到blendColors.color2属性。

将blendColors.output连接到Lower_Lip组的rotation属性。如果您在blendColors节点上操作Blender属性,则下唇将在两个值之间进行混合。

将StickyLips_Control的Y转换连接到Blender属性,以便控件驱动它。

22.闪烁形状

22.jpg

当眼睛部分闭合时,您可能需要创建一个中点混合形状

作为额外提示,您可能会发现由于blendShapes的线性特性,眼睑在被激活时而不是在眼睛上方移动。在这种情况下,您可能需要在眼睛部分闭合时创建中间点blendShape。然后可以将其添加为blendShape节点上的中间目标,然后在主形状接管之前将其触发到指定点。

23.荣誉奖

23.jpg

喊出Reverse和plusMinusAverage节点

我不能在不提及其他几个帮助我多年的方便实用程序节点的情况下结束本教程。这些是Reverse和plusMinusAverage节点。这些名称非常自我解释,反向节点有效地反转给定值,plusMinusAverage节点类似于multiplyDivide节点,除了它允许您执行不同的数学方程式。

24.实验的时间

24.jpg

现在继续玩吧