虚幻引擎5!制作哈瓦那咖啡馆场景关卡流程分享!
CG小苏CG 1698 3
实名

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

发布于 2023-5-25 14:25:16

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

x
本帖最后由 CG小苏 于 2023-5-25 14:53 编辑


8d86086df2e96a6c72239662a3c70fdc.png

          640.jpg 作者: Nikita Grigoryev   作者网站:https://www.artstation.com/artwork/ellgRJ

[micxp_wxonkey]wxv_2937457947929755652[/micxp_wxonkey].
介绍                                
我叫 Nikita Grigoryev,今年 26 岁,是一名自学成才的 3D 艺术家。自 2021 年 2 月起,目前在 Obelisk Studio 担任 3D 环境美术师。作为道具美术师参与开发“森林之子”游戏 1 年,作为首席环境美术师 1 年。现在我住在莫斯科。大约 3 年前,也就是 2020 年夏天,我开始学习游戏的 3D 图形。在我记忆中,我一直非常喜欢电脑游戏,作为玩家和潜在的游戏开发者。这是我的梦想 – 创造如此充满灵感的互动世界,无论担任何种角色 – 作为艺术家、设计师、程序员等。我看过很多开发者访谈,并尝试了游戏开发许多领域的举措。起初一切都不太顺利,但在我看到 Nikita Hrushevskyi 的采访后,我确定地意识到——我想成为一名 3D 艺术家,并通过交互式游戏环境创造视觉故事。开始学习七个月后,我找到了第一份工作,一直干到今天。
















.
项目                                
我最近在没有任何教程的情况下为个人作品集创作了我的第一幅大型艺术品,Los Nardos – Havana Cafe。在本文中,我想与您分享我创建此环境的过程。您将了解我如何在引擎中创建模块化系统、材料、装饰板和主材料,我犯了哪些错误以及如何解决这些错误,等等。

.
软件                                
纯参考 x搅拌机  笔刷  狨猴工具包 Photoshop  了不起的设计师  物质设计师  物质画家  Quixel 大扫描   虚幻引擎 5
.
目标                                
显着提高我在创造环境方面的艺术技能。更好地了解虚幻引擎 5。了解有关创建模块化系统的更多原则。练习在 Substance Designer 中创建裁剪表。提高我的投资组合的质量。享受这个过程。
.
参考                                
正如我所说,我喜欢电子游戏,它们真的能激励我去做一些事情。最近赢得我心的游戏之一是孤岛惊魂6。育碧的艺术团队在视觉方面做得非常出色,以一种非常大气的方式再现了古巴的气氛。哈瓦那的建筑给我很大的启发,我自己意识到我想以类似的风格复制一些建筑。我很快就决定了一个特定的建筑。如果你在谷歌中输入“Havana”这个词,你会在第一行看到类似的照片

这是一个很好的选择,因为这些建筑最大限度地传达了古巴舒适的感觉。此外,它们与《孤岛惊魂 6》中的某些建筑有相似之处。花了几天时间寻找参考资料后,我重新启动游戏到达“埃斯佩兰萨”市并找到了类似的东西。我发现了几乎相同的房子,并开始从各个角度检查它们。

当您有机会看到另一位艺术家如何应对这项任务时,这非常酷。这是我的第一个建议:随意使用其他人的作品作为参考。其他人的经验是有价值的。这并不意味着您必须完全复制作品;只是试着找出另一个人如何体现这个想法,观察他们如何改变对象的形状,他们与您的参考文献有多大偏差,他们添加了哪些新元素,等等。对他人作品的参考进行全面分析可以为您提供某些有助于您成长为艺术家的结论,还可以让您了解技术上正确使用资源的方法——例如密切监控多边形的数量、纹理分辨率等。当然,我不会忘记现实生活中的参考资料。这个阶段对某些人来说可能有点无聊,但相信我,在场景中搜索主要对象的引用是环境创建的最重要方面。这是我的参考板。我主要使用 Google 和 Artstation 来搜索这些照片和渲染图。

.
规划模块化系统和装饰表                                
进行彻底研究后,我开始规划我的模块化系统和装饰板的外观。有了充足的好参考资料,这项任务就变得相对简单了。我首先勾勒出各种形状的轮廓,并考虑我可以使用哪些重复的形状来建造这些建筑物。提供的示例演示了我在 Photoshop 中的典型工作流程。在左侧,您会找到主要参考,而在右侧,您可以看到我对模块将如何出现的概念。

