Class VfxPool

Namespace
TDMaker.Unity.View
Assembly
TDMaker.Unity.dll

Pools VFX prefab instances. Particle systems on an instance are restarted on reuse and the instance returns to the pool after its lifetime (particle duration + start lifetime, or TDMaker.Unity.View.VfxPool.defaultLifetime).

[AddComponentMenu("2D Tower Defense Maker/VFX Pool")]
public sealed class VfxPool : MonoBehaviour
Inheritance
Object
Component
Behaviour
MonoBehaviour
VfxPool
Inherited Members
MonoBehaviour.IsInvoking()
MonoBehaviour.CancelInvoke()
MonoBehaviour.StopCoroutine(Coroutine)
MonoBehaviour.StopAllCoroutines()
MonoBehaviour.destroyCancellationToken
MonoBehaviour.useGUILayout
MonoBehaviour.didStart
MonoBehaviour.didAwake
MonoBehaviour.runInEditMode
Behaviour.enabled
Behaviour.isActiveAndEnabled
Component.GetComponent<T>()
Component.TryGetComponent<T>(out T)
Component.GetComponentInChildren<T>()
Component.GetComponentsInChildren<T>()
Component.GetComponentInParent<T>()
Component.GetComponentsInParent<T>()
Component.GetComponents<T>()
Component.GetComponentIndex()
Component.CompareTag(TagHandle)
Component.transform
Component.transformHandle
Component.gameObject
Component.tag
Object.GetEntityId()
Object.GetInstanceID()
Object.GetHashCode()
Object.InstantiateAsync<T>(T)
Object.InstantiateAsync<T>(T, Transform)
Object.InstantiateAsync<T>(T, Vector3, Quaternion)
Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)
Object.Instantiate(Object, Vector3, Quaternion)
Object.Instantiate(Object, Vector3, Quaternion, Transform)
Object.Instantiate(Object)
Object.Instantiate(Object, Scene)
Object.Instantiate<T>(T, InstantiateParameters)
Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)
Object.Instantiate(Object, Transform)
Object.Instantiate<T>(T)
Object.Instantiate<T>(T, Vector3, Quaternion)
Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
Object.Instantiate<T>(T, Transform)
Object.Destroy(Object)
Object.DestroyImmediate(Object)
Object.DontDestroyOnLoad(Object)
Object.DestroyObject(Object)
Object.FindObjectsOfType<T>()
Object.FindObjectsByType<T>(FindObjectsSortMode)
Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
Object.FindObjectOfType<T>()
Object.FindFirstObjectByType<T>()
Object.FindAnyObjectByType<T>()
Object.FindFirstObjectByType<T>(FindObjectsInactive)
Object.FindAnyObjectByType<T>(FindObjectsInactive)
Object.FindObjectsByType<T>()
Object.FindObjectsByType<T>(FindObjectsInactive)
Object.ToString()
Object.name
Object.hideFlags

Constructors

VfxPool()

public VfxPool()

Properties

ActiveCount

Number of live instances.

public int ActiveCount { get; }

Property Value

int

Methods

Clear()

Returns every live instance to the pool.

public void Clear()

Spawn(GameObject, Vector3, float)

Places a pooled instance of prefab; returns null when the prefab is null or the cap is hit.

public GameObject Spawn(GameObject prefab, Vector3 position, float lifetime = -1)

Parameters

prefab GameObject
position Vector3
lifetime float

Returns

GameObject

Tick(float)

Ages live instances; called from Update.

public void Tick(float deltaTime)

Parameters

deltaTime float