For the complete documentation index, see llms.txt. This page is also available as Markdown.

Controle do skybox

Altere o tempo do skybox

Você pode alterar como um jogador vê o skybox sempre que ele estiver na sua scene; isso também afeta o tom e a direção da iluminação global.

O céu em Decentraland segue um ciclo padrão de dia/noite que leva 2 horas para ser concluído, então há 12 ciclos completos a cada dia real. Se a scene não estiver impondo um horário fixo do dia, os jogadores também podem mudar para um horário específico do dia alterando um slider na UI.

Sempre que os jogadores entram em uma scene com um horário diferente do dia, ou a scene altera o horário do dia dinamicamente, o skybox faz a transição suavemente ao longo de alguns segundos para esse novo valor.

Horário fixo do dia

Você pode definir um horário fixo do dia para a sua scene. Todos os jogadores verão a scene com esse horário do dia, e o skybox não seguirá o ciclo de dia/noite.

No Creator Hub, abra as configurações da scene e clique na Configurações aba para encontrar a Skybox seção. Desmarque a Automático opção e defina o horário do dia desejado.



Você também pode definir o horário do dia do skybox no código da sua scene. Para fazer isso, adicione a seguinte seção ao seu scene.json na raiz:

O número se refere à quantidade de segundos desde o início do dia, variando de 0 (que se refere a 00:00) até 86400 (que se refere a 24:00). Qualquer número maior que 86400 também é interpretado como meia-noite.

Aqui estão mais alguns exemplos de valores válidos:

  • 0 segundos => 00:00

  • 21600 segundos => 06:00

  • 43200 segundos => 12:00

  • 64800 segundos => 18:00

  • 86400 segundos => 24:00

Lendo o horário do dia

Você pode ler o horário do dia no código da sua scene usando a getWorldTime() função.

A função retorna um número entre 0 e 86400, onde 0 é meia-noite e 86400 é 24:00. Esse valor é atualizado se a scene alterar dinamicamente o horário do dia ou se o jogador mudar o horário do dia na UI. Caso contrário, ele retorna o valor relativo ao ciclo padrão de dia/noite.

Alterando o horário do dia dinamicamente

Você pode alterar o horário do dia dinamicamente usando o SkyboxTime componente. Esse componente só pode ser adicionado à entidade raiz da scene engine.RootEntity.

A fixed_time a propriedade é um número entre 0 e 86400, onde 0 é meia-noite e 86400 é 24:00. Qualquer número maior que 86400 também é interpretado como meia-noite.

Sempre que esse componente for adicionado, removido ou a fixed_time propriedade for alterada, o horário do dia do skybox faz a transição suavemente ao longo de alguns segundos para esse novo valor. O mesmo acontece quando o jogador sai ou entra na scene. Enquanto o horário do dia do skybox estiver fixo, o skybox não seguirá mais o progresso do seu ciclo de dia/noite e os jogadores não poderão alterar o horário do dia via UI.

Por padrão, a transição sempre acontece na direção para frente, mas você pode alterar isso definindo a transitionMode property para TransitionMode.TM_FORWARD ou TransitionMode.TM_BACKWARD.

💡 Dica: Para exemplos funcionais de controle do skybox, veja as 2,1-skybox-sdk-scene-a e 3,1-skybox-sdk-scene-b scenes de teste, que controlam SkyboxTime e TransitionMode ao vivo a partir de um painel da UI, e 2,0-skybox-scene-json, que lê o fixedTime definido em scene.json de volta em runtime via getSceneInformation().

Atualizado