下一步可能是根据我们的 Photoshop 分解(从这个开始更合乎逻辑)或规划和创建修剪表来对块和模块进行建模。我从研究材料开始,因为在那一刻,我已经对我的模块的外观有了清晰的印象。和上次一样,都是从参考文献分析开始的。我找到了一个很棒的建筑物主入口的特写镜头,将它导出到 Photoshop,然后开始分析它。很明显,我几乎可以将整个立面放入一张装饰板中(并使用另一个带有瓷砖纹理的纹理集来添加间接线)。这是因为整面墙主要由直线组成,便于映射到直线上。这是我的修剪计划方案:

我还在装饰板上创建了几个参考中不存在的附加部分。我自己设计了它们来为我的模块实现独特的外观,并结合了我自己的细节。
.
创建模块化系统和装饰板                                
在创建模块化系统和裁剪表的过程中,我使用了 Photoshop 的裁剪方案。随后,我求助于我可信赖的伙伴 Substance Designer 来生成高度图。我主要使用“Shape”、“Transform 2D”、“Bevel”、“Blur”和“Blend”等节点。









在创建法线贴图、环境光遮蔽 (AO)、粗糙度和基色之后,我决定在 Substance Painter 中手动修改材质的某些方面并从那里导出最终贴图。结果如下:

完成这一步后,我终于开始建模了,在这里我想强调一下这个阶段的重要性,因为整个模块化系统的性能将取决于它。通常,管道构造如下:1. 首先,我屏蔽了整个环境,没有考虑模块将如何组合在一起。为了捕捉正确的比例和所需的轮廓,这是必要的。
2. 然后,我将块导出到游戏引擎并切换到游戏模式以验证在比例、轮廓和比例方面是否一切都令人满意。如果出现不自然的情况(这通常会发生),我会返回到我的 3D 软件(我使用 Blender)来优化块,然后重复步骤 2。一旦我的块在没有材料和纹理的情况下开始看起来令人满意,我将继续下一步.3. 我再次回到 3D 软件并开始处理基于块的模块。这是我的阻塞的一些迭代。你可能会注意到我对右边的墙、上面的栏杆、阳台下面的横梁和第二张截图中的入口内部进行了更改,因为我对它们在第一人称游戏中出现在引擎中的方式不满意模式。

建模模块时,我建议将它们对齐到 5 或 10 厘米的网格。例如,如果您的墙壁宽度为 362 厘米,则最好将其模块尺寸四舍五入为 360 厘米。同样的原则也适用于高度和长度。因此,创建模块化系统是一个有些耗时的过程。然而,我认为这个过程是表达我的艺术视野的最有效方式之一。我首先将块划分为启用捕捉功能的元素(模块),确保所有部分的比例相同并且是 5 或 10 厘米的倍数。因此,我几乎所有模块的尺寸都是 360×550 厘米。


.
UV贴图                                
然后我在 Blender 中创建材质,将其命名为“Trim Sheet”,并将必要的贴图连接到 BSDF,如下所示:

1. base color map乘以某种颜色,再乘以Ambient Occlusion,连接到“Base color”输入。2. ARM(AO、Roughness、Metallic)贴图分为三个灰度通道。红色通道 (X, AO) 与基色贴图相乘。绿色通道(Y,粗糙度)连接到“粗糙度”输入。蓝色通道(Z,金属)连接到“金属”输入。
3.法线贴图可以直接连接到“法线贴图”节点,然后连接到“法线”输入,但首先,我必须翻转绿色通道。请注意,像 ARM 和 Normal 这样的贴图应该将它们的“颜色空间”从 sRGB 更改为非颜色模式。
在这个阶段,我逐渐开始将我的模块映射到装饰上。通常,我注意到我的模块太简单了,所以在映射过程中,我添加了额外的细节,如斜角、布尔值、拉伸等。同时,我总是确保查看我的参考资料并从中收集信息。请不要忘记参考资料;它们至关重要,许多没有经验的专业人员在处理项目时往往会忽视它们。您可以提出自己的详细信息并将它们合并到模块中,但始终通过分析现实生活中的对象来参考和扩展您的知识库。
在这里,您可以看到我的 UV 拱门的外观及其功能:大家可以看到视频中我犯了一个错误,留下了所谓的“蝴蝶效应”。尽量避免这种情况,尤其是在最明显的地方:[micxp_wxonkey]wxv_2937469407758139392[/micxp_wxonkey]

