虚幻引擎5!制作漂移3D角色模型流程分享!
246 0
实名

通过了实名认证的内容创造者

发布于 2023-10-27 11:32:46

您需要 登录 才可以下载或查看,没有账号?注册

x

7d68ed205847f1e844526251f4a2b13e.png

          640.jpg
作者: Sana Almusalli Alawadhi

作者网站:
https://www.artstation.com/artwork/LRBmnA
[micxp_wxonkey]wxv_3164215920952360968[/micxp_wxonkey][micxp_wxonkey]wxv_3164300831398838275[/micxp_wxonkey][micxp_wxonkey]wxv_3164299260615213059[/micxp_wxonkey]​​​
.
介绍                                
[size=1.13]大家好!我叫 Sana Almusalli Alawadhi,是一名阿联酋人物艺术家。我最近在智库培训中心完成了学业。

.
项目                                
[size=1.13]在本次演讲中,我将展示我最新项目的一些细节,该项目是为我在导师任期期间的最终任务而创建的。我们的任务是将概念艺术转化为最终的 3D 角色。


.
软件                                
  • 笔刷
  • 搅拌机
  • 了不起的设计师
  • 玛雅人
  • 根佐紫外线
  • 物质画家
  • 虚幻引擎5

.
参考                                
[size=1.13]在项目开始时,我收集了概念艺术中存在的每个对象的参考资料。
[size=1.13]这些参考资料主要帮助我进行建模,因为随着项目的进展,我更喜欢收集有关纹理、渲染和情绪的更详细的参考资料。
[size=1.13]对于这个项目,我从 Caboro 的“Team Drift”项目中选择了他的概念,并与我的导师 Denis Melenets 密切合作,他在整个项目过程中提供了宝贵的帮助。
[size=1.13]https://www.artstation.com/artwork/lxROLY

.
头部和身体                                
[size=1.13]我开始处理头部和身体,使用 MetaHuman 的基础网格作为身体,使用 3DScanStore 网格作为头部。然后,我的目标是确定头部相对于身体的比例,以确保角色的高度与概念相符。头部和身体的尺寸进行了调整,以更好地符合概念。
[size=1.13]
对于头部,我参考了迈克尔·B·乔丹,因为我发现他的特征与概念中的角色相似。该模型在整个项目中经历了多次变化和调整,最终与我的参考非常相似。我还创建了几种不同的表情——微笑的表情、茫然的表情和傻笑——以在最终渲染中展示。
在项目进行到一半时,我们决定为角色的身体摆姿势,而不是使用 A 姿势。由于我以前从未尝试过此操作,因此我热衷于探索如何使其发挥作用。我使用 Maya 中 Mixamo 的装备来摆出角色姿势,以密切模仿概念中的姿势。达到所需的外观后,我在 Zbrush 中微调姿势并雕刻肌肉以更好地匹配活动姿势。

.
服装创作                                
[size=1.13]衬衫、短裤、袜子、手套和背包都是在 Marvelous Designer 中制作的。我最初在 MD 中使用简单的遮盖来可视化最终外观。然后,我将这些草图导入 Zbrush,调整它们的大小和轮廓以符合概念,并将它们返回给 MD 作为额外的头像以供参考。
这使我能够在制作实际服装时操纵它们,而无需模拟它们。我进一步完善了服装的尺寸和合身性,以匹配调整后的图案或参考。一旦对合身感到满意,我就添加了概念或参考文献中存在的细节
完成细节工作后,我将角色和 Mixamo 装备一起引入 Maya 来创建姿势。我生成了一个从 A 姿势到最终姿势网格的超过 150 帧的动画。然后将网格和装备作为 FBX 导出到 Marvelous。我将网格导入为 FBX 并模拟动画,同时添加风以获取更多细节。
对服装外观感到满意后,我调整 UV 以与 MD 中的 2D 窗口对齐,并将 3D 模型和 2D 版本导出到 Blender 以创建拓扑,以便在 Zbrush 中进一步雕刻。

.
在 Blender 中创建简单的重新拓扑以在 Zbrush 中雕刻额外的细节                                
[size=1.13]Blender 中的重新拓扑过程涉及几个步骤:
  • 导入3D版本的MD模型
  • 导入2D版本的MD模型
  • 我为 2D MD 模型创建了重新拓扑
  • 使用收缩包裹修改器帮助我保持在 2D MD 模型的范围内
  • 一旦我对拓扑感到满意,就应用修改器

