Различайте панорамирование и нормальные экранные режимы в коде - Windows

Я пишу полноэкранную 3D игру, и я создал меню, в котором пользователь может выбрать разрешение экрана для соответствия его аппаратной мощности.

Я перечисляю все доступные экранные режимы с EnumDisplaySettingsExA как это:

std::vector<DEVMODEA> modes;
DEVMODEA modeInfo;
int modeNum = -1;
while (EnumDisplaySettingsExA(0, ++modeNum, &modeInfo, 0)) {
    if (modeInfo.dmBitsPerPel < 16) continue;
    modes.push_back( modeInfo );
}

Проблема, я получаю режимы панорамирования также! Я не могу различать, которые являются который; например, мой ноутбук ATI имеет максимальный нормальный режим 1280x800, но также и содержит режим панорамирования 1024x600!

Кто-либо знает о способе различать эти 2, таким образом, я могу отклонить режимы панорамирования из своего меню?

10
задан Crisfole 8 February 2011 в 16:54
поделиться