Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Um recurso é uma área na memória que pode ser acessada pelo pipeline do Direct3D. Para que o pipeline acesse a memória de forma eficiente, os dados fornecidos ao pipeline (como geometria de entrada, recursos de sombreador, texturas, etc.) devem ser armazenados em um recurso. Há dois tipos de recursos dos quais todos os recursos Direct3D derivam: um buffer ou uma textura. Até 128 recursos podem estar ativos para cada estágio do pipeline.
Cada aplicativo normalmente criará muitos recursos. Exemplos de recursos incluem: buffers de vértice, buffer de índice, buffer constante, texturas e recursos de sombreador. Existem várias opções que determinam como os recursos podem ser usados. Você pode criar recursos que são fortemente tipados ou digitam menos; Você pode controlar se os recursos têm acesso de leitura e gravação; você pode tornar os recursos acessíveis apenas para a CPU, GPU ou ambos. Naturalmente, haverá troca de velocidade versus funcionalidade - quanto mais funcionalidade você permitir que um recurso tenha, menos desempenho você deve esperar.
Como um aplicativo geralmente usa muitas texturas, o Direct3D também introduz o conceito de uma matriz de textura para simplificar o gerenciamento de textura. Uma matriz de textura contém uma ou mais texturas (todas do mesmo tipo e dimensões) que podem ser indexadas de dentro de um aplicativo ou por sombreadores. As matrizes de textura permitem que você use uma única interface com vários índices para acessar muitas texturas. Você pode criar quantas matrizes de textura forem necessárias para gerenciar diferentes tipos de textura.
Depois de criar os recursos que seu aplicativo usará, você conecta ou vincula cada recurso aos estágios de pipeline que os usarão. Isso é feito chamando uma API de ligação, que leva um ponteiro para o recurso. Como mais de um estágio de pipeline pode precisar de acesso ao mesmo recurso, o Direct3D 10 introduz o conceito de uma exibição de recurso. Um modo de exibição identifica a parte de um recurso que pode ser acessada. Você pode criar m views ou um recurso e vinculá-los a n estágios de pipeline, supondo que você siga regras de vinculação para recurso compartilhado (o tempo de execução gerará erros em tempo de compilação se você não o fizer).
Uma visualização de recurso fornece um modelo geral para acesso a um recurso (texturas, buffers, etc.). Como você pode usar um modo de exibição para informar ao tempo de execução quais dados acessar e como acessá-los, os modos de exibição de recursos permitem que você crie menos recursos de tipo. Ou seja, você pode criar recursos para um determinado tamanho em tempo de compilação e, em seguida, declarar o tipo de dados dentro do recurso quando o recurso for vinculado ao pipeline. As visualizações expõem muitos recursos novos para o uso de recursos, como a capacidade de ler superfícies de profundidade/estêncil no sombreador, gerar cubemaps dinâmicos em uma única passagem e renderizar simultaneamente para várias fatias de um volume.
Para saber mais sobre os tipos de recursos básicos, matrizes de textura e como criar e usar recursos, consulte estes outros tópicos:
- tipos de recursos
- Escolhendo um recurso
- Criando recursos de buffer
- Criação de recursos de textura
- Copiando e acessando dados de recursos
- estrutura de memória e visualizações
- de compressão de bloco
- Tabela de Limites de Recursos
- Sistemas de Coordenadas
- Floating-Point Regras
- Regras de conversão de tipo de dados
- mapeamento de formatos herdados
Tópicos relacionados
-
Guia de programação para Direct3D 10