Latest news
Archicad Renovation Filters: Manage Existing, Demolished and New ElementsClassification and File Exchange in SketchUp: A BIM Workflow GuideManaging Styles and Scale in SketchUp: A Modeling and Presentation GuideUnreal Engine Foliage Mode guide: Painting and optimizing plants on LandscapesA Guide to Architectural Image Generation and Editing with Nano Banana 2.1Glimpse launches: A new model designed to reason over imagesGemini 4 Argon scores 97.5% in provider-specific ARC-AGI-3 testNVIDIA RTX Spark laptops go on sale: built for local AI and creative workEditing Color and Images After an Architectural Render in Blender CompositorArtİstanbul Feshane Named Main Venue for the 19th Istanbul Biennial
Tips & GuidesUnreal Engine

Unreal Engine Foliage Mode guide: Painting and optimizing plants on Landscapes

Unreal Engine’s Foliage Mode tools make it easier to place vegetation on Landscapes and other supported surfaces. This guide covers painting, density, scale variation, and performance settings based on the official documentation.

Trees and vegetation at varying densities surrounding a contemporary pavilionAI image
Representative image, generated with AI.Image: 3dsınıfı / FCA AI

In brief

  1. Foliage Mode provides tools for painting, selecting, and deleting Static Mesh or Actor Foliage instances.
  2. Static Mesh Foliage groups instances using hardware instancing; Actor Foliage has the same placement cost as regular Actors.
  3. The official example uses a brush size of 128, Paint Density of 0.3, and Radius of 100.
  4. In World Partition maps, the default cell size for Foliage Instances is 256 meters.

Unreal Engine’s official Foliage Mode documentation describes the tools used to add vegetation to Landscapes and other filtered surfaces. Since the documentation does not specify a particular Unreal Engine version, the steps below are based on the workflow described on the Foliage Mode page; you should also check the interface and available options in your version. The goal is not only to add vegetation to a scene, but also to control its density, instance type, and appearance at a distance.

1. Open Foliage Mode and choose an instance type

  1. Select Foliage from the Modes dropdown at the top. You can also use the Shift+3 shortcut. This panel contains the tools, brush options, filters, Foliage Palette, and details for the selected item.

  2. Drag the Static Mesh you want to use from the Content Drawer into the Mesh List area of the panel. This adds the mesh as a foliage type that can be used with the painting tools.

  3. Choose a tool type to suit your needs. Static Mesh Foliage groups mesh instances using hardware instancing; many instances can be drawn with a single draw call. According to the documentation, this method is suitable for non-destructive foliage placement. Actor Foliage places Blueprint or native Actor instances and can cause performance issues at high densities; it has the same rendering cost as placing regular Actors.

This distinction is particularly important in large outdoor scenes. For repeated trees, bushes, or similar meshes, choosing Static Mesh Foliage helps group many items of the same type more efficiently. Actor Foliage can be used when custom Actor behavior is required, but density and scene performance should be monitored separately.

2. Paint on a Landscape with control

  1. If your scene does not contain a Landscape, create a Landscape Actor first. Then open Foliage Mode and add the Static Mesh to the Mesh List.

  2. Select the Paint tool. Brush Size in Brush Options determines the width of the affected area. Point Density affects the painting density of the selected foliage type, based on its Density property.

  3. The official example uses a brush size of 128 and a Paint Density of 0.3. These are example values from the documentation, not settings that are necessarily ideal for every scene. Test them in a small area and check the appearance and density.

  4. Set the Radius value in the Painting section of Foliage Details. In the documentation’s example, a value of 100 is used to prevent the placed cube instances from overlapping.

  5. To vary the size of instances, set Min to 0.4 and Max to 0.8 in the Scale X range. This is also the variation setting used in the official example; check the results based on your mesh and design goals.

  6. Hold down the left mouse button in the Viewport to paint on the Landscape. To erase the selected foliage type with the brush, hold Shift while painting or use the Erase tool.

SettingExample value in the documentationEffect
Brush Size128Sets the size of the painting brush.
Paint Density0.3Affects the density of instances placed while painting.
Radius100Limits how close instances can get to one another and prevents overlap.
Scale X Min / Max0.4 / 0.8Adds scale variation to painted instances.

