функция обратного вызова 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_HANDLETYPE дескриптора ресурсов, на которые указывают параметры hTiledResourceAccessBeforeBarrier и hTiledResourceAccessAfterBarrier .

hTiledResourceAccessAfterBarrier

Дескриптор ресурса, созданного с флагом D3DWDDM1_3DDI_RESOURCE_MISC_TILED . Операции доступа к этому объекту должны начинаться после операций доступа к объекту, который указывает hTiledResourceAccessBeforeBarrier .

Возвращаемое значение

None

Remarks

Драйвер может использовать функцию обратного вызова 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)

См. также раздел

D3D11DDI_HANDLETYPE

pfnSetErrorCb