Vegetation Studio Manager

Vegetation Studio Manager

The Vegetation Studio Manager Component is a manager component designed to keep sync between all Vegetation System components in one scene.  You would use multiple Vegetation System Components in scenarios with multiple terrains and/or cameras active.

It also has an API to control one or multiple Vegetation Systems run-time. Set new vegetation packages. Vegetation Density etc.

Adding and removing Vegetation Masks are also done using this component API.

To create a new Vegetation Studio Manager Component select “Window/AwesomeTechnologies/Add Vegetation Studio” from the menu in Unity or drag the “VegetationStudio” prefab from “AwesomeTechnologies/VegetationStudio/prefab” folder to the scene.

There should be only one instance of the Vegetation System Manager component per scene.

Vegetation Systems
Terrain Systems
Vegetation Masks
Script API

 

Vegetation Systems

All Vegetation System components in the scene will auto register with the Vegetation Studio Manager Component and listed here.

Terrain Systems

All Terrain System components in the scene will auto register with the Vegetation Studio Manager Component and listed here.

 

 

Vegetation Masks

All Vegetation Masks in the scene will auto register with the Vegetation Studio Manager.  The manager will then make sure all VegetationSystems have masks assigned and removed as needed.

Script API

VegetationStudioManager has an external API to refresh vegetation when Terrain Data is changed. It will manage multiple VegetationSystem and TerrainSystem components in the scene.

RefreshTerrainSplatMap is used to update vegetation if terrain splat map is changed from code or an editor tool.  you can provide an optional bounds to only refresh splatmap in an area. This is much faster than an complete update

[enlighter lang=”csharp”]

VegetationStudioManager.RefreshTerrainSplatMap(changedBounds);

[/enlighter]

RefreshTerrainHeightMap is used to update vegetation if terrain height map is changed from code or an editor tool.  you can provide an optional bounds to only refresh height in an area. This is much faster than a complete update

[enlighter lang=”csharp”]

VegetationStudioManager.RefreshTerrainHeightMap(changedBounds);

[/enlighter]

GenerateTerrainSplatMap is used generate the terrain splat map from rules configured in the TerrainSystemComponent. It takes an optional bounds as parameter and a ClearAllLayers bool. ClearAllLayers to true will clear all manually drawn textures in the splat map by terrain textures not used with automatic splat generation. See TerrainSystemComponent for more info

[enlighter lang=”csharp”]

VegetationStudioManager.GenerateTerrainSplatMap(changedBounds,false);

[/enlighter]