10

私はフルスクリーン 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 つを区別する方法を知っている人はいますか? メニューからパン モードを拒否できますか?

4

1 に答える 1

1

@Martin:OPがresを間違った順序で配置しただけだと思います。

このリンクはあなたが探しているものですか?

Windows で画面のピクセル寸法を取得する適切な方法のようです。

于 2011-02-10T01:20:05.633 に答える