функция обратного вызова 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) |