я недавно пришел к выводу что dt очень красиво ложится в архитектуру игры если считать не в пикселях за цикл, а в пикселях за секунду. и вообще все параметры привязывать не к циклу и тикам а ко времени.
т.е. перезарядка ружья не 60 циклов, а 1 секунда
игрок едет вперед не на 2 еденицы за цикл, а на 100 едениц в секунду и т.д.
с учетом того что dt - это в мс. очень удобно бывает писать типа:
if(MouseDown(1) && reload_time<0)
{
Shoot();
reload_time = 1000; //1000 мс
}
reload_time -= dt;