如何在UE4中创建真实的草?

用户头像
北京/设计爱好者/4年前/151浏览
如何在UE4中创建真实的草?

大家好,今天给大家带来一篇翻译文章。如何在UE4中创建真实的草?

大家好,今天给大家带来一篇翻译文章。如何在UE4中创建真实的草?这个草地的解决方案会与之前的略有不同,希望能够给你的项目开发过程中带来一些灵感。

1、介绍

大家好!我叫Nils Arenz,是一名来自德国的Junior 3D Environment Artist。今年早些时候,我完成了计算机图形和图像处理领域的学习。在我的毕业论文中,我使用Nvidia PhysX库开发了一个用来模拟不同类型的雪崩应用程序。我的主要研究领域是C++和OpenGL编程,但是,我更喜欢将现有的计算机图形领域的知识,引入到数字艺术领域。我在大学的时候也常常参加游戏或电影艺术项目,并提高我对虚幻引擎的了解。然而我毕业后,不得不做出选择:作为一名程序员工作?还是追随我的梦想并努力成为一名3D Environment Artist?我选择了最后一个,我对这个决定非常满意!

我的主要兴趣领域是尽可能地设计出复杂详细的大自然,但要以非常有效的方式做到这一点。由于我的3D计算机图形方面的背景,对我后面工作中的优化设计有很大帮助,因为,我知道所有计算背后的数学原理。

2、创建基础植被

在我概念里面,植被的创建将分为五个部分。首先是视觉质量要非常的高,一个草的叶子或是其他部分,不仅仅是绿色的简单模型片。我创建的所有的植被贴图,都是在一个可移动的工作室里扫描的,可以是在树林里,也可以是在家里,以获得最好的照明设置

其次,我们的方案还需要一些风的动画,其实,你在森林里能看到的植被并不是静止的。

第三,你需要某种与植被互动的效果。如果,你的脚踩到常春藤树枝,那么树枝应该会有一定的反应。(译:你的脚踩下去时候,植物会塌下去,脚离开后,植物又会恢复原状。)

你的植被应尽可能复杂/独特,但同时要高效。如果您只使用5种不同的草叶来设计草丛,这看起来不太好。当你拥有的植物种类越多,效果就会越好。当然,你后面要优化的也越多,对你的设计感到满意的人就越多。

3、构建草丛

最常见的制作草的方法是在albedo贴图中,把草的叶片并排排列起来,并使用一个平面UV将其映射到一个面片上。然后,把这些平面,以不同的角度相互堆叠。如果你垂直向下看草,你就会看不到下方的草叶。更好的方法是在每片草叶周围放置一个较小的平面模型,并将这些草叶作为一个结构。

这两种方式都有两大缺点:四边形(alpha通道)的透支和Shader 复杂度非常高。减少这些问题的唯一方法是单独对每片草叶进行建模,以便尽可能的降低透明通道的使用,这也将降低四边形(alpha通道)透支的问题。这种方法的缺点是顶点数比其他方法高。另外,要使用 Unreal Engine Pivot Painter Tool 2.0这个工具,这样,我们就需要一个更精细的网格来模拟风吹摆动的效果。此外,我们在UE4使用的是树叶实例,这也使得顶点数变得不那么重要。

4、多元化的草

你可以跟着我的工作流程扫描素材,你可以割草,它会保持新鲜约一个小时,这与花不同。因我住在乡下,我可以在外面搜集一大堆草,有一点要留意,选择高度多样化不同种类的草很重要。接下来,我将草带回家中,为了以后获得最佳的效果,你还需要挑选各种不同外观的叶子,你可以从下图看到这点。

对于每种草,我挑选了大约5-10种不同的独特叶片。为了获得最佳性能,我将所有这些都打包放在了一张Albedo贴图中。总的来说,我在纹理处理阶段提取出了84种不同的草叶。每个对象都进行了建模,多次复制,然后转换成不同的形状。所以,我想出了150多种不同外观的草叶。

下一步是创建草丛,你可以使用foliage刷出来。对于这个资产,我制作了82个草的笔刷组件,为你提供了高度的树叶变化。这些草丛是由100-200个草叶组成,每个草丛的平均顶点约为1200个。画笔作为对象实例工作,那么顶点数就不是很重要。使用虚幻引擎,您必须在 x、y 和 z 轴上添加大约+-20% 大小的自由变换,即草地Landscape的每个部分看起来都完全不同。

