最终幻想15 面部表情流程技术分享
从零开始的kami
2021年07月09日 02:23

面部团队

    首先,对第二业务部门的面部研发团队的组成进行了说明。面部小组由三位绑定艺术家组成,其中包括发表演讲的岩泽先生。同样,面部艺术家的工作是处理与面部有关的所有事情。听到三个人进行了如此大量的演讲,我感到非常惊讶,但是在本次研讨会上宣布,将尽可能节省流程浪费,并提高效率。不仅针对技术技能,也包括流程介绍,对那些一直以来在无流程低效率工作环境下的学生,我表示同情。

    在面部小组中,该项目的初始阶段主要是绑定创建,流程架构以及各种工具的开发。面部团队于2014年加入FINAL FANTASY XV。之后,半年用于工具开发和流程搭建。在项目的中期和后期,资产的批量生产有所增加,但是我想说的是,在项目早期的合理规划,将极大的影响后续的工作速度。研发基本上是与制作无关的,并且开发通常是由公司的技术中心和艺术家共同进行的。

面部绑定概述

这项工作中的面部设置工作可以大致分为三类:

(1) 主要角色

(2) 次要角色

以及

(3)怪物/召唤物/动物。

主要角色是指带有名字的角色,比如,noct,在此工作中,所有主要角色的面部模型拓扑结构必须完全一致

主角Noct的所有模型,

左边是预渲染电影模型 (王者之剑or FF15 CG过场)

中心是Noct的当前模型 (发售的FF15游戏内模型)

右边是Noct的实时模型,2014年早期测试版本

 

    次要角色是诸如城镇居民之类的尚未确定名字的角色,乍一看,与主角的差异似乎不大,但多边形和骨骼的数量被降低到主要角色一半及以下的, 次要角色使用常见的拓扑创建,但是对于怪物,召唤物和动物,每个角色的拓扑和骨骼数量完全不同。

    岩泽先生介绍了从最初的主角模型到发布时加入模型的多边形数量大大增加的过程,最终规划并实现了所有具有相同拓扑结构的主角,不论性别,我们决定根据需要添加相同拓扑的任意主角。作为一个测试案例,已确认可以通过根据主角的noct模型创建一个老年男性或女性模型而毫无问题地进行blendshape。此外,还进行了测试,以查看在改变面部表情时是否有足够的多边形来表示皱纹和皮肤松弛。在这项工作中,没要使用代理细分预览,这些测试过程都是基于实际的多边形。因此,作为角色艺术家和面部艺术家的反复验证的结果,确定了具有头部网格的大约10,000个多边形。

    通过Noct在实际测试中创建中年,老年人和女性的模型

    在需要皱纹的地方增加多边形,例如法令纹,额头和眉毛。

基本关节和蒙皮

    在这项工作中,面部表情动画以及身体都采用了基于骨骼的系统,因此有必要为所有角色创建一个相同的骨骼放置位置。采用骨骼蒙皮是因为这能极大的降低lod模型的资源负载。头部共有124根基本骨头,眼睛周围有46根骨头,嘴周围有78根骨头。

    这里介绍了一个视频,其中一个是电影团队预先渲染的参考视频,它用来挑战纯骨骼架设最大能还原blendshape多少效果。

    姿势空间变形(以下称为PSD)用于难以通过骨骼运动来表达的部位,例如皱纹,眉毛之间的皱纹和下垂。PSD是一种创建BlendShape的方法,该方法可以校正特定姿势下的形状,但是要校正的点越多,内存负载就越大。必须合理考虑哪里应该修型,哪里只需要纯骨骼形变。可以使用Maya 2016随附的姿势编辑器来创建PSD。

    左边是预渲染BS,右边是实时。实时仅适用于骨骼。

 

    为了减少面部表情实时与预渲染之间的差异,合理选取需要的极限表情进行骨骼着重复刻。最近,已经宣布了几种解决方案,可将已由变形器(例如BlendShape)更改的网格转换为自动的骨骼权重 (MTJ)。但是,由于这项工作RD开发尚未开展,因此所有骨骼的放置都是手动完成的(坑爹的RD)。

 

    要校正的修型越多,添加的BS就越多,因此在眉毛和脸颊之间而不是整个脸部使用PSD。

 

    对于褶皱的表现,不使用tensionmap之类的表现张力的变形器,而是根据不同部位,来分配顶点色的RGB值,并在运行时执行根据组合表情的强度驱动RGB,用作法线贴图的mask蒙版。称为“ KineDriver”,用于将它们与骨骼运动联系起来。

    当您移动蓝色滑块时,控制器驱动法线贴图的效果会反映在左眼角。

 

