Converter PLY para GLTF

Aqui você converte PLY para GLTF de graça e sem conta: solte o arquivo acima e em poucos segundos o resultado está pronto para baixar. A conversão acontece dentro do seu próprio navegador, então o arquivo nunca é enviado. Funciona igual no Windows, no macOS e no Linux e também no iPhone e no Android, e continua funcionando mesmo se você cortar a conexão.

  • Onde roda No seu navegador. O arquivo nunca é enviado.
  • Reconstruído GLTF funciona de um jeito diferente de PLY. Não é a degradação gradual de um codec com perda: o que GLTF consegue expressar é reproduzido fielmente, e o que não tem equivalente ali não sobrevive de jeito nenhum.
  • Limite de tamanho Até 100 MB por arquivo, de graça e sem conta.
  • Vale saber Só a geometria. Materiais, cores, texturas e animação não vão junto, e um modelo colocado várias vezes volta com cada cópia fixada na sua própria posição.

Até 100 arquivos de uma vez. Formatos misturados não são problema.

Um navegador não abre um PLY, e esse é o motivo inteiro

Nenhum navegador renderiza PLY. Navegar até um baixa o arquivo, e não existe elemento nem visualizador embutido que mostre isso. glTF é o formato que a web adotou para 3D — three.js, Babylon.js e o elemento `model-viewer` carregam ele como primeira escolha —, então colocar um escaneamento na frente de um visitante significa converter primeiro.

Isso é uma decisão de roteamento, não de qualidade. O PLY não é um arquivo pior; é um arquivo para outra sala. Scanners, CloudCompare, MeshLab e toda biblioteca de processamento de geometria falam esse formato fluentemente, e nada disso ajuda quando a exigência é uma página que alguém abre no celular.

A cor que fez dele um PLY não chega ao glTF

Isso precisa ser dito primeiro porque decide se vale continuar. Uma captura de fotogrametria ou luz estruturada é guardada como PLY em grande parte porque o formato tem propriedades de vermelho, verde e azul em cada vértice, que é como um escaneamento carrega sua aparência sem precisar de um atlas de textura. O leitor aqui pega x, y e z e ignora toda outra propriedade, e o escritor emite só posições e índices.

Então a captura de uma cerâmica pintada chega no visualizador como cinza sem textura. Para um escaneamento geométrico — uma peça de reposição, um molde, uma checagem de dimensão — isso está exatamente certo e nada se perdeu. Para um artefato de museu ou um produto, a cor era o ponto, e esta conversão produz algo pior que a origem justamente no aspecto que o público vai notar. Se é o seu caso, a rota é uma exportação com textura embutida do software de escaneamento, não uma conversão de geometria.

Uma nuvem de pontos em PLY é recusada em vez de convertida

Scanners produzem pontos antes de produzir superfícies, e um PLY com vértices e sem elemento de face é uma nuvem de pontos. A conversão para com o motivo declarado: este PLY é uma nuvem de pontos, tem pontos mas não faces, e transformar pontos numa superfície é reconstrução, não conversão.

É uma recusa, não uma falha, e é a resposta honesta — reconstrução envolve escolhas sobre suavização, profundidade e preenchimento de buracos que mudam o resultado substancialmente, e nenhum conversor deveria tomar essas decisões silenciosamente. A reconstrução de superfície de Poisson no MeshLab é a rota comum e leva poucos minutos; a maioria dos softwares de escaneamento também exporta uma malha reconstruída diretamente.

Densidade de escaneamento contra o que uma página consegue carregar

Capturas brutas são densas por natureza: um scanner de mão produz rotineiramente de um a cinco milhões de triângulos para um objeto do tamanho de um sapato, porque a malha vem da taxa de amostragem, não do que a forma precisa. Uma página web tem um orçamento bem diferente — um modelo que carrega rápido num celular médio e mantém uma taxa de quadro é medido em dezenas de milhares de triângulos, não milhões.

Reduza antes de converter, não depois. A decimação de colapso de aresta quádrica do MeshLab, com uma contagem de faces alvo, ou o modificador Decimate do Blender, ambos preservam bem a silhueta e levam uma passagem. Um escaneamento reduzido em noventa e cinco por cento frequentemente é indistinguível a 600 pixels de largura.

O documento glTF escrito a partir de um PLY

Uma malha, uma primitiva, modo 4. As posições viram um acessor de ponto flutuante e os índices um acessor de inteiro sem sinal, com uma visão de buffer para cada um e um único buffer segurando os dois. O acessor de posição carrega mínimo e máximo, que a especificação exige e que visualizadores usam para enquadrar o modelo.

Esses seis números de limite também são a checagem de sanidade mais rápida disponível. Abra o JSON, leia o mínimo e máximo do acessor de posição, e você tem a caixa delimitadora nas unidades da origem sem carregar nada. Se o modelo é mil vezes maior ou menor do que esperava, é ali que você descobre.

Pegue o GLB para entrega e o glTF para leitura

Esta conversão produz um arquivo autocontido, porque uma conversão produz um único download e um `.gltf` com um `.bin` ao lado seriam dois. Os dados de vértice são, portanto, codificados em base64 dentro de uma URI de dado no buffer, e base64 custa quatro caracteres para cada três bytes — cerca de trinta e três por cento — além do JSON formatado com indentação.

Para um arquivo que você vai abrir num editor, esse é um preço justo. Para um arquivo que um visitante baixa, não é, e a conversão para GLB produz a mesma geometria como um único arquivo binário sem sobrecarga de codificação. Use glTF quando quiser ler os acessores ou validar o documento; use GLB quando o destino é uma página.

Vértices não são soldados, porque um PLY chega já indexado

