PFND3DWDDM1_3DDI_TILEDRESOURCEBARRIER回呼函式 (d3d10umddi.h)
指定多個並排資源之間的數據存取排序條件約束。 如需此條件約束的詳細資訊,請參閱。
語法
PFND3DWDDM1_3DDI_TILEDRESOURCEBARRIER Pfnd3dwddm13DdiTiledresourcebarrier;
void Pfnd3dwddm13DdiTiledresourcebarrier(
D3D10DDI_HDEVICE hDevice,
D3D11DDI_HANDLETYPE TiledResourceAccessBeforeBarrierHandleType,
VOID *hTiledResourceAccessBeforeBarrier,
D3D11DDI_HANDLETYPE TiledResourceAccessAfterBarrierHandleType,
VOID *hTiledResourceAccessAfterBarrier
)
{...}
參數
hDevice
顯示裝置的句柄 (圖形內容) 。
TiledResourceAccessBeforeBarrierHandleType
並排資源的句柄。
hTiledResourceAccessBeforeBarrier
使用 D3DWDDM1_3DDI_RESOURCE_MISC_TILED 旗標建立之資源的句柄。 此物件的存取作業必須在 hTiledResourceAccessAfterBarrier 指定之物件的存取作業之前完成。
TiledResourceAccessAfterBarrierHandleType
D3D11DDI_HANDLETYPEhTiledResourceAccessBeforeBarrier 和 hTiledResourceAccessAfterBarrier 參數所指向之資源的句柄類型。
hTiledResourceAccessAfterBarrier
使用 D3DWDDM1_3DDI_RESOURCE_MISC_TILED 旗標建立之資源的句柄。 此物件的存取作業必須在 hTiledResourceAccessBeforeBarrier 指定之物件的存取作業之後開始。
傳回值
無
備註
驅動程式可以使用 pfnSetErrorCb 回呼函式來設定錯誤碼。
Direct3D 執行時間會執行最少的參數驗證。
應用程式可以使用並排顯示的資源來重複使用不同資源中的磚。 但是,裝置和驅動程式可能無法判斷磚集區中的某些記憶體目前是否正用於讀取。
Direct3D 運行時間會呼叫 TiledResourceBarrier ,通知驅動程式在呼叫之前,必須先完成呼叫之前發出的作業,才能使用共用相同記憶體的不同並排資源進行呼叫之後發生的任何存取。
在屏障) 之前或之後 (hTiledResourceAccessBeforeBarrier 和 hTiledResourceAccessAfterBarrier 參數的或兩者都可以是 NULL。 在 屏障之前,NULL 表示所有磚資源在屏障必須先完成之前,才能由 GPU 參考屏障之後指定的資源。 在 屏障之後,NULL 表示在屏障之後存取任何磚資源,只有在存取磚資源之後,GPU 才能在屏障完成之前執行。 如果兩者都是 NULL,則必須先完成所有先前的並排資源存取,才能繼續任何後續的並排資源存取。
如果未呼叫 TiledResourceBarrier,驅動程式可以假設存取不同的並排資源不會彼此衝突。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8.1,WDDM 1.3 |
最低支援的伺服器 | Windows Server 2012 R2 |
目標平台 | 桌面 |
標頭 | d3d10umddi.h (包含 D3d10umddi.h) |