public bool Execute(ISceneSnapshot snapshot, IContextState context)
        {
            var entity = context.GetEntityManager().GetEntity(snapshot.CurrentCameraTag);
            var state  = entity.GetComponent <OrthographicCameraComponent>().GetState();

            var p11  = InputState.ButtonsStates[GeneralMouseButtons.Right].PointV2;
            var p2   = InputState.CurrentPosition;
            var data = new MovementData {
                Begin = p11, End = p2
            };

            //var any = entity.GetComponents<CameraMovementComponent>();
            //if (any.Any()) {//get prev state... means manipulate is continuing
            //    state = any.Single().State;
            //}

            entity.UpdateComponent(CameraMovementComponent.CreateRotate(state, data, sensitivity));

            return(true);
        }
        public bool Execute(ISceneSnapshot snapshot, IContextState context)
        {
            var entity = context.GetEntityManager().GetEntity(snapshot.CurrentCameraTag);

            if (!entity.TryGetComponent(out OrthographicCameraComponent ccom))
            {
                return(false);
            }

            var p11  = InputState.ButtonsStates[GeneralMouseButtons.Right].PointV2;
            var p2   = InputState.CurrentPosition;
            var data = new MovementData {
                Begin = p11, End = p2
            };

            var state = ccom.GetState();

            entity.UpdateComponent(CameraMovementComponent.CreateRotate(state, data, sensitivity));

            return(true);
        }