Arquitectura de construcción

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Construir la estación de una manera modular nos permitió actualizar y propagar actualizaciones de contenido de manera fluida y fue clave para asegurarnos de que no pasáramos horas actualizando mallas individuales, texturas, partes y más.

Los paquetes de Roblox nos permiten lograr este diseño modular al permitirnos empaquetar juntos una paleta de Meshparts que se ensamblan fácilmente, conjuntos de hojas de recorte y nodos de SurfaceAppearance que los MeshParts podían compartir. Esto nos permitió adaptarnos a cambios en el diseño y tamaño durante las primeras pruebas de juego y hizo que el proceso de completar la estación fuera mucho más rápido.

Descripción general de la arquitectura

Diseños flexibles para el arte final

Cuando comenzamos, no teníamos una comprensión completa de lo que queríamos que estuviera en la estación, ni de cuán grande necesitaba ser para 50 jugadores.

Para averiguarlo, comenzamos construyendo primero el entorno utilizando Parts y trayendo algunas mallas como la forma de la rotonda desde nuestra aplicación DCC externa, como Maya o Blender. Con estas formas simples, ajustamos la escala del mapa, la disposición de las habitaciones y los caminos para encontrar las disposiciones más divertidas. Ya sea para un juego o una experiencia social, esta etapa temprana tiende a ser la más dinámica.

Al construir el diseño de la estación, lo más importante para impulsar la exploración era darle al usuario un objetivo. En este caso, el objetivo más obvio es acercarse al agujero negro. A continuación, sabíamos que darles un camino recto hacia el agujero negro sería aburrido, porque un jugador puede simplemente caminar desde el punto de aparición hasta el final del mapa. Rompimos el camino para que el jugador no pudiera llegar al agujero negro sin antes rodear y ver otras cosas que también podrían atraerlo.

El diseño modular nos permitió hacer tales cambios en el entorno sin una reestructuración catastrófica del diseño general. Podíamos mover secciones enteras de la estación para jugar con diferentes ideas de juego. En última instancia, estas mismas piezas modulares podrían actualizarse utilizando paquetes, por lo que no teníamos que reconstruir múltiples versiones del mismo activo.

Ejemplo de arquitectura 1 Ejemplo de arquitectura 2 Ejemplo de arquitectura 3 Ejemplo de arquitectura 4

Diseño modular del DSR-14 Kerr-Newman

La estación espacial utiliza solo un puñado de piezas de paleta modular. Las piezas de paleta modular son activos reutilizables, lo que significa que no tenemos que crear cada pared de manera única, sino que podemos ensamblar varias paredes más pequeñas. Esto permite flexibilidad en el diseño mientras estamos construyendo.

Aquí hay algunos consejos que nos ayudaron a crear nuestro diseño modular:

  • Decidir un tamaño de cuadrícula uniforme — Para la estación, decidimos un tamaño de cuadrícula de 16 studs para crear la mayor parte del conjunto modular. El tamaño de cuadrícula que uses es arbitrario, pero debe ser consistente a lo largo del proyecto y entre todos los artistas que trabajen en ese proyecto. Decidir un tamaño de cuadrícula al comienzo de tu proyecto asegura que cada pieza encaje bien con la pieza que está al lado. También te permite intercambiar piezas fácilmente, por ejemplo, intercambiando una sección de pared por una sección de puerta.

  • Todas las unidades se importan como studs — Al crear mallas en otras aplicaciones DCC, como Maya o Blender, Studio no convierte metros, centímetros, pies o pulgadas; simplemente reemplaza las unidades entrantes con las mismas unidades en studs. Por ejemplo, si configuras tus unidades en metros, Studio convierte 2 metros a 2 studs. Es mejor tratar tus escalas de unidades en tu aplicación de elección como escalas de studs en Roblox. La escala del mundo real más cercana para un solo stud en Roblox es de 28 centímetros.

  • Mantener las piezas simples — No intentes construir cada pieza que creas que necesitarás. La idea es tener algunas piezas muy versátiles y no muchas únicas. Cuantas más piezas tengas, más tiempo llevará crear cada pieza y más afectará tu presupuesto general de memoria y rendimiento. Siempre puedes agregar otra pieza a tu kit si es absolutamente necesario.

  • Usar paquetes — Convierte cada pieza modular en un paquete y también coloca materiales en paquetes antes de comenzar a poblarlos en tu juego. Esto te permite enviar actualizaciones fácilmente a todas las instancias. Profundizaremos en los paquetes un poco más adelante.

Las siguientes capturas de pantalla te muestran varias formas en que utilizamos el diseño modular para construir partes de la estación.

Ejemplo de arquitectura 5 Ejemplo de arquitectura 6 Ejemplo de arquitectura 7 Ejemplo de arquitectura 8

Crear hojas de recorte

Las texturas 1:1 son el camino del futuro, pero se vuelven costosas en cuanto a presupuestos de memoria y tiempo de creación. Para la estación espacial, el 90% de los elementos arquitectónicos utilizaron un puñado de conjuntos de hojas de recorte intercambiables, que son un conjunto de mapas de texturas dispuestos de manera vertical u horizontal. Cada fila o columna de la hoja tiene un aspecto único, dándote una variedad de tratamientos de superficie para elegir al desenrollar un modelo, todo mientras usas una sola hoja de imagen.

