Хотя сначала может показаться, что синхронизация не важна, на самом деле она играет важную роль в игровом проекте. Я не говорю о времени суток, я имею ввиду синхронизацию анимации вплоть до миллисекунд. Такая точная синхронизация необходима для плавного анимирования и движения объектов в вашем проекте. Эта тема является основной, поэтому все программисты игр должны хорошо понимать ее.
Когда вам приходится двигать ваши меши, движение на основе времени является лучшим решением. На протяжении всей книги я, в основном, использую движение, синхронизированное по времени, для контролирования скорости разнообразных анимаций. В этой главе я хочу подробно объяснить использование времени (для анимации и движения).
Смысл использования движения на основе времени прост - движение и анимация выполняются всегда за одно и то же время на любой системе, независимо от скорости компьютера. Например, 2-ГГц система обрабатывающая 20-секундную анимацию, безусловно, выполнит все быстро, и в результате получиться очень плавное движение, когда как та же самая анимация, обработанная на 500-МГц системе будет неплавной, но все равно будет длиться 20 секунд.
Более чем вероятно, что более медленный компьютер пропустит некоторые кадры анимации, чтобы не отставать по скорости от более быстрых компьютеров. В этом весь секрет - медленные компьютеры могут пропускать большее количество кадров и при этом поддерживать что-то похожее на фактическое движение.
Я думаю, вы начинаете понимать идею. Хотя анимация, основанная на времени, настолько же проста, насколько звучит, начинающим программистам игр она может показаться тайной. И хотя это книга об использовании приемов современной анимации, вы должны полностью понимать движение, основанное на времени. Поэтому я хочу представить вам (или напомнить) мир движения, основанного на синхронизации по времени. Я начну с краткого обзора того, как можно считать время в Windows.
⇐Синхронизация анимации и движения || Оглавление || Считывание времени в Windows⇒