Как определить аппаратное ускорение для OpenGL в Windows - PullRequest
2 голосов
/ 14 июля 2009

Есть ли вызов Win32 API, который определяет текущий уровень аппаратного ускорения системы пользователя? Мне не нужно менять настройку, но я бы хотел уменьшить уровень детализации моего дисплея OpenGL, если аппаратное ускорение отключено.

Ответы [ 2 ]

4 голосов
/ 14 июля 2009

Из FAQ: Как узнать, что моя программа использует аппаратное ускорение на карте Wintel?

Если вы используете интерфейс Win32 (в отличие от GLUT), вызовите DescribePixelFormat () и проверьте вернул битовое поле dwFlags. Если PFD_GENERIC_ACCELERATED ясно и PFD_GENERIC_FORMAT установлен, затем Формат пикселей поддерживается только общая реализация. аппаратные средства ускорение не возможно для этого формат. Для аппаратного ускорения вы нужно выбрать другой формат.

0 голосов
/ 14 июля 2009

Или вы можете запросить возможности устройства с помощью Direct3D , если вы используете Windows. Вызов "стандартного" GDI Win32 GetDeviceCaps () не работает с 3D ...

...