Aquí hay algunos consejos para hacer hojas de recorte:

  • Comienza con un inventario de los tipos de objetos y materiales que necesitas — Las hojas de recorte pueden incluir una gran variación en tipos de materiales, como madera, metal, goma y más. Antes de comenzar a modelar tu primer objeto, crea una plantilla de hoja de recorte. Este es el punto de partida para todos tus otros conjuntos de hojas de recorte y te da un punto de partida rápido para desenrollar tus modelos. Estas hojas de recorte viven dentro del nodo SurfaceAppearance, que cubriremos más adelante.

  • Incluye una variedad de tratamientos de superficie en una hoja — Esto te permite mantener más de la malla junta, para que puedas aplicar nuevos tratamientos sin tener que dividir tus mallas en múltiples mallas. Esto mejora el rendimiento en tiempo de ejecución al disminuir las llamadas de dibujo de objetos y materiales.

  • Haz una plantilla de hoja de recorte — Una plantilla asegura que puedas intercambiar cualquier conjunto de mapas por otro. Por ejemplo, puedes intercambiar un conjunto de metal limpio por un conjunto de metal oxidado.

Así es como creamos hojas de recorte para la estación:

Creamos un esquema aproximado de cómo debería verse la hoja:

Ejemplo de hoja de recorte

En Photoshop, creamos un mockup para tener una idea rápida de cómo se vería cada sección de la hoja.

Ejemplo de sección de recorte

Usamos Substance, pero puedes usar cualquier aplicación que te convenga para crear los mapas finales. Este es el conjunto final de mapas de hojas de recorte que se generaron en Substance. Los cuatro mapas funcionan juntos dentro de un nodo SurfaceAppearance para producir un material renderizado basado en física (PBR).

Aquí hay algunos renders finales de la hoja de recorte dentro de Substance Designer:

Y aquí hay ejemplos de las mismas hojas de recorte utilizadas en una amplia gama de objetos:

Hojas de recorte modulares

Si deseas aprender más sobre el mapeo UV de hojas de recorte, simplemente busca el tema en la web; hay muchos tutoriales excelentes disponibles.

Aplicar apariencias de superficie

SurfaceAppearance te permite especificar nuevas entradas de textura para nuestro sistema de renderizado basado en física para MeshParts y te permite anular la apariencia de una malla con opciones gráficas avanzadas, incluyendo ColorMap, MetalnessMap, RoughnessMap y NormalMap. También hace uso del nuevo sistema de cubemap dinámico que Roblox utiliza para reflejos en materiales, como el cromo. Por ejemplo, aquí hay una imagen lado a lado de una malla con SurfaceAppearance aplicada junto a una malla sin ella:

Ejemplo de apariencia de superficie

Al usar la apariencia de superficie, ten en cuenta los siguientes consejos:

  • Si tus mapas de recorte contienen información alfa para la transparencia, cambia el AlphaMode de Overlay a Transparency.
  • La apariencia de superficie no funciona con Parts porque no tienen la información UV requerida para aplicar los mapas. Parts utilizan proyecciones alineadas al mundo en lugar de información UV. MeshParts normalmente se crean en otra aplicación como Maya, 3ds Max o Blender y contienen información de desenrollado UV.

Para aplicar SurfaceAppearance:

  1. Haz clic en el al final de un MeshPart o nombre de carpeta en el Explorer y busca SurfaceAppearance. Agregar uno anulará cualquier BrickColor, Color, Material y TextureID que ya hayas aplicado.

  2. Cambia el nombre del nodo SurfaceAppearance a algo único y agrega un sufijo de _SA para que sea fácil de buscar. En este ejemplo, usamos Metal_Trim_A_SA.

  3. Importa los mapas de hojas de recorte, copia los ID de la ventana Asset Manager y pégalos en los espacios apropiados en la ventana Properties. Así es como se ve el nodo Metal_Trim_A_SA con todos los ID de mapas insertados y aplicados a la puerta.

Ejemplo de apariencia de superficie 2

Aumentar la eficiencia con paquetes

Los paquetes te permiten crear instancias de objetos en tus juegos de Roblox, de modo que las actualizaciones que realices en el paquete se publiquen en todas las instancias de ese paquete. Usamos paquetes para casi todos los objetos que pusimos en la estación, por lo que no tuvimos que buscar cada colocación si necesitábamos hacer ajustes. Por ejemplo, utilizamos más de 1,000 instancias de paneles de pared de un paquete y pudimos publicar actualizaciones a ellas instantáneamente modificando el paquete.

Sigue estos consejos al usar paquetes:

Activa la función de actualización automática en PackageLink. Todas las modificaciones se aplican a todos los usos del paquete cuando esto está habilitado, ahorrándote el paso de tener que usar la función "actualizar todo".

Ejemplo de paquetes

Puedes usar paquetes para objetos SurfaceAppearance para crear una "biblioteca de materiales". Esto te permite modificar bitmaps en un objeto SurfaceAppearance y publicarlos en cada objeto que lo utilice. La siguiente captura de pantalla muestra materiales maestros utilizados en toda la demostración. Si necesitábamos modificar los mapas, solo teníamos que actualizar el material maestro y republicar el paquete.

Ejemplo de paquetes 2
©2026 Roblox Corporation. Roblox, el logotipo de Roblox y "Powering Imagination" son algunas de nuestras marcas registradas y no registradas en los Estados Unidos y otros países.