创建面部控制器

    接下来是面部控制器。为Maya的面部动画师开发的操作GUI,收集了面部艺术家工作所需的所有意见和需求,并可以保存共享给他人自己所编辑的动画、保存GUI滑条动画值、等,类似于animationstudio,只不过保存的数据是GUI的滑条值,而不是骨骼值。您可以在GUI上直接工作。

    右侧是面部控制器滑条面板,左侧是picker。

    右侧用于拖动滑条播放特定的骨骼表情驱动

    左侧picker用于选择面部骨骼,直接对骨骼进行位移操作

 

    还有一组用于精确控制更改程度的滑块,就像Maya的ChannelBox一样,您可以在检查效果级别和要调整的参数的外观时执行详细的操作。还介绍了用于编辑此工具滑条创建和添加的面部绑定修改插件兼picker。这些picker按钮的排列方式与脸部的骨骼相同,并且可以通过按该按钮轻松拾取骨骼,当您通过调整骨骼设置好一个新的表情或者Pose后,可以通过Picker的功能将其添加为一个新的滑条

    使用picker直接移动关节,用以创建面部滑条控制器预设内无法获得的面部表情。主要操作手法是面部滑条控制器,次要操作手法是直接编辑骨骼。

 

    面部绑定组具有详细的层级结构。在“ Cns”组下,存储受骨骼和约束的节点;在“ Drv”组下,存储与控制面部强度的“驱动曲线”相关的节点。作为核心功能。

 

绑定等级

    构建完成的面部绑定后,根据面部表情的数量(水平方向上的节点数就是面部表情的数量),可以增加尽可能多的Driven节点(用picker新生成的滑条表情组)。这是面部动画师随着角色的面部表情变化和设计全新添加的,从绑定制作完成后一开始并没有。

    绑定角色D的节点。可以看出,层级结构中有着丧心病狂多的驱动节点

 

    另一方面,当用上述picker选择骨骼并将其移动到任意位置时,从调节工具DriverList中选择作为被驱动物的骨骼集,并执行关联。该驱动程序与面部控制器的上述滑块关联,并且当使用面部控制器更改相应的滑块时,所需的骨骼将通过Maya的“设置驱动键”进行移动。

 

    用于添加随动物体的调整工具(左侧)。驱动程序已连接到右侧面部控制器上的滑块。

    从调整工具驱动程序列表中选择R BROW,然后在A节点处选择右眉范围。

    单击创建工具的驱动节点按钮,将右眉驱动节点添加到D节点。

 

    添加眉形pose时,可以使用面部滑块不停的测试效果。

 

此类创建的面部表情的类型基于FACS(面部动作编码系统)理论。在此FACS理论中,参照面部捕捉演员拍摄的面部照片,创建了表达人类情感所需的尽可能多的组合(动作单位)。

 

    如果滑块的数量增加太多,动画工作的效率将会降低,因此有必要仔细确定FACS组合的数量。这将消耗一定的时间来构建第一个操作模式(重要),但只有打实了地基后续其他微表情的调整才会更快捷(因为第一个FACS的操作模式将方向明确了)。插件提供保存另一个滑条设置的驱动者信息,并在设置其他滑条功能时读取它们,如果是常用控件,则只需进行微调即可。

    第一个角色的表情驱动设定需要时间,但是第二个将根据第一个的设定进行微调即可。

 

    由于次要角色具有相同的骨点摆放(虽然删减了数量),因此它们采用与主要角色相同的工作流。首先,创建一个具有较少骨骼和面数的角色。之后,与第二个主角一样,可以半自动读取早前的面部设置。

 

    动物/怪物/召唤物的骨骼数量不同。绑定设置流程与次要角色相同

 

    因为耳朵和舌头的缘故,相应地添加了滑块。之后,与主角一样的方式设置被驱动物曲线。

 

    角色总数约为160。细分包括24个主角色,大约120个配角以及16种动物/怪物/召唤物。大约有100个配角成为NPC。儿童,青少年,老年男女等并没有设置所有细分的表情,而是大致分为6种表情滑条模板,然后转移到了大规模生产中。

