public static void MarkForDestruction(SgtCoronaModel model)
        {
            if (model != null)
            {
                model.Corona = null;

                model.gameObject.SetActive(true);
            }
        }
        public static void Pool(SgtCoronaModel model)
        {
            if (model != null)
            {
                model.Corona = null;

                SgtComponentPool <SgtCoronaModel> .Add(model);
            }
        }
        public void UpdateModel()
        {
            if (model == null)
            {
                model = SgtCoronaModel.Create(this);
            }

            var scale = SgtHelper.Divide(OuterRadius, OuterMeshRadius);

            model.SetMesh(OuterMesh);
            model.SetMaterial(outerMaterial);
            model.SetScale(scale);
        }
 protected virtual void OnDestroy()
 {
     SgtCoronaModel.MarkForDestruction(model);
     SgtHelper.Destroy(outerMaterial);
     SgtHelper.Destroy(innerMaterial);
 }