Mapeamento MIP direto

Utilize mapeamento MIP para dimensionar imagens grandes, caso necessário.

Outro novo recurso disponível no Flash Player 10.1 e no AIR 2.5 em todas as plataformas está relacionado ao mipmap. O Flash Player 9 e o AIR 1.0 introduziram um recurso de mipmap que aprimorou a qualidade e o desempenho de bitmaps com resolução reduzida.

Nota: O recurso de mapeamento MIP se aplica apenas para imagens dinamicamente carregadas ou bitmaps incorporadas. O mapeamento MIP não se aplica a objetos de exibição que tenham sido filtrados ou armazenados em cache. O mapeamento MIP pode ser processado somente se o bitmap tiver uma largura e uma altura que sejam números pares. Quando uma largura ou altura com número ímpar for encontrada, o mapeamento MIP é interrompido. Por exemplo, uma imagem de 250 x 250 pode ser mapeada até 125 x 125, mas seu mapeamento MIP é interrompido nesse ponto. Neste caso, pelo menos uma das dimensões é um número ímpar. Bitmaps com dimensões que forem potências de dois obtêm os melhores resultados como, por exemplo: 256 x 256, 512 x 512, 1024 x 1024, e assim por diante.

Por exemplo, imagine que uma imagem de 1024 x 1024 seja carregada, e um desenvolvedor queira escalar a imagem para criar uma miniatura em uma galeria. O recurso de mapeamento MIP renderiza a imagem corretamente quando escalada pelo uso das versões intermediárias com resolução reduzida do bitmap como texturas. Versões anteriores do tempo de execução criavam versões intermediárias com resolução reduzida do bitmap na memória. Se uma imagem de 1024 x 1024 fosse carregada e exibida como 64 x 64, as versões mais antigas do tempo de execução criariam cada bitmap de metade do tamanho. Por exemplo, neste caso seriam criados bitmaps de 512 x 512, 256 x 256, 128 x 128 e 64 x 64.

O Flash Player 10.1 e o AIR 2.5 agora oferecem suporte ao mipmap diretamente da fonte original para o tamanho de destino necessário. No exemplo anterior, somente o bitmap original de 4 MB (1024 x 1024) e o bitmap com mapeamento MIP de 16 KB (64 x 64) seriam criados.

A lógica do mapeamento MIP também funciona com o recurso de carregamento dinâmico de bitmap. Se somente o bitmap de 64 x 64 for usado, o bitmap original de 4 MB será liberado da memória. Se for preciso recriar o mapa MIP, o original será recarregado. Além disso, se outros bitmaps com mapeamento MIP de vários tamanhos forem necessários, a cadeia de bitmaps de mapas MIP será usada para criar o bitmap. Por exemplo, se for preciso criar um bitmap de 1:8, os bitmaps de 1:4, 1:2 e 1:1 serão examinados para determinar qual deve ser carregado na memória primeiro. Se nenhuma outra versão for encontrada, o bitmap original de 1:1 será carregado a partir do recurso e usado.

O descompactador de JPEG pode executar o mapeamento MIP em seu próprio formato. Esse mapeamento MIP direto permite que um bitmap grande seja descompactado diretamente para um formato de mapa MIP, sem a necessidade de carregar toda a imagem descompactada. A geração do mapa MIP é consideravelmente mais rápida, e a memória usada por bitmaps grandes não é alocada e então liberada. A qualidade da imagem JPEG é comparável à da técnica geral de mapeamento MIP.

Nota: Usar mapeamento MIP com moderação. Embora ele melhore a qualidade de bitmaps reduzidos, tem um impacto sobre a largura de banda, memória e velocidade. Em alguns casos, uma opção melhor pode ser utilizar um versão pré dimensionada do bitmap de uma ferramenta externa e importá-la em sua aplicação. Não inicie com bitmaps grandes se você apenas pretende dimensioná-los para baixo.