PFND3DWDDM1_3DDI_TILEDRESOURCEBARRIER Rückruffunktion (d3d10umddi.h)

Gibt eine Datenzugriffsreihenfolgeeinschränkung zwischen mehreren kachelten Ressourcen an. Weitere Informationen zu dieser Einschränkung finden Sie unter Hinweise.

Syntax

PFND3DWDDM1_3DDI_TILEDRESOURCEBARRIER Pfnd3dwddm13DdiTiledresourcebarrier;

void Pfnd3dwddm13DdiTiledresourcebarrier(
  D3D10DDI_HDEVICE hDevice,
  D3D11DDI_HANDLETYPE TiledResourceAccessBeforeBarrierHandleType,
  VOID *hTiledResourceAccessBeforeBarrier,
  D3D11DDI_HANDLETYPE TiledResourceAccessAfterBarrierHandleType,
  VOID *hTiledResourceAccessAfterBarrier
)
{...}

Parameter

hDevice

Ein Handle für das Anzeigegerät (Grafikkontext).

TiledResourceAccessBeforeBarrierHandleType

Ein Handle für die gekachelte Ressource.

hTiledResourceAccessBeforeBarrier

Ein Handle für eine Ressource, die mit dem flag D3DWDDM1_3DDI_RESOURCE_MISC_TILED erstellt wurde. Zugriffsvorgänge für dieses Objekt müssen vor den Zugriffsvorgängen für das Objekt abgeschlossen werden, das hTiledResourceAccessAfterBarrier angibt.

TiledResourceAccessAfterBarrierHandleType

Der D3D11DDI_HANDLETYPE Handle-Typ der Ressourcen, auf die durch die Parameter hTiledResourceAccessBeforeBarrier und hTiledResourceAccessAfterBarrier verwiesen wird.

hTiledResourceAccessAfterBarrier

Ein Handle für eine Ressource, die mit dem flag D3DWDDM1_3DDI_RESOURCE_MISC_TILED erstellt wurde. Zugriffsvorgänge für dieses Objekt müssen nach den Zugriffsvorgängen für das Objekt beginnen, das hTiledResourceAccessBeforeBarrier angibt.

Rückgabewert

Keine

Bemerkungen

Der Treiber kann die Rückruffunktion pfnSetErrorCb verwenden, um einen Fehlercode festzulegen.

Die Direct3D-Runtime führt eine minimale Überprüfung der Parameter durch.

Apps können kachelnierte Ressourcen verwenden, um Kacheln in verschiedenen Ressourcen wiederzuverwenden. Ein Gerät und ein Treiber können jedoch möglicherweise nicht ermitteln, ob jetzt ein Teil des Arbeitsspeichers in einem Kachelpool, der gerade gerendert wurde, zum Lesen verwendet wird.

Die Direct3D-Runtime ruft TiledResourceBarrier auf, um den Treiber darüber zu informieren, dass Vorgänge, die vor dem Aufruf an die Ressource ausgegeben werden, vor allen Zugriffen, die nach dem Aufruf erfolgen, unter Verwendung einer anderen kachelierten Ressource, die denselben Arbeitsspeicher verwendet, abgeschlossen werden müssen.

Die Parameter hTiledResourceAccessBeforeBarrier und hTiledResourceAccessAfterBarrier (vor oder nach der Barriere) können NULL sein. NULL vor der Barriere bedeutet, dass alle kachelten Ressourcenzugriffe vor der Barriere abgeschlossen werden müssen, bevor die GPU auf die nach der Barriere angegebene Ressource verweisen kann. NULL nach der Barriere bedeutet, dass alle nach der Barriere auf kachelten Ressourcen von der GPU nur ausgeführt werden können, nachdem der Zugriff auf die gekachelten Ressourcen vor Dem Abschluss der Barriere erfolgt ist. Wenn beide NULL sind, müssen alle vorherigen kachelnden Ressourcenzugriffe abgeschlossen sein, bevor der anschließende Zugriff auf kachelte Ressourcen fortgesetzt werden kann.

Wenn tiledResourceBarrier nicht aufgerufen wird, kann der Treiber davon ausgehen, dass Zugriffe auf verschiedene kachelte Ressourcen nicht miteinander in Konflikt stehen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8.1,WDDM 1.3
Unterstützte Mindestversion (Server) Windows Server 2012 R2
Zielplattform Desktop
Kopfzeile d3d10umddi.h (include D3d10umddi.h)

Weitere Informationen

D3D11DDI_HANDLETYPE

pfnSetErrorCb