public static void main(String[] args) {
        try {
            initBase();
        } catch (LWJGLException e) {
            e.printStackTrace();
            System.exit(1);
        }

        // Warm up the nanoTime function
        for(int i = 0; i < 10000; i++) {
            System.nanoTime();
        }

        try {
            GameRunnable game = new SpaceInvaders();
            game.initGL(windowWidth, windowHeight);
            game.initData(fps);
            game.run();
        }
        catch (OpenGLException e) {
            e.printStackTrace();
            System.exit(1);
        }
        catch (Exception e) {
            e.printStackTrace();
            Display.destroy();
            if(Keyboard.isCreated()) {
                Keyboard.destroy();
            }
            System.exit(2);
        }
        System.exit(0);
    }