I’ve been writing a lot about DirectComposition lately. MSDN Magazine just published the final article in the series.

4. DirectComposition: Transforms and Animation

DirectComposition visuals provide a lot more than just the offset and content properties I’ve illustrated in my last few columns. The visuals really come to life when you begin to affect them with transforms and animations. In both cases, the Windows composition engine is a sort of processor and it’s up to you to calculate or construct the transform matrices, as well as the animation curves with cubic functions and sine waves.

3. DirectComposition: A Retained-Mode API to Rule Them All

2. Embracing the Windows Composition Engine

1. High-Performance Window Layering Using the Windows Composition Engine

There’s also my Pluralsight course where I dive into DirectComposition in a lot more detail.

4 thoughts on “DirectComposition

  1. sdflysha

    Hello, Kenny, I’m writing some cool Layered Window effect myself, but I encountered a simple problem, I was originally using “TransparentBlt” function in a traditional Color Keyed Transparency Bitmap(not a alpha tunnel bitmap), and what I can do “TransparentBlt” in Direct2D?

  2. loch ness

    Hey Kenny,

    I see u always use the same assert, trace, and verify macros in all of your pluralsight videos. How do you use your visual studio solution to reuse these Debug.h files? When you create a new project do you simply copy the Debug.h file that contains your macros and include it in your new project’s folder?

    1. Kenny Kerr Post author

      Yes I have traditionally just copied the debug header into new projects. Lately I’ve been relying on Modern‘s debug facilities so I no longer have to repeat that boilerplate code.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s