Share via


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_HANDLETYPEhTiledResourceAccessBeforeBarrierhTiledResourceAccessAfterBarrier 參數所指向之資源的句柄類型。

hTiledResourceAccessAfterBarrier

使用 D3DWDDM1_3DDI_RESOURCE_MISC_TILED 旗標建立之資源的句柄。 此物件的存取作業必須在 hTiledResourceAccessBeforeBarrier 指定之物件的存取作業之後開始。

傳回值

備註

驅動程式可以使用 pfnSetErrorCb 回呼函式來設定錯誤碼。

Direct3D 執行時間會執行最少的參數驗證。

應用程式可以使用並排顯示的資源來重複使用不同資源中的磚。 但是,裝置和驅動程式可能無法判斷磚集區中的某些記憶體目前是否正用於讀取。

Direct3D 運行時間會呼叫 TiledResourceBarrier ,通知驅動程式在呼叫之前,必須先完成呼叫之前發出的作業,才能使用共用相同記憶體的不同並排資源進行呼叫之後發生的任何存取。

在屏障) 之前或之後 (hTiledResourceAccessBeforeBarrierhTiledResourceAccessAfterBarrier 參數的或兩者都可以是 NULL 屏障之前,NULL 表示所有磚資源在屏障必須先完成之前,才能由 GPU 參考屏障之後指定的資源。 屏障之後,NULL 表示在屏障之後存取任何磚資源,只有在存取磚資源之後,GPU 才能在屏障完成之前執行。 如果兩者都是 NULL,則必須先完成所有先前的並排資源存取,才能繼續任何後續的並排資源存取。

如果未呼叫 TiledResourceBarrier,驅動程式可以假設存取不同的並排資源不會彼此衝突。

規格需求

需求
最低支援的用戶端 Windows 8.1,WDDM 1.3
最低支援的伺服器 Windows Server 2012 R2
目標平台 桌面
標頭 d3d10umddi.h (包含 D3d10umddi.h)

另請參閱

D3D11DDI_HANDLETYPE

pfnSetErrorCb