3. Manage density and distant visibility

Point Density changes the density affected by the selected tool and uses the foliage type’s Density value as a multiplier. So assess density not only through the brush settings, but also through the details of the relevant foliage type. You can use the Reapply tool to change some properties of existing instances: select the tool and a type in the Mesh List, adjust the Foliage Details settings, then paint over the instances you want to update.

To reduce the sudden disappearance of vegetation clusters in the distance, consider the material transition alongside the Start Cull Distance and End Cull Distance settings. According to the documentation, the PerInstanceFadeAmount node provides an instance-based fade value that moves from 1.0 at the start distance to 0.0 at the end distance. Connecting this value to the material’s opacity or masking value can help instances fade gradually before they are fully removed. Lowering FadeMultiplier speeds up the fade; setting it to zero makes foliage invisible at every distance.

There is an important exception: meshes with Nanite enabled are not affected by culling distance or instance fading settings. If you plan to use this distance-based visibility method, test the mesh’s Nanite status and the expected result separately.

4. World Partition, scalability, and lighting

In World Partition maps, the default grid size for foliage instances is 256 meters, and it is separate from the World Partition grid size. For new maps, open Edit › Project Settings, search for Foliage, and edit Instanced Foliage Grid Size in centimeters. In the documentation’s example, 25600 centimeters equals 256 meters.

To scale the density of foliage drawn at runtime, enable Enable Density Scaling in the Scalability section of the relevant foliage type’s Foliage Details. You can then change the density with this command:

Prompt
foliage.DensityScale

The documentation gives values between 0.1 and 1.0 as examples for this setting. Lower values in this range draw fewer foliage instances; test the scene on the target platform to find an acceptable balance between appearance and performance.

If you use precomputed lighting, the Static Mesh’s Light Map Coordinate Index value must point to a valid channel with a unique UV layout. Also, Lightmap Resolution should be low enough that the shadow maps for instances in a single cluster, when combined, do not exceed the maximum texture resolution of 4094×4096 specified in the documentation. Incorrect settings can cause black meshes after lighting is rebuilt.

Common mistakes

  • Using Actor Foliage for dense placements without accounting for its performance cost.

  • Treating the documentation’s example Paint Density, Radius, and scale values as a fixed recipe for every scene.

  • Assuming culling distance and fading will work on meshes with Nanite enabled.

  • Building precomputed lighting without checking the lightmap UV channel and resolution.

  • Lowering foliage density without testing the intended appearance and runtime result.

For architecture, interior design, and archviz teams, these tools make it quick to populate landscapes, campuses, and large outdoor presentations. Static Mesh instancing can be beneficial for repeated items, but the result should be verified based on the meshes used, their Nanite status, lightmap settings, and performance on the target platform. In projects using World Partition, correctly managing cell size helps control foliage placement across maps of different scales.

Sources

1 source
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/foliage-mode-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 visualizations, Foliage Mode’s most tangible benefit is being able to distribute repeated vegetation quickly by painting it rather than placing each item individually. Static Mesh Foliage’s instancing approach is also worth considering in dense scenes; however, the actual performance gain should be tested for the meshes and scene in use.

The values in the documentation should be treated as example setup values, not a starting recipe. In particular, Actor Foliage density, culling behavior with Nanite, and lightmap settings should be checked before moving on to large scenes. Teams can reduce the risk of rework by verifying the appearance and performance on target hardware in a small test area.

Frequently asked questions

How do you open Foliage Mode in Unreal Engine?

Select Foliage from the Modes dropdown or use the Shift+3 shortcut. Then add the Static Mesh you want to use to the Mesh List area in the Foliage panel.

What is the difference between Static Mesh Foliage and Actor Foliage?

Static Mesh Foliage groups instances using hardware instancing. Actor Foliage places Blueprint or native Actor instances and has the same rendering cost as placing regular Actors.

How do you change the Foliage grid size in World Partition?

For new maps, search for Foliage in Project Settings under the Edit menu, then change Instanced Foliage Grid Size in centimeters. According to the documentation, the default is 256 meters, or 25600 centimeters.

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

Related news