Meadows: 在 UE4 中创造风格化自然
地编场景制作3D场景引擎地编地图编辑 4218 3
实名

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

发布于 2021-12-30 19:48:33

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

x
本帖最后由 执此一念 于 2021-12-30 19:52 编辑

Meadows: 在 UE4 中创造风格化自然

大卫·霍兰 (David Holland) 分享了他的简单风格化草地场景的详细分类,其灵感来自《塞尔达传说:荒野之息》和吉卜力的《龙猫》。

Introduction
介绍

My name is David Holland and I am a Senior Level Artist at EA DICE. I’m originally from England but have been living in Stockholm, Sweden, since I joined DICE in 2015.
我叫大卫·霍兰德,是 EA DICE 的高级美术师。我来自英国,但自 2015 年加入 DICE 以来一直住在瑞典的斯德哥尔摩。

I studied Game Art at Teesside University in the UK from 2006 to 2010 and I got my start as an environment artist in 2011 when I joined Climax Studios in Portsmouth. Previously I had freelanced as a concept artist, interned at Disney Interactive, and had little knowledge of 3D or game engines so I learned as quickly as I could while working on my first professional game.
我于 2006 年至 2010 年在英国蒂赛德大学学习游戏艺术,并于 2011 年加入朴茨茅斯的 Climax Studios 时开始了我的环境艺术家身份。之前我是一名自由职业的概念艺术家,在迪士尼互动公司实习,对 3D 或游戏引擎知之甚少,所以我在制作我的第一个专业游戏时尽可能快地学习。

Since then, I’ve worked at three more studios, Crytek UK on Homefront, Ubisoft Reflections on The Division, and finally DICE where I have been part of both Star Wars Battlefront titles and Battlefield 1 and 5 plus its live service.
从那时起,我又在三个工作室工作,Homefront 的 Crytek UK,The Division 的 Ubisoft Reflections,以及最后的 DICE,在那里我参与了星球大战前线游戏和战地 1 和 5 及其现场服务。
widen_920x0.jpg

contain_620x344.jpg


Meadows: About the Project
梅多斯:关于项目
Most of the previous personal projects I have worked on used either CryEngine or UDK. I’ve played around quite a bit in UE4 but not with any real project idea in mind. I wanted to create a finished scene and use it as an opportunity to learn more about the engine. At first, I played around with a scene idea based on Dark Souls III but the hook would be using Photogrammetry for all the assets. Already I had begun blocking out forest and stone assets but as usual with photo scanning, you have to wait for the right weather. Around the same time I saw a post by Kristóf Lovas (Obscura) on Polycount in which he showed a simple method for making stylized foliage, it looked so cosy that I decided to give it a go.
我之前参与的大部分个人项目都使用了 CryEngine 或 UDK。我在 UE4 中玩了很多,但没有想到任何真正的项目想法。我想创建一个完成的场景并将其用作了解有关引擎的更多信息的机会。起初,我尝试了一个基于《黑暗之魂 III》的场景创意,但最终会为所有资产使用摄影测量。我已经开始封锁森林和石头资产,但像往常一样进行照片扫描,你必须等待合适的天气。大约在同一时间,我在 Polycount 上看到 Kristóf Lovas (Obscura) 的一篇帖子,其中展示了一种制作风格化树叶的简单方法,它看起来非常舒适,我决定试一试。

I blocked out a few trees and a grass cluster, built a shader using Kristófs method, and before I knew it, I had completely rebuilt my dark, moody scene into something bright and green.
我遮住了几棵树和一个草丛,使用 Kristófs 方法构建了一个着色器,不知不觉中,我已经将黑暗、喜怒无常的场景完全重建为明亮和绿色的东西。




