【案例分享】松木森林场景制作

agancg_教程分享_Pine Flatwoods_rend01

介绍

嘿!我叫乔纳森·福尔摩斯。我为现在属于Epic Games的Quixel工作,执行社区管理和产品支持。我在Quixel执行支持职责,而不仅仅是产品支持!社区管理是我职责的重要组成部分,使用我们的艺术工具和内容库的能力对于有效管理艺术家社区至关重要。我在那个笔记上的Quixel艺术社区非常活跃,对于所有技能水平的艺术家来说,这是一个很棒的资源,他们可以互相学习和成长。

这个特殊的项目在几个星期的晚上完成。自2009年UT3和UDK以来,我一直在使用引擎,虚幻引擎是我的核心关注点之一。

松木:Quixel Mixer

quixel构成了该项目的很大一部分,包括前景中的Florida Trail标志。该道具的制作没有烘烤的法线-整个模型的所有边缘都有一个倒角,其多边形数量增加了一倍(从大约500个多边形到1k),但是允许我使用加权法线来产生类似高多边形的结果。这也具有完全跳过烘焙过程的优势-我不需要为该项目做任何事情,因为这里没有任何内容可以作为游戏资源。

agancg_教程分享_Pine Flatwoods_rend02

您可以在此处查看我的图层设置。总体而言,这非常简单,只需分组即可控制材料的不同方面。我专门为此项目创建的一件事是我的木材耐候智能材料。这使您能够以最小的努力在看起来很逼真的木制物体上创建裂缝。您实际上可以通过在此处获取该智能材料将其添加到自己的Mixer副本和正在处理的任何项目中。

请查看此操作的快速演示!

agancg_教程分享_Pine-Flatwoods_rend03

您还可以通过玩“裂纹深度”和“裂纹控制器1/2”层来调整裂纹的强度:

agancg_教程分享_Pine-Flatwoods_rend04

将智能材料放入搅拌机非常容易。导航到您的Megascans库文件夹并打开* \ Custom \ smartmaterial \路径,然后将Wood Weathering存档提取到其中。在Mixer中,选择“库”→“刷新库”,您将在“智能材质”选项卡中看到它。如果您使用此功能,我将不胜感激-看到人们对艺术的看法总是很高兴。

agancg_教程分享_Pine Flatwoods_rend05

要获得Florida Trail徽标,需要进行一些PS工作。这是通过将要处理的图像放在UV上的画布上完成的,因此我知道需要在哪里设置:

agancg_教程分享_Pine Flatwoods_rend06

从那里,我简单地导出仅包含FTNST徽标的透明PNG,然后通过Paint贴花将其加载到Mixer中。最终结果很好,我对结果非常满意。

SpeedTree叶子分解

我花了很多时间在SpeedTree中工作,以使叶子看上去与松木扁平生态系统相称,而松木生态系统是佛罗里达半岛的很大一部分。这个场景使用了几种长叶松木锯棕榈,因其像剃须刀一样的茎而得名。我使用SpeedTree是因为它是我目前发现的用于创建实时叶子的最佳解决方案,即使我以更针对脱机使用的方式使用它。以下是使用它的一般过程:

agancg_教程分享_Pine Flatwoods_rend07

我使用PureRef管理收集的参考。其中大多数是我拍摄的。有些取自Google图片,有些取自街景视图。与从单个图像或主题获得的结果相比,拥有大量的参考文献可以确保获得更加准确的结果。

收集参考文献之后,我使用Megascans库中的松树图集建立了一个简单的叶子模型。我必须这样做,特别是因为图书馆中不存在长叶松树资产……!为了获得长叶的外观,需要有大的浓密的松针簇,通常在分支的末端指向上方。

agancg_教程分享_Pine Flatwoods_rend08

该资产由几架旋转过的飞机组成,直到飞机变满并变浓密为止。仅凭一架飞机创造这样的资产并不是令人信服的。复制,旋转和顶点噪点有助于从远处和近处出售最终外观。我还添加了修改后的顶点法线- 您可以在Polycount Wiki上阅读有关此内容的信息

一旦完成了图集的建模,就可以将其作为FBX导出到原点(其适当的枢轴点位于针头衬套的中心)并加载到SpeedTree中。这是通过使用“材料”窗口→“管理材料”完成的:

agancg_教程分享_Pine Flatwoods_rend09