为了更好地理解这个过程,这里有一些我的 UV 模块的例子:







我经常更新引擎中的场景,以查看应用材料后建筑物的外观。我的良师益友,来自 Housemarque Studio 的 Sergey Panin 说,“在你看来,在阻塞阶段之后你的位置看起来很糟糕。只要继续努力,你就会看到它是如何逐渐改进的。”这就是它对我的工作方式——我倾向于卡在场景映射的视觉阶段。在引擎中,我开始注意到某些 UV 壳未正确展开,或者修剪纹理过于重复。通常,我会回到 Blender 或 Substance Designer/Painter 进行一些调整。事实上,经过几次尝试,一切都逐渐好起来了。以下是一些屏幕截图,突出显示了我更正的区域。请注意我所做的更改。









主要装饰已更改,多个模块已更换,并添加了一些细节。在上一张截图中,可以在侧壁上看到一个新纹理,这是我从 textures.com 获得的。
我并没有自己从头开始创建它,因为我工作的主要目标不仅是开发材料,而且还要专注于提高我在其他方面的技能。
虚幻引擎、Megascans、材料、实例和贴花当中央建筑的所有基本模块都准备好后,我在之前创建了一个第一人称游戏模式的场景模板后将它们导出到引擎中。我在这个阶段的主要目标是捕捉房子的气氛。因此,我创建了一个主材质并以最简单的方式连接我的纹理,然后将材质链接到模块。这是结果:

为了捕捉现场的气氛,我决定复制我的模块并创建粉红色和黄色的房子。此外,我在场景中添加了更多模块。为实现这一点,我在我的主材质中加入了几个额外的节点来改变装饰和瓷砖纹理的颜色。此外,我合并了几个节点来修改对比度、光照和粗糙度。我可以毫不费力地在实例材质中调整这些参数。这就是我最终得到的:



它似乎越来越好,但我的材料缺乏生命力——独特的碎片、灰尘和泄漏。我不能将它们添加到修剪或平铺纹理中,因为它看起来不自然。毕竟,灰尘主要聚集在几何结构的接缝处,而切屑主要出现在拐角处。我决定使用遮罩方法来创建独特的细节。它是什么,有什么优点和缺点,我该如何使用它?以下是步骤:1.掩码方法涉及使用灰度三通道掩码。这些通道(R、G、B)中的每一个都将包含独特的低分辨率蒙版,我将使用它来将灰尘、碎片和泄漏应用到整个房子。2. 这种方法的不可否认的优点是它会让我的场景看起来更生动并增加多样性。缺点是我正在使用额外的新纹理,在实时游戏环境中,我们需要节省纹理空间。然而,另一个优点是我只将一个 RGB 纹理加载到引擎中并将其用作三个单独的遮罩。这是一个很好的优化技术。3. 首先,我需要为我拥有的每个模块创建一个具有唯一 UV 坐标的 SECOND UV CHANNEL。之后,我可以建造整个房子(或只是其中的一部分)并将其导出到 Substance Painter。在那里,我将使用生成器和画笔创建三个独特的蒙版。之后,我会将每个遮罩导出到 Photoshop,并将它们合并为一个为虚幻引擎准备的 RGB 纹理





为了使这种方法奏效,我需要提高对这门学科的掌握程度。在下面的视频中,您可以确切地看到我做了什么。
请注意我放置面具的具体位置:以下是主材料的一些屏幕截图:[micxp_wxonkey]wxv_2937474887431766018[/micxp_wxonkey]





我还使用了 Vertex 绘制节点,以便我可以在我想要的地方擦除或绘制灰尘、碎屑和泄漏。这是我的实例材料:

起初,这个方案可能看起来复杂且难以理解。但是,如果您尝试逐步了解每个功能,一切都会变得清晰。老实说,我不太喜欢制作主素材的过程,因为它没有给我任何艺术知识或技能。如果我从一开始就有一个具有所有必要功能的预制主材料,我就不必自己创建了。比较左侧模块与默认材质的外观,以及右侧模块与附加功能(遮罩管道 + 顶点绘制、渐变、色调、贴花 - 我稍后将更详细地解释它们)的外观:

