Table of Contents

Layer Definition

Scriptable Object asset that defines rendered layer on Foliage Surface.
Can be reused between multiple layers and surfaces.

To create one, RMB in Project window > Create > Foliage Layer Definition.


Atlas

Each layer definition asset comes in pair with its own atlas file.
When you create new layer definition, you will be prompted to create an atlas file too.

Atlas file is a special files used to combine textures used by definition into 2D Array by using custom asset importer.
When you select atlas assed you will be able to see details about imported arrays and how much memory will they use.

NOTE: There are few different types of textures you will be assigning into plant. Textures in each type must be imported to your project with identical settings and be identical resolution - otherwise atlas generator will throw you an error with texture that is incorrect. You'll be informed whats wrong and were.

Texture types that are combined into array with atlas:

E.g. if first assigned Albedo Transparency texture is 1024×1024, then every other must be imported as 1024×1024 too. Other types can have different resolution as long as its identicall across entire texture array.

TIP: If you already have hi-res textures but want to have them lower resolution in atlas to save memory, simply reduce maximum resolution in each texture import settings.


Mesh Library

Here you can set how many meshes will be used to render plants and assign them.

Ideally you will want to have only one universal mesh (e.g. flat plane) and only change displayed texture according to plant type.
However, some plants looks better with different mesh and thats why you can assign multiple meshes.
Each extra mesh add additional processing sub-pass which isn't great for performance, but it's cheaper and easier than having separate layer with different mesh.

You can set up to four meshes, but again - you should keep as few meshes as possible and reuse them by applying different textures.

For each mesh you can set separate (simpler) mesh that will be used to cast shadows and define if it should be rendered as double-sided or not.

Included Meshes

There are included few reusable, example meshes.
This picture shows them with the idea of universal UV mapping applied on them.

You can also create your own with your own UV system for your textures.
To achieve this, you must follow this rule:


Global Material Options


Plants

Here you define plants.
You can have up to 255 plants defined.
Each time you add new plant, it gets assigned index (starting with 1).
Be careful when you remove or re-order plants, because it won't update indices on surfaces and you will have to do it manually using mass tool in scene edit mode.

With C and P buttons in sidebar, you can copy and paste plant settings to another (e.g. to duplicate them).
With toggle in sidebar you can enable/disable plant. Disabled plant technically is still processed and exists in memory, but its' textures will not be included in atlas. It's an alternative way to deleting plant (what would cause indices rearrangement).

Placement

Here you configure how this plant is placed procedurally.

Sway

Animation parameters.

Material

Plant material properties.

LOD

LOD material drawn on LOD Plane.

Virtual Plant

Let's say you want to make giant area of grass.
But, just grass will be too boring and you want to add random flowers between grass.
To achieve this you can create two identical plants but with different texture - one just grass and one grass with flowers.
Now you can create new plant, virtual plant, to mix these two plants together so you will end up with e.g. 90% grass and 10% flowers.

Virtual plants allows you to mix up to 3 different plants and still use it as one plant.

With virtual plants you don't configure Placement, Sway and Material tabs, but you still have to configure LOD as it's technically separate plant index.