[size=1.13]使用 Maurizio Memoli 的插件从 2D MD 模型传输 UV,确保样本空间设置为世界。
  • 样本空间:世界
  • 来源:选择 2D MD 网格
  • 单击传输 UV

[size=1.13]然后我从 3D MD 模型转移形状。
  • 样品空间:活性 UV
  • 来源:选择 3D MD 网格
  • 单击“转移形状”

  • 向重新拓扑的网格添加额外的细分 (4/5),然后应用修改器。
  • 将形状重新传输到 3D MD 网格(这可能需要一些时间)。
  • 将网格导出到 Zbrush。


.
在Zbrush中添加厚度                                
[size=1.13]

[size=1.13]为了增加 Zbrush 的厚度,我按照以下步骤操作:
[size=1.13]将网格导入到 Zbrush 后,我检查了重建细分是否有效
  • 如果它有效,我会撤消它并返回到最高细分。

[size=1.13]在“几何”选项卡中,我转到“边缘循环”并更改以下面板循环设置。
  • 斜角 16
  • 没有抛光
  • -100 海拔
  • 厚度0.005

[size=1.13]然后我将细分重建为 5。
[size=1.13]我向网格添加了图层,并开始修复轮廓以匹配概念。
[size=1.13]我添加了模型中缺少的额外折叠,我喜欢这个概念。
[size=1.13]然后我使用图层添加了一些记忆折叠。
  • 我喜欢使用 JR 的一些刷子(接缝、皱纹)、Poliigon Alphas 来去除皱纹,Evgeniia Petrova 来去除记忆褶皱
  • 使用图层和变形目标擦除某些部分或使其在某些区域比其他区域更柔和

[size=1.13]添加针迹
[size=1.13]添加针迹的缩进
[size=1.13]

.
鞋子                                
[size=1.13]

[size=1.13]对于鞋子,我通过在 Zbrush 中创建遮挡来启动该过程。这种方法可以快速、直接地开发鞋子的初始形状和细节的放置。一旦满意,我将遮挡导出到 Blender。
然后,我致力于为鞋子的某些部分创建单独的拓扑,例如主底座上方的额外图案。完成这些作品后,我应用了各种修改器,包括:

  • 镜子(适用于不影响细节不对称的鞋子)
  • 固化(厚度)
  • 斜角
  • 细分

对于复杂的细节,我使用了布尔修饰符。这涉及创建组件来切割主网格,有时还结合斜角和细分修改器。对外观感到满意后,我将组件导入 Zbrush,对它们进行动态命名和抛光以增强其外观。
为了解决另一只鞋的底部问题,我使用收缩包裹修改器在主底部平面的顶部添加平面。这确保了鞋底形状的任何变化都会反映在添加的部件中。我还结合使用了阵列和实体化(厚度)以及斜角和细分修改器。
随后,我将组件导入 Zbrush,以高分辨率对它们进行动态命名,并进行轻微的抛光以获得更平滑的外观。
对于鞋带,我使用了 Blender 中的曲线(路径)工具。这种方法提供了调整花边形状和尺寸的灵活性,而无需固定尺寸。
对花边的外观感到满意后,我将其导入 Zbrush 以添加最终的细节和针迹。


.
步枪                                


对于步枪,我采用了与鞋子类似的方法。我首先创建一个基本形状,然后为简单零件引入了镜像、实体化、斜角和细分等修改器。使用布尔运算和数组创建了更详细的组件。
实现所需的细节后,我将组件导入 Zbrush,在将它们带回项目之前,我对它们进行了动态命名并抛光了边缘。V

.
配件及绳索                                
[size=1.13]对于配件,我要么使用曲线工具并向其添加斜角,要么创建网格并使用曲线跟随其路径。

.
UV和烘烤                                
[size=1.13]
[size=1.13]对于 UV 映射,我使用了 Rizom UV,这是我的导师推荐的程序。事实证明它很容易学习,并且它的快捷方式在 UV 创建过程中节省了大量时间。
[size=1.13]Rizom UV 还提供多种包装设置,进一步简化流程并最大限度地减少不必要的 UV 空间。
[size=1.13]我使用这个YouTube 播放列表来学习 RizomUV。完成 UV 映射后,我使用 Marmoset Toolbag 来烘焙纹理。

