protected override void OnUpdate(float timeStep)
        {
            base.OnUpdate(timeStep);
            runtime.Update(timeStep);

            if (Input.NumTouches > 0)  // urho in uwp mode handles mouse as touch
            {
                var touchState = Input.GetTouch(0);
                Yaw   += mouseSensitivity * touchState.Delta.X;
                Pitch += mouseSensitivity * touchState.Delta.Y;
                Pitch  = MathHelper.Clamp(Pitch, -90, 90);

                cameraNode.Rotation = new Quaternion(Pitch, Yaw, 0);
            }

            float moveSpeed = 10.0f;

            if (Input.GetKeyDown(Key.W))
            {
                cameraNode.Translate(Vector3.UnitZ * moveSpeed * timeStep);
            }
            if (Input.GetKeyDown(Key.S))
            {
                cameraNode.Translate(-Vector3.UnitZ * moveSpeed * timeStep);
            }
            if (Input.GetKeyDown(Key.A))
            {
                cameraNode.Translate(-Vector3.UnitX * moveSpeed * timeStep);
            }
            if (Input.GetKeyDown(Key.D))
            {
                cameraNode.Translate(Vector3.UnitX * moveSpeed * timeStep);
            }
        }
 protected override void OnUpdate(float timeStep)
 {
     base.OnUpdate(timeStep);
     runtime.Update(timeStep);
 }