IDCompositionTexture interface (dcomp.h)

Important

Some information relates to a prerelease product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

The interface to an object that represents a raw Direct3D texture that can be bound to a composition visual as content. The object can be used anywhere that a generic composition surface can be used in those APIs today—for example, as the content of a sprite visual or a surface brush. The object exposes an available fence, which can be used to synchronize application rendering and composition work. Can also accept various attributes, such as an alpha mode, source rect, and color space, to more precisely define the content being displayed.

The composition textures API supports Direct3D 11 only.

Inheritance

The IDCompositionTexture interface derives from the IUnknown interface.

Methods

The IDCompositionTexture interface has these methods.

 
IDCompositionTexture::GetAvailableFence

Retrieves a Direct3D synchronization fence/value pair that indicates when the composition texture will become available, if that info is known.
IDCompositionTexture::SetAlphaMode

Informs the DWM whether alpha pixels in the texture should be honored or ignored.
IDCompositionTexture::SetColorSpace

Informs the system of the color space that it should map the texture into.
IDCompositionTexture::SetSourceRect

Specifies the region of a Direct3D texture that the composition texture represents.

Remarks

The lifetime of a composition texture is designed to work without intervention from your app. Your app doesn't need to keep a texture alive for the sake of what the system might be doing. If your app releases a texture that the system is still displaying in a visual tree, then the system will keep that texture alive until it's no longer necessary to do so. Your app can operate under the assumption that it needs to keep a composition texture alive only if it wants to explicitly reference it again.

Requirements

Requirement Value
Header dcomp.h