For the next few weeks, I played around with a lot of ideas, shaders, and assets. There was no single key reference I used at this point, just memories of playing Breath of the Wild and whatever I doodled in my sketchbook.
在接下来的几周里,我尝试了很多想法、着色器和资产。在这一点上,我没有使用任何关键参考资料,只有玩荒野之息的回忆以及我在速写本上涂鸦的任何东西。

This was how it went for about a month and I ended up with something that wasn’t that great overall but I liked parts of it. At this point, I hit a creative block.
这就是它大约一个月的过程,我最终得到的东西总体上不是那么好,但我喜欢它的一部分。在这一点上,我遇到了一个创意障碍。

One evening I was chatting with two close friends and fellow artists, Ben Armstrong and Chris Hodgson. I explained that I was thinking of starting something new but they encouraged me to keep going with a great piece of advice; “Simplify”.
一天晚上,我和两位亲密的朋友和艺术家同行 Ben Armstrong 和 Chris Hodgson 聊天。我解释说我正在考虑开始一些新的事情,但他们鼓励我继续前进,并提出了很好的建议;“简化”。

So that’s exactly what I did, I took the parts I enjoyed the most and moved them to a new scene. I sketched a simple composition with a fun little statue, grabbed some reference, and blocked it out. The final three compositions took a few evenings to finalize and I spent a week just tweaking the lighting and materials. It was a small revelation to be able to concentrate on just a single shot instead of a larger map and it all came together very quickly after that.
所以这正是我所做的,我把我最喜欢的部分移到了一个新的场景中。我用一个有趣的小雕像勾勒了一个简单的构图,抓了一些参考,然后把它挡住了。最后三幅作品花了几个晚上才完成,我花了一周时间调整灯光和材料。能够专注于单个镜头而不是更大的地图是一个小小的启示,之后一切都很快融合在一起。

As I mentioned before, this project was an opportunity for me to learn more about Unreal 4 and I will try to add links to the great resources posted by other artists I used.
正如我之前提到的,这个项目让我有机会了解更多关于 Unreal 4 的信息,我将尝试添加指向我使用的其他艺术家发布的优秀资源的链接。

Sketches and reference used for the scene:
用于场景的草图和参考:



Blockout to the final scene:
最后一幕的封锁:


Asset Creation
资产创造
At DICE we strive to create some of the most photorealistic games in the industry but a lot of the same process can apply to a stylized scene. Photogrammetry works best when you keep your color map fairly simple and lacking in noise, letting your normal, roughness and lighting do the real work. The same can be said for a stylized scene but in this case more extreme. I kept most of the colormaps to one or two colors, the only exception being the rock which needed more detail, and removed all but the slightest amount of roughness for each asset. This created a flattened, painterly look without using any post-process tricks.
在 DICE,我们努力创造一些业内最逼真的游戏,但很多相同的过程可以应用于风格化的场景。当您保持颜色贴图相当简单且没有噪点时,摄影测量效果最佳,让法线、粗糙度和光照发挥真正的作用。对于风格化的场景也可以这样说,但在这种情况下更加极端。我将大部分颜色图保留为一种或两种颜色,唯一的例外是需要更多细节的岩石,并为每个资产去除了最轻微的粗糙度。这在不使用任何后期处理技巧的情况下创建了扁平化的绘画外观。


Grass and Flowers
草与花

Each of the ground foliage assets was hand-painted using real plants as reference. I grabbed a few plant pictures from textures.com, laid them out on a plane, and painted simplified versions on top using photoshop. I cut them out in Maya and put together a few clusters.
每个地面树叶资产都是使用真实植物作为参考手绘的。我从textures.com 上抓了几张植物图片,把它们放在平面上,然后用photoshop 在上面画了简化版。我在 Maya 中将它们剪下来并放在一起。

To achieve the flat look on all the ground plants I started with a method Jess Hider shows on her site. I will include an image of my shader setup but I recommend everyone to check out Jess Hider's website for a more detailed explanation and other great tips and tricks.
为了在所有地面植物上实现平坦的外观,我开始使用 Jess Hider 在她的网站上展示的方法。我将包括我的着色器设置的图像,但我建议大家查看Jess Hider 的网站以获得更详细的解释和其他重要提示和技巧。

