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.
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 irá gerar automaticamente mipmaps. Consulte geração automática de Mipmaps (Direct3D 9). A geração automática de mipmaps não é suportada 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 utilizado 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 o uso de memória dinâmica. Isso é útil para os drivers porque permite que eles decidam onde colocar o buffer. Em geral, os buffers de vértice estáticos são colocados na memória de vídeo e os buffers de vértice dinâmico são colocados na memória AGP. Observe que não há uso estático separado. Se você não especificar D3DUSAGE_DYNAMIC, o buffer de vértice se tornará estático.
D3DUSAGE_DYNAMIC é rigorosamente aplicado através do D3DLOCK_DISCARD e D3DLOCK_NOOVERWRITE bandeiras de bloqueio. Como resultado, D3DLOCK_DISCARD e D3DLOCK_NOOVERWRITE são válidos apenas em buffers de vértice criados com D3DUSAGE_DYNAMIC. Eles não são sinalizadores válidos em buffers de vértice estáticos. Para obter mais informações, consulte Gerenciando recursos (Direct3D 9). Para obter mais informações sobre como usar buffers de vértice dinâmicos, consulte Otimizações de desempenho (Direct3D 9). D3DUSAGE_DYNAMIC e D3DPOOL_MANAGED são incompatíveis e não devem ser utilizados em conjunto. Ver D3DPOOL. As 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 Usando texturas dinâmicas. |
|
Permita 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 o Direct3D 9 e o Direct3D 9Ex: Este sinalizador está disponível apenas no Direct3D 9Ex. |
|
Definido para indicar que o buffer de vértice deve ser usado para desenhar N-patches. |
|
Definido 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 do software for necessário para emular sprites de ponto. |
|
O recurso será um destino de renderização.
D3DUSAGE_RENDERTARGET só pode ser utilizado com D3DPOOL_DEFAULT. |
|
Definido para indicar que o buffer de vértice deve ser usado para desenhar primitivos de alta ordem. |
|
Se este sinalizador for usado, o processamento de vértice é feito em 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 modo misto ou software (D3DCREATE_MIXED_VERTEXPROCESSING / D3DCREATE_SOFTWARE_VERTEXPROCESSING) está ativado para esse dispositivo. D3DUSAGE_SOFTWAREPROCESSING deve ser definido para buffers a serem usados com o processamento de vértice de software no modo misto, mas 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 determinado formato de textura pode ser usado como uma textura de vértice durante o processamento de vértice de software. Se puder, a textura deve 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. As texturas criadas com esse sinalizador de uso não podem ser usadas para filtragem de textura. Os buffers de vértice, criados com esse sinalizador de uso, não podem ser usados como fontes de fluxo de entrada. Diferenças entre o Direct3D 9 e o Direct3D 9Ex: Este sinalizador está disponível apenas no Direct3D 9Ex. |
|
Informa o sistema que o aplicativo grava somente 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 esse recurso falharão. Os buffers criados com D3DPOOL_DEFAULT que não especificam D3DUSAGE_WRITEONLY podem sofrer uma penalidade severa de desempenho.
D3DUSAGE_WRITEONLY afeta apenas o desempenho dos buffers de D3DPOOL_DEFAULT . |
|
A definição desse sinalizador indica que o recurso pode conter conteúdo protegido. Diferenças entre o Direct3D 9 e o Direct3D 9Ex: Este sinalizador está disponível apenas no Direct3D 9Ex. |
|
A definição desse sinalizador indica que o acesso ao recurso compartilhado deve ser restrito. Diferenças entre o Direct3D 9 e o Direct3D 9Ex: Este sinalizador está disponível apenas 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. O driver deve então permitir o acesso a processos que tentam abrir esse recurso compartilhado. Diferenças entre o Direct3D 9 e o Direct3D 9Ex: Este sinalizador está disponível apenas no Direct3D 9Ex. |
Observações
Uso e combinações de recursos
Os usos são especificados quando um recurso é criado ou especificados com CheckDeviceType para testar a capacidade de um recurso existente. A tabela a seguir identifica quais usos podem ser aplicados a quais tipos de recursos.
| Utilização | 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 | Criação de superfície | 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 | ||||||
| D3DUSAGE_NONSECURE 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 | ||||||
| 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.
Requerimentos
| Requisito | Valor |
|---|---|
| Cabeçalho |
|
Ver também