Войти
ПрограммированиеФорумГрафика

Как определить тип установленой видеокарты с помощью D3D (комментарии)

#0

Как определить тип установленой видеокарты с помощью D3D (комментарии)

Это сообщение сгенерировано автоматически.

9 июля 2013

#1

Идея конечно хорошая, но на 9 директе, я сделал проще...)))

D3DADAPTER_IDENTIFIER9 id;

m_pD3Device->GetAdapterIdentifier(D3DADAPTER_DEFAULT, D3DENUM_WHQL_LEVEL, &id);
pFontT->DrawText(NULL, id.Description, -1, NULL, DT_LEFT, 0xFE0000B4);

Ненадо сравнивать константы, а просто тупо вывести название модели на экран, через - "id.Description"...)))

ЗЫ.На 11 директе такое уже не проканает...)))

;););)

9 июля 2013

#2

$!№9@r
В description может не быть конкретного названия GPU. Может быть написано аля "Radeon Series", "Intel HD Family" или что-нибудь подобное.

9 июля 2013

#3

$!№9@r
> ЗЫ.На 11 директе такое уже не проканает...)))
В DX11:
1. Получаем IDXGIDevice
2. Получаем IDXGIAdapter через GetAdapter интерфейса  IDXGIDevice
3. Получаем DXGI_ADAPTER_DESC через GetDesc  интерфейса  IDXGIAdapter

Согласен, что лучше юзать Id.

9 июля 2013

#4

Я не пробовал именно с видео, но в реестре должна быть информация.
Должно быть указано что является первичным видеоадаптером
Должна быть информация о том сколько видеоадаптеров
GUID для каждого
и по GUID смотреть как они называются ...

В теорию лезть лень ....

10 июля 2013

#5

KKH
Та же беда, что и с description. Может не оказаться полного названия модели. Я пробовал разные варианта: WinAPI + Registry, DxDiag, OpenGL + GL_VENDOR. Ни один не дает 100% гарантии получения ПОЛНОГО названия видео карты. Единственный вариант - vendorID + deviceID, а потом смотреть в базе.

10 июля 2013

#6

А как быть в случае когда имеется две видеокарты? Например на ноутбуке одна Intel а другая AMD?

10 июля 2013

#7

Aneroun

см. GetAdapterIdentifier - первый параметр и есть номер видео в системе

правда бываюи и вертуальные адаптеры, см NVPerfHUD

10 июля 2013

#8

TheGrayWolf
Если бы все было так просто. GetAdapterIdentifier для всех адаптеров возвращает description "Intel(R) HD Graphics Family", а установленного AMD Radeon HD 7670M для этой функции не существует.

10 июля 2013

#9

ИМХО, в случае переключаемой графики надо работать через нативное АПИ, что бы активировать нужную. Правда хез как это сделать. Не пробовал еще. Где-то читал (кажется на сайте НВ), что надо через нативное АПИ добавить свое приложение в профили и видео карта сама переключится. Но как-то мне этот способ не очень нравится.

10 июля 2013

#10

DeadMeat
Да активировать не обязательно. Желательно просто получить список для сбора статистики.

13 июля 2013

ПрограммированиеФорумГрафика

Тема в архиве.