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

РЕЖИМЫ ДИСПЛЕЯ

Теперь, получив интерфейс объекта, можно воспользоваться его методами. Для начала узнаем, какой сейчас используется режим дисплея:

// Структура для хранения информации о текущем режиме дисплея D3DDISPLAYM0DE currentDisplay;

// Получаем информацию о текущем режиме дисплея if ( FAILED( g_pD3D->

GetAdapterDisplayMode( D3DADAPTER_DEFAULT, ScurrentDisplay )    )

)

{

return E_FAIL;

}

Подсказка

К методу интерфейса можно обратиться, указав имя интерфейса, за которым следуют два двоеточия (::), а затем имя нужного метода. Поэтому, если я пишу IDirect3D9::GetAdapterDisplayMode (), я обращаюсь к методу GetAdapterDisplayMode () интерфейса IDirect3D9._

Метод IDirect3D9::GetAdapterDisplayMode() принимает два параметра. Первый — используемый адаптер. Значение D3DADAPTER_ DEFAULT соответствует основному адаптеру.

Второй параметр - указатель на структуру, в которой хранится информация о режиме дисплея. Посмотрим на определение этой структуры:

typedef struct _D3DDISPLAYMODE {

UINT Width;

UINT Height;

UINT RefreshRate;

D3DFORMAT Format;

} D3DDISPLAYMODE;

Смысл первых трех параметров вполне очевиден. Это ширина и высота изображения на дисплее в пикселях, например, 1280 х 1024, и частота обновления кадров, например, 85 Гц.

Последний параметр - формат поверхности. Он показывает, как воспринимается информация о каждом пикселе. Есть много разных форматов, из которых только несколько подходят для дисплеев и видеостраниц (мы вскоре разберемся, что такое видеостраницы). В таблице 2.1 перечислены эти типы.

Новости
В Fortnite нашли свастику. Создатели игры обещают удалить её
Свастику нашли четыре геймера, которые решили одновременно построить пол для танцев.
Бывший сотрудник Sony призвал игроков продолжить давление на японцев
Джон Смедли Смедли уверен, что игрокам и прессе стоит продолжать давление на Sony.