由于较低的Shader复杂性和较低的四边形透支,与其他草叶相比,性能更高,即使当前这个版本的顶点数更高。目前的LOD是由虚幻引擎自动生成的。我正在研究一个新的方案,它通过减少每个草叶的高度间隔来降低顶点数。为了测试性能,我制作了一个简单的场景并在其中放置了30k个草丛实例。在GeForce 1070 GTX情况下,帧数也能维持在 80 到 120 之间。

5、动画

草丛的动画是当前资产的关键特征。虚幻引擎中最常用的草和树叶运动动画是Simple Grass Wind节点。它的主要功能是弯曲整个草丛集群。缺点是彼此相邻的草叶具有非常相似的动画,因为,它们会以相同的强度向同一方向弯曲。尽管如此,我在项目的前期,还是使用此功能来创建风吹动草地滚动效果。

但是,后来我对这样的效果并不满意,所以,我做了一些研究并发现了Pivot Painter Tool 2.0。经过数周的反复试验,我大致掌握了管道的创建和所有参数的控制。Pivot Painter Tool将风动画是应用在草丛的每一片叶子上,而且所有计算都在Shader中完成。每个对象的这些变换都是基于其轴心点进行的。所以,顶点数越高,动画就越流畅。现在所有的对象移动完全不同,但是却都以相同的方式由参数控制。虚幻引擎已经完善了所有重要参数,如风强度、风向、弯曲强度、随机风向变化等等。

另一个重要步骤是,分别绘制所有草的叶片顶点。如果侧叶的移动量大于草的茎,则动画效果会更好。这种方法的缺点是,每个草丛都需要一个单独的材质实例,因为,需要告诉材质轴点的位置以及轴点指向的方向。

由于项目需要一个独特的Material Instance,因此,你也可以单独分配所有风参数,高草丛受风的影响比短草要多。此外,你还可以更改场景中的风向和其他值,使用这种方法,你只需点击几下,就可以改变整个植被系统的风向、风力、风的湍流和更多参数,这将使您的植被看起来非常活跃。

6、未来计划

草的组件是我推出的Biome组件必备组件的一部分。这将是一个包含所有植物、花卉、草以及更多的东西,可以很好地填满你的地形。当然,所有元素都会有风吹动的动画和优化后的效果。我将把这个Biome组件分成三个部分,第一部分是草,这是最重要的,它将是一个大组件,目前登陆UE4Marketplace,更多信息将在虚幻市场论坛上发布。另一个组件,将是野生草甸花卉和地面植物。在这之后,我打算做一个森林树叶包,里面有森林蕨类植物、小灌木、小树等元素。而在在这里,草地、风和角色之间的相互作用才是本次的重点。

- End -

0
阅读原文
|
举报
|
收藏
分享
相关推荐
评论
用户头像
评论你的想法~
表情
喜欢TA的作品吗?喜欢就快来夸夸TA吧!
推荐素材
三维渲染极简空白室外背景
三维假期旅行主题
灰色三角四面体、点线链接构成三维空间科技矢量背景
三维上海城市天际线
三维渲染的流动白色布料透明玻璃背景
点线连接的科技矢量背景,三维抽象矢量星球,寓意全球化、国际化,球形世界地图
三维渲染的简约简洁极简风格几何体场景海报
矢量抽象三维几何图形创意海报
红色三维概念礼盒背景
三维抽象矢量星球,寓意全球化、国际化,球形世界地图,点和线连接的矢量背景
三维户型剖面图
三维金融创意股票基金金融模型
三维渲染炫彩背景
矢量三维场景彩色质感球体抽象海报
矩阵立方体三维空间科技背景
三维界面科学技术,科幻场景矢量背景图。
三维渲染的老年医生
黑暗房间内的金属方块展台,三维渲染
三维渲染城市背景
三维渲染红色礼盒
实验室三维场景
三维曲线空间背景
三维地形图,等高线。抽象的点线科技背景,类似云端数据连接、区块链、神经网络的概念。
三维渲染极简北欧风现代家居装饰场景
三维渲染抽象波浪流金风格背景
你可能喜欢
相关收藏夹
大家都在看
登录注册