Aprovechamiento de la técnica de mipmapping

Flash Player 9 y posterior, Adobe AIR 1.0 y posterior

Los mapas MIP (también denominados mipmaps ), son mapas de bits agrupados de forma conjunta y asociados a una textura para aumentar el rendimiento y la calidad de representación en tiempo de ejecución. Cada imagen de mapa de bits del mapa MIP es una versión de la imagen de mapa de bits principal, pero a un nivel detalle menor que la imagen principal.

Por ejemplo, puede tener un mapa MIP que una imagen principal de 64 × 64 píxeles con la máxima calidad. Las imágenes de menor calidad del mapa MIP serían de 32 × 32, 16 × 16, 8 × 8, 4 × 4, 2 × 2 y 1 × 1 píxeles.

El flujo de texturas es la capacidad de cargar primero el mapa de bits de menor calidad y, a continuación, visualizar progresivamente mapas de bits de mayor calidad a medida que se carguen. Como los mapas de bits de menor calidad son pequeños, se cargan más rápido que la imagen principal. Por ello, los usuarios de la aplicación podrán ver la imagen de una aplicación antes de que se cargue el mapa de bits principal con mayor calidad.

Flash Player 9.115.0. y las versiones posteriores y AIR implementan esta tecnología (el proceso se denomina mipmapping ), creando versiones optimizadas de escala variable de cada mapa de bits (comenzando en un 50%).

Flash Player 11.3 y AIR 3.3 admiten flujo de texturas mediante el parámetro streamingLevels de los métodos Context3D.createCubeTexture() y Context3D.createTexture() .

La compresión de texturas permite guardar imágenes de textura en formato comprimido directamente en la GPU, ahorrando así memoria de GPY y ancho de banda de memoria. Normalmente, las texturas comprimidas se comprimen sin conexión y se cargan en la GPU en formato comprimido. No obstante, Flash Player 11.4 y AIR 3.4 admiten compresión de texturas en tiempo de ejecución, y esto resulta útil en muchas situaciones, por ejemplo, cuando se procesan texturas dinámicas de ilustraciones vectoriales. Para utilizar la compresión de texturas en tiempo de ejecución, lleve a cabo estos pasos:

  • Cree el objeto de textura llamando al método Context3D.createTexture() , transfiriendo flash.display3D.Context3DTextureFormat.COMPRESSED o flash.display3D.Context3DTextureFormat.COMPRESSED_ALPHA en el tercer parámetro.

  • Mediante la instancia de flash.display3D.textures.Texture devuelta por createTexture() , llame a flash.display3D.textures.Texture.uploadFromBitmapData() o a flash.display3D.textures.Texture.uploadFromByteArray() . Estos métodos cargan y comprimen la textura en un solo paso.

Los mapas MIP se crean para los siguientes tipos de mapas de bits:

  • Un mapa de bits (archivos JPEG, GIF o PNG) que se muestra utilizando la clase Loader de ActionScript 3.0.

  • Un mapa de bits de la biblioteca de un documento de Flash Professional.

  • Un objeto BitmapData.

  • Un mapa de bits que se muestra utilizando la función loadMovie() de ActionScript 2.0.

Los mapas MIP no se aplican a objetos filtrados o clips de película almacenados en caché de mapa de bits. Sin embargo, los mapas MIP se aplican si dispone de transformaciones de mapa de bits en un objeto de visualización filtrado, aunque el mapa de bits esté en un contenido con máscara.

La técnica de "mipmapping" se realiza automáticamente, pero puede seguir algunas directrices para garantizar que sus imágenes aprovechan esta optimización:

  • Para la reproducción de vídeo, establezca la propiedad smoothing en true para el objeto Video (consulte la clase Video).

  • Para los mapas de bits, la propiedad smoothing no tiene que establecerse en true , pero las mejoras de calidad serán más visibles si los mapas de bits utilizan el suavizado.

  • Utilice tamaños de mapa de bits que sean divisibles por 4 o por 8 para imágenes bidimensionales (por ejemplo, 640 x 128, que se puede reducir del siguiente modo: 320 x 64 > 160 x 32 > 80 x 16 > 40 x 8 > 20 x 4 > 10 x 2 > 5 x 1).

    En el caso de texturas tridimensionales, utilice mapas MIP en los que cada imagen esté a una resolución que sea potencia de 2 (es decir, 2^n). Por ejemplo, la imagen principal está a una resolución de 1024 x 1024 píxeles. Las imágenes de menor calidad del mapa MIP estarían entre 512 x 512, 256 x 256, 128 x 128 y 1 x 1 píxeles para un total de 11 imágenes en el mapa MIP.

    Tenga en cuenta que la técnica de mipmapping no se produce para el contenido de mapa de bits con una altura o anchura distinta.