Biblioteca de otimização de deep learning que facilita e torna mais eficiente o treinamento distribuído e a inferência de modelos grandes.
zeux/meshoptimizer
Biblioteca C/C++ para otimizar malhas de triângulos, acelerar a renderização em GPUs e reduzir o tamanho do armazenamento e da transmissão das malhas.
- Estrelas
- 8,606
- Forks
- 730
- Issues abertas
- 7
- Último commit
- há 8 dias
O que é?
meshoptimizer é uma biblioteca C e C++ com algoritmos para processar malhas de triângulos. Ela reorganiza buffers de vértices e índices para melhorar a eficiência do cache de vértices da GPU e do acesso à memória, reduz o overdraw e quantiza atributos de vértice em formatos menores.
A biblioteca também oferece simplificação de malhas para gerar versões com menos detalhes, além de geração de meshlets e clusters para mesh shaders, ray tracing em clusters e culling de clusters. Seus codecs de vértices e índices comprimem os dados da malha sem perdas e permitem decodificá-los rapidamente; os dados resultantes também podem ser comprimidos por compressores de uso geral, como zstd ou LZ4.
O núcleo é distribuído como um header e arquivos-fonte C++ que podem ser compilados com CMake ou adicionados diretamente ao build de um projeto. A biblioteca também está disponível como a ferramenta de linha de comando gltfpack, para otimizar arquivos glTF, e por meio de bindings para Rust e JavaScript.
Recursos principais
- 01Reorganiza índices e vértices para melhorar o cache de vértices da GPU e a localidade dos acessos.
- 02Oferece simplificação de malhas para gerar malhas com menos detalhes.
- 03Gera meshlets e limites de clusters para mesh shading e culling de clusters.
- 04Oferece codificação sem perdas de vértices e índices para reduzir o tamanho do armazenamento e da transmissão.
- 05Inclui funções auxiliares de quantização para normais, posições e coordenadas de textura.
- 06Disponibiliza interfaces em C e C++, que podem ser usadas por outras linguagens via FFI.
Casos de uso
- Pré-processar assets de jogos ou de renderizadores em tempo real para reduzir cache misses de vértices e overdraw.
- Criar sequências de LOD com simplificação de malhas para objetos distantes.
- Reduzir o tamanho de modelos glTF para distribuição na web ou em dispositivos móveis usando gltfpack.
- Preparar meshlets para GPUs compatíveis com mesh shaders ou ray tracing em clusters.
Início rápido
- 1
Clone o repositório da versão v1.3
git clone -b v1.3 https://github.com/zeux/meshoptimizer.git - 2
Compile a biblioteca com CMake ou adicione os arquivos de código-fonte necessários ao sistema de compilação do seu projeto
Em coleções
Tópicos
Perguntas frequentes
- O que é meshoptimizer?
- Biblioteca C/C++ para otimizar malhas de triângulos, acelerar a renderização em GPUs e reduzir o tamanho do armazenamento e da transmissão das malhas. meshoptimizer é uma biblioteca C e C++ com algoritmos para processar malhas de triângulos. Ela reorganiza buffers de vértices e índices para melhorar a eficiência do cache de vértices da GPU e do acesso à memória, reduz o overdraw e quantiza atributos de vértice em formatos menores.
- meshoptimizer é gratuito? Qual é a licença?
- meshoptimizer é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- meshoptimizer ainda é mantido?
- Manutenção ativa. O último commit de meshoptimizer foi em 14 de out. de 2026.
- Para que posso usar meshoptimizer?
- Pré-processar assets de jogos ou de renderizadores em tempo real para reduzir cache misses de vértices e overdraw. Criar sequências de LOD com simplificação de malhas para objetos distantes. Reduzir o tamanho de modelos glTF para distribuição na web ou em dispositivos móveis usando gltfpack. Preparar meshlets para GPUs compatíveis com mesh shaders ou ray tracing em clusters.
- Como instalar meshoptimizer?
- Clone o repositório da versão v1.3: git clone -b v1.3 https://github.com/zeux/meshoptimizer.git Compile a biblioteca com CMake ou adicione os arquivos de código-fonte necessários ao sistema de compilação do seu projeto
- Onde consigo meshoptimizer?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/zeux/meshoptimizer
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Engine de renderização em tempo real com base física para Android, iOS, Linux, macOS, Windows e WebGL2, projetada para ser pequena e eficiente no Android.
Reconstrói um objeto a partir de uma imagem de referência em código procedural TypeScript para Three.js, pronto para animação, e não em um arquivo de malha.
Um modelo unificado de texto para movimento que gera animações para esqueletos rigados arbitrários, de humanoides a quadrúpedes, aves, peixes e estruturas semelhantes a insetos.
Uma skill para agentes de programação com IA que transforma ideias em cenas criativas de 3D no Three.js ou Blender, com receitas, kits e captura de frames.
Uma CLI de terminal para compactar, descompactar e listar arquivos em vários formatos, detectando o formato pela extensão do arquivo.