Blog do STL Viewerstlviewer.swift.id

Como abrir arquivo OBJ com cores (OBJ + MTL) no Android

Por Ihwan · · 4 min de leitura

Você recebeu um modelo .obj que no computador do colega aparecia todo colorido, mas no seu celular ele abre cinza, de uma cor só. O arquivo não está estragado: o OBJ quase nunca anda sozinho. As cores ficam num segundo arquivo, o .mtl, e às vezes em imagens de textura. Este guia explica como abrir arquivo OBJ com cores no Android e quando é melhor nem se preocupar com elas.

Resumindo: o OBJ guarda a forma e o MTL guarda as cores e materiais. Para ver as cores num visualizador OBJ, selecione os dois arquivos juntos ao abrir. Se só o OBJ for aberto, o modelo aparece numa cor única. Para impressão em uma cor, as cores não fazem diferença e o OBJ ou um STL funcionam igual.

Como o OBJ e o MTL trabalham juntos

Dentro de um OBJ, que é um arquivo de texto, existe uma linha como esta:

mtllib vaso.mtl

Ela diz: "as cores estão no arquivo vaso.mtl, na mesma pasta". Mais abaixo, linhas como usemtl esmalte_azul indicam qual material vale para cada grupo de faces. O MTL, por sua vez, define cada material:

newmtl esmalte_azul
Kd 0.10 0.30 0.80

O Kd é a cor difusa, em valores de 0 a 1 para vermelho, verde e azul. Alguns materiais apontam ainda para imagens (map_Kd textura.png), que pintam a superfície com detalhes como madeira ou pele. Texturas são outro assunto: aqui o foco são as cores definidas no próprio MTL.

Por que as cores somem

CausaComo reconhecerSolução
O MTL não foi enviadoSó existe o .obj na pasta ou na conversaPeça o .mtl a quem mandou, ou um ZIP com tudo
O MTL não foi selecionadoOs dois existem, mas você abriu só o OBJSelecione os dois juntos no seletor de arquivos
O nome do MTL não bateO OBJ pede modelo.mtl, mas o arquivo se chama modelo (1).mtlRenomeie para o nome que o OBJ espera; programas de computador procuram o MTL por esse nome
O modelo nunca teve coresO OBJ não tem linha mtllibNada a fazer: é monocromático

O problema do "(1)" é muito comum quando o arquivo é baixado duas vezes no celular. Apps de mensagens também costumam renomear arquivos ou mandar só o primeiro de uma seleção.

Abrir OBJ com cores no Android, passo a passo

Com o STL Viewer para Android:

  1. Coloque o .obj e o .mtl na mesma pasta do celular (por exemplo, Download).
  2. No app, toque em Abrir arquivo.
  3. No seletor, mantenha o dedo sobre o .obj para ativar a seleção múltipla e toque também no .mtl.
  4. Confirme. O modelo abre com as cores do arquivo.
  5. Se as cores não aparecerem, toque em Cor na barra de ferramentas e escolha Cores do arquivo.

Se você abrir só o OBJ, o app mostra uma nota avisando que faltam as cores e qual MTL abrir junto. E se abrir só o MTL, ele explica que aquele é um arquivo de material e precisa ser selecionado com o .obj. O guia abrir arquivos mostra a seleção múltipla em detalhe.

Para testar sem ter um arquivo, abra o modelo de exemplo Vaso: ele é um OBJ com MTL.

Exemplo prático: um modelo recebido no chat

Um amigo modelou uma peça de xadrez em duas cores e mandou pelo app de mensagens: rainha.obj (2,4 MB) e rainha.mtl (1 KB). Você salva os dois em Download, abre juntos e vê a peça com coroa dourada e corpo branco. O painel Informações do modelo mostra 32 × 32 × 78 mm, cerca de 48 000 triângulos e malha fechada "Sim". A peça cabe com folga em qualquer mesa e o volume já dá base para a estimativa de filamento.

Observação: as cores servem para visualizar. Uma impressora FDM de um bico vai imprimir a peça na cor do filamento carregado, não importa o que o MTL diga. Para impressão multicolorida, o caminho mais prático costuma ser o 3MF.

Como enviar um OBJ sem perder as cores

Se é você quem manda o arquivo, evite o problema na origem:

  1. Coloque o .obj, o .mtl e eventuais imagens numa pasta só.
  2. Compacte a pasta num ZIP e envie o ZIP, não os arquivos soltos. Apps de mensagens às vezes mandam apenas o primeiro arquivo de uma seleção.
  3. Do outro lado, a pessoa extrai o ZIP e seleciona o .obj e o .mtl juntos.

Abrir o ZIP direto no STL Viewer também funciona, mas nesse caso o app carrega o maior modelo do arquivo. Para garantir que o MTL seja usado, extrair e selecionar os dois é o caminho mais seguro.

Quando é melhor exportar STL para imprimir

OBJ é ótimo para trocar modelos entre programas de modelagem e renderização. Para imprimir, ele tem algumas armadilhas:

Se a peça vai ser impressa em uma cor, exportar como STL a partir do programa de origem simplifica tudo. Se tem várias cores, considere o 3MF; veja o que é um arquivo 3MF. Para entender as respostas da verificação de malha, leia malha fechada, e para outros formatos, o guia de formatos 3D no celular. Mais no site do STL Viewer.

Perguntas frequentes

Por que meu OBJ abre sem cores?

As cores ficam no arquivo .mtl. Se ele não foi enviado ou não foi selecionado junto com o .obj, o modelo aparece numa cor só.

Como abrir OBJ e MTL juntos no celular?

No STL Viewer, toque em Abrir arquivo e selecione os dois arquivos ao mesmo tempo no seletor.

As cores do OBJ saem na impressão?

Não numa impressora FDM de um bico: a peça sai na cor do filamento. Para multicolor, o 3MF costuma ser mais prático.