/// <summary>
        /// Constructor. Calls several methods that set up various different things for the ActorComponent. Namely, initializes the ground
        /// query data, creates a T2DPolyImage for the ground check to use, and calls the methods that register physics states and create
        /// the animation manager for this ActorComponent.
        /// </summary>
        public ActorComponent()
        {
            // init ground pick query data
            _initGroundQueryData();

            // create ground check poly image
            _groundPolyImage = new T2DPolyImage();

            // register physics states
            // (the states this registers define how the actor moves)
            _registerPhysicsStates();

            // create animation manager to handle this actor's animation states
            _createAnimationManager();
        }
 public override object Clone()
 {
     T2DPolyImage poly = new T2DPolyImage(); ;
     poly.CollisionPolyBasis = CollisionPolyBasis;
     poly.CollisionPolyScale = CollisionPolyScale;
     poly.UseCollisionBasisRaw = UseCollisionBasisRaw;
     return poly;
 }