А В это время работают к примеру таймеры Физики и Опроса клавиатуры, а OnPaint втискивается между ними максимально возможное колличество раз?!
|
Тут еще такой казус может случиться... таймеры работают в отдельных потоках приложения и при этом может случиться перекрестная работа с одними и теми же переменными для отрисовки и изменения.
Если использовать цикл как в первом туторе, то можно рендерить постоянно кадры, а основываясь на времени вызывать методы обновления физики и игровой логики. Пример такого принципа - цикл с твинигом в Blitz3d. Там функция Update вызывается столько раз, сколько нужно для обеспечения выполнения обновления игры например 30 раз в секунду. а все остальное вермя выполняется рендеринг геометрии с интерполяцией по промежуточным положениям.