Latest news
Tips & GuidesUnreal Engine

Unreal Engine Landscape Grass: A guide to adding grass to paintable terrain

Unreal Engine’s official documentation explains how to add grass to a Landscape using material layers and define areas by painting them. The guide covers everything from setting up Grass Type to managing performance.

Visualization of gently sloping virtual terrain painted with grass and rock surfacesAI image
Representative image, generated with AI.Image: 3dsınıfı / FCA AI

In brief

  1. The Landscape Grass system works only with a Landscape Terrain Actor.
  2. Grass density and randomized placement are controlled by settings in Landscape Grass Type.
  3. The Landscape Grass Output node in the Landscape material generates grass from the painted layer.
  4. Temporarily lowering density while painting can help reduce editor slowdowns.

Unreal Engine’s official documentation explains how to set up the Grass system to add static mesh-based grass to a Landscape and control it with layers. This method uses Landscape Paint tools to specify where grass appears across virtual terrain. The documentation does not specify a particular Unreal Engine version, so the steps below are based on the Landscape workflow described in the sources.

1. Set up the Landscape and Grass Type

  1. Create a Landscape. Open a new level, follow Modes › Landscape in the main toolbar, and select Create to add a Landscape Actor. The official quick-start guide adds the Open World Demo Collection pack to the project to use its sample meshes and textures. This pack is not a requirement for the Grass system; it provides the sample assets used in the guide.

  2. Create a Landscape Grass Type asset. Right-click in the Content Browser and select Foliage › Landscape Grass Type. Open the asset you created and add a new entry to the Grass Varieties array. In the sample setup, SM_FieldGrass_01 is assigned to the Grass Mesh field.

  3. Set up grass placement. The example sets Grass Density to 400.0 for a dense grass look and enables Use Grid, Random Rotation, and Align to Surface. These are settings from the example, not mandatory or ideal values for every project. Random Rotation helps prevent the mesh from always facing the same direction, while Align to Surface helps the mesh conform to the Landscape surface.

SettingSuggested valueEffect
Grass Density400.0 (documentation example)Determines the number of meshes generated across the terrain; set high in the example for a dense look.
Use GridEnabledUses a grid to place meshes.
Random RotationEnabledAdds visual variation by reducing repetitive orientations.
Align to SurfaceEnabledConforms the mesh to the Landscape surface.

2. Set up the material layers

  1. Define the material and layers. Create a new Material and add a Landscape Layer Blend node in the Material Editor. The example creates two layers, Grass and Rock, and sets each Preview Weight to 1.0. Preview Weight is used for the preview in the material editor; it does not determine which layer is painted on the terrain.

  2. Connect texture samples to the layers. The quick-start example connects the T_GDC_Grass01_D_NoisyAlpha texture to the Grass input and T_AlpinePatch001_D_alt_R to the Rock input, then connects the Layer Blend output to the Base Color input of the main material node. You can use different textures in your own project; the basic approach shown in the sources is to combine each layer’s appearance through a separate input.

  3. Connect the Grass Type to the material. Add Landscape Layer Sample and Landscape Grass Output nodes to the Material Graph. Enter Grass in the Layer Sample node’s Parameter Name field and connect its output to Grass Output. Landscape Grass Output enables Landscape Grass Type generation on the Landscape based on the material layer. Then, in the Landscape Grass Type asset, assign this asset to the Grass Type option in the Material section. Apply and save the material.

3. Paint layers on the Landscape

  1. Assign the material to the Landscape. Select the Landscape Actor in the viewport. Assign the material you prepared in the Landscape Material field of the Details panel. Then switch to the Paint tab via Modes › Landscape.

  2. Create Target Layer information. In the Target Layers section, create Layer Info for both Grass and Rock. The example documentation uses Weight-Blended Layer (normal) as the layer type. These assets allow the Landscape to store paint weights. The official Landscape material documentation also emphasizes that a paintable layer must be associated with a Landscape Layer Info asset.

  3. Paint the grass areas. Select the Grass Target Layer and hold down the left mouse button in the viewport to apply grass to the areas you want. To remove grass or apply the Rock texture to an area, select the Rock layer and paint in the same way. Brush Size and Tool Strength help control the area and effect of the paint.

4. How this fits into architectural visualization workflows

This method is useful for architecture and archviz teams that want to generate grass meshes on selected Landscape layers instead of covering the terrain with a single surface texture. Grass boundaries can be visually adjusted by painting with the rock texture, while the layered material approach lets different surfaces coexist on the same Landscape. This workflow can benefit anyone who wants to control within the scene where grass is concentrated, particularly for exterior visualizations.

The documentation does not specify requirements for a particular graphics card or amount of memory. However, the quick-start document notes that painting dense grass can cause the editor to stop responding, depending on the power of the development computer. For this reason, lowering Grass Density while working and raising it again for the final look is the practical measure suggested in the source. The documents provide no information about licensing, pricing, or compatibility across versions, so these should be verified separately for your project.

Common mistakes

  • Trying to use the Grass system on an Actor other than a Landscape Terrain Actor. According to the official documentation, the system does not work with other Actor types.

  • Not matching the material layer name with the Target Layer name in Landscape Paint. Landscape Layer Sample reads the weight of the target layer you specify; if there is no matching layer, its weight is treated as zero.

  • Starting to paint without creating Layer Info for a layer. A paintable layer must be associated with a Layer Info asset.

  • Keeping density high while painting. If the editor slows down temporarily, lower Grass Density while working and restore the target value afterward.

This setup provides the basic method for pairing static mesh grass with Landscape layers. The sample asset names and density value are from the example in the official quick-start guide; different meshes and layers can be used in a production scene to suit its needs.

Sources

2 sources
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/grass-quick-start-in-unreal-engine
Summary
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/landscape-materials-in-unreal-engine
Summary

Source texts are not republished; short quotes are marked, everything else is our own summary and commentary.

3dsınıfı’s take
3dEditor’s assessment

For offices in Turkey producing exterior scenes, the practical value of this approach is being able to control grass areas directly by painting material layers. In particular, adjusting transitions between rock and grass on the same Landscape can make scene setup easier to understand.

However, generating meshes at high density can put a strain on the editor while working; the documentation also notes the possibility of slowdowns depending on the computer’s capabilities. Temporarily reducing density to suit the workflow is therefore a sensible step. The sources do not explain hardware requirements, licensing terms, or version compatibility; before production, check the Unreal Engine installation being used and the licenses for the assets separately.

Frequently asked questions

Does the Unreal Engine Grass system work on every surface?

No. According to the official quick-start guide, the Grass system works only with a Landscape Terrain Actor.

How do you define grass areas on a Landscape?

Create Target Layers and Layer Info for grass and other surfaces, then paint the Grass layer in Landscape Paint mode.

What can you do if the Unreal Engine editor slows down while painting grass?

As the documentation suggests, temporarily lower Grass Density in Landscape Grass Type and restore it to the desired value when you finish working.

Comments and the forum are in Turkish.Join the discussion
+

Related news