我创建了一种名为Longleaf的材料,并将该资产的所有纹理添加到插槽中。由于我将不使用SpeedTree来创建纹理地图集,所以大多数操作都是任意的(除了反照率/不透明度纹理外),它只是创建几何图形,稍后我将使用UE4中的材质对其进行优化。添加完纹理后,“材质”窗口应类似于此:

agancg_教程分享_Pine Flatwoods_rend10

下一步是简单地添加一个自定义网格(与添加材料的方式相同)并将其分配给“材料”窗口中的“网格”选项卡。

agancg_教程分享_Pine Flatwoods_rend11

然后可以通过手将其直接拖放到视口中或“生成”窗口中的叶生成器上。我的世代窗口如下所示:

agancg_教程分享_Pine Flatwoods_rend12

SpeedTree使设置树相对容易,因此树设置本身并不十分重要。为了简洁起见,我将不讨论如何构建树的细节,因为我可以写一整个有关该树及其所基于树的设计过程的简短故事。

重要的是要知道树的层次结构是一切的重点。如果层次结构构建不正确,则别无选择。再次注意,这些树被设置为中多边形/高多边形,并且并未针对游戏使用进行优化。我将Unreal用作脱机渲染器,因此我对所有针进行了建模,除了单独的针头,而不是对连接到针头的分支使用图集。

从Tree生成器开始,我们移至Trunk。这实际上是整个树的根。我没有在其上添加文字根,因为由于我添加的地面植物的数量,它们在场景中不可见。Knot和Twigs生成器在那里可以增加树干的视觉趣味并将其分解,因此它看起来不像一根长杆。

大树枝设置了长叶外观的核心。第一个大分支连接到主干。第二个大树枝连接到树枝,所有的叶子网格针都从该树枝中萌发。这种设计对于使其看起来像长叶松木是必要的。它们以非常特殊的,相当重的方式生长,并且从侧面看时具有大致圆形的钟形轮廓。获得这种外观对于钉牢松木平板生态系统至关重要。如果没有这种外观,它们可能是任何其他类型的松树,也不会是扁木!

另一件事:分支使用间隔生成,因此它们随着树本身的延长,缩短或进行其他调整而增长和变化。这种树生成方法允许以最小的努力创建同一棵树的多个变体。

agancg_教程分享_Pine-Flatwoods_rend13

使用我之前提到的参考,我将SpeedTree设置为建模,就像使用3ds Max一样:透视图和正交视图。

agancg_教程分享_Pine Flatwoods_rend14

树皮是由Mixer使用较旧的松树皮扫描制成的。长叶松树随着年龄的增长,树皮上带有红色和白色的色调,这有助于使它们与类似的松树区别开。在Unreal中,通常通过材质实例化来调整UV的位置,但是我确实尝试使UV从ST的某个距离看起来至少看起来相对准确。我尝试使分支上的UV比例与树干上的UV比例相同。在看到这些树的距离处,主要是为了避免来自mip映射的任何奇怪的伪像。

agancg_教程分享_Pine Flatwoods_rend16

该材料在混合器中经过了某种风格化处理,从而使一定的松木特性在一定距离处显示出来。这是通过在混合器中使用多个曲率图层混合来实现的,其中图层蒙版中的噪声有所变化,从而破坏了表面。

我创建了这种纹理的烧焦版本,以及任何精确的平板木材娱乐需求都需要燃烧的证据,因为平板木材仅由于频繁的火灾而存在。使用简单的顶点绘制设置将其在虚幻引擎中混合在一起,并使用Mixer的位移贴图控制混合。

使用来自扫描库的此手掌资产创建了手锯棕榈。我们可以使用几个现成的棕榈叶,但它们会导致很多容易看到的重复。

agancg_教程分享_Pine Flatwoods_rend17

在3ds Max中,锯棕榈果具有单独的叶状几何体。我使用一个平面在每个叶片上进行了追踪,并对平面进行了整形以适应叶纹理的形状,并在中间向下划了一条线,以使其折叠并弯曲,直到纹理上存在折痕。这使我可以完全控制每个叶状体及其外观。

agancg_教程分享_Pine Flatwoods_rend18

每个叶状体都在原点单独导出,并以类似于松针的方式导入到SpeedTree中,除了我将所有棕榈叶状体成分分配给一种材料,以便每个叶状体可以随机使用所有叶状体成分以帮助保持它来自于创建易于识别的模式。

agancg_教程分享_Pine Flatwoods_rend19

