Compartilhar via


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)

Confira também

D3D11DDI_HANDLETYPE

pfnSetErrorCb