public override void SyncFrom(BasePieceModel otherModel)
        {
            base.SyncFrom(otherModel);
            var otherCs = (CustomSaberModel)otherModel;

            TrailModel = otherCs.TrailModel;
        }
 protected BasePieceInstance(BasePieceModel model)
 {
     Model           = model;
     GameObject      = Instantiate();
     CachedTransform = GameObject.transform;
     model.ModifyableComponentManager.SetInstance(GameObject);
 }
 protected BasePieceInstance(BasePieceModel model, List <IPartPostProcessor> postProcessors)
 {
     _postProcessors = postProcessors;
     Model           = model;
     GameObject      = Instantiate();
     CachedTransform = GameObject.transform;
     model.ModifyableComponentManager.SetInstance(GameObject);
 }
 protected BasePieceInstance(BasePieceModel model)
 {
     Model           = model;
     GameObject      = Instantiate();
     CachedTransform = GameObject.transform;
 }