完善角色表演性格

    在这项工作中,设计了每个角色的个性,这是一个重要的环节。根据该列表的阐述,在进行动画设计的时候表现它。

    在这项工作中,有一张制作表,其中为每个角色设置了详细的个性和特征。以这些纸张为参考,要求美术指导在确认角色可能具有的面部表情的同时确认表情的形状,并进行了细微的调整,例如边缘线条的强度。岩泽先生说,他经常看电影的DVD,以便他可以参考适合自己需要形象的面部表情。这些材料似乎是在面部团队内部共享的,但其目的是通过参考将其他审美方向不一致的组员进行审美统一,从而使面部表情尽可能看起来中性而又不产生任何偏见。

    可以使用称为“ AnimMemo”的内部工具在库中保存以此方式创建的面部表情参考集。保存非常容易:首先,从面部动画中选择想要保存的关键帧。通过使用此pose工具,以使每个负责面部表情的美术师的面部表情没有差异。不仅可以记录姿势,还可以记录动画,原理和市场通用工具animationstudio类似

    创建的面部表情已在AnimMemo中保存。Iueo等发音的形状也已保存。

 

    保存很容易。从动画曲线中选择一个动画关键点,并为其保存。

 

    一旦保存了面部表情,就可以使用animMemo的滑块对其进行控制。(非之前的绑定GUI)

 

    动画也可以保存。

 

    AnimMemo的姿势和动画可以转移到其他角色。在本示例中,Noct的表演被读入黄毛上。没有故障,但是在某些情况下,需要进行细微调整以突出角色特征。使用此工作流程可以降低工作成本。

 

    AnimMemo还具有混合动画功能。左图中心的电子表格将其下方的屏幕分为9部分。在每个单元格中插入面部表情。如果在按住鼠标中键的同时移动鼠标,它将变为您放置的面部表情。

 

    AnimMemo也可以用于动物和怪物的动作。

提高生产效率的工具

    在这项工作中,除了到目前为止介绍的内部流程外,还开发了许多艺术家辅助工具,以便于进行面部动画工作。其中之一称为“ T2L”,代表“文本转Lipsync”。从在GUI的文本字段中任意输入的字符串的元音中读取音素,然后创建一个关键帧,在该关键帧中,角色以任意均匀的间隔说出语音。“ T2L”还支持英语文本,使其适用于与日语(英语)不同的音素。

    输入文字为“你好很高兴见到你”在左视图中。按下T2L按钮时,将从当前帧中自动生成一个发音关键帧。基于不同国家语音的调整是在软件内部执行的,但设置关键帧的时间是一致的。

 

    还支持英语。英文和日文的音素不同,因此也可以使用英语。

 

    接下来是Saccade Tool。扫视运动是指眼球的冲动反应,这个工具不仅会自动根据身体运动和颈部角度自动产生自然的凝视运动,而且还会自动产生运动。您也可以在自然时机眨眼。

 

    左侧的图是刚导入人体动画之后的图像。视线的方向已移动。右图是运行Saccade Tool之后的。视线会自动校正。

 

    最后,引入了名为“ AnimPanel”的工具。面部艺术家的流程工具,可从库中导入工作所需的数据以创建剪切场景。单击要使用的剪切场景名称和角色名称按钮,然后从每个字段的列表中选择面部动画工作所需的各种信息,例如剪切场景的身体动画以及文本和语音文件。可以轻松完成输入/输出,例如读取和导出工作数据。很好的沟通是,即使角色和场景很多,也可以与少数人快速合作。

    从“身体动画”列中选择所需的动画并将其导入。接下来,导入相机数据。

 

    创建一个显示为其他角色的头部的引导对象。引导对象在角色的头部位置烘焙。导入语音数据。实际上,您可以使用“制作场景”按钮一键导入人体动画,ccf和语音。

