Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Os buffers têm todos os recursos necessários no D3D12 para aplicativos que transferem uma grande variedade de dados transitórios da CPU para a GPU. Esta seção abrange quatro cenários comuns para o uso e gerenciamento de recursos e buffers.
Semelhante ao D3D11, os aplicativos no D3D12 ainda precisam declarar o uso de memória ao alocar buffers no D3D12 em comparação com os recursos dinâmicos/de preparo no D3D11, mas no D3D12, os desenvolvedores têm mais flexibilidade e controle mais rígido sobre o uso de memória. Os buffers, através da subalocação, têm todos os recursos necessários para o gerenciamento de memória de baixo nível.
Nesta secção
Tópico | Descrição |
---|---|
Upload de diferentes tipos de recursos |
Mostra como usar um buffer para carregar dados de buffer constante e dados de buffer de vértice para a GPU e como subalocar e colocar dados corretamente em buffers. O uso de um único buffer aumenta a flexibilidade de uso de memória e fornece aos aplicativos um controle mais rígido do uso de memória. Também mostra as diferenças entre os modelos D3D11 e D3D12 para carregar diferentes tipos de recursos. |
Upload de dados de textura através de buffers |
O carregamento de dados de textura 2D ou 3D é semelhante ao carregamento de dados 1D, exceto que os aplicativos precisam prestar mais atenção ao alinhamento de dados relacionados ao passo de linha. Os buffers podem ser usados ortogonalmente e simultaneamente a partir de várias partes do pipeline gráfico e são muito flexíveis. |
Ler dados através de um buffer |
A leitura de dados da GPU, como a captura de uma captura de tela, envolve o uso da pilha de Readback. |
Fence-Based Gestão de Recursos |
Mostra como gerenciar a vida útil dos dados do recurso acompanhando o progresso da GPU por meio de cercas. A memória pode ser efetivamente reutilizada com cercas gerenciando cuidadosamente a disponibilidade de espaço livre na memória, como em uma implementação de buffer de anel para uma pilha de upload. |