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

Программа создает вертексный буфер, вызывая функцию Direct3D CreateVertexBuffer () в строках 14-18 листинга 4.2. Заметьте, что при вызове функции CreateVertexBuffer () используется константа VERTEX_TYPE_SPECIFIER, определенная ранее в программе.

Если создание вертексного буфера прошло успешно, указатель на него сохраняется в переменной в классе d3d_app в строке 27. Затем вертексный буфер заполняется. Чтобы заполнить его, сначала нужно заблокировать доступ к нему извне, чтобы к нему могла обращаться только эта программа. Блокирование доступа к буферу необходимо при выполнении большинства операций над этим буфером.

Если заблокировать доступ к буферу удалось, то функция Gamelni-tialization () копирует в него вертексы в строке 43 листинга 4.2. После этого выполняется разблокирование буфера.

Обновление кадров

После того, как программа выполнила инициализацию геометрической фигуры (треугольника), которую нужно отобразить на экране, начинается обработка поступающих сообщений. Кроме того, начинается обновление кадров и вывод их на экран. Программа отображения вращающегося треугольника настолько проста, что в ней не нужно обрабатывать ка-кие-то сообщения, кроме тех, что уже обрабатывает платформа. Однако обновлять кадры необходимо. Эту операцию выполняет функция Upda-teFrame (), код которой приведен в листинге 4.3.









Новости
«Мясной» экшен Redeemer: Enhanced Edition задержится до осени
Издательство «Бука» и студия Sobaka объявили о том, что кровавый экшен Redeemer: Enhanced Edition, ранее запланированный к выходу в августе, был отложен на осень.
Steam-версия Orwell бесплатна до завтра
Игру можно забрать в течение суток, получив ключ для активации в Steam.