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

Несколько слов о стиле оформления программ

Код в этом разделе оформлен в стиле, используемом Microsoft. В следующем разделе мы будем рассматривать код, сгенерированный мастером AppWi-zard. Этот мастер тоже генерирует код, оформленный в стиле Microsoft. Мой собственный стиль оформления кода довольно сильно отличается от стиля Microsoft. Тому есть свои причины, однако я не собираюсь стоять насмерть, если мой стиль вас не устраивает. В оставшейся части книги я буду использовать стиль Microsoft для кода, выполняющего инициализацию DirectX и завершение его использования. Все остальное будет оформлено в моем стиле. Это поможет вам различать код, важный для приложения, от общего для всех игр кода инициализации и завершения.

Использование COM-объекта DirectX состоит из четырех шагов.

1.    Объявление переменной, в которой будет храниться указатель на интерфейс объекта. Сначала этой переменной присваивается значение NULL:

LPDIRECT3D g_j>D3D = NULL;

2.    Вызов функции создания объекта. Эта функция возвращает указатель на интерфейс объекта, который можно хранить в созданной в шаге 1 переменной. Если функции не удается создать объект, она возвращает значение NULL:

g_j>D3D = Direct3DCreate9( D3D_SDK_VERSION );

3.    Теперь, когда у нас есть указатель на интерфейс, можно использовать его для вызова методов. Например:

g__pD3D-X3etAdapterDisplayMode( D3DADAPTER_DEFAULT, Scurrentdisplay);

4.    Завершив работу с COM-интерфейсами, нужно освобождать их в порядке, обратном порядку их инициализации. Невыполнение этой операции приведет к утечкам ресурсов, замедлению работы систем и появлению кровожадных игроков, целью существования которых является ваша преждевременная кончина.

g_pD3D->Release();

g_pD3D = NULL;

Замечание

Код, показанный выше, используется для инициализации Direct3D. Код для инициализации других компонентов DirectX имеет ту же структуру.

Теперь вы знаете о СОМ достаточно, чтобы инициализировать Di-rect3D. Попробуем это сделать.

Новости
В PUBG вышла новая карта «Санок»
Bluehole не один месяц тестировала третью карту для PUBG, и сегодня тропическая миниатюрная карта «Санок» наконец-то вышла на общих серверах.
В Warface добавили режим «Королевская битва 2.0»
В Warface разработчики добавили режим «Королевская битва 2.0». Старая версия доработана, количество игроков увеличено с 16 до 32.