Advertencia

Este documento está desactualizado. A tener en cuenta: Se menciona a Sandbox, información faltante sobre Linux (Actualmente, el "oven" solo se envía con el servidor, no con la AppImage), dice que Oven tiene una aplicación GUI)

Haz Tu Contenido

La mayoría del contenido (avatares, entidades, etc.) en Vircadia hace referencia a recursos externos como texturas, modelos, scripts y materiales. Cuando un usuario encuentra cualquier contenido en el dominio, necesitan descargar los recursos del contenido. Muchos de estos recursos no están optimizados y pueden tardar un poco en descargarse. Baking es el proceso de optimizar estos recursos para hacerlos más fáciles de transmitir, almacenar y renderizar, reduciendo significativamente el tiempo de carga.

En Esta Página

El Oven

El Oven es una aplicación independiente que es empaquetada como parte del instalador Cliente + Sandbox de Vircadia. Una vez instalada, busca oven.exe (Windows) u oven.app (Mac).

Con el oven, puedes "hornear" (bake) los siguientes tipos de contenido:

Tipo

Descripción

Texturas

Cuando horneas una textura, la carpeta resultante contendrá un archivo .texmeta.json, varias imágenes .ktx y la textura original. El horneado puede introducir algunos artefactos de compresión, pero estos suelen ser menores. Hornear una textura produce mapas MIP, que te permiten cargar texturas progresivamente y comprimir los resultados. Hornear texturas grandes como skyboxes puede llevar un tiempo, pero los beneficios en tiempo de ejecución para todos los que carguen la imagen de skybox serán significativos. Para obtener la mejor experiencia, recomendamos usar texturas PNG o JPEG (JPG). Sin embargo, también admitimos texturas en los siguientes formatos: TGA, TIF y TIFF.

Materiales

Hornear un material producirá un archivo .baked.json y también horneará todas las texturas del material. Actualmente, solo admitimos hornear un archivo JSON de entidad material.

Modelos 3D

Hornear un modelo producirá una malla geométrica comprimida Draco y también horneará todos los materiales del modelo. La compresión de la malla puede alterar ligeramente la geometría del modelo original, pero suele ser menor. Tu carpeta de salida contendrá un archivo .baked.fst, un archivo .baked.fbx (el formato original de tu modelo puede ser diferente) y un archivo .baked.json (materiales). Debido a que el archivo JSON de materiales horneados hace referencia a los archivos de texturas horneadas, todas las texturas se eliminan del archivo .baked.fbx. Se hace referencia a este archivo JSON en el campo materialMap en el archivo .baked.fst. Admitimos los siguientes formatos: FBX, OBJ y FST (que apunta a un tipo compatible).

Avatares

Como los avatares son modelos 3D, puedes hornear avatares con los mismos resultados que arriba. Utiliza el archivo .baked.fst resultante para alojar y vestir tu avatar horneado.

El Oven tiene dos interfaces diferentes: una aplicación y una interfaz de línea de comandos. Utiliza el que mejor se adapte a tus necesidades.

Usando la Aplicación Oven

La aplicación Oven tiene tres opciones de horneado:

  • Hornear todos los activos en tu dominio

  • Hornear modelos 3D y avatares individuales

  • Hornear archivos skybox

Después de elegir lo que te gustaría hornear, deberás completar cierta información:

Campo

Opción de Hornear

Descripción

Domain Name

Domain

Introduce el nombre de tu dominio.

Entities File

Domain

Carga un .json o .json.gz de los activos en tu dominio. Esto se puede hacer exportando tu contenido a JSON.

Model File(s)

Model

Ingresa el archivo o la ruta URL para tu(s) archivo(s) modelo(s).

Skybox File(s)

Palco

Ingresa el archivo o la ruta de la URL para tu(s) archivo(s) de skybox.

Output Directory

Domain, Model, Skybox

Aquí es donde se guardará el contenido horneado.

Destination URL Path

Domain

Ingresa las rutas absolutas de dónde se cargarán tus recursos después de hornear. Por ejemplo, si almacenas modelos 3D personalizados en un servicio de alojamiento en la nube, ingresa esa URL aquí.

Re-bake Originals

Domain

Comprueba si deseas volver a hornear cualquier contenido horneado que el horno encuentre en tu archivo de contenido.

Nota

Después de hornear un dominio, no olvides cargar todo el contenido horneado (modelos 3D, skyboxes, etc.) a la URL especificada para "Destination URL Path". Esto asegura que todo el contenido se cargue correctamente cuando subas el conjunto de contenido horneado a tu dominio.

Uso de la Interfaz de Línea de Comandos

También puedes usar una interfaz de línea de comandos en lugar de la GUI para crear activos individuales (no dominios). Admitimos los siguientes atributos:

  • i: Ruta al archivo que te gustaría hornear.

  • o: Ruta a la carpeta que se usará como directorio de salida.

  • t: Tipo de activo (asset). El valor puede ser "model" (para cualquier tipo de modelo) y "material" (para una descripción JSON de material). Para las texturas, los valores difieren según el tipo de textura que quieras hornear, como por defecto, strict, albedo, normal, bump, specular, metallic, roughness, gloss, emissive, cube (misma que skybox), skybox, ambient, occlusion, scattering, and lightmap.

  • disable-texture-compression: Deshabilita la compresión de texturas para cualquier tipo. Usa esto solo si la compresión de textura está introduciendo demasiados artefactos.

Para hornear un modelo 3D a través de la interfaz de línea de comandos de Oven:

>> oven.exe -i %path to model% -o %output directory% -t model

Para hornear un material a través de la interfaz de línea de comandos de Oven:

>> oven.exe -i %path to material json% -o %output directory% -t material