在我看来,这些细节大大提升了场景的整体观感。在此视频中,我演示了我的 Mesh Paint mod 如何与遮罩管道一起工作。当然!这是文本的语法更正版本:[micxp_wxonkey]wxv_2937507094066118656[/micxp_wxonkey]关于贴花的一点点。这些是从上方投射到您的模型上的图像。贴花不是昂贵的资源,因此可以安全地在现场大量使用。这正是我所做的。我的场景中确实有大量细节——没有它们,房屋将失去大部分真实性。其中大部分是我从 Megascans 图书馆拿来的。查看演示并比较有贴花和没有贴花的场景结果。这里有一些关于贴花的信息。这些是从上面投射到您的模型上的图像。贴纸并不昂贵,因此可以在现场大量使用而不会出现任何问题。这正是我所做的。由于贴花,我的场景中有大量细节。没有它们,房屋将失去大部分的真实性。我从 Megascans 图书馆获得了大部分贴花。查看演示并比较使用贴花和不使用贴花的场景结果。[micxp_wxonkey]wxv_2937508156231663623[/micxp_wxonkey]








在这个阶段,我的大部分模块化系统已经准备就绪。我开始用椅子、鲜花、花盆等道具填充场景。我使用了 Megascan 库中的植物,以及各种最终道具。有些道具是我制作的,有些是我朋友制作的。我非常感谢他们的帮助,因为他们为我节省了大量时间,让我可以专注于环境。我还要求他们提供对他们为我制作的几个模型的分析。这是我的朋友马克西姆·科兹洛夫斯基 (Maxim Kozlovskiy) 制作的“菜单架”道具的分解图:为了创建菜单架,他首先在 Blender 中制作了一个带有所有隔间的中间多边形模型:

之后,我将这个模型导入到 Zbrush 中。在那里,我应用了分辨率为 1024 的 Dynamesh。之后,我使用 TrimSmoothBorder 笔刷移除所有斜面。为了雕刻条纹,我使用了 Same Standard 笔刷,对于木头,我使用了一组裂缝和节。

对于低多边形模型,我从中多边形版本中删除了所有修改器,删除了任何可以烘焙的不必要细节,并合并了所有边。


为了展开,我增加了循环的纹素密度,因为有足够的空间,我展开了一半的对象。

对于纹理,我使用了 1k 分辨率。纹理化过程本身并不复杂;我只需要为垂直和水平的木头画面具。此外,有必要调整智能材料并对其应用调整层。创建模型花了我 4 个小时。

我的朋友 Dmitriy Apostol 对“消防栓”道具的分解:首先要考虑的是我们试图足够快地创建道具。事实上,这些是第二个或第三个计划的对象,因此在它们上花费大量时间是不合理的。参考文献中的许多元素都被简化了,也有很多被夸大了。每个对象平均需要 1-3 天。对于消防栓,有必要找到 3-4 个参考资料,每个参考资料都以自己的方式表达。一些强调发霉的泄漏,另一些强调油漆经受了数十年的烈日和各种天气条件的质地,还有一些强调了长时间与水分接触后形成的锈蚀。随后将所有这些元素组合在一起,创造出最令人愉悦的画面。在创建过程中,通过 Blender-Zbrush 使用标准管道。这是同时进行的阻挡、低多边形模型和 UV:

我已经决定将模型发送到 ZBrush 并创建独特的倒角,其中的切屑从平均距离会很明显。此外,通过使用 TrimDynamic 和 Elastic 刷子,我打碎了许多边缘并在某些区域进行了焊接。

之后,我烘焙了 Substance Painter 所需的所有纹理并开始制作纹理。我应用了一种基本的智能材料,其中包含最适合进一步工作的基础。对基础层进行小幅编辑后,我继续处理更高层。这些包括剥落的油漆结构和不同类型的污垢,主要位于模型底部。此外,我添加了散落在地图上的 AO、鸟粪的残留物、上述模板造成的条纹以及几种类型的锈迹。考虑到道具很小这一事实,所有这些元素都巧妙地结合在一起。因此,有必要增加整体外观,使其看起来不那么单调,并确保小细节在现实条件下看起来有机。[micxp_wxonkey]wxv_2937512401387405317[/micxp_wxonkey]
.
人行道场景扩展                                
其余的道具都是用同样的原理制作的,没什么特别的。我们一起快速制作了几十个符合古巴主题的道具,我提前将它们布置在场景中。此外,我合并了几个更新的模块,并使用蒙版和顶点绘制对其进行了改进。我还在 textures.com 上看到了一个以装饰性纹理为特色的奇妙包,我用它来增强我的带有拱门的模块。就在这时,场面开始变得像这样了。

