public void update(double dt) {
		this.deltaTime = dt;
		this.time += dt;
		
		if (!this.running) {
			throw new IllegalStateException("core is not running, call startup before update");
		}

		for (this.updatables.reset(); this.updatables.hasNext();) {
			this.updatables.next().update();
		}
	}