Vegetation system – Render Tab

Vegetation system – Render Tab

The Render Tab lets you control settings used in the render loop, layers, shadows, multithreading and more. Settings are saved in the scene on the VegetationStudio Component.

This page is part of the documentation of the VegetationSystem Component.

General Render Settings
Vegetation Settings
Shadows
Editor Shadows
Layers

General Render Settings

 

Render vegetation

The “Render vegetation” checkbox can enable or disable the render loop of Vegetation System. All culling, spawning of vegetation etc. will still be done

Render only to selected camera

When checked the vegetation will only be rendered to the selected camera for the VegetationStudio Component. This can be usefull if working with multiple camera setups that are watching the same areas. Binoculars looking into the same terrain etc.

Use instanced rendering

Disabling “Use instanced rendering” will force the render loop of instanced shaders back to Graphics.DrawMesh. This is slower but can be usefull for debuging of shaders that has problem with instancing. This has no effect on Vegetation Items set to Instanced Indirect.

Use multithreading

when enabled multi threading will be used when spawning new areas and preparing render lists. This is only used in playmode and in builds. In editor mode single threading is used.

Use render list multithreading

when enabled multi threading when creating new renderlists as camera rotates and visible cells change. This is only used in playmode and in builds. In editor mode single threading is used.

Compute shaders

Use compute shaders

Enable this to use the compute shader renderloop for instanced indirect vegetation. This will merge all cell buffers and draw all items of a kind in a single drawcall.
Per item LODs are also calculated in the final compute shader before rendering.

Use GPU culling

With GPU culling enabled frustum culling will be done on the GPU in the final compute shader pass, reducing the number of instanced rendered to what is actually showing. No overhead for partial visible cells.

CPU frustum culling and LODs

Enabling CPU frustum culling and LODs will do a 2nd level frustum culling on top of the normal cell culling. It also enables per item LODs on the objects and large objects. There is a compute cost for this and I recommend to only enable this if you have high poly objects or heavy shaders. To get individual LODs for high volume object count upgrade the shaders to Instanced indirect and do this in the compute shader loop.

Shadows

Select if Vegetation Items will cast shadows or not in playmode. For grass and plants in deferred mode a full screen effect like Screen Space Shadows or Contacts Shadows is recommended as this is much faster.

 

Editor shadows

Same as Shadows option above but used for editor mode.

 

Layers

You can select what layer each Vegetation Item Type will be rendered on. This is usefull to remove grass, plants etc from ocean reflection etc to increase rendering speed.

Shadow culling

Assign the directional sun light here and set the distance you want to load additional trees and large objects.

Vegetation Studio will calculate what trees have visible shadows and only render these for invisible trees.