> For the complete documentation index, see [llms.txt](https://docs.decentraland.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.decentraland.org/creator/content-creator-pt/scenes-sdk7/depuracao/debug-in-preview.md).

# Depurar na pré-visualização

Como pode depurar a sua cena enquanto a executa localmente na pré-visualização

Executar uma preview fornece alguma informação e ferramentas úteis de debug para te ajudar a perceber como a cena é renderizada.

Se a cena não puder ser compilada, verás apenas o terreno vazio, sem nada renderizado nele. Se isso acontecer, há vários locais onde podes procurar mensagens de erro para te ajudar a perceber o que correu mal:

1. Verifica o teu editor de código para garantir que não assinalou quaisquer erros de sintaxe ou de lógica.
2. Verifica a consola na janela de preview para quaisquer mensagens de erro. Abre a consola clicando no ![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-a673f6b987216e9e471fdac882879c44fcf94652%2Fconsole-icon.png?alt=media\&token=1965a51b-d4b0-4caa-b9d5-d24d738c1fb8) ícone no canto superior direito.
3. Se executaste a cena usando o Creator Hub, verifica a janela com a saída da consola da cena. Se executaste a cena usando a CLI, verifica a saída da linha de comandos onde executaste `npm run start`

{% hint style="info" %}
**💡 Dica**: Antes de publicares a tua cena no ambiente de produção, podes publicá-la num [Decentraland World](/creator/content-creator-pt/scenes-sdk7/publicacao/publishing-options.md#decentraland-worlds) para a experimentares num contexto muito mais próximo da produção.
{% endhint %}

## Usa a consola

Abre a consola clicando no ![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-a673f6b987216e9e471fdac882879c44fcf94652%2Fconsole-icon.png?alt=media\&token=1965a51b-d4b0-4caa-b9d5-d24d738c1fb8) ícone no canto superior direito.

Também a podes alternar premindo a tecla backtick no teu teclado: **`**. Esta tecla fica à esquerda da tecla 1 na maioria dos teclados em inglês. Ou, em alternativa, pressiona Shift + **\\`** para abrir uma vista mais ampla da consola, caso precises de ver mais texto.

Envia mensagens para a consola (usando `console.log()`). Depois, podes ver estas mensagens à medida que são geradas ao abrir a consola da cena.

A consola também mostra mensagens de erro; estas são assinaladas a vermelho.

## O painel de debug

Abre a consola de debug clicando no ![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-92fe4dd70621a496d0da083ae9b5f9b2ef84d2dd%2Fdebug-icon.png?alt=media\&token=42a33cd5-b516-43ea-a6b3-8c33c21e4359) ícone no canto superior direito.

Isto abre um painel no canto inferior direito com informação sobre o motor de renderização, e é atualizado em tempo real à medida que as coisas mudam.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-ccb91c00f390553253215ec2c18eef6d50f22c5c%2Fdebug-panel.png?alt=media\&token=9ed3d1ce-b3de-48ab-9cca-df617ebc0ff9)

### Cena atual

O **CENA ATUAL** separador inclui informação sobre a cena em que te encontras atualmente. Isto inclui:

* O número de parcels na cena
* A altura máxima a que te é permitido construir (330 metros para cada cena)

Também podes verificar a **Mostrar limites da cena** opção para veres paredes vermelhas à volta da cena, que marcam os limites da cena.

### Memória

O **MEMÓRIA** secção mostra a memória usada por Decentraland. Tenta sempre manter este valor abaixo dos **Limiares do orçamento de memória**. Se este valor crescer demasiado, arrisca-se a bloquear a app para os jogadores que visitam a tua cena. Tem em conta que, em produção, a cena pode ser carregada em conjunto com outras cenas e jogadores circundantes, o que pode contribuir para aumentar o consumo de memória para além do que vês na preview.

### Desempenho

O **DESEMPENHO** separador inclui vários campos relacionados com *FPS* (Frames Per Second). Este valor tende a ser mais baixo à medida que a complexidade da cena aumenta; certifica-te de que manténs sempre este valor acima de 25 FPS, para garantir uma boa experiência para os teus jogadores. O FPS varia consoante a máquina em que o executas.

O valor mais importante aqui é o **FPS médio**, que calcula o FPS dos últimos 1000 frames.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-5476d0417a1f29680ff83a9352543acb34dc1ce6%2Ffps-debug-panel.png?alt=media\&token=e913e876-f4ba-4288-a1d1-7bb3657634b9)

