public void update()
        {
            utils.startTimer();

            r.doEarlyUpdate();

            w.update();
            i.doUpdate();

            for (int i = 0; i < toUpdate.Count; i++)
            {
                toUpdate[i].Invoke();
            }

            r.doUpdate();

            frameCount++;

            lastFrameTime = utils.endTimer();
        }