protected override void Update(TimeSpan gameTime)
        {
            if (_followEntityTransform != null)
            {
                Vector3 followEntityPosition          = _followEntityTransform.LocalPosition;
                Vector3 followEntityPositionNormalize = _followEntityTransform.LocalPosition;
                followEntityPositionNormalize.Normalize();

                Quaternion quaternion        = Quaternion.CreateFromTwoVectors(Vector3.UnitX, followEntityPositionNormalize);
                Vector3    offsetTransformed = Vector3.Transform(this.Offset, quaternion);

                _transform.LocalPosition = followEntityPosition + offsetTransformed;
                _transform.LocalLookAt(followEntityPosition, Vector3.Up);
            }
        }