@Override
	public void run() {
		long lastTime = System.nanoTime();
		start();
		long now = System.nanoTime();
		long timer = System.currentTimeMillis();
		double delta = 0;
		int frames = 0;
		int updates = 0;
		System.out.println("Initialized in " + ((now - lastTime) / 1000000000.0) + " seconds");
		while(!Display.isCloseRequested()) {
			now = System.nanoTime();
			delta += (now - lastTime) / NANOSECS;
			lastTime = now;
			while(delta >= 1) {
				update(updates);
				updates++;
				delta--;
			}
			render();
			frames++;
			if(System.currentTimeMillis() - timer > 1000) {
				timer += 1000;
				Display.setTitle("SplitMan | FPS: " + frames + " | UPS: " + updates);
				frames = 0;
				updates = 0;
			}			
			Display.update();
			Display.sync(120);
		}
		stop();
	}