Scenes
Las escenas son los entities que producen comportamiento en diferentes partes de Decentraland. Pueden abarcar múltiples parcelas de LAND, y los jugadores que las atraviesen en un World Explorer ejecutarán código especial proporcionado por la escena.
Puedes encontrar un ejemplo completo de la vida real en este manifiesto de la escena en el servidor de contenido de la Foundation.
Punteros
Las escenas tienen uno o más pointers en forma de cadenas de coordenadas de parcela, como "0,0". Cada parcela que ejecuta la escena estará listada en la pointers array del manifiesto de la entity, y todos esos pointers serán resueltos por el content server a esa escena.
En otras palabras, puedes elegir las coordenadas x/y de una parcela y localizar la escena que se está ejecutando consultando al content server por el "<x>,<y>" pointer. Esta es la forma en que los World Explorers deciden si habilitar el comportamiento de una escena mientras el jugador navega por el mundo.
Un típico pointers array se ve así:
{
"pointers": [
"-113,-134",
"-113,-133",
"-113,-132",
],
// ... otras propiedades de la entity
}Estos datos también están disponibles en el metadata.scene.parcels campo detallado más abajo, en caso de que quieras guardar solo el objeto específico de la escena en el manifiesto.
Campos de Metadata
Hay varias propiedades especiales para entities de tipo scene ubicadas en el metadata campo de nivel superior.
owner
Información sobre el mantenedor de la escena.
main
El nombre de archivo interno de este archivo JavaScript principal de la escena.
tags
Un array de etiquetas en forma de cadenas que describen esta escena.
display
Información sobre la escena que los Explorers mostrarán a los jugadores (ver más abajo).
scene
Las parcelas en las que esta escena está activa y su ubicación central (ver más abajo).
contact
Nombre y dirección de correo electrónico para contactar a los creadores o mantenedores de la escena (ver más abajo).
spawnPoints
Ubicaciones y ángulos de cámara para los jugadores que entran en esta escena (ver más abajo).
requiredPermissions
Permisos recomendados que los Explorers deben solicitar a los jugadores (ver más abajo).
featureToggles
Configuraciones para feature flags
Recuerda que las entities y su metadata pueden tener campos personalizados. Puedes encontrar algunas propiedades que no están listadas aquí.
Display
En metadata.display, encontrarás propiedades que son útiles para informar a los jugadores sobre la escena antes de que entren.
title
El nombre para mostrar de esta escena.
description
Una descripción extendida de esta escena.
favicon
Obsoleto El nombre de archivo interno a un icono, mostrado cuando esta escena está activa.
navmapThumbnail
El nombre de archivo interno a la miniatura de esta escena para el mapa mundial.
Un ejemplo:
Scene
El metadata.scene la propiedad es un objeto que describe la posición de esta escena en el mapa mundial.
parcels
Un array de pointers de parcelas que ejecutan esta escena.
base
El pointer de la parcela para el punto de origen de esta escena.
En la práctica, se ve así:
El base el campo siempre se incluye en la parcels array.
Contact
El metadata.contact el objeto contiene la información de contacto del owner o mantenedor de la escena.
name
Un nombre para este contacto.
email
(Opcional) Una dirección de correo electrónico para contactar.
En JSON:
Mientras que el name campo se rellena en cada escena, encontrarás que en la práctica el email campo suele ser una cadena vacía. Esta es una elección de privacidad hecha por el creador de la escena.
Spawn Points
El metadata.spawnPoints el campo define un array de puntos y direcciones de cámara que determinan dónde deben aparecer los jugadores que entran en la escena y hacia dónde deben mirar inicialmente. Debe haber al menos un spawn point definido.
Cada elemento en el array tiene varias propiedades:
name
Una etiqueta para identificar este spawn point.
position
La posición inicial en un { x, y, z } objeto con coordenadas float.
cameraTarget
La dirección inicial de la cámara en un { x, y, z } objeto con coordenadas float.
default
Si este spawn point se usa a menos que se especifique lo contrario.
Por ejemplo:
📔 Nota: El Spawn Area y Camera Target se pueden configurar usando el Creator Hub. Para más información, ve a la Spawn Area docs.
Required Permissions
En metadata.requiredPermissions encontrarás un array de cadenas conocidas que declaran qué permisos deben solicitarse al jugador antes de que el World Explorer permita ciertas acciones. Esto recae en el Explorer; otros clientes construidos para diferentes propósitos pueden elegir ignorarlo.
Este es el conjunto actual de permisos soportados:
USE_FETCH
Permitir que la escena realice solicitudes HTTP externas.
USE_WEBSOCKET
Permitir que la escena use la API de WebSocket para establecer conexiones externas.
OPEN_EXTERNAL_LINK
Permitir que la escena abra una URL (en una pestaña del navegador o vista web).
USE_WEB3_API
Permitir que la escena se comunique con una wallet.
ALLOW_TO_TRIGGER_AVATAR_EMOTE
Permitir que la escena anime el avatar del jugador con un emote.
ALLOW_TO_MOVE_PLAYER_INSIDE_SCENE
Permitir que la escena cambie la posición del jugador.
Feature Toggles
El metadata.featureToggles el campo permite que una escena indique si ciertas features del World Explorer deben estar habilitadas o deshabilitadas.
El campo contiene un objeto de la forma { [featureName]: 'enabled' | 'disabled' }, como este:
Actualmente, voiceChat es la única feature flag comúnmente soportada.
Última actualización