.
皮肤材质                                
[size=1.13]对于皮肤材质,我将 3DScan Store 纹理纳入了基色、粗糙度和法线贴图的某些区域,但我觉得烘焙的法线贴图缺少一些细节。
[size=1.13]我还在 Substance Painter 中为我的材质引入了额外的通道,旨在将它们集成到虚幻引擎中的皮肤着色器中。
  • 腔体图
  • 细节普通蒙版
  • 散射图
  • 镜面反射级别贴图
  • 在尝试在 UE 中创建皮肤材质时,我添加了更多通道,尽管它们最终没有被使用。

[size=1.13]添加这些通道后,我开始细化 3DScan Store 纹理。我去除了眼睛周围的一些皱纹和脸上多余的胡茬,并调整了底色以更好地符合我的角色概念。
[size=1.13]此外,我还引入了瘀伤、切口以增加角色的深度,以及使用 Arnaud Roy 的纹身生成器进行的纹身。
[size=1.13]重新创建纹身涉及对概念艺术进行去饱和度处理,并将其细化为投影到 2D 或 3D 窗口的 alpha 贴图,确保最终结果准确且不失真。

.
UE中的皮肤材质                                
[size=1.13]
[size=1.13]在虚幻引擎中,我使用以下设置配置了皮肤材质:
  • 着色模型:次表面轮廓,然后选择次表面轮廓。我复制了现有的配置文件以供以后调整。
  • 镜面反射:我使用带有对比度和乘法节点的镜面反射贴图来调整纹理贴图,然后乘以空腔贴图。
  • 基色:基色图乘以色调颜色的 3 向量参数。
  • 半透明度/SSS:散射图乘以矢量 1 以进行可能的调整,与不透明度相关。
  • 法线贴图:将 FlattenNormal 节点与法线贴图结合使用以增加法线贴图强度。我还使用了带有 FlattenNormal 节点的细节法线贴图,然后根据细节法线蒙版进行调整。生成的法线贴图连接到另一个 FlattenNormal 节点以进行进一步调整。
  • ORM(遮挡、粗糙度、金属):

    • 环境光遮挡:使用对比度节点进行调整,然后乘以空腔贴图。
    • 粗糙度:乘以纹理贴图调整的参数。
    • 金属:金属贴图。


.
UE材质面料                                
[size=1.13]

[size=1.13]我在虚幻引擎中使用以下参数配置了织物材质:
  • 基色我使用菲涅尔节点,乘以 3 向量以获得色调,非织物遮罩也乘以菲涅尔。将基色乘以 3 向量以获得色调并添加到菲涅耳,并通过去饱和来调整饱和度。
  • 粗糙度详细的法线贴图用于粗糙度并乘以 Vector1 参数。它使用粗糙度贴图连接到 lerp,使用细节法线蒙版作为 alpha。使用混合光照将此结果添加到先前的 Lerp 节点,并集成到另一个 Lerp 中。
  • 布料半透明度将半透明度贴图乘以矢量 1 以进行可能的调整。
  • 环境光遮挡使用细节法线贴图向织物添加额外的 AO,将其乘以 1 个向量节点,然后使用 AO 纹理贴图进行 lerped,并以细节法线蒙版作为 alpha。
  • 法线贴图细节法线贴图与 FlattenNormal 节点一起使用以增加强度。
    Lerp节点与法线贴图配合使用,在细节法线遮罩的基础上去除部分区域的细节法线贴图。
    使用混合角度校正法线来合并法线信息。

  • 镜面反射
    向量 1 为 0.45


.
技术 - 头发与头部绑定以实现混合形状和动画                                
[size=1.13]用于在 Xgen 中创建扭曲的修改器
对于 Xgen 头发,我主要遵循 Trigon 的 Fade 教程和 Hadi Karimi(Willow Smith 的辫子)的延时摄影来创建扭曲。我调整了几个修改器以适合我角色的头发。

.
将 Xgen 转换为交互式 Groom                                
对头发感到满意后,我将其转换为交互式修饰器,以便将其导出到 UE。我按照JHill的教程“如何为UNREAL ENGINE 5制作自定义头发”进行了这个过程,然后我也在UE中使用了他的方法来创建头发材质。
https://www.youtube.com/watch?v=9yVNdvBmJz4

