# Limitações da Scene

Para melhorar o desempenho no metaverso, estabelecemos um conjunto de limites que toda cena deve seguir. Esses limites são por parcela. Portanto, quanto maior a cena, maiores são esses limites.

Ao trabalhar com o [Creator Hub](https://github.com/decentraland/docs/blob/main/creator/sdk7/scene-editor/get-started/editor-installation.md), você pode ver estatísticas sobre os recursos usados pelos modelos 3D em sua cena, juntamente com os limites da sua cena.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-88f68a93b0cfcb7f8c48270f31ba7137655ee2e1%2Ftriangle-limit1.png?alt=media)

Você pode expandir este menu para ver detalhes.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-aebaad725f1d9397552b2fb36a318eec91589b9c%2Ftriangle-limit2.png?alt=media)

{% hint style="info" %}
**💡 Dica**: Para uma tabela de referência com todos os números específicos por contagem de parcelas, veja:

[Tabela de referência](https://docs.google.com/spreadsheets/d/1BTm0C20PqdQDAN7vOQ6FpnkVncPecJt-EwTSNHzrsmg/edit#gid=0)
{% endhint %}

## Regras de limitação da cena

Abaixo estão o número máximo de elementos que uma cena pode renderizar ao mesmo tempo:

> *n* representa o número de parcelas que uma cena ocupa.

* **Triângulos:** `n x 10000` Quantidade total de triângulos para todos os modelos na cena.
* **Entidades:** `n x 200` Quantidade de entidades na cena.
* **Corpos:** `n x 300` Quantidade de malhas na cena.
* **Materiais:** `log2(n+1) x 20` Quantidade de materiais na cena. Inclui materiais importados como parte de modelos.
* **Texturas:** `log2(n+1) x 10` Quantidade de texturas na cena. Inclui texturas importadas como parte de modelos.
* **Altura:** `log2(n+1) x 20` Altura em metros.

  > Importante: Apenas as entidades que estão sendo atualmente renderizadas na cena são contabilizadas para esses limites. Se sua cena alterna entre modelos 3D, o que importa são os modelos renderizados em qualquer momento, não a soma total. Avatares dos jogadores e quaisquer itens trazidos por um jogador de fora da cena também não entram no cálculo desses limites.
* **Tamanho total dos arquivos:** Em Genesis City -`15 MB por parcela - 300 MB máx`. Para Worlds, veja [Tamanho do World](#world-size). Tamanho total dos arquivos enviados para o servidor de conteúdo. Inclui modelos 3D e áudio. Não inclui arquivos que não são enviados, como pacotes node.js. Você pode ver a lista completa de arquivos sendo publicados e seus tamanhos antes de confirmar um deployment.
* **Contagem de arquivos:** `200 arquivos por parcela` Contagem total dos arquivos enviados. Inclui modelos 3D e áudio. Não inclui arquivos que não são enviados, como pacotes node.js.
* **Tamanho máximo de arquivo** `50 MB por arquivo` Nenhum arquivo individual de qualquer tipo na cena pode exceder 50 MB. Cenas pequenas têm restrições adicionais porque o arquivo não deve exceder seu limite de Tamanho Total de Arquivos (Por exemplo, uma cena de parcela única é limitada a 15 MB no total).

{% hint style="info" %}
**💡 Dica**: Nem todos os arquivos na pasta do projeto da sua cena contam para o limite de tamanho de arquivo, apenas aqueles que são enviados para os servidores. Todo o conteúdo da pasta *node\_modules* , que é muito grande, são dependências que não são enviadas e, portanto, não contam. O mesmo se aplica a quaisquer arquivos na pasta `/src` , já que o código-fonte não é enviado.

Você pode listar outros arquivos ou pastas que deseja excluir do upload no arquivo `.dclignore` no seu projeto.
{% endhint %}

## Otimização

Veja [Performance Optimization](https://github.com/decentraland/docs/blob/main/creator/sdk7/sdk7/optimizing/performance-optimization.md) para dicas sobre como manter sua cena abaixo desses limites e fazê-la rodar mais suavemente para os jogadores.

## Limites da cena

Ao executar um preview, qualquer conteúdo localizado fora dos limites da parcela é destacado em vermelho quando renderizado. Se algum conteúdo estiver fora desses limites, essa parte do seu conteúdo não será renderizada quando os jogadores visitarem sua cena.

Se a ponta de um objeto grande ultrapassar os limites, essa ponta será cortada do objeto.

Uma cena de parcela única mede 16 metros x 16 metros. Se a cena tiver múltiplas parcelas, as dimensões variam dependendo do arranjo das parcelas.

É possível posicionar entidades abaixo do solo, seja para escondê-las ou para que apenas uma parte emergir. Uma cena não pode ter túneis que vão abaixo da altura padrão do solo, jogadores não podem viajar abaixo da `y = 0` altura.

## Limitações de shader

Modelos 3D usados em Decentraland devem usar shaders e materiais suportados. Veja [Materiais de modelos 3D](https://github.com/decentraland/docs/blob/main/creator/sdk7/3d-modeling/materials.md) para uma lista de shaders suportados.

## Iluminação

As condições de iluminação da cena não podem ser alteradas para todos os jogadores a partir da configuração padrão, embora cada jogador individual seja livre para mudar suas próprias configurações de skybox a partir da UI do Explorer.

## Restrições de tamanho de textura

Os tamanhos das texturas devem usar números de largura e altura (em pixels) que correspondam aos seguintes números:

```
1, 2, 4, 8, 16, 32, 64, 128, 256, 512 1024
```

> Essa sequência é composta por potências de dois: `f(x) = 2 ^ x` . 512 é o número máximo que permitimos para um tamanho de textura. Esse é um requisito bastante comum entre outros motores de renderização, está relacionado a otimizações internas dos processadores gráficos.

A largura e a altura não precisam ter o mesmo número, mas ambas precisam pertencer a essa sequência.

**O tamanho recomendado para texturas é 1024x1024**, descobrimos que esse é o tamanho ideal para ser transportado por redes domésticas e para proporcionar experiências razoáveis de carregamento/qualidade.

Exemplos de outros tamanhos válidos:

```
32x32
64x32
512x256
512x512
1024x1024
```

{% hint style="warning" %}
**📔 Nota**: Embora texturas de tamanhos arbitrários às vezes funcionem, elas também costumam ser renderizadas com bugs e são mais instáveis. Recomendamos fortemente que todas as suas texturas correspondam a esses tamanhos.
{% endhint %}

## Tamanho do World

Decentraland [Worlds](https://docs.decentraland.org/creator/content-creator-pt/worlds/about) têm limitações diferentes, já que são carregados como cenas únicas.

* Worlds publicados em Decentraland NAMEs têm pelo menos `100 MB`. Esse valor pode ser aumentado possuindo NAMEs adicionais, LAND, e MANA na mesma conta.
* Worlds publicados em domínios ENS têm um limite de `36 MB` que não pode ser expandido.

Veja [Limite de tamanho do World](https://docs.decentraland.org/creator/content-creator-pt/tipos-de-projetos/kinds-of-project#size-limits) para mais detalhes.

Tamanho total dos arquivos enviados para o servidor de conteúdo. Inclui modelos 3D e áudio. Não inclui arquivos que não são enviados, como pacotes node.js. Você pode ver a lista completa de arquivos sendo publicados e seus tamanhos antes de confirmar um deployment.

Todos os outros limites em Worlds são por parcela, incluindo triângulos, materiais, etc. Como adicionar mais parcelas a um World é gratuito, você pode adicionar até 45x45 parcelas à sua cena e ter os limites correspondentes a essa contagem de parcelas.