{% hint style="warning" %}
**📔 Nota**: O FPS do renderer não é o mesmo que as atualizações da cena do game loop por segundo. A lógica da cena está limitada a 30 FPS; o FPS do renderer pode chegar a 60 ou mais.
{% endhint %}

Os engasgos referem-se a pausas momentâneas na taxa de frames, que podem ter pouco impacto no valor global de FPS, mas podem ser muito percetíveis para o jogador. Normalmente, isto pode acontecer quando são carregados assets pesados ou situações semelhantes.

### Pedidos Web

O **PEDIDOS WEB** secção permite-te abrir o separador Network do Chrome Devtools, que mostra o número de web requests feitas pela cena e o seu conteúdo. Isto é útil para saber se a cena está a fazer demasiados pedidos a servidores, o que pode afetar o desempenho da cena.

Se a tua cena interage com um servidor de terceiros, é muitas vezes útil ver que dados entram e saem. Clica em **Abrir Chrome Devtools** para abrir uma nova janela do Chrome com o separador Network aberto.

{% hint style="warning" %}
**📔 Nota**: Para usar esta funcionalidade, tens primeiro de instalar o [Creator Hub](/creator/content-creator-pt/scene-editor/primeiros-passos/editor-installation.md), uma vez que as dependências necessárias vêm incluídas nessa instalação.

Não precisas de ter o Creator Hub aberto nem de correr a preview da tua cena através do Creator Hub para usares esta funcionalidade; ela também pode ser usada se estiveres a usar a CLI para correr a preview da tua cena.
{% endhint %}

Como alternativa, há várias ferramentas gratuitas que podes executar na tua máquina que mostram todos os dados que entram e saem da aplicação Decentraland. Por exemplo [Charles](https://www.charlesproxy.com/) ou [Wireshark](https://www.wireshark.org/).

## Recarregamento rápido

Sempre que fazes alterações à cena, a preview recarrega e atualiza automaticamente, pelo que não há necessidade de abrir e fechar a janela de preview.

Se precisares de recarregar a cena em que estás, clica no **Recarregar Cena** botão no canto superior esquerdo da janela de preview.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-aee1c0d965e8eb0be4dce2269a40c7bd34e3a867%2Freload-button.png?alt=media\&token=1c3606d7-cfb0-4588-9371-74003b685655)

Também podes recarregar a cena escrevendo o seguinte no chat e carregando em Enter:

`/reload`

## Reportar um bug

Se encontrares um problema que não esteja relacionado com a tua cena, mas sim com o Decentraland SDK em geral, consulta [Reportar um bug](/creator/content-creator-pt/scenes-sdk7/depuracao/report-bug.md).

## Versões das dependências

Certifica-te de que usas sempre as versões mais recentes de todas as dependências na tua cena, uma vez que quaisquer problemas que estejas a ter podem já estar corrigidos em versões mais novas. O Creator Hub notificar-te-á quando houver atualizações para instalar na tua cena Decentraland.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-dfb7f58f6d4c56c78eb70530feed95cf300b0876%2Fnew-dependencies.png?alt=media\&token=c4781a34-65b5-4b90-bec1-74696f2c64eb)

Também podes atualizar manualmente as dependências através da linha de comandos. Executar uma cena Decentraland localmente depende de duas bibliotecas principais: `@dcl/sdk` e `@dcl/js-runtime`, que é instalado em cada pasta do projeto. Certifica-te de que ambas estão atualizadas. Podes executar os seguintes comandos para atualizar manualmente estas duas bibliotecas para a versão estável mais recente:

```
npm i @dcl/js-runtime@latest
npm i @dcl/sdk@latest
```

Se a tua cena usar smart items, também pode estar a usar a `@dcl/asset-packs` biblioteca, que podes atualizar através de:

```
npm i @dcl/asset-packs@latest
```

