namespace Mapbox.Unity.MeshGeneration.Modifiers { using Mapbox.Unity.MeshGeneration.Data; using Mapbox.Unity.MeshGeneration.Components; using System; /// /// GameObject Modifiers /// Game object modifiers ran after the mesh modifiers and game object creation.Their main purpose is to work on /// game object and decorate/improve them in their own ways.They ran for each game object individually. /// It's possible to do lots of different things with GameObject Modifiers.A simple example would be MaterialModifier, /// which simply sets random materials to gameobject and submeshes.A more complicated example would be /// SpawnInside Modifier which instantiates prefabs in a polygon, like trees in a park. /// Any operation, you want to perform on generated entity, that would require a game object is a good candidate /// for game object modifiers. For example, things like adding a collider or animation would require a gameobject /// hence cannot be done in mesh modifier. /// Game object modifiers is the suggested way of customizing generated game object and we expect developers to /// fully utilize this by creating their own custom game object modifiers. /// public class GameObjectModifier : ModifierBase { public virtual void Run(VectorEntity ve, UnityTile tile) { } public virtual void OnPoolItem(VectorEntity vectorEntity) { } public virtual void Clear() { } public virtual void ClearCaches() { } } }