5个方法,只关心俩。
CreateSurface和QueryResourceResidency。
HRESULT CreateSurface(
[in] const DXGI_SURFACE_DESC *pDesc,
[in] UINT NumSurfaces,
[in] DXGI_USAGE Usage,
[in] const DXGI_SHARED_RESOURCE *pSharedResource,
[out] IDXGISurface **ppSurface )
它的功能被描述为创建用来在多个资源之间交换数据的缓冲区。
也“不应该”直接调用。
第3个参数指明用途。可选后缓冲,内部使用,只读,渲染目标,shader的输入,共享,还是UNORDERED_ACCESS。
第4个参数可能是当3=共享时才有用的东东。
HRESULT QueryResourceResidency(
[in] IUnknown *const *ppResources,
[out] DXGI_RESIDENCY *pResidencyStatus,
[in] UINT NumResources )
这是个挺管用的方法。用来查询resource位于哪里,内存,显存,还是硬盘。
这个状态只是查询的那一刻。它会变。