Se estiveres a usar alguma das [bibliotecas utils](https://studios.decentraland.org/resources?sdk_version=SDK7\&resource_type=Library) certifica-te de que também estão atualizadas, uma vez que versões mais antigas destas bibliotecas podem não ser compatíveis com versões mais recentes de `@dcl/sdk`.

## Condições de iluminação

A hora do dia no mundo tem um grande impacto na forma como os modelos 3D ficam. A cor da fonte de luz muda subtilmente, ficando com um tom azulado à noite e um tom avermelhado durante o nascer e o pôr do sol. A direção da luz também se move pelo céu, projetando sombras em diferentes direções.

Verifica se a tua cena fica bem a todas as horas do dia, alterando o relógio do jogo para diferentes valores. Clica no **tempo do skybox** ícone no painel esquerdo do ecrã para definires a hora que preferires. Se este slider estiver a cinzento, certifica-te de que a opção **Auto** está desativada.

<figure><img src="https://github.com/decentraland/docs/blob/main/creator/images/daylight-settings.png" alt="Dynamic skybox" width="300"><figcaption><p>Instruções no mundo</p></figcaption></figure>

Os materiais do teu modelo 3D podem não ter o mesmo aspeto que tinham na ferramenta de modelação com a qual o criaste. Isto é esperado, uma vez que todos os motores de renderização 3D têm diferenças subtis na forma como tratam a luz e os materiais.

Também podes configurar a tua cena para que a hora do dia seja fixa e a iluminação não mude. Consulta [Controlos do skybox](/creator/content-creator-pt/scenes-sdk7/interatividade/skybox-control.md) para mais detalhes.

## Testes multijogador

Se lançares uma preview da cena e a abrires em duas (ou mais) janelas diferentes do Explorer, cada janela aberta será interpretada como um jogador separado, e um servidor de comunicações simulado manterá estes jogadores sincronizados.

Interage com a cena numa janela e depois muda para a outra para veres que os efeitos dessa interação também ficam visíveis lá.

Usando o Creator Hub, ativa **Multi-Instance Preview** em **Desktop Client** submenu de **Play Options**, depois clica no botão **Play** uma segunda vez para abrir uma segunda janela do Explorer do Decentraland. Tens de te ligar em ambas as janelas com endereços diferentes. As mesmas sessões permanecerão abertas à medida que a cena recarrega. Talvez seja necessário terminar a sessão e voltar a iniciar sessão na segunda janela para selecionar uma conta diferente.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-30317b50bc4b4e646a1b28effe1ff76939ab0f28%2Fpreview-button.png?alt=media\&token=fbed0f2f-8063-4283-9b07-2d964c9c0e68)

Ambos os jogadores verão um ao outro e poderão interagir entre si. Se a cena tiver alguma lógica multijogador, ela funcionará como esperado e será sincronizada entre os dois jogadores.

Como alternativa, podes abrir uma segunda janela do Explorer do Decentraland escrevendo o seguinte num URL do navegador:

> `decentraland://realm=http://127.0.0.1:8000&local-scene=true&debug=true&multi-instance=true`

## Usar a rede de testes Ethereum

Enquanto testas a tua cena, para evitar transferir MANA real ou outras moedas, podes usar a rede de testes Ethereum Sepolia e transferir em vez disso MANA falsa da testnet.

Para usar a rede de testes, tens de definir a tua extensão Metamask do Chrome para usar a *rede de testes Sepolia* em vez da *rede principal*. Também tens de possuir MANA na blockchain Sepolia, que podes obter gratuitamente na Decentraland.

{% hint style="info" %}
**💡 Dica**: Para executar a transação de transferir MANA Sepolia para a tua wallet, terás de pagar uma taxa de gas em Ether Sepolia.
{% endhint %}

Quaisquer transações que aceites enquanto visualizas a cena neste modo ocorrerão apenas na rede de testes e não afetarão o saldo de MANA na tua wallet real.

Para pré-visualizar a tua cena usando a rede de testes, cola o seguinte URL num separador do navegador. Isto abrirá a cena no cliente de desktop da Decentraland:

> decentraland://realm=<http://127.0.0.1:8000\\&local-scene=true\\&debug=true\\&dclenv=zone\\&position=0,0>

{% hint style="info" %}
**💡 Dica**: Altera o parâmetro de posição para as coordenadas da tua cena, para carregares diretamente na tua cena. Quaisquer transações que aceites enquanto visualizas a cena neste modo ocorrerão apenas na rede de testes e não afetarão o saldo de MANA na tua wallet real.
{% endhint %}

Se precisares de testar transações na Polygon Testnet e precisares de ter MANA nessa testnet, terás de trocar MANA para essa rede depois de o obteres em Sepolia. Para fazer a bridge de MANA Sepolia para a Polygon Testnet, visita a página da tua conta Decentraland em Sepolia e clica em ‘swap’ no lado do Ethereum MANA.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.decentraland.org/creator/content-creator-pt/scenes-sdk7/depuracao/debug-in-preview.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