棕榈树的制作方法与松树几乎相同。这是因为SpeedTree确实很容易使用,因此没有必要更改树的基本行为,除非它在整体组成上有根本不同。如果它有什么可以被视为主干,那将是重点。在这种情况下,我只是确保将Trunk垂直偏移,使其沉入地下,并在网格的不同位置(Generation中的First / Last属性)使所有Big Branches从其萌芽。由此,Branch弹出。这是它与松树真正不同之处。该分支是Fronds成长的无形指南。

agancg_教程分享_Pine Flatwoods_rend20

Fronds只是沿着分支的棘刺前进。这是通过将“分支”的“外观”属性设置为“类型:仅脊椎”来完成的。然后,它成为Fronds所依赖的框架。您可以进行各种调整,但最终我选择了最能代表远距离锯棕榈的锯齿-尽管它们确实可以很好地支撑住这些锯齿,但它们并不能近距离观察。

将SpeedTrees导出到虚幻引擎

这就是所有的地方。导出到虚幻引擎会弹出一个选项框:

agancg_教程分享_Pine Flatwoods_rend21

这些是我导出到虚幻引擎时使用的设置。我没有选择任何图集,没有纹理输出,也没有LOD。我让虚幻引擎处理LOD,以提高性能,同时在引擎上工作,以减少我在项目的SpeedTree方面所做的工作量。“单独的材质”在您的树中创建了与应用了树的材质一样多的材质插槽,因此我将在虚幻中的ST中添加的材质相同。从这里,只需将* .ST文件拖放到UE4的内容浏览器中即可。

材料设置

我在此场景中使用的材料是手工制作的。它们并不是最复杂或技术上最令人印象深刻的,但是它们可以满足我需要他们做的事情。欢迎您随意使用它们!如果您不想的话,甚至都不必相信我-但如果您ping me并告诉我您使用它们的方式,那就很好了。

包括在这个环节是地形主材料,枝叶主材料,环境材料师傅。您需要做的就是使用Windows资源管理器将这些.UASSET文件提取到您的Content文件夹中(您不能通过Unreal Engine界面来完成此操作),然后在Unreal中打开它们并为其分配一组默认纹理。从反照率到反照率,从RMA打包到RMA打包,等等。这非常简单。完成此操作后,保存并编译并创建它的实例。在实例中,您可以添加要用于特定资产或地形的纹理。

agancg_教程分享_Pine Flatwoods_rend22

MASTER_Environment控件概要

启用Wind Setup:在Unreal中启用基本的SimpleGrassWind。

发射:启用发射并控制发射纹理。

发射性闪烁:模拟闪烁照明。控件如下:

发射闪烁速度:控制正弦波速度。

菲涅耳发射指数:控制发射光的方向。

否AO:用白色填充以禁用AO贴图。除非场景运行静态照明,否则没有任何实际效果。

无金属感:通常可以忽略不计。在那里可以测试带有/不带有金属度值的某些材料的外观。

无RMA:如果您使用的不是通道填充的粗糙度图,请启用此功能。

高光控制:如果要控制材料的IOR,请启用此选项。这将获取反照率图的黑白值,并使用它来驱动镜面反射率。虚幻中的高光度不同于高光/光泽度工作流程。值为0.5是恒定的IOR,而低于0.5的值反射较少的光,而高于0.5的值反射较多的光。这对金属材料没有影响。

SpeedTree Wind:您需要引擎中的角色来使用它。这使ST风力特性可以在发动机中工作。进行设置,直到找到喜欢的东西。

X力量:本质上是一个没有三点关卡控制的关卡修改器。高于1.0的值会增加更多的对比度,低于1.0的值会降低对比度。

X强度:结合关联的“力量”节点,您可以在特定地图上获得类似PS的对比度。

下图描绘了在右侧设置为48强度和2.5功率的镜面反射通道,在左侧显示未修改的镜面反射。

agancg_教程分享_Pine Flatwoods_rend23

在照明下,它看起来像这样:

agancg_教程分享_Pine Flatwoods_rend24

X功率/强度节点可用于粗糙度图的粒度控制。还设置了材质,因此您可以将“反照率饱和度”设置为1.0,并通过“反照率颜色”对反照率贴图进行有限的重新着色。

U / V:高于或低于1.0的值分别调整每个通道的平铺。

