Существует ли вызов Win32 API, определяющий текущий уровень аппаратного ускорения пользовательской системы? Мне не нужно менять этот параметр, но я хотел бы уменьшить уровень детализации моего дисплея OpenGL, если аппаратное ускорение отключено.
Как определить аппаратное ускорение для OpenGL в Windows
Ответы (2)
Из часто задаваемых вопросов: Как узнать, что моя программа использует аппаратное ускорение на Wintel карта?
Если вы используете интерфейс Win32 (в отличие от GLUT), вызовите DescribePixelFormat() и проверьте возвращенное битовое поле dwFlags. Если PFD_GENERIC_ACCELERATED сброшен, а PFD_GENERIC_FORMAT установлен, то формат пикселей поддерживается только общей реализацией. Аппаратное ускорение для этого формата невозможно. Для аппаратного ускорения нужно выбрать другой формат.
person
Justicle
schedule
14.07.2009
Часто задаваемые вопросы 5.030 и 5.040 были очень полезны.
- person JRS; 14.07.2009
Или вы можете запросить возможности устройства с помощью Direct3D, если у вас Windows. "стандартный" GDI Win32 GetDeviceCaps( ) call не работает с 3D...
person
Dave Markle
schedule
14.07.2009