I kept the basic shader setup but modified some areas like the waves and added a large scale color variation texture to the grass.
我保留了基本的着色器设置,但修改了一些区域,如波浪,并为草地添加了大规模的颜色变化纹理。

The grass color variation went through a few iterations. At first, I tried using a virtual texture setup so the grass would pick up the terrain color underneath. When I simplified the scene I removed any need for terrain painting and decided to change to a large scale texture instead.
草地颜色变化经历了几次迭代。一开始,我尝试使用虚拟纹理设置,以便草会拾取下方的地形颜色。当我简化场景时,我消除了对地形绘制的任何需要,并决定改为使用大比例纹理。

Sometimes this can be tricky because the texture can appear very low rez but in this case, the blurriness helped make the grass look fluffier and painterly. The texture itself is really simple and built using Substance Designer. I mixed Clouds and Perlin noise, a few different blurs then plugged the result into a gradient. The key was to keep the variation subtle with smooth transitions between each color.
有时这可能很棘手,因为纹理可能会显得非常低,但在这种情况下,模糊有助于使草看起来更蓬松和绘画。纹理本身非常简单,使用 Substance Designer 构建。我混合了 Clouds 和 Perlin 噪声,一些不同的模糊然后将结果插入到渐变中。关键是通过每种颜色之间的平滑过渡来保持微妙的变化。





I tried several different methods, some simple, some complicated but I found this to be the best for this project. So again check out Jess’s blog, I learned a lot by reading through her posts.
我尝试了几种不同的方法,有些简单,有些复杂,但我发现这是最适合这个项目的方法。所以再次查看 Jess 的博客,我通过阅读她的帖子学到了很多东西。

Trees
树木
I built very simple trees for the project. If this was a photorealistic scene they would probably be regarded as not much more than an initial block out. I used the trees as an opportunity to learn a bit more about Blender, although I ended up tweaking them in Maya later on for ease.
我为这个项目构建了非常简单的树。如果这是一个逼真的场景,它们可能只会被视为最初的块。我利用这些树作为学习更多关于 Blender 的机会,尽管我后来在 Maya 中对它们进行了轻松调整。

For the trunk meshes, I used Blender's handy tree addon; Sapling Tree Generator as a base. Then placed a few spheres on the branches and sculpted them into a vague canopy. Next using the hair particle system I distributed cards across the spheres. Then it was just a case of tweaking the initial sculpted shapes and redistributing until I was happy with the result. A similar method to this can be achieved in Maya using the MASH system.
对于树干网格,我使用了 Blender 的方便的树插件;以树苗生成器为基础。然后在树枝上放几个球体,把它们雕刻成一个模糊的树冠。接下来使用头发粒子系统,我将卡片分布在球体上。然后只是调整初始雕刻的形状并重新分配,直到我对结果感到满意为止。在 Maya 中使用 MASH 系统可以实现与此类似的方法。

The final step is to modify the card normals using a sphere encompassing the entire tree and transferring the sphere's normal information to the cards. In Maya, this would be done using transfer attributes and in Blender using the Data Transfer modifier. This is a method that has existed long before I started my career and although it’s not something commonly used for realistic foliage nowadays, it still works great for stylized assets.
最后一步是使用包含整个树的球体修改卡片法线,并将球体的法线信息传输到卡片。在 Maya 中,这将使用传输属性完成,在 Blender 中使用数据传输修改器完成。这是一种早在我开始职业生涯之前就已经存在的方法,虽然现在它不常用于逼真的树叶,但它仍然适用于风格化资产。