法线强度:允许单独控制法线贴图通道。请谨慎使用。我发现,当正常的B通道设置为0.5,R / G通道设置为2.0时,植物通常看起来更具说服力,根据资产的不同,有时更高或更低。

TERRAIN_Master以类似的方式设置。主要区别:

H水平/强度:H代表高度。这使您可以更好地控制基于高度的混合。它需要一个高度图,用于在反照率Alpha通道中放置地形混合(基本上是非常夹紧的纹理)。

AO:将AO贴图乘以地形反照率纹理,这可以产生视觉上令人愉悦的结果。

MASTER_Foliage也以类似方式设置。区别如下:

Moss Shading:启用带有关联控件的FuzzyShading设置

菲涅耳SSR:我正在研究的东西是否会增加地下散射的深度。最好不要管它,除非您想修改它。

颜色分解:利用每个实例的颜色偏移。在使用“ Foliage Painter”时,这一点最为突出。小值大有帮助。

不透明度:控制次表面散射的深度

Alpha强度/级别:和以前一样,这两个控件可以产生一些有趣的结果。将“强度”设置为1.0以上可以使树叶在场景中显得更加突出。

场景设计与布局

松树最初是使用Unreal的Foliage Painter放置的,但是当您需要精确放置树木时,这种方法对树木效果不佳。我只和画家一起画了很远的树木。在这一点上,有必要使用画家在合理的时间内创建一个真实的树梢冠层。

agancg_教程分享_Pine Flatwoods_rend25

地面的叶子完全由Megascans库中的预制植物组成。选择每种植物的依据是与松材生态系统中发现的植物有多相似。它们如下:

除某些例外情况(在特定位置锯棕榈)外,所有地面叶子均通过“植物刷”放置。在合理的时间内,有太多的植物可供人工放置。我通常将实例的基础规模从1.0的基本比例提高15%至40%,即从0.9到1.4。我也一次绘制一种类型的叶子,然后回到它,并使用绘画器中的“将实例重新应用设置”工具来随意地向上或向下调整叶子密度。

特别是对于草丛,我还通过玩弄它们的Z偏移量和Z缩放比例(通过自由缩放)来改变它们,以使它们在放置时趋向于低于地形,但最上面的草叶片随即乱弹Z比例尺设置为1.5-3.0之类的值。这有助于产生稀疏的草皮区域,而不必使它们全都处于同一高度,这严重地推动了逼真度。

agancg_教程分享_Pine Flatwoods_rend26

主要地形在Landscape Painter中使用大量“提示”笔刷混合,但工具强度较低,通常设置为0.1到0.3。通过基于高度的混合,反复放置材质会在地形上产生一些视觉上有趣的效果:

agancg_教程分享_Pine-Flatwoods_rend27

地形本身很简单-毕竟是佛罗里达,这里没有峡谷或山谷!细微的地形变化是使可信的平地环境正常工作的关键。我使用了很多工具强度很低的地形绘画来获得想要的效果。

agancg_教程分享_Pine Flatwoods_rend28

叶子覆盖了所有纹理重复,我想我创造了一个漂亮整洁的环境。

agancg_教程分享_Pine Flatwoods_rend29

灯光

此场景使用UE 4.24中引入的新SkyAtmosphere设置!

我期待已久。它显着减少了产生视觉上令人愉悦的合成物所需的工作量,并允许环境中更自然的照明,而不必使用天空球来创建背景。如果您已将定向光设置为带有天窗的“大气/雾日光”,则它可以完全模拟现实世界的天空照明系统。

agancg_教程分享_Pine-Flatwoods_rend30

您可以看到它对场景创建的影响!使用UE 4.25中的新程序云系统,如果您想完全控制环境,则几乎可以完全放弃天空领域。

该场景中的照明完全由光线跟踪的定向光产生。与股票DL的唯一区别是将其设置为8.0强度,该强度是任意数字,可以使中间范围突出显示并突出显示,但不会过度曝光。这很重要(请牢记,我将在最后再讨论),因为最终产品是通过Photoshop处理的,类似于来自DSLR /无反光镜相机的RAW照片,因此具有良好的中档工作能力在进行最终图像处理时,有助于使最终产品以实际价值为基础。

