For apps on Windows 10, we recommend using Windows.UI.Composition APIs instead of DirectComposition. For more info, see Modernize your desktop app using the Visual layer.


Microsoft DirectComposition is a Windows component that enables high-performance bitmap composition with transforms, effects, and animations. Application developers can use the DirectComposition API to create visually engaging user interfaces that feature rich and fluid animated transitions from one visual to another.

DirectComposition enables rich and fluid transitions by achieving a high framerate, using graphics hardware, and operating independently of the UI thread. DirectComposition can accept bitmap content drawn by different rendering libraries, including Microsoft DirectX bitmaps, and bitmaps rendered to a window (HWND bitmaps). Also, DirectComposition supports a variety of transformations, such as 2D affine transforms and 3D perspective transforms, as well as basic effects such as clipping and opacity.

DirectComposition is designed to simplify the process of composing visuals and creating animated transitions. If your application already contains rendering code or already uses the recommended DirectX API, you only need to do a minimal amount of work to use DirectComposition effectively.

Developer audience

The DirectComposition API is intended for experienced and highly-capable graphics developers who know C/C++, have a solid understanding of the Component Object Model (COM), and are familiar with Windows programming concepts.

Run-time requirements

DirectComposition was introduced in Windows 8. It is included in 32-bit, 64-bit, and ARM platforms.

In this section

Topic Description
Why use DirectComposition?
This topic describes the capabilities and benefits of DirectComposition.
How to Use DirectComposition
This section describes best practices for using the DirectComposition API, and demonstrates how to use the API to accomplish several common tasks.
DirectComposition concepts
This section provides a conceptual overview of DirectComposition.
DirectComposition reference
This section provides detailed reference information for the elements that make up the DirectComposition API.
DirectComposition samples
The following sample applications show how to use the DirectComposition API and demonstrate its capabilities.
DirectComposition glossary
This topic defines DirectComposition terms.