@Override
    public void keyPressed(KeyEvent e) {
//        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
//        System.out.println(e.getKeyCode());
        switch (e.getKeyCode()) {
            case KeyEvent.VK_UP:
                System.out.println("Up");
                pos = pos.add(target.multiply(StepScale));
                break;
            case KeyEvent.VK_DOWN:
                System.out.println("Down");
                pos = pos.subtract(target.multiply(StepScale));
                break;
            case KeyEvent.VK_LEFT:
                System.out.println("Left");
                Vector left = Pipeline.cross(target, up);
                left = left.normalize();
                left = left.multiply(StepScale);
                pos = pos.add(left);
                break;
            case KeyEvent.VK_RIGHT:
                System.out.println("Right");
                Vector right = Pipeline.cross(up, target);
                right = right.normalize();
                right = right.multiply(StepScale);
                pos = pos.add(right);
                break;
            case KeyEvent.VK_Q:
                System.exit(0);
                break;
            case KeyEvent.VK_A:
                light.ambientIntensity += 0.05f;
                break;
            case KeyEvent.VK_S:
                light.ambientIntensity -= 0.05f;
                break;
            case KeyEvent.VK_Z:
                light.diffuseIntensity += 0.05f;
                break;
            case KeyEvent.VK_X:
                light.diffuseIntensity -= 0.05f;
                break;
            default:
        }
    }