Tamanho de ficheiro não é o mesmo que desempenho
Um GLB de 2 MB a 12 fps e um GLB de 20 MB a 60 fps são ambos perfeitamente possíveis. A compressão resolve o tempo de download. Esta ferramenta resolve o tempo de frame — e os dois problemas quase não têm nada em comum.
O que realmente lhe custa frames são as draw calls. Cada primitiva de malha é um comando que a CPU tem de emitir para a GPU, com mudanças de estado à mistura. Um móvel exportado de uma ferramenta CAD como 400 peças separadas emite 400 draw calls por frame, e nenhuma dose de compressão Draco ajudará.
O que faz cada passo
Juntar malhas — funde numa só as primitivas que partilham material e layout de atributos. É o maior ganho em tempo real e costuma levar uma cena de centenas de draw calls para meia dúzia.
Instanciação de GPU — quando a mesma malha aparece muitas vezes (parafusos, cadeiras, árvores), converte-a para EXT_mesh_gpu_instancing para que a GPU desenhe todas as cópias numa única chamada.
Paleta de materiais — funde num único material com atlas os materiais que só diferem na cor base, o que desbloqueia a junção de malhas antes impossível.
Desduplicar — os exportadores escrevem rotineiramente o mesmo accessor, textura ou material duas vezes. Fundi-los poupa memória e permite mais fusões a jusante.
Podar — apaga nós, materiais, texturas e accessors que nada referencia. Ganho puro: nunca altera a aparência.
Soldar — funde vértices duplicados na mesma posição, encolhendo os buffers de índices e melhorando o comportamento da cache.
Achatar — colapsa nós aninhados cuja única função é guardar uma transformação.
Reordenar — reorganiza índices e vértices para que a cache de vértices pós-transformação da GPU acerte muito mais vezes. Tipicamente 5–15 % de melhoria do lado da GPU, de graça.
Accessors esparsos — armazena de forma compacta dados quase todos a zero (comuns em morph targets).
Normais — gera normais de vértice quando o exportador se esqueceu delas, que é a razão pela qual alguns modelos aparecem facetados ou pretos.
A ordem importa
Estes passos não são independentes. A soldadura tem de acontecer antes da junção, ou as malhas fundidas arrastam vértices duplicados. A instanciação tem de vir antes do achatamento, porque achatar destrói a estrutura repetida que a instanciação deteta. A reordenação tem de ser a última, quando os buffers de índices finais já existem. A ferramenta impõe esta ordem — os interruptores só decidem que passos correm.
Duas predefinições
- Tempo real — tudo ligado. Use ao preparar um ativo para um visualizador web ou um motor.
- Seguro — apenas desduplicar, podar, soldar e reordenar. Nada de estrutural muda, por isso nomes de nós e hierarquia ficam intactos.
Escolha Seguro se a sua aplicação procura objetos pelo nome ou anima nós específicos. Juntar e achatar quebrariam isso.
O que não vai fazer
A junção só funde malhas que partilham material. Um modelo com 40 materiais genuinamente diferentes continuará a emitir pelo menos 40 draw calls — aí a solução é o atlas de texturas, que é trabalho de modelação e não automatizável. A tabela de resultados passo a passo diz-lhe honestamente quanto cada passo conseguiu.
Privacidade
Todas as transformações correm localmente no seu navegador. Nada é enviado, guardado ou registado.
Tiny Online Tools







