IDXGIResource1 interface (dxgi1_2.h)

An IDXGIResource1 interface extends the IDXGIResource interface by adding support for creating a subresource surface object and for creating a handle to a shared resource.


The IDXGIResource1 interface inherits from IDXGIResource. IDXGIResource1 also has these types of members:


The IDXGIResource1 interface has these methods.


Creates a handle to a shared resource. You can then use the returned handle with multiple Direct3D devices.

Creates a subresource surface object.


To determine the type of memory a resource is currently located in, use IDXGIDevice::QueryResourceResidency. To share resources between processes, use ID3D11Device1::OpenSharedResource1. For information about how to share resources between multiple Windows graphics APIs, including Direct3D 11, Direct2D, Direct3D 10, and Direct3D 9Ex, see Surface Sharing Between Windows Graphics APIs.

You can retrieve the IDXGIResource1 interface from any video memory resource that you create from a Direct3D 10 and later function. Any Direct3D object that supports ID3D10Resource or ID3D11Resource also supports IDXGIResource1. For example, the Direct3D 2D texture object that you create from ID3D11Device::CreateTexture2D supports IDXGIResource1. You can call QueryInterface on the 2D texture object (ID3D11Texture2D) to retrieve the IDXGIResource1 interface. For example, to retrieve the IDXGIResource1 interface from the 2D texture object, use the following code.

IDXGIResource1 * pDXGIResource;
hr = g_pd3dTexture2D->QueryInterface(__uuidof(IDXGIResource1), (void **)&pDXGIResource);

Windows Phone 8: This API is supported.


Requirement Value
Minimum supported client Windows 8 and Platform Update for Windows 7 [desktop apps | UWP apps]
Minimum supported server Windows Server 2012 and Platform Update for Windows Server 2008 R2 [desktop apps | UWP apps]
Target Platform Windows
Header dxgi1_2.h

See also

DXGI Interfaces