Por qué un GLB se hace más grande después de la optimización

Una producción mayor no siempre significa que la herramienta falló. La nueva configuración puede favorecer un formato o precisión diferente, y es posible que la entrada ya esté comprimida. Compare las extensiones originales y de salida junto con el comando antes de cambiar más configuraciones.

Compruebe si se eliminó la compresión de la geometría

El ajuste preestablecido Conservador no solicita compresión Meshopt. Si la entrada ya usa Meshopt, la optimización con la compresión desactivada puede producir un archivo más grande incluso cuando el número de triángulos sigue siendo el mismo. Elija el ajuste preestablecido de archivo más pequeño si desea Meshopt en la salida y su aplicación lo admite.

Prueba en la muestra de ondulaciónTamaño (bytes)Triángulos
Meshopt-entrada comprimida39,2488,192
Reprocesado sin compresión119,1208,192

Esta prueba nativa gltfpack 1.3 reprocesa una versión optimizada de nuestro ejemplo CC0. El archivo crece porque la configuración de salida difiere, no porque se hayan agregado más triángulos. Es un ejemplo de por qué no se garantiza que la optimización repetida siga reduciendo un archivo.

Verifique la codificación de texturas y los cambios de precisión.

UASTC puede ser mucho más grande que ETC1S. Es una opción de calidad, no una configuración de archivo más pequeño. De manera similar, deshabilitar la cuantificación de la geometría o aumentar la precisión puede aumentar la cantidad de datos. Compare esas opciones con las configuraciones que produjeron su entrada.

Un modelo o una textura pequeños también pueden generar metadatos o gastos generales de contenedor que superan los ahorros. No existe un ahorro mínimo universal. Si el nuevo formato no ofrece ningún beneficio a su aplicación, conservar el original puede ser la mejor opción.

Mida la misma cantidad en ambos lados.

Compare los bytes del archivo descargado con los bytes del archivo descargado. Un panel de red del navegador puede mostrar el tamaño transferido después de la compresión HTTP, mientras que un administrador de archivos muestra el tamaño GLB almacenado. Ninguno de los números mide directamente la memoria de textura después de cargarla en el GPU.

Cambie una configuración y compare nuevamente

Volver a la entrada original. Primero haga coincidir su elección de compresión, luego verifique la codificación y precisión de la textura. Guarde cada comando con su resultado para que pueda identificar el cambio que aumentó el archivo. No compense un cambio de codificación eliminando inmediatamente más geometría.

Comparar ETC1S, UASTC y WebP →

Planifique una comparación controlada del tamaño de los archivos →

Referencia del motor: gltfpack

Abra el optimizador ↗