Sorting opaque objects front to back gives optimization from using the z-buffer to discard fragments
Refactor main game step function to be more clear to people who read it... also avoids skipping sounds unnecessarily
The developer can turn on shadow map debugging by himself.