PFND3DWDDM1_3DDI_TILEDRESOURCEBARRIER função de retorno de chamada (d3d10umddi.h)
Especifica uma restrição de ordenação de acesso a dados entre vários recursos lado a lado. Para obter mais informações sobre essa restrição, consulte Comentários.
Sintaxe
PFND3DWDDM1_3DDI_TILEDRESOURCEBARRIER Pfnd3dwddm13DdiTiledresourcebarrier;
void Pfnd3dwddm13DdiTiledresourcebarrier(
D3D10DDI_HDEVICE hDevice,
D3D11DDI_HANDLETYPE TiledResourceAccessBeforeBarrierHandleType,
VOID *hTiledResourceAccessBeforeBarrier,
D3D11DDI_HANDLETYPE TiledResourceAccessAfterBarrierHandleType,
VOID *hTiledResourceAccessAfterBarrier
)
{...}
Parâmetros
hDevice
Um identificador para o dispositivo de exibição (contexto gráfico).
TiledResourceAccessBeforeBarrierHandleType
Um identificador para o recurso lado a lado.
hTiledResourceAccessBeforeBarrier
Um identificador para um recurso que foi criado com o sinalizador D3DWDDM1_3DDI_RESOURCE_MISC_TILED . As operações de acesso neste objeto devem ser concluídas antes das operações de acesso no objeto que hTiledResourceAccessAfterBarrier especifica.
TiledResourceAccessAfterBarrierHandleType
O D3D11DDI_HANDLETYPE tipo de identificador dos recursos apontados pelos parâmetros hTiledResourceAccessBeforeBarrier e hTiledResourceAccessAfterBarrier .
hTiledResourceAccessAfterBarrier
Um identificador para um recurso que foi criado com o sinalizador D3DWDDM1_3DDI_RESOURCE_MISC_TILED . As operações de acesso nesse objeto devem começar após as operações de acesso no objeto que hTiledResourceAccessBeforeBarrier especifica.
Retornar valor
Nenhum
Comentários
O driver pode usar a função de retorno de chamada pfnSetErrorCb para definir um código de erro.
O runtime do Direct3D executa a validação mínima de parâmetros.
Os aplicativos podem usar recursos lado a lado para reutilizar blocos em recursos diferentes. Mas um dispositivo e um driver podem não ser capazes de determinar se alguma memória em um pool de blocos que acabou de ser renderizado agora está sendo usada para leitura.
O runtime do Direct3D chama TiledResourceBarrier para informar ao driver que as operações emitidas para o recurso antes da chamada devem ser concluídas antes de qualquer acesso que ocorra após a chamada usando um recurso lado a lado diferente que compartilhe a mesma memória.
Ou ambos os parâmetros hTiledResourceAccessBeforeBarrier e hTiledResourceAccessAfterBarrier (antes ou depois da barreira) podem ser NULL. NULL antes da barreira significa que todos os acessos de recurso lado a lado antes da barreira devem ser concluídos antes que o recurso especificado após a barreira possa ser referenciado pela GPU. NULL após a barreira significa que todos os recursos lado a lado acessados após a barreira só podem ser executados pela GPU após o acesso aos recursos lado a lado antes que a barreira seja concluída. Se ambos forem NULL, todos os acessos de recursos lado a lado anteriores deverão ser concluídos antes que qualquer acesso a recursos lado a lado subsequente possa continuar.
Se nenhuma chamada for feita para TiledResourceBarrier, o driver poderá assumir que os acessos a diferentes recursos lado a lado não entram em conflito entre si.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8.1,WDDM 1.3 |
Servidor mínimo com suporte | Windows Server 2012 R2 |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | d3d10umddi.h (inclua D3d10umddi.h) |