枪支制作流程

介绍
大家好,我叫Malte Resenberger-Loosmann,是一名自由 3D 艺术家。在游戏行业工作了 9 年,我参与了多款移动、浏览器和 AAA 游戏。我一直对可视化和设计有着浓厚的兴趣,很快我就发现了我对硬表面武器建模的兴奋。我在这个行业的时间里学到了很多东西,也想做出贡献,所以我决定分享我的个人工作流程。

想法和参考
通常,我开始考虑哪种武器是独一无二的,但几乎所有武器都是由某人建模的。因此,我经常决定为其添加个人风格以使其独一无二。在我玩的电子游戏或看的电影中,我经常看到一种特殊的武器,它会触发我的兴趣。一旦决定了武器,我就会尝试收集所有可能的信息(根据国家法律,在德国很难获得一些参考资料)。
一旦我得到了数字(带拍摄系统的高度)、使用的材料和特殊功能,我就开始使用PureRef收集一堆参考图像。

入门场景

武器


如您所见,我放置了一个参考图像以匹配所需的比例。此外,我创建了一堆要抓取的 kitbash 原语,因为我知道我会经常创建一个立方体、平面等。为了让一切井井有条,我将所有东西放在低处、高处,并将概念分层。一旦一切都设置好,我通常会开始一个非常粗略的块。

高聚
由于我不喜欢花哨的快捷方式,因此我没有过多地自定义Maya。我有我最常用的自定义频繁操作:HardMesh、Jbools和一个简单的脚本polySelectEdgesEveryN “edgeRing” 2 对我帮助很大。其他一切都是内置的。

武器

使用 HardMesh 的布尔值
我尽量在一个 3D 包中停留尽可能长的时间,因为我不喜欢一直导入/导出对象。另一个原因是 ZBrush抽取/布尔化的网格在导入后会对 Maya 在视口中的性能产生负面影响。因此,我没有在 ZBrush 上花费大约 900 美元,而是在HardMesh许可证上花费了大约 100 美元。该插件能够通过令人难以置信的斜角控制和面板循环的创建来执行非常干净的布尔值。
一个很好的例子是我制作的手电筒。从基本形状开始,经典边缘/支撑循环和建模后平滑转换预览是基础。根据我想要的细节,我添加减法网格,这些网格的建模方式与基础网格相同。我最喜欢的是面板工具。我只是创建了一些平面/开放网格来创建它们应该在的地方。在 HardMesh 中,有一个类似于3ds Max的修改器堆栈,因此您可以完全控制您的布尔运算。设置更宽的斜角会使您的高多边形边缘非常平滑。这样做是为了避免以后的抗锯齿。所以我确保不要在我的整个高多边形建模中使用太紧的斜角。
其他一切都是经典的地下建模,在某些情况下,我使用浮动几何。

低聚
创建低多边形非常有趣,因为您可以确定武器的细节级别。当然,细节与三角形数的交易始终是一种交易,对于资产适用于哪种项目很重要。如今,多边形不是瓶颈,但纹理空间(内存)才是。我的基本规则是将所有内容从高多边形转换为低多边形。总的来说,它对武器的轮廓和形状语言有巨大的影响。
当我完成一个低多边形零件时,我会快速跳转到 UV 创建,因为我发现在稍后将所有零件打包在一起时,拥有一个基本的 UV 布局非常方便。我从基本的自动解包开始,选择所有内容并将其缝合并移动到一起。它肯定不会看起来很好,而且一开始完全关闭。
然后我开始在我想要的地方剪掉我的边缘。3D 切割和缝合工具非常适合在视口中切割边缘,而不会在屏幕上有太多重叠的窗口。切割完所有东西后,我会打开 UV 窗口,点击“展开”和“优化”。
现在一切都很干净并且折叠起来。使用 Orient Shells,您可以确保将所有岛屿对齐。最后,您可以对那些不直但应该是直的岛使用拉直 UV,因为它会在打包时为您节省大量 UV 空间。
一般来说,包装非常简单。起初,我选择所有的 lop poly 零件,这些零件应该像库存一样组合成一个纹理片。我做了一个简单的 512 at 1 迭代包,看看它是否打包好,是否还有一些问题。我确实执行了一些自定义比例以确保在玩家看不到的区域中节省纹理空间。内部零件或盖子的比例非常小。有时目标贴边或其他操作会导致双边或隐藏面。为了摆脱它们,我建议您使用低长度公差执行网格清理。
在镜像某些部分之前,请确保在该纹理表中包含您想要的每个低多边形,以 2048 进行 4 次迭代。当您手动缩放岛屿时,请确保关闭Shell Pre-Scaling。您可以添加更高的值,但您必须处理更长的打包时间。在最终打包后,我镜像一些需要的部分并将其转换为 1 到另一个 UV 空间,以防止镜像部分烘烤。否则,它可能会导致一些烘焙问题。

