CheckDeviceMultiSampleType () всегда возвращает false для Radeon 8500 - PullRequest
0 голосов
/ 02 апреля 2020

Я готовлю старый P C, готовый к экспонату в музее. Одна из целей выставки - показать, что сглаживание уже было доступно на потребительском оборудовании еще в 2004 году. Однако при компиляции / запуске следующего кода MDX на старом компьютере поддержка мультисэмплинга не обнаруживается:

foreach (Format format in Enum.GetValues(typeof(Format)))
{
    foreach (MultiSampleType sampleType in Enum.GetValues(typeof(MultiSampleType)))
    {
        if (sampleType != MultiSampleType.None && sampleType != MultiSampleType.NonMaskable)
        {
            if (Manager.CheckDeviceMultiSampleType(0, DeviceType.Hardware, format, true, sampleType))
            {
                Console.Write(format);
                Console.Write("\t");
                Console.WriteLine(sampleType);
            }
        }
    }
}

Вот сведения о главном компьютере:

  • Windows 2000 Pro SP4
  • DirectX 9.0 c (4.09.0000.0904)
  • Управляемый DirectX 1.0.2902.0
  • 768 МБ

И сведения об устройстве / драйвере:

  • Radeon 8500 Series AGP (0x514 C)
  • 128 МБ
  • Драйвер: ati2dvag.dll 6.14.0010.6614, скомпилированный 3 мая 2006 г.
  • WHQL Lo go 'd: Да
  • Ускорение Direct3D: включено
  • AGP Texture Acceleration: недоступно

Есть ли ошибка в коде или False - ожидаемый результат CheckDeviceMultiSampleType () для этого оборудования? Я подтвердил, что программа производит вывод (то есть находит поддерживаемые режимы) на более новом компьютере / ОС.

...