The shader setup was similar to the grass except you still want normal information as opposed to completely flat like the grass. To achieve this I used a TwoSided Sign multiplied with a three constant. This flips the back faces of the cards facing away from the camera so the lighting appears the same on both sides. I learned this method from Kristóf Lovas’s post over on Polycount which can be found here.
着色器设置类似于草,但您仍然需要正常信息,而不是像草一样完全平坦。为了实现这一点,我使用了一个双边符号乘以一个三常数。这会翻转背对相机的卡片背面,因此两侧的光线看起来相同。我从 Kristóf Lovas 在 Polycount 上的帖子中学到了这种方法,可以在这里找到。

As I mentioned at the beginning this post was the catalyst for the entire project so a big thank you to Kristóf for sharing such a cool tip.
正如我在开头提到的,这篇文章是整个项目的催化剂,非常感谢 Kristóf 分享如此酷的技巧。

Stone Statue
石像

The statue was the final asset I made for the scene. I started with a simple sketch and sculpted it in ZBrush. I kept the sculpt fairly simple, I didn’t want any sharp details or features that would stand out.
雕像是我为这个场景制作的最后一项资产。我从一个简单的草图开始,然后在 ZBrush 中雕刻它。我保持造型相当简单,我不想要任何突出的细节或特征。


I decided to create a parameter using the basic setup so I could plug it into more shaders if needed. Lastly, I added vertex painting so I would be able to remove or add more moss if I didn’t like the way it was sitting on the prop.
我决定使用基本设置创建一个参数,以便在需要时将其插入更多着色器。最后,我添加了顶点绘画,这样如果我不喜欢它坐在道具上的方式,我就可以移除或添加更多的苔藓。

I used a combination of a large scale, baked normal map and tiling color and normal detail maps to texture the statue. I was very inspired by Jimmy Malachier's Substance Designer work and tried to replicate something similar for the basic color. I imported some of my favourite photoshop brushes and scattered them to use as an alpha. I layered multiple colors on top of each other which gave a painterly base that could be warped and broken up using the heightmap.
我使用了大比例、烘焙法线贴图和平铺颜色和法线细节贴图的组合来为雕像贴图。我受到 Jimmy Malachier 的 Substance Designer 作品的启发,并尝试为基本颜色复制类似的东西。我导入了一些我最喜欢的 photoshop 画笔并将它们分散用作 alpha。我将多种颜色叠加在一起,这提供了一个可以使用高度图扭曲和分解的绘画基础。



Clouds
I wanted to be able to compose the clouds to fit the scene so I decided against making an entire skybox. I studied some of the backgrounds from My Neighbour Totoro and it was the perfect time to try out some brushes created by Madeleine Bellwoar.
我希望能够组合云来适应场景,所以我决定不制作整个天空盒。我研究了我的邻居龙猫的一些背景,这是尝试一些由 Madeleine Bellwoar 创作的画笔的最佳时机。





Keeping the clouds simple meant they fit the scene and didn’t distract the viewer too much. I sketched the large shapes first, added shading, and used the smudge brush to blend some areas. When I was happy with the painting I added the texture to a plane and placed it behind the scene.
保持云简单意味着它们适合场景并且不会过多地分散观众的注意力。我先勾勒出大的形状,添加阴影,然后使用涂抹刷混合一些区域。当我对这幅画感到满意时,我将纹理添加到平面并将其放置在场景后面。

If this were a larger map and if I had wanted to create multiple shots from different angles, then a full skybox would have been needed but, since it was only three shots it just didn’t make sense to create one.
如果这是一张更大的地图,如果我想从不同角度创建多个镜头,那么就需要一个完整的天空盒,但是,由于只有三个镜头,创建一个就没有意义了。

Lighting and Post Process
照明和后期处理

I spent the majority of my time working out the lighting, I wasn’t very familiar with lighting in Unreal but I knew I wanted it to be a fully dynamic scene and to not utilize any post-process tricks apart from grading.
我花了大部分时间来处理光照,我对 Unreal 中的光照不是很熟悉,但我知道我希望它是一个完全动态的场景,并且除了分级之外不使用任何后期处理技巧。