武器

在镜像结束时确保焊接您的网格并通过纹理边框应用软化/硬化边缘以避免烘焙中的正常弯曲/渐变。
当我完成所有部件的包装后,我创建了一些带有武器部件名称的材料。

材料:烘焙
烘焙非常简单。我总是在大纲的帮助下在 Maya 中组织我的网格。我将高多边形和低多边形加载到Marmoset 中,设置Substance所需的所有贴图并进行测试烘焙。有时我需要调整笼子数量或油漆倾斜。

材料:名称
在这里,材料名称非常重要。我更喜欢将我的纹理自动加载到Substance Painter的着色器中,而不是手动分配每个贴图。我在 Substance 文档中找到了一些命名约定。
确保单击Marmoset 中的齿轮并将地图命名更改为标识符的名称。材质名称(来自 Maya)和烘焙贴图名称(来自 Marmoset)需要匹配在一起。

物质画家
在 Maya 中,我准备低多边形网格以在 Substance 中获得最佳可见性,然后开始绘制每个部分。在隐藏的部分上绘画不会太有趣。您可以将所有镜像部分恢复到默认 UV 空间。将您的网格导出到一个 .fbx 文件,并将网格文件和纹理添加到 Substance Painter 中的新项目。根据您使用的显卡,我会将分辨率设置为 2048 或 4096。在每个着色器中,如果性能不太好,您可以放大或缩小。我更喜欢先选择一个着色器,点击Solo按钮并在 2 或 4k 下工作。
现在您应该能够看到所有带有自动应用纹理的部件。

武器

纹理
我通过密切关注现实世界中的参考资料来定义我的材料。有时需要一段时间,因为有许多劣质的复制品或廉价材料的气枪武器。我发现许多武器的几个部分都涂有钢。为了在 PBR 中准确工作,我将材料分层并从基础开始构建。

着色器
这是我关于材料的基本工作流程:

基色(通过涂漆表面的非金属)
ColorRoughVariation(获得一些对比度)
NoiseDetails(详细表面的高度信息)
边缘(全金属和高度,因为金属在油漆下面)
详细损坏(小金属点)
Custom Scratches – DirtLayer(非金属白色毛坯值)
AO通行证
我将我的地图导出为 Unreal 4 Package。

渲染
在将东西导入 Marmoset 之前,我通常会对武器在慢动作中的外观进行一些研究,或者寻找一些独特的想法来添加。我在武器的弹出功能方面做了一些工作,以了解它们在游戏中的外观和工作方式。
因此,我构建了贝壳和一些 FX 几何体。很简单的事情。大多数时候,我使用一些低多边形平面来处理烟雾,使用锥形来处理光体积。我展开所有内容并创建一个单一的 FX 纹理贴图,其中烟雾、火花或粒子所在的位置。在 Marmoset 中,我将着色器材质设置为未点亮,几何体将背面剔除,并将我的纹理设置为透明度作为添加。当我使用 metalness-roughness PBR 工作流程时,我使用的是 Marmoset Unreal Shader 模板,或者只是将默认着色器更改为 metalness、GGX 反射和反转光泽。

灯光设置
我确实有一个非常简单的灯光设置,包括边缘光、太阳光、背光和补光灯。在渲染设置中,我使用局部反射、GI 和 AO。我不是色差和颗粒的忠实粉丝,所以我在那里使用非常低的值。
有很多方法可以达到我所拥有的相同结果,这些是我个人用来制造武器的技术。我希望你喜欢我的工作流程,并且下次创造你的武器时可以获利。

返回首页

作者 lll

发表评论