.
导出混合形状和动画[color=rgba(0, 0, 0, 0.9)]
[size=1.13]在项目开始时,我的目标是创建一个基本动画和一些表达式以在最终渲染中展示。
[size=1.13]我面临的挑战之一是学习如何在头部运动时将 Xgen 头发附着到角色上,或者头发是否可以跟随任何表情变化。
[size=1.13]在观看了几个 YouTube 视频和阅读论坛后,我最终让它发挥作用。以下是将头发绑定到角色的步骤,允许在 UE 中进行操作和混合形状使用:
  • 将表达式从 Zbrush 引入到 Maya。
  • 使用表达式生成混合形状。
  • 检查属性编辑器以确保混合形状正常工作。
  • 创建了一个基本装备。
  • 选择所有网格(面部、眼睛、嘴巴、舌头等)和装备并对它们进行蒙皮,使用自动蒙皮以避免高级装备。
  • 创建基本动画或对帧设置关键帧以使 UE 将其识别为动画。
  • 请注意,当网格不存在动画时,混合形状在序列器中不可见。
  • 将网格和装备作为 FBX 导出到 UE 文件,在导出选项中启用动画。

[size=1.13]在UE中准备文件
  • 在导入选项中,启用骨架网格物体并使用“导出时间”导入动画。
  • 调整了动画网格的资源详细信息中的导入旋转。对于我的角色,我必须将其沿 Y 轴旋转 90 度。
  • 重新导入动画。
  • 创建动画蓝图并将其打开。
  • 添加了一个默认插槽并将其连接到动画图中的输出姿势。
  • 在事件图中,添加了一组变形目标,将值提升为参数,并启用“暴露到电影”。然后,我添加了变形目标/混合形状名称,该名称可以在骨架网格物体中找到。

[size=1.13]新郎导入旋转和新郎绑定
[size=1.13]对于头发,我必须调整旋转和比例。我将头发拖到与角色水平的位置,以确定必要的旋转和比例。就我而言,我必须在 Z 轴上将其旋转 180 度,并在 X 轴上将其缩放 -1。
[size=1.13]一旦确定了正确的旋转和比例,我右键单击修饰网格,单击“重新导入”,然后应用正确的旋转。不正确的旋转和比例可能会导致蓝图中出现问题。
[size=1.13]然后,我右键单击头发并选择“创建绑定”,选择我的骨架网格物体并应用它。

.
UE中的角色蓝图
  • 通过右键单击角色文件夹并选择蓝图,然后选择角色来创建角色蓝图。
  • 在角色蓝图中,在组件选项卡下添加了骨架网格物体、材质和修饰。
  • 为了防止头发消失,我在骨架网格物体的资源详细信息中将皮肤缓存使用选项更改为“启用”。


.
UE 序列和 BlendShape                                
[size=1.13]
  • 将角色蓝图添加到关卡中。
  • 在“动画”选项卡下的详细信息面板中,将动画模式更改为“使用动画蓝图”,并将 Anim 类更改为动画蓝图。
  • 向关卡添加了关卡序列。
  • 将相机拖到序列器上。
  • 在关卡中选择蓝图角色,然后在音序器中选择“Track”、“Actor”到“Sequencer”,然后添加蓝图。
  • 添加了动画轨道。
  • 在CharacterMesh0中,选择动画实例。
  • 添加了混合形状。
  • 当头发绑定到网格上时,为表达式设置关键帧并使用表达式创建动画。

[size=1.13]我用来帮助我在音序器中创建头发绑定和混合形状的视频:

.
最终渲染                                
[size=1.13]

[size=1.13]对于最终的渲染,我决定尝试灯光、演示和构图,因为这些对我来说一直充满挑战。在参考了各种灯光、情绪、环境和构图来源并与我的导师讨论后,我选择了一个小巷场景。
[size=1.13]我使用 Quixel Bridge 创建了一个小巷环境,尝试了多种照明选项并适当地标记它们以供以后参考。


.
结论                                
[size=1.13]

[size=1.13]感谢您的阅读,我希望您发现这些信息内容丰富。如果您有任何疑问,请随时在 Artstation 上给我留言。最后,我要感谢我的导师 Denis Melenets,他提供了宝贵的帮助和反馈,使我能够在项目期间学习和成长。
[size=1.13]






END



声明:本文章中所有的图片和视频都归原作者所有,仅供大家参考学习和交流,不作商业用途,侵删。如果你喜欢这篇文章,欢迎转发!谢谢!



更多学习和交流可扫描下方二维码哦!

评分

参与人数 1元素币 +3 活跃度 +2 展开 理由
elep_hant_... + 3 + 2 这么6

查看全部评分

授人以鱼不如授人以渔!B站和微信公众号关注: CG小苏  每日分享最前沿视频教程和技术文章白嫖资源!
使用道具 <
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表