Three things were important for the lighting setup; Skylight HDR capture, the sharpness of the shadows, and utilising Dynamic Indirect Lighting.
三件事对于照明设置很重要;天光 HDR 捕捉、阴影的锐度以及利用动态间接照明。

To make sure my scene was fully dynamic I switched off Allow Static lighting and switched on Generate Mesh Distance Fields in the project settings. This was to make sure all my lights were movable and Dynamic Indirect Lighting could be generated properly. The reason for using dynamic lighting as opposed to static lighting for purely for the foliage movement.
为了确保我的场景是完全动态的,我在项目设置中关闭了允许静态照明并打开了生成网格距离场。这是为了确保我的所有灯光都是可移动的,并且可以正确生成动态间接照明。使用动态照明而不是静态照明的原因纯粹是为了树叶运动。

When using a fully dynamic lighting setup in UE4 it’s important to use a cubemap or HDR with your skylight. A moveable skylight won’t capture the scene and produce nice GI the same as a stationary light. From what I could work out, it captures one color to help enhance your shadows and you can sort of fake bounce light by switching off Lower Hemisphere Color. The best option is to use an HDRi capture or a cubemap instead. This could be created by capturing your scene and creating a texture or by importing another image entirely.
在 UE4 中使用完全动态光照设置时,对天窗使用立方体贴图或 HDR 很重要。可移动的天窗不会像固定光一样捕捉场景并产生漂亮的 GI。据我所知,它捕捉一种颜色来帮助增强你的阴影,你可以通过关闭下半球颜色来模拟假反射光。最好的选择是改用 HDRi 捕获或立方体贴图。这可以通过捕捉场景并创建纹理或完全导入另一个图像来创建。

I grabbed a capture from HDRi Haven which is an amazing resource for anyone who doesn’t know about it.
我从HDRi Haven抓了一张照片 ,对于不了解它的人来说,这是一个了不起的资源。



For the Directional Light, I set the Shadow Filter Sharpen to 1. Shadows in animation are usually fairly sharp and when used with flat textures it creates a pseudo-cell-shaded look without any post-process needed.

对于定向光,我将阴影过滤器锐化设置为 1。动画中的阴影通常相当清晰,当与平面纹理一起使用时,它会创建一个伪细胞着色外观,无需任何后期处理。


Lastly, I still wanted some extra GI in the scene to help it all blend a little better. This is where the Dynamic Indirect Lighting settings came in very handy.
最后,我仍然希望在场景中添加一些额外的 GI,以帮助它更好地融合。这是动态间接照明设置非常方便的地方。

This is still an experimental/ unfinished feature within UE4 and I’m not sure it will ever be finished with UE5 and its amazing dynamic GI looming on the horizon.
这仍然是 UE4 中的一个实验性/未完成的功能,我不确定它是否会在 UE5 中完成,其惊人的动态 GI 即将出现。

To enable it you have to make sure the Static Lighting is switched off and Generate Mesh Distance Fields is switched on in the project settings and close the engine. Then add r.LightPropagationVolume = 1 to your ConsoleVariables.ini. Now when you restart Unreal you will have it enabled.
要启用它,您必须确保在项目设置中关闭静态照明并打开生成网格距离场并关闭引擎。然后将 r.LightPropagationVolume = 1 添加到您的 ConsoleVariables.ini。现在,当您重新启动 Unreal 时,您将启用它。

The next thing to do is to enable it with your directional light and to do this simple check Dynamic Indirect Lighting. There are a lot of settings you can play with and for a more, in-depth look you can read through Unreals documentation here.
接下来要做的是使用定向光启用它,并执行这个简单的检查动态间接照明。您可以使用许多设置,要更深入地了解,您可以在此处阅读 Unreals 文档。


