Aktualizace platformy pro Windows 7
Toto téma popisuje vylepšení součástí grafického zásobníku Windows 7, které jsou k dispozici prostřednictvím Platform Update pro Windows 7.
Při instalaci v systému Windows 7 aktualizace platformy pro Windows 7 aktualizuje Systém Windows 7 funkcemi dostupnými ve Windows 8. Tyto součásti systému Windows 8 jsou například k dispozici s plnou funkčností:
- Direct2D 1.1 (včetně efektů Direct2D)
- DirectWrite
- Windows Imaging Component (WIC)
Tyto funkce poskytují částečné funkce:
- Direct3D 11.1
- DXGI 1.2
Tato komponenta například není k dispozici:
- DirectComposition (DComp)
Informace o Direct2D, DirectWrite a WIC s aktualizací platformy najdete v těchto tématech:
- Novinky v Direct2D pro Windows 8 (Windows)
- Novinky v rozhraní DirectWrite pro Windows 8 (Windows)
- Co je nového pro WIC ve Windows 8 (Windows)
Informace o Direct3D a DXGI s aktualizací platformy najdete v těchto tématech:
Po instalaci aktualizace platformy budou rozhraní zavedená v Direct3D11.1 a DXGI 1.2 dostupná s částečnou funkčností. Funkce těchto grafických komponent jsou svázané přímo s komponentami jádra grafiky, grafickými ovladači a grafickým hardwarem. Než začnete používat Direct3D11.1 ve Windows 7, seznamte se s těmito specifiky:
Systém Windows 8 zavedl model ovladače WDDM 1.2, který poskytoval vylepšení na přidružené ploše rozhraní API pro všechny úrovně funkcí . Při čtení dokumentace k Direct3D11.1 mějte na vědomí, že nových ovladačů znamená ovladače WDDM 1.2. Tyto aktualizované verze ovladačů a také většina volitelných funkcí vystavených prostřednictvím CheckFeatureSupport, nejsou ve Windows 7 k dispozici. Vzhledem k tomu, že není zaručeno, že tyto volitelné funkce jsou k dispozici, ujistěte se, že vaše aplikace mají odpovídající náhradní chování v případě, že požadované funkce nejsou k dispozici.
Existuje jedna důležitá výjimka. Několik funkcí, jako je PSSetConstantBuffers1 s konstantními posuny vyrovnávací paměti, vyžadují nové ovladače pro úroveň funkcí 10 a vyšší, ale ve skutečnosti jsou emulovány pro úroveň funkcí 9. Tato emulace je k dispozici ve Windows 7 s aktualizací platformy. Další informace o tom, které funkce jsou emulované, najdete v D3D11_FEATURE_DATA_D3D11_OPTIONS.
Model ovladačů WDDM 1.2 systému Windows 8 podporuje novou generaci hardwaru, která je vystavena prostřednictvím D3D úrovně funkcí 11.1. Windows 7 s aktualizací platformy podporuje pouze model ovladače WDDM 1.1, a proto není podpora hardwaru úrovně 11.1 dostupná (prostřednictvím aktualizace platformy). Ve Windows 7 s aktualizací platformy D3D11CreateDevice vždy vrátí úroveň funkce 11.0 nebo nižší, s výjimkou referenčního zařízení, které lze použít k otestování cesty kódu 11.1 ve Windows 7. Používejte jenom funkce dostupné na úrovních cílových funkcí, jak je popsáno v referenčních informacích na úrovni funkcí.
Některé nové metody zavedené v DGXI 1.2 nejsou plně podporovány aktualizací platformy pro Windows 7.Můžete otestovat dostupnost těchto funkcí tak, že je zavoláte přímo a zkontrolujete kód chyby. Ujistěte se, že vaše aplikace cílící na Windows 7 s aktualizací platformy mají náhradní nastavení, pokud je požadovaná funkce nedostupná. Tyto třídy funkcí nejsou k dispozici na platformě Update pro Windows 7:
- Stereo
- Prohození necílí na Hwndy
- Oznámení o stavu okluze
- Duplikace plochy
- Zpracování prostředků NT
Konkrétně následující rozhraní API vrátí DXGI_ERROR_UNSUPPORTED, DXGI_ERROR_INVALID_CALL, E_NOTIMPL nebo E_INVALIDARG:
- idXGIFactory2::CreateSwapChainForCoreWindow
- IDXGIFactory2 ::CreateSwapChainForComposition
- idXGIFactory2::RegisterStereoStatusWindow
- idXGIFactory2::RegisterStereoStatusEvent
- IDXGIFactory2 ::Zrušit registracisterStereoStatus
- idXGIFactory2::RegisterOcclusionStatusWindow
- idXGIFactory2::RegisterOcclusionStatusEvent
- idXGIFactory2::UnregisterOcclusionStatus
- idXGISwapChain1::GetCoreWindow
- idXGISwapChain1:: SetRotation
- idXGISwapChain1::GetRotation
- IDXGIOutput1::duplicateOutput
- IDXGIDevice2 :: EnqueueSetEvent
- idXGIResource1::CreateSharedHandle
- idXGIFactory2::GetSharedResourceAdapterLuid
- ID3D11Device1::openSharedResource1
- ID3D11Device1::OpenSharedResourceByName
Tato rozhraní API mají rozdíly v chování, jak je uvedeno:
- IDXGIFactory2::CreateSwapChainForHwnd přebírá DXGI_SWAP_CHAIN_DESC1 strukturu, která má pole pro škálování. DXGI_SCALING_NONE se v systému Windows 7 nepodporuje s aktualizací platformy a způsobí, že CreateSwapChainForHwnd při zavolání vrátí DXGI_ERROR_INVALID_CALL.
- IDXGISwapChain1::SetBackgroundColor je užitečná pouze v případech, kdy je nastavena na prohození řetězce pomocí DXGI_SCALING_NONE. Jeho hodnota je stále uložena a lze ji načíst, ale nemá žádný vliv.
- IDXGIDisplayControl::IsStereoEnabled, IDXGIFactory2::IsWindowedStereoEnablea IDXGISwapChain1::IsTemporaryMonoSupported všechny vrátit FALSE.
- IDXGIOutput1::GetDisplayModeList1 a IDXGIOutput1::FindClosestMatchingMode1 byly přidány pro usnadnění stereo režimů zobrazení. Stereo není podporováno na platformě Update pro Windows 7, takže tato metoda je ekvivalentní IDXGIOutput::FindClosestMatchingMode jako DXGI_MODE_DESC1. Stereo bude vždy FALSE.
- idXGIDevice2::OfferResources a IDXGIDevice2::ReclaimResources nejsou na platformě Update pro Windows 7 podporované. Modul runtime je však stále umožňuje volat a provádí ověření, že se správně používají u nesdílených prostředků.
- zařízení WARP podporují jenom úroveň funkcí 11.0. To znamená, že zařízení WARP vytvořená předáním D3D_DRIVER_TYPE_WARP v DriverType parametru D3D11CreateDevice nepodporují 11.1 ani nepodporují sdílené povrchy.
Pro vývojáře, kteří aktuálně pracují na aplikacích v sadě Microsoft Visual Studio 2010 nebo starším pomocí příznaku D3D11_CREATE_DEVICE_DEBUG, mějte na paměti, že volání D3D11CreateDevice selžou. Důvodem je to, že modul runtime D3D11.1 nyní vyžaduje D3D11_1SDKLayers.dll místo D3D11SDKLayers.dll. Chcete-li získat tuto novou knihovnu DLL (D3D11_1SDKLayers.dll), nainstalujte sadu Windows 8 SDKnebo Visual Studio 2012nebo nástroje pro vzdálené ladění sady Visual Studio 2012. Další informace najdete v dokumentaci ladicího vrstvy.