Поделиться через


Обновление платформы для Windows 7

В этом разделе описываются улучшения компонентов графического стека Windows 7, которые становятся доступными с помощью обновления платформы для Windows 7.

При установке в Windows 7 обновление платформы для Windows 7 обновляет Windows 7 с функциональными возможностями, доступными в Windows 8. Например, эти компоненты Windows 8 становятся доступными с полной функциональностью:

  • Direct2D 1.1 (включая эффекты Direct2D)
  • DirectWrite
  • Компонент образов Windows (WIC)

Они предоставляют частичные функциональные возможности:

  • Direct3D 11.1
  • DXGI 1.2

Например, этот компонент недоступен:

  • DirectComposition (DComp)

Дополнительные сведения о Direct2D, DirectWrite и WIC см. в следующих разделах:

Дополнительные сведения о Direct3D и DXGI см. в следующих разделах:

После установки обновления платформы интерфейсы, представленные в Direct3D11.1 и DXGI 1.2, будут доступны с частичными функциями. Функции этих графических компонентов связаны непосредственно с компонентами графического ядра, драйверами графики и графическим оборудованием. Прежде чем использовать Direct3D11.1 в Windows 7, будьте знакомы с этими особенностями:

  • Windows 8 представила модель драйвера WDDM 1.2, которая обеспечила улучшения в связанной области API для всех уровней функций . При чтении документации Direct3D11.1 понять, что новых драйверов означает драйверы WDDM 1.2. Эти обновленные версии драйверов, а также большинство дополнительных функций, предоставляемых через CheckFeatureSupport, недоступны в Windows 7. Так как эти необязательные функции недоступны, убедитесь, что приложения имеют соответствующее резервное поведение в случае недоступности требуемой функциональности.

    Существует одно важное исключение. Некоторые функции, такие как PSSetConstantBuffers1 с смещением буфера констант, требуют новых драйверов для уровня компонентов 10 и более поздних версий, но фактически эмулируются для уровня компонентов 9. Эта эмуляция доступна в Windows 7 с обновлением платформы. Дополнительные сведения о эмулированных функциях см. в D3D11_FEATURE_DATA_D3D11_OPTIONS.

  • Модель драйвера Windows 8 WDDM 1.2 поддерживает новое поколение оборудования, которое предоставляется на уровне компонентов D3D 11.1. Windows 7 с обновлением платформы поддерживает только модель драйвера WDDM 1.1, поэтому поддержка оборудования уровня 11.1 недоступна (через обновление платформы). В Windows 7 с обновлением платформы D3D11CreateDevice всегда возвращает уровень компонентов 11.0 или ниже, за исключением эталонного устройства, которое можно использовать для тестирования пути кода 11.1 в Windows 7. Используйте только функции, доступные на целевых уровнях компонентов, как описано в справочнике по уровню компонентов.

  • Некоторые новые методы, представленные в DGXI 1.2, не полностью поддерживаются в обновлении платформы для Windows 7.Вы можете проверить доступность этих функций, вызвав их напрямую и проверив код ошибки. Убедитесь, что приложения, предназначенные для Windows 7 с обновлением платформы, имеют резервный вариант, если необходимые функции недоступны. Эти классы функций недоступны в обновлении платформы для Windows 7:

    • Стерео
    • Переключения, не предназначенные для Hwnds
    • Уведомления о состоянии Occlusion
    • Дублирование рабочего стола
    • Обработка ресурсов NT

    В частности, следующие API возвращают DXGI_ERROR_UNSUPPORTED, DXGI_ERROR_INVALID_CALL, E_NOTIMPL или E_INVALIDARG:

  • Эти API имеют различия в поведении, как отмечалось:

  • Для разработчиков, работающих в настоящее время над приложениями в Microsoft Visual Studio 2010 или более ранних версий с помощью флага D3D11_CREATE_DEVICE_DEBUG, обратите внимание, что вызовы D3D11CreateDevice завершится ошибкой. Это связано с тем, что среда выполнения D3D11.1 теперь требует D3D11_1SDKLayers.dll вместо D3D11SDKLayers.dll. Чтобы получить эту новую библиотеку DLL (D3D11_1SDKLayers.dll), установите пакет SDK для Windows 8 или Visual Studio 2012или средства удаленной отладки Visual Studio 2012. Дополнительные сведения см. в документации по уровня отладки.