The final piece was to grade the scene using a Lookup table. I decided to do all my grading in photoshop so I could iterate quickly and effectively.
最后一部分是使用查找表对场景进行分级。我决定在 photoshop 中完成所有的分级,这样我就可以快速有效地进行迭代。


Learning and Challenges
学习与挑战
One of the best things you can do as an artist is getting to know the technical aspects of the software you are using and starting with a small project is a great way to do this. Unreal in particular has a great community so learning the basics is incredibly easy.
作为一名艺术家,你可以做的最好的事情之一就是了解你正在使用的软件的技术方面,从一个小项目开始是一个很好的方法。特别是虚幻拥有一个很棒的社区,因此学习基础知识非常容易。

Originally I wanted this to be a whole graveyard, surrounded by a ruined castle but there were so many things I would need to learn to have completed it, that it became overwhelming, and more importantly, it stopped being fun. There’s an element of shame that starts to creep in when you no longer want to finish a project you’ve started, that feeling of failure can dampen your inspiration and self-motivation to the point where you do eventually give up. If you have a defined idea in mind then making sure you plan as much as possible is the best way to execute that idea, something I’ll remember for next time. It’s also ok to start small, maybe you have a larger scene you want to build but you don’t know where to start. You can block everything out then focus on a small part of the scene and build from there.
最初我希望这是一个完整的墓地,周围是一座被毁坏的城堡,但我需要学习很多东西才能完成它,它变得势不可挡,更重要的是,它不再有趣。当你不想完成你已经开始的项目时,羞耻感就会开始蔓延,这种失败感会抑制你的灵感和自我激励,以至于你最终会放弃。如果您心中有一个明确的想法,那么确保您尽可能多地计划是执行该想法的最佳方式,我下次会记住这一点。从小处开始也可以,也许你有一个更大的场景想要构建,但你不知道从哪里开始。您可以将所有内容都屏蔽掉,然后专注于场景的一小部分并从那里开始构建。

This project has been one of the most rewarding and fun projects I’ve worked on in my spare time. I realized that I spend so much time professionally building expansive, detailed maps that sometimes you forget how to focus on a few small elements instead of, what feels like building an entire world.
这个项目是我在业余时间从事的最有价值和最有趣的项目之一。我意识到我花了很多时间专业地构建广阔的、详细的地图,有时你会忘记如何专注于一些小元素,而不是构建整个世界的感觉。

A lot of my time was spent getting much better acquainted with Unreal shaders and lighting systems, at times it felt like this was like a sandbox for me to try out ideas more than an actual scene. The downside to that was that I lost my way a little and needed to refocus but now I have a very solid knowledge base to build on for my next project.
我花了很多时间来更好地熟悉 Unreal 着色器和照明系统,有时感觉这就像一个沙箱,让我尝试更多想法而不是实际场景。这样做的缺点是我有点迷失了方向,需要重新集中注意力,但现在我有一个非常扎实的知识库来为我的下一个项目建立基础。

Thank You
谢谢
A big thanks to Jess Hider, Jimmy Malachier, Kristóf Lovas for their great tutorials and inspiration, and my good friends Ben Armstrong and Chris Hodgson for keeping me focused.
非常感谢 Jess Hider、Jimmy Malachier、Kristóf Lovas 的精彩教程和灵感,以及我的好朋友 Ben Armstrong 和 Chris Hodgson 让我保持专注。

David Holland, Senior Level Artist at EA DICE
EA DICE高级美术师David Holland

END


评分

参与人数 1活跃度 +30 展开 理由
元素小行家... + 30 这个效果表现很棒诶

查看全部评分

来了老弟~
使用道具 <
link_吴  发表于 2021-12-31 09:44:35  
2#
谢谢分享,提供灵感
回复 收起回复
使用道具
逝去的不再来  发表于 2022-1-1 13:46:04  
3#
很棒的内容
回复 收起回复
使用道具
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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