Exemplo n.º 1
0
 protected override void OnMouseWheel(float value)
 {
     if (Kn5ObjectRenderer.UseFpsCamera || !User32.IsKeyPressed(Keys.LControlKey) && !User32.IsKeyPressed(Keys.RControlKey))
     {
         Kn5ObjectRenderer.Camera.Zoom(value * (Kn5ObjectRenderer.UseFpsCamera ? -0.1f : -0.4f));
     }
     else
     {
         var c = Kn5ObjectRenderer.CameraOrbit;
         if (c == null)
         {
             return;
         }
         Kn5ObjectRenderer.ChangeCameraFov(c.FovY - value * 0.05f);
     }
 }
Exemplo n.º 2
0
        protected override void OnMouseWheel(float value)
        {
            var useFpsCamera = Kn5ObjectRenderer.UseFpsCamera;
            var ctrlPressed  = User32.IsAsyncKeyPressed(Keys.LControlKey) || User32.IsAsyncKeyPressed(Keys.RControlKey);

            if (!(useFpsCamera ^ ctrlPressed))
            {
                Kn5ObjectRenderer.Camera.Zoom(value * (useFpsCamera ? -0.1f : -0.4f));
            }
            else if (!useFpsCamera)
            {
                var c = Kn5ObjectRenderer.CameraOrbit;
                if (c == null)
                {
                    return;
                }
                Kn5ObjectRenderer.ChangeCameraFov(c.FovY - value * 0.05f);
            }
        }
Exemplo n.º 3
0
        protected virtual void OnMouseWheel(object sender, MouseEventArgs e)
        {
            if (Kn5ObjectRenderer.LockCamera)
            {
                return;
            }
            var value = e.Delta > 0 ? 1f : -1f;

            if (Kn5ObjectRenderer.UseFpsCamera || !User32.IsKeyPressed(Keys.LControlKey) && !User32.IsKeyPressed(Keys.RControlKey))
            {
                Kn5ObjectRenderer.Camera.Zoom(value * (Kn5ObjectRenderer.UseFpsCamera ? -0.1f : -0.4f));
            }
            else
            {
                var c = Kn5ObjectRenderer.CameraOrbit;
                if (c == null)
                {
                    return;
                }
                Kn5ObjectRenderer.ChangeCameraFov(c.FovY - value * 0.05f);
            }

            Renderer.IsDirty = true;
        }