//TODO: Use on OnRenderObject? private void Update() { int count = datas.Count; for (int i = 0; i < count; i++) { InstantiatableData data = datas[i]; if (data.ShouldRemoveInstanceData) { datas.RemoveAt(i); count--; i--; } else { Graphics.DrawMeshInstancedIndirect(data.instanceMesh, 0, data.material, data.bounds.Value, data.argsBuffer); } } }
public void AddData(InstantiatableData data) { datas.Add(data); }