public void run() {
		long lastTime = System.nanoTime();
		double nanoPerUpdate = 1000000000D/60D;
		
		long lastTimer = System.currentTimeMillis();
		double delta = 0D;
		
		init();
		
		while(running) {
			long now = System.nanoTime();
			delta += (now - lastTime) / nanoPerUpdate;
			lastTime = now;
			boolean shouldRender = false;
			
			while(delta >= 1) {
				update();
				delta--;
				shouldRender = true;
			}
			
			if(shouldRender) {
				graphicsMain.render();
				
			}
			
			if(System.currentTimeMillis() - lastTimer >= 1000) {
				lastTimer += 100;
			}
		}
	}