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

Control del skybox

Cambiar la hora del skybox

Puedes cambiar cómo ve un jugador el skybox cuando está dentro de tu escena; esto también afecta el tono y la dirección de la iluminación global.

El cielo en Decentraland sigue un ciclo de día/noche predeterminado que tarda 2 horas en completarse, así que hay 12 ciclos completos cada día real. Si la escena no está imponiendo ninguna hora fija del día, los jugadores también pueden cambiar a una hora del día específica ajustando un deslizador en su UI.

Cada vez que los jugadores entran en una escena con una hora del día diferente, o la escena cambia la hora del día dinámicamente, el skybox realiza una transición suave durante unos segundos hacia este nuevo valor.

Hora fija del día

Puedes establecer una hora fija del día para tu escena. Todos los jugadores verán la escena con esta hora del día, y el skybox no seguirá el ciclo de día/noche.

En Creator Hub, abre la configuración de la escena y haz clic en la Configuración pestaña para encontrar la Skybox sección. Desmarca la Auto opción y establece la hora del día que quieras.



También puedes establecer la hora del día del skybox en el código de tu escena. Para hacerlo, agrega la siguiente sección a tu scene.json en el nivel raíz:

El número se refiere a la cantidad de segundos transcurridos desde el inicio del día, desde 0 (que se refiere a 00:00) hasta 86400 (que se refiere a 24:00medianoche). Cualquier número mayor que 86400 también se interpreta como medianoche.

Aquí hay algunos ejemplos más de valores válidos:

  • 0 segundos => 00:00

  • 21600 segundos => 06:00

  • 43200 segundos => 12:00

  • 64800 segundos => 18:00

  • 86400 segundos => 24:00

Lectura de la hora del día

Puedes leer la hora del día desde el código de tu escena usando la getWorldTime() función.

La función devuelve un número entre 0 y 86400, donde 0 es medianoche y 86400 es 24:00. Este valor se actualiza si la escena cambia la hora del día dinámicamente o si el jugador cambia la hora del día en la UI. De lo contrario, devuelve el valor relativo al ciclo predeterminado de día/noche.

Cambio dinámico de la hora del día

Puedes cambiar la hora del día dinámicamente usando el SkyboxTime componente. Este componente solo puede añadirse a la RootEntity de la escena engine.RootEntity.

La la propiedad fixed_time es un número entre 0 y 86400, donde 0 es medianoche y 86400 es 24:00. Cualquier número mayor que 86400 también se interpreta como medianoche.

Cada vez que este componente se añade, se elimina o la la propiedad fixed_time propiedad cambia, la hora del día del skybox realiza una transición suave durante unos segundos hacia este nuevo valor. Lo mismo ocurre cuando el jugador sale de la escena o entra en ella. Mientras la hora del día del skybox está fija, el skybox ya no seguirá el progreso de su ciclo de día/noche y los jugadores no pueden cambiar la hora del día mediante la UI.

De forma predeterminada, la transición siempre ocurre en dirección hacia adelante, pero puedes cambiar esto configurando el transitionMode propiedad a TransitionMode.TM_FORWARD o TransitionMode.TM_BACKWARD.

💡 Consejo: Para ver ejemplos funcionales del control del skybox, consulta las 2,1-skybox-sdk-scene-a y 3,1-skybox-sdk-scene-b de prueba, que controlan SkyboxTime y TransitionMode en vivo desde un panel de UI, y 2,0-skybox-scene-json, que lee el fixedTime establecido en scene.json de vuelta en tiempo de ejecución mediante getSceneInformation().

Última actualización