Aye Yo Polycount!
I wanted to share my latest scene. I have been working on this project in my spare time and really wanted to share it with you all. I have both a breakdown of the scene and a tutorial on how I did procedural generation for foliage and grass in my scene. I couldn't find any tutorials on how to do this so I wanted to document the workflow and share it with other artists!
Please Leave me feedback I would love to hear from you all.
The Scene is done with Dynamic lighting in Unreal Engine 4.
https://www.youtube.com/watch?v=jg8wwb88XeoBreakdown
Programs used: Maya | WorldMachine | Substance Designer | SpeedTree | Photoshop | Unreal Engine 4 | Xnormal
Project Goals
- With This project I wanted to learn how to integrate procedural generation workflows into a project as well as highly modular kitbashing. Being this projects terrain is 16 square kilometers big set dressing the scene by hand would have been a highly laborious task.
- Learning how to build appealing Terrain
- Learning how to build foliage
- Becoming comfortable with successful modular kitbashing
Materials
Dirt Path - Substance Material
Dirt Path - Substance Nodes
Dirt Path - Texture
Unreal Engine 4 Dirt Path Material Setup
Tree Bark - Substance Material
Tree Bark - Substance Nodes
Tree Bark - Texture
SpeedTree Leaf Map Maker Materials
Grass - GeoBaked & Photoshop edited Material
To create this Material I modeled a blade of grass in Maya. From there I multiplied and modified the grass meshes, aligning them in a way that gives good foliage density and realistic patterning of grass growth. I then Baked the grass meshes onto a plane in Xnormal, creating a normal map, alpha mask and Ambient Occlusion map. From here I compiled the bakes and added coloring for material inputs in Photoshop.
In Maya the setup should resemble this appearance.
Grass Foliage Mesh
Unreal Engine 4 - Grass Material Setup
Demonstration of Distance fade visibility culling LOD technique, with good blending to material from geometry.
Foliage within scene. Demonstration of foliage geometry mixed with Material.
Grass with Flower Foliage Mesh
Bush Foliage Mesh
Flower Foliage Mesh
Rock Mesh Sculpt - Zbrush
Rock Game Ready Mesh Retopoed - 2048 tris
Unreal Engine 4 - Rock Material
This Rock Material uses world space positioning for textures so texture tiling is seamless throughout the scene. The material also uses a triplaner material setup. This allows for rapid kitbashing with a quality result. Using a triplaner technique allows for the mesh's vertex coordinates to be read in the game engine to assign textures in certain directions. In my case this made it so grass or moss was always on top of the rock no matter with direction I turned the asset. Additionally I added vertex painting controls to my Material so I could remove or add grass to the rock enabling me final say of how the material appears on the mesh.
Video Demonstration of Material functioning
https://www.youtube.com/watch?v=9aUpYsIBR-ITop Left of Material Nodes
Bottom Left of Material Nodes
Right Side of Material Nodes
SpeedTree tree Asset - Tree 1
SpeedTree tree Asset - Tree 2
SkyBox Texture - Made in Photoshop
The scenes SkyBox contains my custom asset on top of Unreal Engine 4's default BP SkySphere which has had some of its nodes modified along with its material blend mode set to additive. I shrank the BP SkySphere in half and have my custom SkyBox on top of that.
Welsh Valley Scenes Buffer Visualization - Multiple Views
View of Terrain in Unreal Engine 4
World Space view of Terrain in Unreal Engine 4
Terrain World Machine Baked Normal Map
Terrain World Machine Baked Splat Map
Terrain Alpha Mask used to control procedural generation layout of Foliage for the entire scenes terrain
Material Setup for terrain in Unreal Engine 4 and Foliage masking.
Unfortunately I am having an issue right now with worldMachine syncing with geoglyph quad spinner so I can't show the nodes for making the terrain in WorldMachine at the moment. I will try to update this later.
Tutorial
This tutorial goes over how to create Procedural Foliage and Grass Generation in Unreal Engine 4 in a step by step guide. The tutorial shows how I populated the Welsh Valleys scenes grass, weeds and pathway.
This is an advanced tutorial for Unreal Engine. Enjoy!!
https://www.youtube.com/watch?v=U2i_GCqXe4YWell I really hope you enjoyed my post. Check out my website
shaundavies3d.com.
If you are in the states have a great Labor Day weekend!!!!
Replies
I am not using distance field ambient occlusion, I forgot about that feature honestly. I am going to check that out now, thanks for reminding me. I am however using distance field global illumination along with cascade shadow maps and AO in the post process.
The skybox is really nice and fits naturally with the environment. Good job!
Thanks for the feedback.