我决定把这些房子放在某种表面上。白色的地板不适合我,把建筑物悬在半空中也不是很舒服。因此,我再次开始查看参考资料以确定表面。对我来说最明显的选择是人行道。事实上,它并没有什么特别之处,但我不得不回到 Substance Designer 并创建瓷砖材质。我本可以从 Megascans 或 textures.com 获取现成的材料,但人行道是环境的重要组成部分,所以我自己负责创建材料。这可能不是最佳选择,但我想制作一种典型的瓷砖,在我们的俄罗斯城市随处使用:









有许多关于如何在设计器中创建材质的深入教程。这是一个涉及面很广的话题,有很多方面值得一提。如果我开始列出其中的一部分,那么这篇文章很容易变成一本完整的书。因此,我将简单地显示我的节点图。对于那些对这个主题感兴趣的人,我会在最后提供一些教程的链接,这在我学习这个程序的过程中帮助了我。













多亏了 Jonathan Benainous 对《最后生还者》第 1 部分的分解,我了解到我可以创建一种材料的两种变体:一种是新版本,另一种是有裂缝和缺口的旧版本。然后可以利用顶点在引擎中混合这些变化。

我还决定在人行道周围添加路缘石。这些都是独特的道具,遵循相同的流程:Blender – ZBrush – Marmoset – Painter – Unreal。


.
设置和抛光                                
至此,我在主要参考文献中观察到的几乎所有元素都已包含在内。
剩下的就是在舞台上摆满无数的道具,朋友们忙得不可开交。同时,我从 Megascans 库中选择了一些道具。场景与此相似:

我创建了三个不同的块,并将它们打包到一个 UV 中。然后我在人行道周围复制了它们。但是,我想更详细地展示一个特定的时刻。如果仔细观察,您会注意到在我的场景中人行道上升处附近有几个倾斜的路缘。

我创建了三个不同的块,并将它们打包到一个 UV 中。然后我在人行道周围复制了它们。但是,我想更详细地展示一个特定的时刻。如果仔细观察,您会注意到在我的场景中人行道上升处附近有几个倾斜的路缘。



可以将两个新块打包到一个新的 UV 集中,但我不想在引擎中为它们使用三个额外的纹理(Base color、ARM、Normal)。我建议您通过提前计划您打算在场景中使用哪些路缘块(或其他模型)来避免此类问题。我之所以犯这个错误,完全是因为从一开始就没有好好规划场地。一方面是失误,另一方面也提供了宝贵的经验。
现在,我会更详细地计划我的下一个场景,以防止出现这种情况。
.
额外的装饰、小道具、草和布景                                 对于道具、底板、天线、电线等小零件,我决定制作一个新的装饰件,为连接塑料、金属和橡胶制成的模型提供空间。



当我决定在工作流程中向场景添加一些简单模型时,这非常方便,我可以在几个小时内创建并快速应用于可用资产。我不需要花几天时间创建高模或纹理,也不需要再次增加场景的纹理内存使用。此外,生成的模型在整体设计中看起来非常好。
正如我之前提到的,包括草在内的所有植被都来自 Megascans 图书馆。
我试图将它放置在柱子和地面的交界处,以隐藏表面之间的不自然接触,以及瓷砖之间的裂缝。在路边附近的道路上可以观察到一些集群:(注:正文内容未改动,仅修改了语法。)





当我们临近决赛时,我开始欣赏这一幕。此外,我还在人行道上设置了一个小型户外咖啡馆,路人可以在那里停下来点一些古巴美食。这一增加为该地点的主要焦点(蓝房子)提供了更多的历史和活力。

为了增强整体视觉吸引力,我加入了一条道路(由一个简单的立方体表示)并应用了 Megascans 的材料。我还使用贴花来模拟轮胎痕迹、散落的树叶和碎片,绘制标记,所有这些元素结合在一起使场景更加迷人。

此外,我根据妈妈的反馈自己制作了灯柱。这很有趣,但她对如何在场景中营造舒适感有着敏锐的感觉,她在这方面给了我很多建议。

与之前的渲染相比,此渲染在质量上有很大不同,不仅在道具、贴花和大量植物的数量方面,而且在任何环境中最关键的元素方面,这里都发生了根本性的变化.