Algumas origens deste site são soldadas na entrada — um STL guarda três vértices independentes por triângulo e produziria um arquivo quatro vezes maior sem essa etapa. Um PLY já guarda uma lista de vértices indexada, então as posições e faces atravessam como estavam.

A contagem de vértices no glTF, portanto, bate com a contagem no cabeçalho do PLY, o que torna a conversão fácil de verificar. Também significa que qualquer duplicata deixada pelo scanner ou pela reconstrução atravessa junto. Faces com mais de três cantos são fan-triangulated, correto para quadriláteros convexos que reconstrução produz e pode se comportar mal num polígono côncavo.

Nem o PLY nem o glTF registram escala ou qual lado é para cima

O PLY não declara unidade nem orientação. O glTF também não declara unidade, embora todo o ecossistema dele presuma que uma unidade é um metro e todo visualizador seja Y-para-cima. Software de escaneamento não é consistente com nenhum dos dois — milímetro é comum, Z-para-cima é comum, e algumas ferramentas centralizam o modelo enquanto outras deixam onde a captura aconteceu.

Então espere rotacionar e escalar na chegada, e faça isso na cena do próprio visualizador em vez de editar o arquivo, o que mantém a origem honesta. No `model-viewer`, um atributo de orientação e um de escala resolvem em duas linhas. Estabeleça os números uma vez contra uma dimensão que você consiga verificar na origem e registre isso, porque todo escaneamento do mesmo aparelho vai precisar do mesmo par.

Iluminando uma malha cinza para o escaneamento ainda parecer um objeto

Já que o glTF não tem material, tudo que o visitante vê vem da iluminação do visualizador. Cinza chapado sob uma única luz parece um borrão; a mesma malha sob um mapa de ambiente com alguma oclusão de ambiente parece um objeto esculpido, e essa diferença está inteiramente na página, não no arquivo.

O `model-viewer` traz iluminação de ambiente neutra e um atributo de intensidade de sombra que custa uma linha e faz a maior parte do trabalho. Como a malha convertida não carrega normais de vértice, o visualizador as calcula, o que produz sombreamento facetado num escaneamento decimado — geralmente desejável, já que mostra a superfície.

Onde o PLY é lido enquanto vira um glTF

Nesta aba do navegador, com JavaScript puro. Nenhum módulo WebAssembly é baixado, nada é enviado, não existe conta nem limite diário. A guia de rede durante uma conversão é o jeito de conferir isso, não esta frase.

Escaneamentos são uma categoria incomumente sensível. Uma captura de um artefato de museu frequentemente está sob acordo sobre para onde os dados podem ir, uma captura de uma pessoa é biométrica em tudo menos no nome, e um escaneamento de um componente é o design de alguém. O limite gratuito é 100 MB por arquivo, uma malha decimada grande ou uma malha bruta pequena.

Como converter PLY para GLTF

  1. Solte o seu arquivo PLY nesta página, ou clique para escolher um.
  2. Escolha GLTF como destino. A conversão acontece no seu navegador e o arquivo não é enviado.
  3. Baixe o arquivo GLTF pronto.

PLY ou GLTF: o que muda

PLY comparado com GLTF
PLYGLTF
Nome completoPolygon File FormatGL Transmission Format
Extensão do arquivo.ply.gltf
Tipo de mídiamodel/plymodel/gltf+json
Publicado pela primeira vez19942015
Publicado porStanford UniversityKhronos Group
EspecificaçãoglTF 2.0
LicençaPadrão abertoPadrão aberto
Situação hojeAtualAtual
Abre no navegadorNenhum navegadorNenhum navegador
Considerado no lugarOBJ, STLGLB, OBJ

Abrir o resultado

Blender lê tanto PLY quanto GLTF, então dá para comparar o resultado com o original sem um segundo programa.

Para que serve cada formato

Os dois miram trabalhos diferentes: PLY em a digitalização e mover dados entre programas, GLTF em a web e entregar um arquivo pronto. Vale pesar isso antes, porque o motivo de um existir costuma ser o motivo de o outro ser incômodo.

GLTF vem da Khronos Group é de 2015, descrito em glTF 2.0. Blender, three.js e Babylon.js leem o formato.

PLY foi publicado em 1994 e GLTF em 2015. O mais antigo costuma ser o arquivo mais seguro para entregar; o mais novo faz o mesmo com menos bytes.

De PLY para GLTF: perguntas frequentes

Meu arquivo PLY é enviado para algum lugar?

Não. Esta conversão acontece inteiramente no seu navegador, então o arquivo não sai do seu aparelho. Você mesmo pode conferir: abra a aba de rede das ferramentas de desenvolvedor e converta alguma coisa. Você verá a própria página e as requisições de estatística e de publicidade com que este serviço é pago, e nenhuma que leve o seu arquivo.

Converter PLY para GLTF é grátis?

É. Sem conta, sem marca d’água e sem cota diária para gastar: roda no seu próprio aparelho, então você pode voltar quantas vezes quiser. O navegador processa arquivos de até 100 MB, 100 por vez.

Perde qualidade ao converter PLY para GLTF?

PLY e GLTF descrevem o conteúdo de maneiras radicalmente diferentes. A conversão é, portanto, uma reconstrução e não uma cópia: fiel, mas não idêntica byte a byte. Só a geometria. Materiais, cores, texturas e animação não vão junto, e um modelo colocado várias vezes volta com cada cópia fixada na sua própria posição.

Preciso instalar alguma coisa para abrir um arquivo GLTF?

Para a conversão, não: ela acontece no navegador que você já tem aberto. Para abrir o resultado você precisa depois do programa com que o seu aparelho normalmente exibe GL Transmission Format.

Mais sobre esses formatos