significa que mipmapping mipmap mip gta performance opengl directx mipmaps

performance - mipmapping - mipmap minecraft que es



OpenGL/DirectX: ¿Cómo mejora MipMapping el rendimiento? (2)

Los Mipmaps son útiles al menos por dos razones:

  • calidad visual: las escenas se ven mucho mejor a la distancia, hay más borrosidad (que por lo general tiene mejor aspecto que los píxeles parpadeantes). Además, se puede usar el filtrado anisotrópico que mejora mucho la calidad visual.
  • Rendimiento : dado que para objetos distantes podemos usar texturas más pequeñas, toda la operación debería ser más rápida: a veces todo el mip se puede colocar en la memoria caché de texturas. Se llama coherencia de caché.
  • en general, los mipmaps solo necesitan un 33% más de memoria, por lo que es bastante económico tener una mejor calidad y una posible ganancia de rendimiento. Tenga en cuenta que la mejora del rendimiento real se debe medir para una estructura de escena particular.

ver información aquí: http://www.tomshardware.com/reviews/ati,819-2.html

Entiendo el mipmapping bastante bien. Lo que no entiendo (a nivel de hardware / controlador) es cómo el mipmapping mejora el rendimiento de una aplicación (al menos a menudo se afirma). El controlador no sabe hasta que se ejecuta el sombreador de fragmentos a qué nivel de mipmap se va a acceder, por lo que de todos modos todos los niveles de mipmap deben estar presentes en la VRAM, ¿o estoy equivocado?

¿Qué está causando exactamente la mejora del rendimiento?


Sin duda sabe que cada téxel en los LOD inferiores de la cadena de mip cubre un porcentaje más alto del área total de la imagen de textura, ¿correcto?

Cuando muestree una textura en una ubicación distante, el hardware utilizará un LOD menor. Cuando esto sucede, el vecindario de muestra necesario para resolver la minificación se hace más pequeño, por lo que son necesarias menos recuperaciones (sin almacenamiento). Se trata de la cantidad de memoria que realmente se tiene que buscar durante el muestreo de texturas, y no de la cantidad de memoria ocupada (suponiendo que no se esté ejecutando la manipulación de texturas).

Creo que esto probablemente merece una representación visual, así que tomaré prestado el siguiente diagrama de la excelente serie de tutoriales en arcsynthesis.org .

http://opengl.datenwolf.net/gltut/html/Texturing/MipmapDiagram.svg

A la izquierda, ves lo que sucede cuando muestras ingenuamente en un único LOD todo el tiempo (este diagrama muestra el filtrado de minificación lineal, por cierto) y a la derecha ves lo que sucede con mipmapping. No solo mejora la calidad de la imagen ajustando más estrechamente el tamaño efectivo del fragmento, sino que debido a que el número de texels en los LOD mipmap inferiores es menor, se puede almacenar en caché de forma mucho más eficiente.