Compartilhar via


Application-Managed recursos e estratégias de alocação (Direct3D 9)

Os recursos gerenciados de buffer de vértice ou buffer de índice não podem ser declarados dinâmicos especificando D3DUSAGE_DYNAMIC no momento da criação. Isso exigiria uma cópia adicional para cada modificação no conteúdo do buffer de vértice. Buffers de vértice dinâmico são destinados à renderização de geometria dinâmica e dados extraídos de árvores particionadas por espaço binário ou outras estruturas de dados de visibilidade. Isso pode ser feito pré-alocando buffers do formato desejado. Esses recursos são então parcelados para dar suporte às necessidades do aplicativo por um gerenciador de recursos dentro do aplicativo. O número total de buffers de vértice dinâmico é pequeno porque um aplicativo usará simultaneamente apenas alguns passos de vértice diferentes e porque um buffer de vértice diferente é necessário apenas para etapas exclusivas. Ao gerenciar recursos dinâmicos dessa forma, verifique se as demandas de alta frequência nos recursos não diminuem significativamente o desempenho do aplicativo.

Ao usar recursos gerenciados pelo Direct3D e aplicativos, aloque recursos gerenciados pelo aplicativo em D3DPOOL_DEFAULT memória antes de criar recursos gerenciados pelo Direct3D. Isso permite que o gerenciador de memória mantenha uma contagem precisa de memória disponível.

Recursos do Direct3D