Texture Dirty Regions

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Os aplicativos podem otimizar o subconjunto de uma textura é copiado especificando regiões sujos em texturas. Somente essas regiões marcadas como sujos são copiadas por um chamar para IDirect3DMobileDevice::UpdateTexture. No entanto, as regiões sujos podem ser expandidas para otimizar alinhamento. Quando uma textura é criada, a textura inteira é considerada suja. Apenas o seguinte quatro operações afetam o estado de uma textura sujo:

  • Adicionando uma região suja a uma textura
  • Bloqueando algumas reserva na textura. Esta operação adiciona a região bloqueada como uma região suja. O aplicativo pode desativar essa atualização Automática região sujo se ele tem um melhor conhecimento do real Dirty regiões.
  • Usando a textura como um destino na IDirect3DMobileDevice::CopyRects Marca a textura inteira como sujo.
  • Usando a textura como uma origem em UpdateTexture Limpa todas as regiões dirty na textura de origem.

Regiões sujos são definidas na parte superior nível de uma textura mipmapped usando IDirect3DMobileTexture::AddDirtyRect. UpdateTexture Pode expansão da região suja para baixo a encadear MIP em ordem para minimizar o número de bytes copiados para cada subnível. Observe que as coordenadas região sujo subnível arredondado para fora, that is, seus fracionário são partes arredondado para a borda mais próxima da textura.

Passando NULL para a pDirtyRect Parâmetros em IDirect3DMobileTexture::AddDirtyRect Expande a região suja rosto a textura inteira.

Cada método bloqueio pode levar D3DMLOCK_NO_DIRTY_UPDATE (consulte Valores D3DMLOCK) que impede que as alterações para o estado Dirty da textura. Para obter mais informações, consulte Recursos de bloqueio.

Aplicativos devem usar D3DLOCK_NO_DIRTY_UPDATE quando informações adicionais sobre o conjunto de regiões alterados durante uma operação bloqueio TRUE está disponível. Você deve detalhes que um bloqueio ou copiar para apenas um subnível — isto é, sem bloqueando ou copiar para o parte superior nível — de textura não atualização as regiões sujos para que textura. Aplicativos assumem a responsabilidade mesma para atualizar regiões sujos quando eles bloqueio níveis inferiores sem bloqueando a nível mais alto.

See Also

Concepts

Textures