.
照明、后处理器、VFX、渲染                                
我相信良好的照明可以创造真正的魔力。即使位置由白色立方体组成,光也有能力将其转化为令人愉悦的东西。我所在位置的渲染和光照使用 Lumen 模式实时工作。在这个场景中,我没有使用传统的方法来照亮它。相反,我决定为 Unreal Engine 尝试相当著名的插件“Ultra Dynamic Sky”。一旦您将它从内容浏览器添加到视口,这个工具就会产生奇迹。

对我而言,重要的是专注于艺术方面,而不是迷失在引擎的复杂技术中并花费数天时间来尝试实现预期的结果。这个插件给了我这个机会。我可以简单地调整太阳的强度、体积雾的密度、白天(和可选的夜间)、云的大小和类型、它们的高度和强度,以及许多其他参数,所有这些都由一个滑块控制。我强烈建议大家使用这个插件,因为它提供了广泛的功能并且易于调整。
在后处理器中,我只对几个参数做了细微的改动:




我对标准光晕进行了更改,添加了污垢遮罩,并略微减少了镜头光晕。没什么特别的。我不想改变伽玛颜色、对比度和饱和度设置;我对场景的初始外观和材料的颜色感到满意。

玩弄后处理参数是个好习惯,我建议大家尝试在上述设置中调整颜色参数。它可能会给你一种新的场景感觉。然而,在这种情况下,一切都非常适合我,我什至不需要使用 Photoshop 对渲染进行后期处理。


我在后处理器之外做的另一件事是在渲染之前在控制台行中输入命令“r.Tonemapper.Sharpen 8”。


视口变得太锐利,但渲染本身看起来很棒。
最后,我想添加一些动画效果,让视频更有趣,加入一些动作。但是,我不想做得太过头,把注意力从主要焦点上转移开。包括“灵魂:洞穴”和“灵魂:城市”场景中飞扬的灰尘和蒸汽的效果对我来说就足够了。







渲染——最后阶段。我决定用 3-5 个角度拍摄整体场景,几个内部走廊的角度,以及几个前景中物体略微模糊的广角镜头就足以满足我的需要。我没有使用预设的相机配置;相反,我手动调整了视野和焦距参数。这是一个纯粹的创作过程,我很难提供具体的建议。我只是从不同的角度探索场景,并确定最吸引我的角度。这是最终的主要框架:






看起来不错。恭喜大家!在我的 ArtStation 页面上,有几个视频是我的朋友 Max Eno 为我编辑的。再次非常感谢他的帮助!



.
来自社区的反馈                                
作为 3D 艺术家的前辈同志在这项工作中给予了我很大的帮助。他们引导我朝着正确的方向前进,并阻止我放慢脚步。我想对 Leoluch Discord 服务器——一个致力于游戏内容开发的社区——的参与者表示衷心的感谢。
有兴趣的人可以加入我们并在https://discord.com/invite/GP8CZmeE更好地了解我们。寻求反馈是我从事个人项目的一个重要方面。它使我能够识别我自己可能没有注意到的错误。



.
结论                                 这件艺术品让我有机会获得丰富的新知识并增强我现有的基础。虽然可能并非我的所有方法都是现代的或最佳的,但我希望您能找到对自己有用的方法,以帮助您改进未来的项目。如果您有任何其他问题,请随时通过 Artstation 或 Discord 与我联系——我会尽力提供答案。


有用资源的链接

https://www.youtube.com/watch?v=_6leC7PcCc0  一个很棒的播放列表帮助我了解了基本节点的工作原理。

https://www.artstation.com/artwork/AgJ1V  对材料的有用分解。

https://www.artstation.com/joshlynch
Jonathan Benainous 是 Naughty Dog 的一位艺术家,他拥有一系列关于《最后生还者》中的材料很有用。






END



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


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


评分

参与人数 3元素币 +22 活跃度 +7 展开 理由
Ap1600 + 9 + 2 我甚至有一点平静
gxfc5688 + 8 + 1 好贴子不应默默无闻,我先点了!
yuankaitia... + 5 + 4 【感谢】楼主分享的内容!很棒!

查看全部评分

授人以鱼不如授人以渔!B站和微信公众号关注: CG小苏  每日分享最前沿视频教程和技术文章白嫖资源!
使用道具 <
狂奔de蜗牛  发表于 2023-6-15 09:54:03  
2#
回复 收起回复
使用道具
艾恩斯  发表于 2023-6-17 09:46:14  
3#
666
回复 收起回复
使用道具
kggao  发表于 2023-6-21 14:20:13  
4#
回复 收起回复
使用道具
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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