O validador oficial, no seu navegador
Isto não é uma reimplementação. Ele executa o glTF-Validator da Khronos — o mesmo motor por trás do validador oficial online e das verificações de exportação embutidas em várias ferramentas de DCC — compilado para JavaScript e rodando localmente na sua máquina.
Essa diferença importa quando é você quem precisa dizer a um fornecedor que a exportação dele está quebrada. "O validador oficial da Khronos aponta ACCESSOR_INDEX_OOB em /meshes/3/primitives/0/indices" é uma conversa que termina rápido. "Um site qualquer disse que estava errado" não é.
Como ler as severidades
O validador reporta quatro níveis, e eles não são igualmente alarmantes.
Erros significam que o arquivo viola a especificação glTF 2.0. Um visualizador permissivo ainda pode abri-lo — o three.js em especial é tolerante — mas você não tem garantia nenhuma quanto a outras implementações. Corrija-os.
Avisos apontam coisas legais, porém quase certamente não intencionais: um accessor cujos min/max declarados não batem com os dados, uma textura sem imagem, um nó com transformação identidade e sem filhos.
Informações e dicas são apenas orientativas. UNUSED_OBJECT e NODE_EMPTY aparecem em muitos assets de produção perfeitamente bons — o exportador deixou um nó auxiliar para trás, só isso. Um arquivo limpo com nove dicas continua sendo um arquivo limpo.
Validar um .gltf com arquivos externos
Um .gltf é um documento JSON que aponta para buffers .bin e imagens separados. Se você validar apenas o JSON, cada uma dessas referências será reportada como recurso ausente e o relatório fica inútil.
Adicione os arquivos complementares no segundo seletor e eles serão resolvidos corretamente. O que continuar faltando é listado explicitamente — e isso, por si só, já é um achado legítimo: um .gltf entregue sem o seu .bin é uma entrega quebrada.
Achados comuns e o que significam
ACCESSOR_INDEX_OOB— um buffer de índices referencia um vértice que não existe. Quase sempre um exportador defeituoso ou um arquivo truncado.ACCESSOR_MIN_MISMATCH/ACCESSOR_MAX_MISMATCH— os limites declarados discordam dos dados reais. Quebra o descarte por frustum e qualquer consumidor que confie no cabeçalho.MESH_PRIMITIVE_NO_POSITION— uma primitiva sem posições de vértice. Nada consegue renderizá-la.UNSUPPORTED_EXTENSION— o arquivo usa uma extensão que o validador não conhece. Não é necessariamente errado, mas vale conferir com o seu motor de destino.MESH_PRIMITIVE_TANGENT_WITHOUT_NORMAL— tangentes sem normais, o que não faz sentido.UNUSED_OBJECT— algo definido e nunca referenciado. Inofensivo, mas é peso morto no arquivo.
O resumo do recurso
Além da lista de problemas, o validador informa os números que importam para desempenho: chamadas de desenho, total de vértices e triângulos, número máximo de conjuntos de UV e o máximo de influências de ossos por vértice. Este último merece atenção — muitos pipelines móveis limitam a quatro influências, e um modelo criado com oito vai deformar errado em vez de falhar de forma evidente.
Privacidade
O validador roda como JavaScript no seu navegador. Nenhum arquivo, buffer ou textura é enviado, o que o torna seguro para trabalhos de cliente e assets ainda não lançados.
Tiny Online Tools







