Практическое руководство. Получение режимов отображения адаптера
В этом разделе показано, как использовать инфраструктуру графики Microsoft DirectX (DXGI) для получения допустимых режимов отображения, связанных с адаптером. DirectX 10 и 11 может использовать DXGI для получения допустимых режимов отображения. Зная допустимые режимы отображения, приложение сможет правильно выбрать допустимый полноэкранный режим.
Получение режимов отображения адаптера
Создайте объект IDXGIFactory и используйте его для перечисления доступных адаптеров. Дополнительные сведения см. в разделе Практическое руководство. Перечисление адаптеров.
Вызовите IDXGIAdapter::EnumOutputs, чтобы перечислить выходные данные для каждого адаптера.
IDXGIOutput* pOutput = NULL; HRESULT hr; hr = pAdapter->EnumOutputs(0,&pOutput);
Вызовите МЕТОД IDXGIOutput::GetDisplayModeList, чтобы получить массив DXGI_MODE_DESC структур и количество элементов в массиве. Каждая DXGI_MODE_DESC структура представляет допустимый режим отображения выходных данных.
UINT numModes = 0; DXGI_MODE_DESC* displayModes = NULL; DXGI_FORMAT format = DXGI_FORMAT_R32G32B32A32_FLOAT; // Get the number of elements hr = pOutput->GetDisplayModeList( format, 0, &numModes, NULL); displayModes = new DXGI_MODE_DESC[numModes]; // Get the list hr = pOutput->GetDisplayModeList( format, 0, &numModes, displayModes);
Связанные темы