Программный выбор лучшей видеокарты для рендеринга DirectXC#

Место общения программистов C#
Ответить
Anonymous
 Программный выбор лучшей видеокарты для рендеринга DirectX

Сообщение Anonymous »

Я работаю над продуктом, который использует DirectX для рендеринга более интенсивных изображений. До сих пор, зная, что некоторые компьютеры имеют несколько графических процессоров, я выбирал графический процессор для рендеринга, находя тот, который имеет самый большой адаптерный объем, используя следующий метод:

Код: Выделить всё

using ( ManagementObjectSearcher searcher = new ManagementObjectSearcher( "select * from Win32_VideoController" ) ) {
foreach ( ManagementObject mo in searcher.Get() ) {
var adapterRam = mo.Properties[ "AdapterRAM" ].Value;
//Use this one if it is the largest
}
}
Некоторые пользователи столкнулись с проблемой, когда у них есть встроенная видеокарта Intel, которая лжет о том, сколько у нее адаптерной памяти, и поэтому она выбирается. Я думаю, что он сообщает о некотором объеме выделенной системной оперативной памяти. Операция рисования оказывается слишком интенсивной для этой карты и приводит к сбою видеодрайверов. В компьютере имеется вполне работоспособная карта Nvidia, которая должна была быть выбрана.

Я думаю, что хороший способ обойти эту проблему — никогда не выбирать интегрированную карту вместо установленной, но мне пока не удалось найти способ программно выяснить, интегрирована ли карта.

Есть ли какой-нибудь способ определить, интегрирована ли карта или установлена?

Есть ли лучший способ выбрать лучший графический процессор?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»