天窗使用非常低的值。强度仅为0.25。光线跟踪环境在GI和AO方面做了很多工作。天窗只是帮助填充来自开放天空的光线。不幸的是,这可能会导致过多的蓝色照明,因为没有构建整个环境,只有可见的部分。这意味着相机后面的区域基本上是空白的,带有大量的蓝色,投射到树木和其他前景物体上,没有别的东西可以破坏它。保持较低的价值有助于缓解这种情况。最终产品中的任何漏光都可以在Photoshop中进行调整。

SkyAtmosphere演员对其进行了一些调整,以模仿我祖国佛罗里达州奥兰多市的晚间天空。

agancg_教程分享_Pine Flatwoods_rend31

我所做的更改如下:

三重散射秤使大气中的灰尘增多,这是我们干燥季节的每年的这个时候(3月→5月)。

Mie各向异性设置为0.8到0.9,以强调在太阳开始落山的地方最可见的灰尘。

三重指数分布将尘埃高度降低到大约1公里,有助于将其保持在适合当地的实际值。

提示值从1.0更改为3.0,这有助于在图像的最右边将更多的蓝色带入朝北的天空。

空中透视图的查看距离从1.0设置为2.0,以帮助将更多尘埃带入前景而不会使其过高。

摄影工作

相机工作始终是任何项目中我最喜欢的部分。我使用Olympus Micro 4 / 3s系统拍摄照片,以前的项目通常使用M43胶卷,但是如今,我已经过渡到使用全画幅。该场景是使用电影摄影机演员在f / 2.0设置为22.5mm拍摄的。相机的唯一更改如下:

  • 坡度:0.95
  • 脚趾:0.2
  • 肩宽:0.0
  • 白色剪辑:0.0
  • 启用RTAA,每个像素4个样本。
  • 启用RTGI时,每个像素有1个反弹和8个样本。
  • RTR(RT反射)设置为每个像素2个反射和4个样本,并启用了“区域阴影”和“半透明对象”。
  • 启用RTT(RT半透明),每个像素1射线和2个样本,并带有阴影区域。折射导致锯棕榈中出现一些视觉伪影,因此我将其禁用。

后处理,最终图像分级

我把这个场景当作我实际上是用相机拍摄的。使用虚幻的电影系统,我渲染了EXR文件以获得完整的32位图像。由于我想使用Photoshop Camera Raw插件,因此必须将图像转换为16位。导入到PS中时,基本EXR如下所示:

agancg_教程分享_Pine Flatwoods_rend32

一旦引入PS,将其减少到16位将带来另一个挑战-将图像转换为16位格式而又不会弄乱颜色分级或其他任何方面。这就是我的虚幻4预设所做的:

agancg_教程分享_Pine Flatwoods_rend33

这将从32位转换为16位,而不会引起任何明显的质量损失。对于所有意图和目的,图像均保持不变。一旦达到16位,就可以使用Camera Raw对其进行编辑。我不会将其纳入完整的CR教程中,因为这并不是本文撰写的目的,但这是最终产品的重要组成部分,因此我将对其进行介绍。

以下是我使用的常规设置:

agancg_教程分享_Pine Flatwoods_rend34

我使用的设置是专门为产生深夜氛围而选择的。我想让太阳变亮,但又不要过分明亮,因此将大部分最终图像保持在中间范围内,使我能够真正使用这些值并进行推/拉操作而不会出现过多修剪。结果,只需调整一下滑块就可以将阴影调低一点,直到我对结果满意为止。调低纹理会降低很多CG外观,调高清晰度会带出光影。

锐化通过“细节”面板添加,我确实有意通过“效果”(FX)面板在最终产品中添加了30级颗粒,因为我觉得它增加了我想要的照相真实性。世界上没有可以产生无噪点图像的相机。有些人喜欢无噪音,有些人喜欢一点噪音,有些人则喜欢更多噪音。我选择了中间立场,并增加了一些立场,但试图避免它过于霸道。

级数

这是场景的演变过程。可以避免的一件事是,在处理任何场景的情况下,只要您提供反馈并可以放心观看,就会看起来更好。不要用疲倦的眼睛看你的工作。休息一下,做点其他事情。刷新后再回来。回想过去,我一直在做这个项目的版本时,做出了一些愚蠢的选择,但最终我得到了令我感到骄傲的东西,它以一种忠实的方式代表了我最喜欢的环境之一。

agancg_教程分享_Pine Flatwoods_rend36

agancg_教程分享_Pine Flatwoods_rend37

发表评论

邮箱地址不会被公开。 必填项已用*标注

61 条评论 “【案例分享】松木森林场景制作”