Часть1_Visual Basic.Net - Игровой цикл в 1000/сек на API таймере
Visual basic API timer
Организация игрового цикла с помощью Api таймера на Visual Basic.Net. Точность 1 мс.
Если взять встроенный таймер от Net, то он не дает разрешения срабатывания меньше чем 16 мс!
Да, еще у него разброс срабатывания может растянутся до 55 мс.
Связано это с тем, что у этого таймера низкий приоритет в системе. Например
если сработают другие события Windows, например события клавиатуры,
то система начинает обрабатывать сначала эти события, как более важные, а другие события оставляет на потом!
[spoiler]
Под игровым циклом подразумевается цикл логики игры, а не частота вывода графики на экран.
Для игровой логики хотелось бы частота побольше, чем 65/сек
Вот как раз для этого можно подключить Api таймер, конечно и у него тоже бывает погрешности,
но сравните 55мс и 1,2 или 3 мс в плюс минус.
С помощью него можно прокручивать игровой цикл с частотой 1000 в секунду
И не только, хоть и графику.
Объявляем переменные для работы таймера и подключаем API таймер
Вот весь код
Здесь есть возможность перемещаться вправо по коду, если что!
Вторая часть статьи находиться здесь
</cut>
Организация игрового цикла с помощью Api таймера на Visual Basic.Net. Точность 1 мс.
Если взять встроенный таймер от Net, то он не дает разрешения срабатывания меньше чем 16 мс!
Да, еще у него разброс срабатывания может растянутся до 55 мс.
Связано это с тем, что у этого таймера низкий приоритет в системе. Например
если сработают другие события Windows, например события клавиатуры,
то система начинает обрабатывать сначала эти события, как более важные, а другие события оставляет на потом!
[spoiler]
Под игровым циклом подразумевается цикл логики игры, а не частота вывода графики на экран.
Для игровой логики хотелось бы частота побольше, чем 65/сек
Вот как раз для этого можно подключить Api таймер, конечно и у него тоже бывает погрешности,
но сравните 55мс и 1,2 или 3 мс в плюс минус.
С помощью него можно прокручивать игровой цикл с частотой 1000 в секунду
И не только, хоть и графику.
Объявляем переменные для работы таймера и подключаем API таймер
Вот весь код
Здесь есть возможность перемещаться вправо по коду, если что!
|
Вторая часть статьи находиться здесь
</cut>
3014
05.08.2011



.