If you don’t require HWND-level interop between graphics components, then you don’t need blt model. An example of this would be using D3D to draw a window background, and then Windows GDI to draw something on top, or using two different graphics APIs, or two swapchains from the same API, to produce alternating frames. There is one piece of functionality that the flip model does not provide: the ability to have multiple different APIs producing content, which all layer together into the same HWND, on a present-by-present basis. This optimization is possible thanks to the DWM (Desktop Window Manager), which is the compositor that drives the Windows desktop. See DXGI flip model for a high level overview of the technology. Beginning with D3D9’s FLIPEX swap effect, and coming to DXGI through the FLIP_SEQUENTIAL swap effect in Windows 8, we’ve developed a more efficient way to put content on screen by sharing it directly with the desktop compositor, with minimal copies. Prior to Windows 7, the only way to present content from D3D was to "blt" or copy it into a surface which was owned by the window or screen. ![]() What is the flip model? What is the alternative? Additionally, consider reducing the resolution of your swapchain, especially if it isn’t the primary point of user interaction (as is often the case with VR preview windows). To maintain best performance on these systems, switch from the blt to the flip present model. If you are doing blt presents at high framerates across hybrid GPUs, especially at high resolutions such as 4K, this additional work may affect overall performance. In the April 2018 Update, this tearing has been fixed, at the cost of some additional work. ![]() Why now? Prior to the April 2018 Update, blt model presents could result in visible tearing when used on hybrid GPU configurations, often found in high-end laptops (see KB 3158621). In fact, you may want to reconsider whether your application actually needs a fullscreen exclusive mode, since the benefits of a flip model borderless window include faster Alt-Tab switching and better integration with modern display features. (See DXGI_SWAP_EFFECT enumeration for more information about these values.)įlip model presents go as far as making windowed mode effectively equivalent or better when compared to the classic "fullscreen exclusive" mode. the flip model) will give better performance, lower power usage, and provide a richer set of features. ![]() Switching to DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL or DXGI_SWAP_EFFECT_FLIP_DISCARD (a.k.a. the "blt" present model), it's time to stop! If you are still using DXGI_SWAP_EFFECT_DISCARD or DXGI_SWAP_EFFECT_SEQUENTIAL (a.k.a. It picks up where DXGI flip model, DirectX 12: Presentation Modes In Windows 10 (video), and Presentation Enhancements in Windows 10: An Early Look (video) left off. This topic provides developer guidance on how to maximize performance and efficiency in the presentation stack on modern versions of Windows.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |