# Modelos 3D

![](/files/e66184e789a8483d759c0f3272974ef08206cae9)

Ao importar modelos 3D para Decentraland, é importante garantir que eles estejam no formato glTF. Esses modelos podem incluir uma variedade de recursos compatíveis. Esta seção trata de como torná-los compatíveis com Decentraland e de seguir as melhores práticas.

Observe que todos os modelos, shaders e textures devem estar em conformidade com o [**limitações da scene**](https://docs.decentraland.org/creator/development-guide/scene-limitations/).

## **Formatos de Modelos 3D Suportados**

Todos os modelos 3D em Decentraland devem estar no formato glTF. [**glTF**](https://www.khronos.org/gltf) (GL Transmission Format) é um projeto aberto da Khronos que fornece um formato comum e extensível para assets 3D, eficiente e altamente interoperável com tecnologias web modernas.

Os modelos glTF podem ter um *.gltf* ou um *.glb* extensão. Os arquivos glTF são legíveis por humanos; você pode abrir um em um editor de texto e lê-lo como um arquivo JSON. Isso é útil, por exemplo, para verificar se as animações estão corretamente anexadas e para conferir seus nomes. Os arquivos glb são binários, então não são legíveis, mas são consideravelmente menores em tamanho, o que é bom para o desempenho da scene.

Recomendamos usar *.gltf* enquanto você estiver trabalhando em uma scene, e depois mudar para *.glb* ao fazer o upload.

Os seguintes aspectos de um modelo 3D podem estar incorporados em um *glTF* arquivo ou ser referenciados externamente:

* As textures podem estar incorporadas ou ser referenciadas a partir de um arquivo de imagem externo.
* Os dados binários sobre geometria, animações e outros aspectos relacionados ao buffer do modelo podem estar incorporados ou ser referenciados a partir de um externo *.bin* ficheiro.

{% hint style="warning" %}
**📔 Nota**: Animações *deve* ser incorporados dentro do *glTF* arquivo para uso em Decentraland. Além disso, cada modelo só pode ter 1 mapa UV.
{% endhint %}

## **Por Que Usamos glTF**

Usamos glTF porque ele fornece um conjunto poderoso de recursos que inclui:

* Objetos hierárquicos
* Estrutura esquelética e animação
* Pipeline robusto para materials e shaders
* Informações da scene, como fontes de luz e câmeras (que podem ser usadas em desenvolvimentos futuros).

Comparado ao *COLLADA*, os recursos compatíveis são muito semelhantes. No entanto, como o glTF foca em fornecer um “formato de transmissão” em vez de um formato de editor, ele é mais interoperável com tecnologias web.

## **Exportar e Converter glTF**

### **Exportar para glTF a partir do Blender**

O Blender tem um exportador nativo de gltf.

Para exportar, selecione os modelos que você quer que sejam contidos no arquivo .glb e então vá para File - Export - glTF 2.0

![](/files/1b2e3c9d71aec63ac9488a06e05030d1993c2c8e) ![](/files/8a66e951a0fd536d31762801f43ecc8a4770511f)

*No painel lateral, marque “Selected Objects” caso queira exportar apenas os objetos selecionados na scene. Além disso, no menu suspenso Mesh, selecione Apply Modifiers (se houver), e então Export.*

### **Exportar para glTF a partir do 3D Studio Max**

O 3D Studio Max não suporta exportação para glTF por padrão, mas você pode instalar um plugin para habilitá-la.

1. Baixe o plugin em [este link](https://github.com/BabylonJS/Exporters/tree/master/3ds%20Max).
2. Instale o plugin seguindo [estas instruções](http://doc.babylonjs.com/resources/3dsmax#how-to-install-the-3ds-max-plugin).
3. Exporte arquivos glTF usando o plugin seguindo [estas instruções](http://doc.babylonjs.com/resources/3dsmax_to_gltf).

### **Exportar para glTF a partir do Maya**

O Maya não suporta exportação para glTF por padrão, mas você pode instalar um plugin para habilitá-la.

1. Instale o plugin seguindo [estas instruções](http://doc.babylonjs.com/resources/maya).
2. Exporte arquivos glTF usando o plugin seguindo [estas instruções](http://doc.babylonjs.com/resources/maya_to_gltf#pbr-materials).

{% hint style="warning" %}
**📔 Nota**: Como alternativa, você pode experimentar [este outro plugin](https://github.com/WonderMediaProductions/Maya2glTF) também.
{% endhint %}

### **Exportar para glTF a partir do Unity**

O Unity não suporta exportação para glTF por padrão, mas você pode instalar um plugin para habilitá-la.

Baixe o plugin em [este link](https://github.com/sketchfab/Unity-glTF-Exporter).

{% hint style="warning" %}
**📔 Nota**: Como alternativa, você pode experimentar [este outro plugin](https://assetstore.unity.com/packages/tools/utilities/collada-exporter-for-unity2017-99793) também.
{% endhint %}

### **Exportar para glTF a partir do SketchUp**

O SketchUp não suporta exportação para glTF por padrão, mas você pode instalar um plugin para habilitá-la.

Baixe o plugin em [este link](https://extensions.sketchup.com/en/content/gltf-exporter).

### **Converter FBX para glTF**

*.fbx* é um padrão muito popular para modelos 3D. Ele não é suportado pelo nosso engine, mas você pode exportar facilmente um *.fbx* modelo para o *.gltf* formato.

Recomendamos usar estas ferramentas:

* [**Blender**](https://www.blender.org/download/): Uma forma fácil de converter .fbx para glTF é importar o .fbx para uma scene usando o Blender e depois exportá-lo de lá.
* [**A ferramenta CLI do Facebook**](https://github.com/facebookincubator/FBX2glTF): esta é a alternativa mais robusta, mas exige usar a linha de comando.
* [**Blackthread**](https://blackthread.io/gltf-converter): Esta é a ferramenta web mais completa. Menos robusta que a CLI, mas muito mais fácil de usar.
* [**Modelconverter**](https://modelconverter.com/convert.html): Outra ferramenta web fácil de usar.

## **Pré-visualizar um Modelo glTF**

Uma maneira rápida e fácil de pré-visualizar o conteúdo de um modelo glTF antes de importá-lo para uma scene é usar o [**Babylon.js Sandbox**](https://sandbox.babylonjs.com/). Basta arrastar e soltar o arquivo glTF (e o seu *.bin* arquivo, se aplicável) no canvas para visualizar o modelo.

No sandbox, você também pode pré-visualizar as animações incorporadas no modelo, selecionando qual exibir em um menu suspenso.

![](/files/51160660fa8fd66ee1e24c985de560947a676360)

## **Analisar glTF**

Uma ótima ferramenta para analisar seus glTFs é usar o [**glTF Sample Viewer**](https://github.khronos.org/glTF-Sample-Viewer-Release/). Esta ferramenta permite inspecionar channels, textures, a reação a diferentes ambientes de luz, pré-visualizar animações e muito mais! Ideal para modelos únicos.

![](/files/e0059690fd0a242bd03f84dae736ff4fc2b67576)

Outra ferramenta útil é [**gltf.report/**](https://gltf.report/). Basta arrastar e soltar seus modelos no site para visualizar o conteúdo do pacote glTF e avaliar quais partes do modelo podem ser otimizadas.

Essa ferramenta pode ser especialmente útil para arquivos grandes que contenham vários modelos, textures e animações. Por exemplo, ao organizar textures por tamanho, você pode identificar facilmente quais textures estão consumindo mais recursos.

![](/files/7b7db34c65c08d8f4721736bc5800626f7db5291)

## **Otimizar um glTF**

A ferramenta a seguir oferece algumas otimizações que tornarão os modelos 3D mais leves e mais rápidos de baixar para os players na sua scene.

[glTF pipeline](https://github.com/AnalyticalGraphicsInc/gltf-pipeline)

Entre outras coisas, ela converte *.gltf* formato em *.glb*, que é binário e, portanto, ocupa muito menos. Ela também coloca os arquivos de texture fora do modelo 3D, o que permite usar a mesma texture em vários modelos.

{% hint style="warning" %}
**📔 Nota**: *.glb* O formato por padrão sempre tem textures incorporadas no arquivo. O engine não consegue reconhecer duas textures incorporadas como sendo a mesma; elas precisam ser arquivos externos que compartilhem o mesmo hash.
{% endhint %}

## Veja também

As páginas a seguir também cobrem tópicos relacionados a modelos 3D para Decentraland:

* [Meshes](/creator/content-creator-pt/modelacao-e-animacoes-3d/meshes.md)
* [Materials](/creator/content-creator-pt/modelacao-e-animacoes-3d/materials.md)
* [Textures](/creator/content-creator-pt/modelacao-e-animacoes-3d/textures.md)
* [Colliders](/creator/content-creator-pt/modelacao-e-animacoes-3d/colliders.md)
* [Animations](/creator/content-creator-pt/modelacao-e-animacoes-3d/animations.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.decentraland.org/creator/content-creator-pt/modelacao-e-animacoes-3d/3d-models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
