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

Archivos de escena

Archivos predeterminados creados en una escena nueva.

Después de crear una nueva escena, la carpeta de la escena tendrá una serie de archivos con contenido predeterminado.

Archivos predeterminados en una escena

Las escenas incluyen los siguientes archivos:

  • src/index.ts: El punto de entrada de la escena.

  • scene.json: El manifiesto que contiene metadatos de la escena.

  • archivo package.json y package-lock.json: Especifica las versiones de todas las dependencias de la escena.

  • tsconfig.json: Archivo de configuración de TypeScript.

  • .dclignore: Enumera los archivos de tu proyecto que no se subirán cuando publiques tu escena.

  • assets/scene/main.composite: Archivo generado automáticamente que incluye todo lo que agregaste y configuraste visualmente en el Scene Editor en Creator Hub. No está pensado para ser legible por personas. Es un ejemplo de un composite, un archivo que describe un árbol de entities y components. Las escenas creadas mediante la CLI, en cambio, incluyen un main.crdt archivo en el nivel raíz.

index.ts

Este es el punto de entrada al código personalizado de tu escena. Podrías incluir toda la lógica de tu escena en este archivo, aunque, para mayor claridad, en la mayoría de los casos recomendamos distribuir tu código en varios otros .ts archivos.

Si solo dependes del Scene Editor y Smart Items, no necesitarás modificar este archivo.

Si tienes intención de escribir código personalizado, lo más probable es que solo necesites editar este y otros archivos .ts para crear tu escena. Contiene el código que genera los entities, components y systems de tu escena.

Al ejecutar la escena, el contenido de tus .ts archivos se compila en un único .js archivo, bin/index.js. Al compilar para producción, este archivo también se minimiza.

scene.json

El scene.json archivo es un manifiesto con formato JSON para una escena en el mundo. Una escena puede abarcar una sola o múltiples parcelas LAND. El scene.json manifiesto describe qué objetos existen en la escena, una lista de cualquier asset necesario para renderizarla, la información de contacto del propietario de la parcela y la configuración de seguridad.

La mayoría de los campos del scene.json archivo se pueden editar directamente en la UI del Scene Editor. Ver Ajustes de la escena.



Para más información, consulta metadatos de la escena.

Todos estos metadatos son opcionales para previsualizar la escena localmente, pero parte de ellos es necesaria para desplegarla. Puedes cambiar esta información manualmente en cualquier momento.

archivo package.json

Este archivo proporciona información a NPM que le permite identificar el proyecto, así como gestionar las dependencias del proyecto. Las escenas de Decentraland requieren un paquete principal:

  • @dcl/sdk: La dependencia fundamental del Decentraland SDK, incluyendo definiciones y tipos para el engine, components, systems, etc.

  • @dcl/js-runtime: Una serie de declaraciones de tipos que facilita la integración de @dcl/sdk.

Tu escena puede incluir cualquier número de otros paquetes, por ejemplo para incluir bibliotecas que pueden ayudar a facilitar la escritura de código, o habilitar funcionalidades especiales.

package-lock.json

Este archivo enumera las versiones de todas las demás dependencias del proyecto. Estas versiones están fijadas, lo que significa que el compilador usará literalmente la misma versión menor que se enumera aquí.

Puedes cambiar manualmente la versión de cualquier paquete editando este archivo.

tsconfig.json

Directorios que contienen un tsconfig.json archivo son directorios raíz para proyectos de TypeScript. El tsconfig.json archivo especifica los archivos raíz y las opciones necesarias para compilar tu proyecto de TypeScript a JavaScript.

Al instalar cualquier biblioteca adicional en tu escena, una entrada debería añadirse automáticamente a este archivo. Para instalar bibliotecas utils de Decentraland, no debería ser necesario hacer ningún cambio manual en este archivo.

Ubicaciones recomendadas de archivos

Ten en cuenta que, cuando despliegues tu escena en Decentraland, cualquier asset o biblioteca externa que sea necesaria para usar tu escena debe estar empaquetada dentro de la carpeta de la escena o disponible a través de un servidor remoto.

Cualquier cosa que esté destinada a ejecutarse en el cliente del jugador debe estar ubicada dentro de la carpeta de la escena. No deberías hacer referencia a archivos o bibliotecas que estén instalados en otra parte de tu máquina local, porque no estarán disponibles para la escena desplegada.

Te sugerimos usar estos nombres de carpeta de forma consistente para almacenar los distintos tipos de assets que tu escena podría necesitar:

  • Modelos 3D: assets/scene/models

  • Videos: assets/scene/videos

  • Archivos de sonido: assets/scene/sounds

  • Archivos de imagen para texturas (excepto para modelos glTF): assets/scene/materials

  • .ts definiciones de components /src/components

  • .ts definiciones de systems /src/systems

Cuando importas cualquier asset mediante el Scene Editor, se añade automáticamente dentro de la assets/scene carpeta. Cuando usas cualquiera de los assets predeterminados en los Asset Packs del Scene Editor, sus archivos se añaden a la assets/builder carpeta.

El archivo dclignore

Todas las escenas incluyen un .dclignore archivo; este archivo especifica qué archivos de la carpeta de la escena se deben ignorar al desplegar una escena en Decentraland.

Por ejemplo, podrías querer conservar los archivos de Blender para los modelos 3D de tu escena dentro de la carpeta de la escena, pero quieres evitar que esos archivos se desplieguen en Decentraland. En ese caso, podrías añadir *.blend en .dclignore para ignorar todos los archivos con esa extensión.

Qué ignorar
Ejemplo
Descripción

Archivos específicos

BACKUP.ts

Ignora un archivo específico

Carpetas

drafts/

Ignora todo el contenido de una carpeta y sus subcarpetas

Extensiones

*.blend

Ignora todos los archivos con una extensión determinada

Secciones de nombre

test*

Ignora todos los archivos cuyos nombres coinciden con la consulta. En este caso, los que comienzan con test

Última actualización