您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 对bu起 于 2022-8-17 11:34 编辑
Goals & Plans
I chose The Ancient Temple concept by Shusei Sasaya since it will strengthen my knowledge in sculpting and give me an intro to foliage planning and creation. I planned to build it in Unreal Engine to experiment with Nanite and Lumen and test the strength and limitations of these new techs.
目标和计划
我选择了Susei Sasaya的“古寺”概念,因为它将加强我在雕刻方面的知识,并为我介绍树叶规划和创作。我计划在虚幻引擎中构建它,以试验Nanite和Lumen,并测试这些新技术的优势和局限性。
https://www.artstation.com/artwork/gJEa08
Software used:https:
Maya
Zbrush
Substance Painter
Substance Designer
Marmoset
SpeedTree
PureRef
Adobe Illustrator
Adobe Premiere
使用的软件:
虚幻引擎 5
玛雅
兹布拉什
物质画家
物质设计师
狨猴
速度树
PureRef
Adobe Illustrator
Adobe Premiere
References and Inspiration:
After finding a concept, I started looking for more references for Mayan architecture, ruins, and foliage. Then, I researched the dimensions of Mayan architecture, including temples and columns. When I was done with the research, I wrote a paragraph story for the scene to help make this place suitable for a playable game. First, I had to write down the player’s path and experience, including gameplay and mechanics. This helped me in planning and building the scene. After that, I researched Mayan instruments and their uses for future reference.
参考和灵感:
找到一个概念后,我开始寻找玛雅建筑,废墟和树叶的更多参考。然后,我研究了玛雅建筑的维度,包括寺庙和柱子。当我完成研究后,我为场景写了一个段落故事,以帮助使这个地方适合可玩的游戏。首先,我必须写下玩家的路径和经验,包括游戏玩法和机制。这有助于我规划和构建场景。之后,我研究了玛雅乐器及其用途,以备将来参考。
As you can see in the PureRef file’s screenshot, I had many references to ruins, architecture, foliage, CG examples, and more. This does not just help in understanding the shape and form of what you are trying to build but also trains your eyes to achieve something believable and beautiful.
The CG examples I had are from scenes I think are incredible and for the level of quality, I want my scene to meet.
正如您在PureRef文件的屏幕截图中看到的那样,我有很多关于废墟,建筑,树叶,CG示例等的引用。这不仅有助于理解你试图构建的东西的形状和形式,还可以训练你的眼睛实现一些可信和美丽的东西。
我拥有的CG示例来自我认为令人难以置信的场景,对于质量水平,我希望我的场景能够满足。
This is a crucial part of the process, especially for beginners, because it teaches us what is possible, pushes our work to better quality, and encourages us to learn and improve.
I also had foliage examples; they were not just foliage from the real world but also foliage from CG references. This helped me understand the limitations and helped me in trying to push the foliage’s quality further. It was my first time touching foliage, and it was an exciting yet challenging experience.
这是这个过程的关键部分,特别是对于初学者来说,因为它教会了我们什么是可能的,推动我们的工作达到更好的质量,并鼓励我们学习和改进。
我也有树叶的例子;它们不仅是来自现实世界的树叶,也是来自CG参考的树叶。这有助于我了解其局限性,并帮助我试图进一步提高树叶的质量。这是我第一次触摸树叶,这是一次令人兴奋但具有挑战性的经历。
You can see in the image above that I also had sculpting references since I chose this scene to practice sculpting too. Looking at good sculpting references and understanding how the artists achieved excellent quality results in their sculpts is immensely helpful later in the process.
你可以在上面的图片中看到,我也有雕刻参考,因为我选择这个场景来练习雕刻。查看良好的雕刻参考并了解艺术家如何在他们的雕塑中取得卓越的质量效果,在后期的后期非常有帮助。
In addition, I had references for materials, trim sheets, and modular kits to look at how artists approached creating materials and modular kits and study them.
In the reference stages, I usually start planning the modular kit for my scene by bringing the concept and treating it like puzzle pieces. As you can see here, I started marking everything I thought was part of the modular kit, and from there, I started modeling those assets separately.
此外,我还参考了材料,装饰板和模块化套件,以了解艺术家如何创建材料和模块化套件并对其进行研究。
在参考阶段,我通常开始为我的场景规划模块化套件,方法是引入概念并将其视为拼图。正如你在这里看到的,我开始标记我认为是模块化套件一部分的所有内容,从那里开始分别对这些资源进行建模。
Modeling:
In the modeling phase, I started using boxes in Unreal Engine instead of complex shapes to plan the scene. This helps in determining the dimensions of all the assets and the placement of those assets. It gives flexibility in moving things around without breaking anything in the scene.
建 模:
在建模阶段,我开始在虚幻引擎中使用盒子而不是复杂的形状来规划场景。这有助于确定所有资产的尺寸以及这些资产的位置。它提供了移动事物的灵活性,而不会破坏场景中的任何内容。
During this phase, I added a bit of lighting to have a sense of the scale because shadows and lights can trick the eyes and take away or add more to the size. I also spread some MegaScan trees to get a feel of the placement of the trees and what foliage will need more details, and which will be hidden or not as visible as I thought they might be.
在这个阶段,我添加了一些照明来感知比例,因为阴影和灯光可以欺骗眼睛,带走或增加更多的尺寸。我还传播了一些MegaScan树,以了解树木的位置以及哪些树叶需要更多细节,哪些树叶将被隐藏或不像我想象的那么明显。
After finishing the blockout, I checked my PureRef file to start modeling the kit. During this phase, I realized some of what I had planned were unnecessary pieces that could be merged or even unmerged and have them separated. It is imperative to understand that it is normal to change some of the plans while creating a scene or developing anything.
To ensure the modular kit was successful, I had to have all dimensions perfectly calculated and free from decimal numbers. This will help in making the tileables tile perfectly and will help in making sure everything snaps easily in Engine. Of course, this rule can be broken in some cases, but in mine, I had to keep them that way to make things easier and optimize my time as much as possible.
完成块后,我检查了我的PureRef文件以开始对套件进行建模。在这个阶段,我意识到我计划的一些是不必要的部分,可以合并甚至取消合并并将它们分开。必须了解,在创建场景或开发任何内容时更改某些计划是正常的。
为了确保模块化套件的成功,我必须完美地计算所有尺寸,并且没有十进制数。这将有助于使可平铺磁贴完美无缺,并有助于确保所有内容在引擎中都可以轻松对齐。当然,在某些情况下,这个规则可能会被打破,但在我的情况下,我必须保持这种方式,以使事情变得更容易,并尽可能地优化我的时间。
After blocking out the scene, I gradually added more details and switched some of the models throughout the process to ensure everything looked up to the quality I was looking for.
在遮挡了场景之后,我逐渐添加更多细节,并在整个过程中切换了一些模型,以确保一切都符合我正在寻找的质量。
I also worked on foliage first pass during this phase to have an idea of how the vegetation will spread and how many variations I will need, including Ivys, trees, branches, grass, and more. After finishing with the first pass, I started working on the second pass, and here is when I began to add more intricate details and added the material ID. Adding a material ID to the scene is important to give a first look at how the scene and the materials will look and what colors might bring more life to the assets, and it provides a head start on what materials the scene requires. In addition, it helps in planning trim sheets, tileable and unique textures.
在这个阶段,我还研究了树叶的第一遍,以了解植被将如何传播以及我需要多少变化,包括常春藤,树木,树枝,草等。完成第一遍之后,我开始处理第二遍,这是我开始添加更多复杂细节并添加材质ID的时候。向场景添加材质ID对于首先了解场景和材质的外观以及哪些颜色可能会给资源带来更多生命非常重要, 它提供了场景需要什么材料的先机。此外,它还有助于规划修剪板,可平铺和独特的纹理。
In this phase, I started sculpting some of the assets and changing their silhouettes to make each one look more alive and show the asset’s age by adding more interest and storytelling to them.
In the third pass, I gave my eyes a break to get a fresh look at the scene in the Engine, and I started improving on the quality of the models and the sculpts.
在这个阶段,我开始雕刻一些资源并改变它们的轮廓,使每个资源看起来更生动,并通过增加更多的兴趣和讲故事来展示资产的年龄。
在第三遍中,我休息了一下眼睛,以重新审视引擎中的场景,并开始提高模型和雕塑的质量。
UVing/Baking
After finishing modeling and sculpting, I started UVing the scene. In this phase, I troubleshoot mesh issues and ensure everything is clean and ready for export. I deleted everything I did not need and was an extra or a duplicate and started organizing assets under categories. For example, assets in group 1 will require the same base material. Assets in group 2 will need patterns in the trim sheet. Assets in group 3 will require unique texturing.
UVing/Baking
在完成建模和雕刻后,我开始对场景进行UV。在此阶段,我将解决网格问题,并确保一切都很干净并准备好导出。我删除了所有不需要的东西,并且是额外或重复的,并开始在类别下组织资产。例如,组 1 中的资源将需要相同的基础材料。组 2 中的资源将需要裁切表中的图案。第 3 组中的资产需要唯一的纹理。
Understanding which assets fall into what category was essential for me to make UVing smoother and more accurate to my needs.
As for the sculpted decimated assets, it will be hard to UV them the traditional way, so I used RizomUV instead. RizomUV allows you to select an edge and have all the other edges following the same path be selected too. This saved me much time due to its flexibility. There are many ways to UV decimated meshes, but this one was the one I went for.
了解哪些资产属于哪个类别对于使UVING更顺畅,更准确地满足我的需求至关重要。
至于雕刻的被摧毁的资产,很难以传统方式UV它们,所以我用RizomUV代替了。RizomUV允许您选择一条边,并选择沿同一路径的所有其他边。由于其灵活性,这为我节省了很多时间。有很多方法可以UV摧毁网格,但这是我选择的方法。
Texturing:
As for the materials, I used a tileable and a trim sheet for the whole scene except for the boat and parts of the column. I used Illustrator to create the patterns, Substance Designer to add more details (edgewear, damage, and more), and then substance painter for extra and unique hand-painted details. After finishing the textures, I added a detailed normal map to use as a second normal map in some assets. I had the second one to add more depth to rocks and ruins.
To plan a good trim sheet, I had to have a good base. After UVing the scene, and making sure it is all modeler, ready for tileable textures and trim sheet, and the texel density is sat, I started planning the trim sheet UVs in a 0 to 1 UV space. After finishing the UVs for the trim sheet, I had the measurements for the patterns, which made it easier to start developing the patterns. I had a different plan for the other column parts that were not in the trim sheet. For the extra details in the columns, I used another 0 to 1 UV space to fit some damaged areas and some patterns in 1 UV space to have additional control and space when texturing. In the end, I had two different texture sets for the scene, excluding the boat and the foliage.
纹理:
至于材料,我在整个场景中使用了可平铺和修剪表,除了船和柱子的一部分。我使用Illustrator来创建图案,Substance Designer添加更多细节(边缘磨损,损坏等),然后使用Substance painter来制作额外和独特的手绘细节。完成纹理后,我添加了一个详细的法线贴图,以用作某些资源中的第二个法线贴图。我有第二个,为岩石和废墟增加更多的深度。
为了计划一个好的装饰板,我必须有一个好的基础。在对场景进行 UV 化并确保它都是建模器,准备好进行可平铺的纹理和修剪表,并且纹素密度已饱和之后,我开始在 0 到 1 UV 空间中规划修剪表 UV。在完成装饰板的UV后,我对图案进行了测量,这使得开始开发图案变得更加容易。我对不在修剪表中的其他列部件有不同的计划。对于列中的额外细节,我使用了另一个0到1个UV空间来适应一些损坏的区域,并在1个UV空间中使用一些图案,以便在纹理化时具有额外的控制和空间。最后,我为场景设置了两个不同的纹理集,不包括船和树叶。
Foliage creation – Ivy/Bushes/Trees
This project was my first time tackling foliage, and I had to learn SpeedTree in less than a month to keep up with the deadline. Hence, I watched SpeedTree tutorials on YouTube and Flipped Normals (Link:https://flippednormals.com/downl ... es-using-speedtree/ ).
叶子的创造 – 常春藤/灌木丛/树木
这个项目是我第一次处理树叶问题,我必须在不到一个月的时间内学习SpeedTree才能赶上最后期限。因此,我在YouTube上观看了SpeedTree教程和Flipped Normals(链接:https://flippednormals.com/downl ... es-using-speedtree/)。
The tutorials gave me the fundamentals of using SpeedTree and how to create my foliage. After that, I experimented with the tools to create the trees and the ivy.
The foliage went through three passes. The first pass served as the blockout phase where I had foliage scattered around the scene and planned in a way I thought was good in silhouettes and a guide for the eyes. The second pass was when I added more colors and details to the foliage and changed the foliage placement all over the scene, especially the temple top.
这些教程为我提供了使用 SpeedTree 的基础知识以及如何创建我的树叶。之后,我尝试了创建树木和常春藤的工具。
树叶经历了三次。第一个通道作为阻挡阶段,我让树叶散落在场景周围,并以我认为在剪影和眼睛指南中很好的方式进行规划。第二次通过是我在树叶上添加了更多的颜色和细节,并改变了整个场景中的树叶位置,尤其是寺庙顶部。
The issue in the temple top was that the foliage was scattered in a way that takes away from the temple’s silhouette, and I wanted to keep the shape of the temple visible, so I re-planned the foliage. I also experimented with the leaves’ size and form to get the desired results.
Finally, in the last phase, I recreated some of the ivies, narrowed the number of variations I had for foliage, added more vegetation to the scene to have everything balanced, and optimized the shadow depth to ensure the fps did not drop less than 30fps.
寺庙顶部的问题是叶子的散落方式带走了寺庙的轮廓,我想保持寺庙的形状可见,所以我重新规划了叶子。我还尝试了叶子的大小和形状,以获得所需的结果。
最后,在最后一个阶段,我重新创建了一些常春藤,缩小了我对树叶的变化数量,在场景中添加了更多的植被以使所有内容平衡,并优化了阴影深度以确保fps不会下降小于30fps。
During the process of scattering foliage around the scene, I had my second screen displaying a flipped version of my scene, so I can look at it every now and then to refresh my eyes and have a different view of the scene.
在场景周围散布树叶的过程中,我的第二个屏幕显示我的场景的翻转版本,所以我可以时不时地看它,以刷新我的眼睛,并有不同的场景视图。
Unreal Engine:
I used Unreal Engine 5 to experiment with Nanite and Lumen in this project. Using Nanite is great; however, there are some things that you cannot achieve when using Nanite, such as Vertex Painting. This was a challenge since I wanted to add variations and paint moss. In This phase, I started experimenting with shaders.
虚幻引擎:
我使用虚幻引擎5在这个项目中尝试了Nanite和Lumen。使用Nanite很棒;但是,在使用Nanite时,有些事情是无法实现的,例如顶点绘画。这是一个挑战,因为我想添加变化和油漆苔藓。在这个阶段,我开始尝试着色器。
During this phase, Joe Crowford helped me understand each node function better, taught me a lot during this journey, and helped me with most of the technical issues.
在这个阶段,Joe Crowford帮助我更好地理解了每个节点的功能,在这段旅程中教会了我很多东西,并帮助我解决了大多数技术问题。
For the moss, I did a material layer. It is a procedural shader that has the moss in the world position, so it gives every object a mossy surface or dirt. In this shader, I had the World Aligned Normal in my shader, which caused the shader to react with the normal maps of the damaged area and resulted in issues like the moss not covering the entire surface of an object. The second issue I faced was the moss not transitioning smoothly on an object.
对于苔藓,我做了一个材料层。它是一个程序着色器,将苔藓放在世界位置,因此它为每个对象提供苔藓表面或污垢。在此着色器中,我在着色器中具有“世界对齐法线”,这导致着色器与受损区域的法线贴图发生反应,并导致苔藓未覆盖对象的整个表面等问题。我面临的第二个问题是苔藓在物体上不能平滑地过渡。
So, I experimented with the material editor to avoid having the moss react to the vertices or the normal map. Hence, I used Object Bounds, Absolute World Position, and Object Position. This gave the moss shader a smooth transition and gradient that does not leave a peeling-like effect from following the normal map.
Object Bounds get XYZ from an object center to the corner of the object bounding box, and The Absolute World Position gets the world space position of the location on the object’s surface. Finally, Object Position gets the world space position of the object’s bounding box.
因此,我尝试了材质编辑器,以避免苔藓对顶点或法线贴图做出反应。因此,我使用了对象边界、绝对世界位置和对象位置。这为苔藓着色器提供了平滑的过渡和渐变,不会因遵循法线贴图而留下类似剥离的效果。
对象边界获取从对象中心到对象边界框角的 XYZ,“绝对世界位置”获取对象表面上该位置的世界空间位置。最后,对象位置获取对象边界框的世界空间位置。
As for the water shader, I used depth fade and vertex painting for some areas to fake depth. I also used the UVs for animation and added a caustic effect.
至于水着色器,我在某些区域使用了深度淡入淡出和顶点绘画来伪造深度。我还使用UV进行动画制作,并添加了焦散效果。
After finishing the materials and shaders, I used decals to add more to the scene. Some of those decals were dirt, leaks, a change in roughness, and more.
完成材质和着色器后,我使用贴图为场景添加更多内容。其中一些贴花是污垢,泄漏,粗糙度的变化等等。
Lighting
I used Lumen to light the scene and then used some spotlights, rect lights, and point lights in some areas to add more depth and focus. During this process, I realized a drop in the fps and checked the radius of those lights and which light is more expensive than the other.
照明
我使用Lumen来照亮场景,然后在一些区域使用一些聚光灯,直立灯和点光源来增加更多的深度和焦点。在此过程中,我意识到fps有所下降,并检查了这些灯光的半径以及哪种灯光比其他灯光更昂贵。
Rect lights are more expensive than point lights, and the cheapest is the spotlight. Hence, I tried to balance the types of lights I was using and reduced the unnecessary radius on them. In this phase, I looked at what assets in the scene need to cast shadows and which assets have a minimal effect when adding depth and shadows in the scene to ensure the shadow depth is optimized.
直立灯比点灯贵,最便宜的是聚光灯。因此,我试图平衡我正在使用的灯光类型,并减少它们不必要的半径。在此阶段,我查看了场景中需要哪些资源来投射阴影,以及在场景中添加深度和阴影时哪些资源具有最小的影响,以确保阴影深度得到优化。
Using Lumen will limit the artist from using static lighting, so understanding how to optimize any additional moveable lighting is important.
使用Lumen会限制艺术家使用静态光照,因此了解如何优化任何其他可移动光照非常重要。
To achieve the best Lumen results, I watched a tutorial by .
为了获得最佳的Lumen效果,我观看了https://www.youtube.com/watch?v= ... nnel=WilliamFaucher的教程。
As for the caustics, I created a caustic map in Substance Designer and used the map as an emissive for a light function.
至于焦散,我在 Substance Designer 中创建了一个焦散贴图,并将该贴图用作光照函数的发射。
As for lighting the foliage, I faced some issues using Lumen and moveable lights. At some point, the leaves looked so dark in some areas and bright in others, so I had to figure out a way to fix it. Since I will not be able to bake lights into foliage, I used spotlights from down up and had it cast no shadows, which worked well!
This might not be the ultimate solution for forest scenes, but it worked well in my case. All we know for now is that Lumen does not work well with foliage yet.
至于照亮树叶,我遇到了一些使用Lumen和可移动灯的问题。在某些时候,叶子在某些地方看起来很暗,而在另一些地方看起来很明亮,所以我必须找到一种方法来修复它。由于我无法将灯光烘焙到树叶中,因此我从下到上使用了聚光灯,并且不投射阴影,效果很好!
这可能不是森林场景的最终解决方案,但在我的情况下效果很好。我们现在所知道的是,Lumen在树叶上还不能很好地工作。
Fog
Adding volumetric fog will add more lights to the scene and light up areas that are meant to be darker than others.
Using fog can add so much to the scene or take away a lot from it, and that was something I kept in mind while working on the scene. At first, the fog made the scene look flat, and it was taking away the center of attention in the piece, which is the temple. So, I tweaked the settings to this:
And then, I added more fog cards around the scene to reach the final look I planned for the scene. There are many methods to create fog, such as using a depth mask in the post process, creating material for fog, or making particles. Choose whatever suits your needs best.
In the post process, I tweaked some of the settings, and you can see them here:
雾
添加体积雾将为场景添加更多的灯光,并照亮被认为比其他区域更暗的区域。
使用雾可以为场景增添很多东西,或者从中带走很多东西,这是我在处理场景时牢记的。起初,雾使场景看起来很平坦,它带走了作品中的注意力中心,那就是寺庙。因此,我将设置调整为:
然后,我在场景周围添加了更多的雾卡,以达到我为场景计划的最终外观。创建雾的方法有很多,例如在后期处理中使用深度蒙版,为雾创建材质或制作粒子。选择最适合您需求的任何内容。
在后期制作过程中,我调整了一些设置,你可以在这里看到它们:
Rendering:
As for the rendering, I used Movie Render Queue and followed these two tutorials by William Faucher to achieve the desired goal.
渲染:
至于渲染,我使用了电影渲染队列,并按照William Faucher的这两个教程来实现预期的目标。
Part 1:https://www.youtube.com/watch?v= ... nnel=WilliamFaucher
第 1 部分:https://www.youtube.com/watch?v= ... nnel=WilliamFaucher
Part 2:https://www.youtube.com/watch?v= ... nnel=WilliamFaucher
第 2 部分:https://www.youtube.com/watch?v= ... nnel=WilliamFaucher
Final
最后
It’s noteworthy to say that the process of doing this scene taught me a lot about troubleshooting major and minor issues, sculpting, and VFX, and it boosted my knowledge in Unreal Engine and SpeedTree.
Thanks to Kacper Niepokólczycki, who was my mentor during the four-month journey.
He was super helpful and knowledgeable. His feedback guidance in the past four months has always been valuable and full of new and inspiring information.
值得一提的是,制作这个场景的过程教会了我很多关于解决主要和次要问题、雕刻和视觉特效的知识,它提升了我在虚幻引擎和SpeedTree方面的知识。
感谢Kacper Niepokólczycki,他是我四个月旅程中的导师。
他超级乐于助人,知识渊博。在过去的四个月里,他的反馈指导一直很有价值,充满了新的和鼓舞人心的信息。
|