Для совместимости мы всегда использовали Сериализацию Xml и удостоверялись, что наш класс был разработан с нуля, чтобы сделать это правильно.
Мы создаем документ схемы XSD и генерируем ряд классов от того использования XSD.exe. Это генерирует частичные классы, таким образом, мы тогда создаем ряд соответствующих частичных классов для добавления дополнительных методов, мы хотим помочь нам заполнить классы и использовать их в нашем приложении (поскольку они фокусируются на сериализации и десериализации и являются небольшим difficut для использования иногда).
Во время выполнения вы можете запросить модель устройства и производителя:
В OpenGL используйте команду glGetString (GL_VENDOR), GL_RENDERER или GL_VERSION, чтобы получить нужную информацию.
В DirectX 9, похоже, информация находится в системе конфигурации Microsoft и запрашивается из базы данных устройства. Это раздел 3 этого документа, в котором также есть пример кода: http://msdn.microsoft.com/en-us/library/bb204848 (VS.85) .aspx Используя ту же систему, вы можете получить такую информацию, как объем оперативной памяти видеокарты, номер драйвера и т. Д.
Взгляните на главу 2. Direct3D из моей книги Графический конвейер Direct3D . См. Раздел 2.12, Идентификация конкретного устройства.