面部捕捉

    在这项工作中,使用“ Dynamixyz”(基于图像的面部捕获系统),仅被用于过场动画的录制。在过场动画中,专业演员被用于身体动画和面部动画中,以捕捉负责人表演的变化。但是,在其他情况下,例如动捕现场,部门中的动画师也可能充当演员或不进行动捕,改用手工制作。因为xyz支持无线模块,且支持最大同时6人录制,所以选择了它。

    在过场动画中,MC的拍摄是专业演员来完成的。

    比较原始捕获数据和后期制作数据。重新修改的数据将根据FIXED摄像头和配音演员的声音进行处理,以创建面部表情。

面部程序动画

    这项工作使用了一种过程动画,该系统为身体和面部自动生成动画。

    例如,在“注视IK”中,打开IK时,注视会移动以锁定目标。除了视线外,还链接了身体的“ LookAtIK”,以便另一方面对整个身体,并且可以感觉到角色的情感比以前强烈得多。您可以调整视线移动和Succade范围。

    启用IK时,视线会朝目标的方向看。此外,从胸部上方可以看到扫视,眨眼和细微视线的皱纹。与IKOFF相比,角色更人性化。

    左上:使用水平和垂直限制设置视线速度。右上方:扫视设置。注视宽度和随机设置。左下:控制皱纹并与动画图形融合。右下:可以通过动画图控制闪烁。眨眼本身可以通过调整设置进行调整。

 

    “自动口型同步”可以分析语音数据和衬线文本文件的输入信息,并自动输出口型同步运动的信息。根据声音团队提供的信息,计算处理将在一天的午夜自动执行,并准备在第二天早晨使用。还支持英语嘴唇同步,如果在实际机器上进行检查时嘴巴移动得超过必要,则会进行诸如细化关键帧的调整。

    必要的音素形状。总共18个图案。类似的形状以日语和英语分组在一起。

    在实际机器上播放声音时,嘴巴会自动移动。演奏的方式不会因语音而产生不协调感,因此嘴巴不会移动太多。

 

    接下来,引入了一个名为“情感”的工具。该功能使用脚本系统,该脚本系统在简单的事件场景中包括计划者部分准备的语音和语音数据,并通过组合一般动作和一般面部动画通过自动生成来创建场所的场景。

 

    通过基于心理学预先保存的面部表情(要用预先指定的),与角色的个性相匹配的情感来进行什么样的面部表情,就可以自动生成角色的表现。此“情感”仅在角色的行为在相机拍摄外的情况下使用,因此游戏玩家除非仔细看角色,否则不会注意到它。由于此类事件场景在游戏中随处可见,因此其设计目的是使美术人员无需手动即可创建它们。

    它称为脚本系统,它可以决定说话者和听者,对话和情感。最多有15种模式。基于心理学中使用的7种模式(愤怒,厌恶,恐惧,喜悦,悲伤,惊奇,中性表达),并增加了您的需求。

    研讨会上介绍的事件之一,是使用脚本系统创建的。对话和表情都是自动的,基本上,摄影机不受约束,几乎没有镜头。在这项工作中,此类事件分散在整个游戏中。

    也可以通过直接触发身体动画来更改表情。左侧是面部动画图。黄色方块包围的区域是情感。

面部绑定的未来挑战

    岩泽先生说,将来,面部绑定的质量会进一步提高,比如模拟皮肤在骨骼上的滑动。此外,我们将继续加强基于扫描的面部表情构建流程(实际上在最终幻想15王者之剑中已经投产),例如在CEDEC 2017上宣布的`` 使用可产生逼真的表情的纹理进行装配以及可产生丰富动画FACS '&#​39;的研究。有继续合作的前景。此外,就颈部表情而言,还是灰色区域,与身体绑定相同。我们还非常关注使用深度学习自动生成面部动画的问题,该问题在SIGGRAPH 2017上已成为热门话题。

     可恶的SE,还我露娜,还我老婆!!!!