Конгер Д.
Физика для разработчиков компьютерных игр
стр. 183

Функция UpdateFrame () начинается так же, как и аналогичные функции в предыдущих главах. Сначала она подготавливает матрицы, требующиеся Direct3D. Когда эти матрицы готовы, она один раз прикладывает к шарику силу, чтобы он начал двигаться. Чтобы сделать это, функция использует статическую переменную.

Возможно, вы знаете, что в C++ статические переменные в функциях инициализируются один раз — при первом вызове этих функций. После этого инициализация никогда не выполняется во второй раз. Использование статической переменной позволит нашей функции определить, прикладывалась ли уже к шарику сила. Если нет, то переменная forceApplied будет установлена в значение false. Поэтому оператор if, начинающийся в строке 27, задаст силу, действующую на шарик (строка 30). Кроме того, он установит переменную forceApplied в значение true.

Замечание

Обратите внимание, что сила действует в направлении увеличения значений по оси х. Поэтому шарик будет двигаться по экрану слева направо. Изначально он находится слева от области, видимой в окне программы. Когда программа запустится, он переместится по окну программы и исчезнет за его правым краем. После этого ничего нового в окне не отобразится, поэтому его можно закрыть.

Новости
Геймеры собирают деньги на помощь русским сиротам
Сервис Humble Store и компания Tripwire Interactive поддержат организацию Change30. Британцы предоставляют помощь русским сиротам.
Слух: На E3 2018 покажут Cyberpunk 2077
Крупное польское видеоигровое издание GRYOnline сообщило о том, что, согласно их собственным источникам в компании, CD Projekt Red готовит к E3 2018 новый трейлер Cyberpunk 2077.