创建死亡骑士动画角色
介绍
大家好,我叫 Igor Silva,是来自巴西累西腓的技术美术师。我目前专攻技术动画师。我在游戏行业有 6 年的经验,我的最后一家公司是 Kokku Games,在此之前,我曾在巴西的一些独立公司工作。现在,我作为自由职业者为世界各地的不同客户工作,例如 Mogi Group 和 UpSurge Studios。在此期间,我有机会为多个项目做出贡献,例如 Pavlov VR、Surviving Mars: Project Laika 和 Sniper: Ghost Warriors Contracts 以及其他尚未发布的项目。
我在高中的一门技术课程中开始学习编程。在那里,我第一次体验了使用 Unity 和 XNA 进行游戏开发以及 3D 艺术——我喜欢它并决定学习更多。毕业后,我开始以 3D 通才的身份工作,在各个领域都做了一些工作。我开始对动画感兴趣,并考虑专注于此,所以我参加了一些课程。但我发现它不适合我,因为技术部分总是引起我的注意。当我工作的公司 Kokku 需要一名技术艺术家时,我自愿迁移到这个领域。我重新开始学习 Python 编程,开始更多地研究引擎及其背后的技术部分,今天在我的工作中,我将各个领域的精华结合在一起。
1的3
死亡骑士:关于项目
我的朋友Fabio Di Castro向我展示了他正在制作的角色,基于Eugene Rudakov 概念的死亡骑士,并问我是否愿意做索具。我发现这个角色很棒,并看到了为我的投资组合做一个新型项目的机会。我不只是在 Maya 中发布带有控制器的索具,而是跟踪引擎的完整管道,并在 Unreal 中了解更多关于 FX 的信息,当时我对此知之甚少。
索具
这个项目的目的是更深入地了解虚幻引擎,所以在 Maya 中,我做了一个快速、实用的设置,并且可以在 Unreal 和 Maya 中重新定位。我使用了 Unreal 人体模型的骨骼命名法,以便能够轻松地重新定位和重用 Unreal 中的一些动画,例如跳跃。我使用我的脚本创建了 IKFK 和 Ribbon Spine 控制器,包括我在 Gumroad 上免费提供的FK 控件。
动画片
对于动画,作为重新定位研究,我使用 Maya 的 HumanIK 将 Mixamo Run Cycle 动作捕捉作为基础,将其应用于索具,并在 Maya 中对其进行编辑以适合角色。空闲是我按照概念姿势制作的关键帧动画作为参考——我给了他一个缓慢而沉重的呼吸动画,让他看起来像一个大老板。为了完成设置,我使用了 Unreal 人体模型的跳跃动画,以便能够在引擎内与他一起玩。
对于布料和盔甲模拟的良好碰撞,有必要设置一个很好的物理资源,所以我确保在每个骨骼中添加了我需要的所有胶囊以避免网格交叉。对于布料模拟,我使用了 Unreal 的布料系统,为布料创建了一个单独的材质,以便更容易地将其应用到引擎中。对于盔甲和戒指模拟,我为每个部分创建了一个骨骼,并使用动画蓝图中的 AnimDynamics 节点来应用模拟。
着色器
在着色器中,我的重点是发光部分,所以我创建了一个主材质,用于带有一些公开参数的整个模型。在自发光中,我可以调整每种材质的色调、强度和对比度。Fabio 在纹理方面做得很好,所以我保留了粗糙度和金属质感,没有做任何更改——我只是放了一个节点与基色相乘,以编辑某些材料的强度。暴露节点后,我可以通过照明和后期处理实时调整场景中的值。这使得更容易达到我想要的结果。
视觉特效
我在这个项目中使用了两种效果:剑火焰和头部火焰。作为研究,我以不同的方式制作它们:对于头部火焰,我使用了 Cascade(当时我还不知道 Niagara),而剑焰则是使用翻书通过材料完成的。
我根据 Youtube 频道 Underscore 上的教程制作了剑焰(见下文)。该视频演示了EffectTextureMaker,这是一个为不同类型的效果生成纹理的开源网站。对于像我一样不太精通 2D 的人来说,这是一个很好的资源。在那里,我为我的剑焰生成了翻书。https://www.youtube.com/embed/B8Gya38KkJY
在材质中,我创建了一个 Flipbook 节点和 Time 节点,以通过 EffectTextureMaker 中生成的图像为火焰设置动画,并应用具有所需火焰颜色的渐变纹理。为了给火焰添加运动,我使用了 SimpleGrassWind 节点,该节点可以模拟风和小变形。我还公开了一些节点,以便能够实时编辑它,直到达到所需的结果。
头部射击对我来说是最具挑战性的,在此之前我只使用基本的 FX,在这个级别上什么都没有。我花了数小时的时间进行测试、犯错和重做,直到达到最终结果。我要感谢与 FX 合作的朋友——他们在反馈和提示方面帮助了我很多。
我的第一次尝试开始看起来不错,但结果仍然困扰着我,这并不是我想要的。所以我退后了一步,分析了这个概念,我决定尝试只用烟雾和一些火焰来制作效果。再一次,我不喜欢它。
https://www.youtube.com/embed/4cBShv_HYqM经过两次不成功的尝试,我寻求更多参考和更多反馈,然后我开始达到预期的最终结果。我使用了 Unreal 的 Starter Content 中的火焰 alpha,并在 Photoshop 中使用云创建了烟雾纹理。此效果的材质很简单,只是翻书或烟雾材质中的 alpha,使用粒子节点在 Cascade 中对其进行编辑。
我的效果在 Cascade 中有 4 层:
火焰——我选中了 Cascade 中的“使用局部空间”选项,让火焰始终跟随角色的头部,使火焰浓密且恒定,为动画书动画和运动应用高速,并添加了充满活力的光晕和颜色以提供危险和恐惧的感觉。
二次火焰——我为火焰添加了一层细节,它由小火焰组成,一次一个,在不同的方向上随机旋转。对于次要火焰,我没有选中使用本地空间在角色行走时沿途创建轨迹。我通过 Life 和 Alpha 设置 Size 减小直到它消失,这给动画一个很好的细节。
烟雾——在这一层中,我使用了我在 Photoshop 中创建的烟雾纹理,它是静态的,与之前的动画书不同。就像主火焰一样,我使烟雾浓密且速度很快,它比主火焰略大,因此它偶尔会出现在火焰后面,从而产生有趣的效果。
最后一层是我在 Unreal 的 Fire Particle Starter Content 中使用的失真层。它是一种具有透明度和波浪法线贴图纹理的材质,可在场景中的对象上产生微小的扭曲错觉。
在 UE4 中整合一切
为了构建完整的角色,我使用了角色蓝图,将网格设置为死亡骑士,将头部火焰粒子定位到头部关节的父级,并添加了一个绿色点光源作为胸部关节的父级,为胸甲的内部着色,让它明亮。
对于剑网格,我将它添加到我在 Hand 关节上创建的 Hand 插槽中,添加了一个平面作为剑的子项,并为 FX 将剑火焰材料放在上面。最后,我添加了一个紫色的点光源来与胸灯形成一些对比。https://www.youtube.com/embed/3o8syIWN_aw为了渲染它,我在 Unreal 中创建了一个新的默认场景,为每个镜头添加了一个摄像机,删除了默认的 Skysphere,创建了一个带有我想要的背景颜色的未点亮材质的球体,并对其进行了缩放以使其成为我的新场景背景。最初,我创建了一个带有一个定向光和两个点光源的三点照明设置,但是在渲染过程中,我缺少一些填充,因此我又应用了两个聚光灯来为角色的特定部分提供更多体积。在后期处理中,我应用了一点 Bloom、Vignette、Grain 和 White Balance。我没有在 Unreal 之外编辑任何东西,作品集中的所有场景都是 100% 来自引擎。
挑战
对我来说最大的挑战是制作效果——正如前面提到的,到目前为止我只使用了基本效果,所以有很多小时的研究、学习和听取朋友的反馈。我不得不重新制作头部火焰效果 3 次,直到达到预期的效果。强调反馈的重要性是一次很好的经历——因为我对 FX 不是很了解,我 100% 接受在这个领域工作的朋友的意见,这对我达到我的最终结果有很大帮助。