Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Opções de uso que identificam como os recursos devem ser usados.
A tabela a seguir resume as opções de uso disponíveis.
| Constante | Descrição |
|---|---|
|
O recurso gerará mipmaps automaticamente. Consulte a Geração Automática de Mipmaps (Direct3D 9). Não há suporte para geração automática de mipmaps para texturas de volume e superfícies/texturas de estêncil de profundidade. Esse uso não é válido para um recurso na memória do sistema (D3DPOOL_SYSTEMMEM). |
|
O recurso será um buffer de estêncil de profundidade.
D3DUSAGE_DEPTHSTENCIL só pode ser usado com D3DPOOL_DEFAULT. |
|
O recurso será um mapa de deslocamento. |
|
Definido para indicar que o conteúdo do buffer de vértice nunca exigirá recorte. Ao renderizar com buffers que têm esse sinalizador definido, o estado de renderização D3DRS_CLIPPING deve ser definido como false. |
|
Definido para indicar que o buffer de vértice requer uso dinâmico de memória. Isso é útil para drivers porque permite que eles decidam onde colocar o buffer. Em geral, buffers de vértice estático são colocados na memória de vídeo e buffers de vértice dinâmicos são colocados na memória AGP. Observe que não há nenhum uso estático separado. Se você não especificar D3DUSAGE_DYNAMIC, o buffer de vértice será tornado estático.
D3DUSAGE_DYNAMIC é estritamente imposta por meio dos sinalizadores de bloqueio D3DLOCK_DISCARD e D3DLOCK_NOOVERWRITE . Como resultado, D3DLOCK_DISCARD e D3DLOCK_NOOVERWRITE são válidos somente em buffers de vértice criados com D3DUSAGE_DYNAMIC. Eles não são sinalizadores válidos em buffers de vértice estático. Para obter mais informações, consulte Gerenciando recursos (Direct3D 9). Para obter mais informações sobre como usar buffers de vértice dinâmico, consulte Otimizações de Desempenho (Direct3D 9). D3DUSAGE_DYNAMIC e D3DPOOL_MANAGED são incompatíveis e não devem ser usados juntos. Veja D3DPOOL. Texturas podem especificar D3DUSAGE_DYNAMIC. No entanto, texturas gerenciadas não podem usar D3DUSAGE_DYNAMIC. Para obter mais informações sobre texturas dinâmicas, consulte Como usar texturas dinâmicas. |
|
Permitir que uma superfície compartilhada criada por um aplicativo seguro seja aberta por um aplicativo não seguro que tenha o identificador compartilhado. Diferenças entre Direct3D 9 e Direct3D 9Ex: Esse sinalizador está disponível somente no Direct3D 9Ex. |
|
Defina para indicar que o buffer de vértice deve ser usado para desenhar N-patches. |
|
Defina para indicar que o vértice ou buffer de índice será usado para sprites de ponto de desenho. O buffer será carregado na memória do sistema se o processamento de vértice de software for necessário para emular sprites de ponto. |
|
O recurso será um destino de renderização.
D3DUSAGE_RENDERTARGET só pode ser usado com D3DPOOL_DEFAULT. |
|
Defina para indicar que o buffer de vértice deve ser usado para desenhar primitivos de alta ordem. |
|
Se esse sinalizador for usado, o processamento de vértice será feito no software. Se esse sinalizador não for usado, o processamento de vértice será feito no hardware. O sinalizador D3DUSAGE_SOFTWAREPROCESSING pode ser definido quando o processamento de vértice de software ou modo misto (D3DCREATE_MIXED_VERTEXPROCESSING / D3DCREATE_SOFTWARE_VERTEXPROCESSING) está habilitado para esse dispositivo. D3DUSAGE_SOFTWAREPROCESSING deve ser definido para que os buffers sejam usados com o processamento de vértice de software no modo misto, mas ele não deve ser definido para o melhor desempenho possível ao usar o processamento de índice de hardware no modo misto (D3DCREATE_HARDWARE_VERTEXPROCESSING). No entanto, definir D3DUSAGE_SOFTWAREPROCESSING é a única opção quando um único buffer é usado com processamento de vértice de hardware e software. D3DUSAGE_SOFTWAREPROCESSING é permitido para dispositivos mistos e de software. D3DUSAGE_SOFTWAREPROCESSING é usado com CheckDeviceFormat para descobrir se um formato de textura específico pode ser usado como uma textura de vértice durante o processamento de vértice de software. Se puder, a textura deverá ser criada em D3DPOOL_SCRATCH. |
|
Esse sinalizador de uso deve ser especificado para buffers de vértice e superfícies de origem, usados em chamadas para ComposeRects. Texturas criadas com esse sinalizador de uso não podem ser usadas para filtragem de textura. Buffers de vértice, criados com esse sinalizador de uso, não podem ser usados como fontes de fluxo de entrada. Diferenças entre Direct3D 9 e Direct3D 9Ex: Esse sinalizador está disponível somente no Direct3D 9Ex. |
|
Informa ao sistema que o aplicativo grava apenas no buffer de vértice. O uso desse sinalizador permite que o driver escolha o melhor local de memória para operações de gravação e renderização eficientes. As tentativas de leitura de um buffer de vértice criado com essa funcionalidade falharão. Buffers criados com D3DPOOL_DEFAULT que não especificam D3DUSAGE_WRITEONLY podem sofrer uma grave penalidade de desempenho.
D3DUSAGE_WRITEONLY afeta apenas o desempenho de buffers de D3DPOOL_DEFAULT . |
|
Definir esse sinalizador indica que o recurso pode conter conteúdo protegido. Diferenças entre Direct3D 9 e Direct3D 9Ex: Esse sinalizador está disponível somente no Direct3D 9Ex. |
|
Definir esse sinalizador indica que o acesso ao recurso compartilhado deve ser restrito. Diferenças entre Direct3D 9 e Direct3D 9Ex: Esse sinalizador está disponível somente no Direct3D 9Ex. |
|
Definir esse sinalizador indica que o driver deve restringir o acesso ao recurso compartilhado. O chamador deve criar um canal autenticado com o driver. Em seguida, o driver deve permitir o acesso a processos que tentam abrir esse recurso compartilhado. Diferenças entre Direct3D 9 e Direct3D 9Ex: Esse sinalizador está disponível somente no Direct3D 9Ex. |
Observações
Combinações de uso e recursos
Os usos são especificados quando um recurso é criado ou especificado com CheckDeviceType para testar a funcionalidade de um recurso existente. A tabela a seguir identifica quais usos podem ser aplicados a quais tipos de recurso.
| Uso | Criação de buffer de vértice | Criação de buffer de índice | Criação de textura | Criação de textura de cubo | Criação de textura de volume | Criar o Surface | Verificar o formato do dispositivo |
|---|---|---|---|---|---|---|---|
| D3DUSAGE_AUTOGENMIPMAP | sim, sim | Sim | |||||
| D3DUSAGE_DEPTHSTENCIL | sim, sim | sim, sim | |||||
| D3DUSAGE_DMAP | Sim | Sim | |||||
| D3DUSAGE_DONOTCLIP sim sim | |||||||
| D3DUSAGE_DYNAMIC sim sim sim sim sim | Sim | ||||||
| D3DUSAGE_NONSECURE sim sim sim sim sim sim sim | |||||||
| D3DUSAGE_NPATCHES sim sim | |||||||
| D3DUSAGE_POINTS sim sim | |||||||
| D3DUSAGE_RTPATCHES sim sim | |||||||
| D3DUSAGE_RENDERTARGET | sim, sim | sim, sim | |||||
| D3DUSAGE_SOFTWAREPROCESSING sim sim sim sim sim | Sim | ||||||
| D3DUSAGE_TEXTAPI sim | Sim | ||||||
| D3DUSAGE_WRITEONLY sim sim |
Use CheckDeviceFormat para verificar o suporte de hardware para esses usos.
Cada um dos métodos de criação de recursos está listado aqui.
- CreateCubeTexture
- CreateDepthStencilSurface
- CreateIndexBuffer
- CreateOffscreenPlainSurface
- CreateRenderTarget
- CreateTexture
- CreateVertexBuffer
- CreateVolumeTexture
As funções de texturização D3DXCreatexxx também usam alguns desses valores constantes para a criação de recursos.
Para obter mais informações sobre tipos de pool e suas restrições com determinados usos, consulte D3DPOOL.
Requisitos
| Requisito | Valor |
|---|---|
| Cabeçalho |
|
Consulte também