Creación de wearables

Consejos y pautas para crear wearables de Decentraland



Introducción

Esta guía presenta los conceptos básicos para crear modelos 3D personalizados para wearables de Decentraland. Explica cómo funciona el sistema de avatar de Decentraland e ilustra cómo modelar correctamente tus propios wearables.

Nota: esta guía asume que ya tienes conocimientos básicos a intermedios de modelado 3D. Si eres nuevo en el modelado 3D, comienza aquíarrow-up-right.

Antes de comenzar, descarga los archivos de ejemplo para mallas y texturas de referencia: Modelos de referencia de wearablesarrow-up-right

El sistema de Avatar de Decentraland

El "avatar system" de Decentraland es la amplia colección de diferentes componentes corporales y subcomponentes que pueden decorarse con wearables personalizados. Estos componentes son:

  • Forma del cuerpo

  • Cabeza

    • Forma de la cabeza

    • Cejas

    • Ojos

    • Boca

  • Parte superior del cuerpo

  • Parte inferior del cuerpo

  • Handwear

  • Pies

  • Accesorios

Forma corporal base

Después de descargar el archivo de ejemplo del avatar base, carga el modelo en tu editor 3D, como Blender.

Notarás que cada modelo contiene 8 mallas diferentes relacionadas con un armature. Estas mallas representan la cabeza, las cejas, los ojos, la boca, la parte superior del cuerpo, la parte inferior del cuerpo, las manos y los pies. Puedes usar estos modelos de ejemplo como referencia y punto de partida para tu propio wearable personalizado.

Actualmente, hay dos formas corporales: A o B.



Cabeza



La cabeza base incluye diferentes mallas adjuntas que pueden personalizarse como wearables: Eyebrows, Eyes y Mouth funcionan como máscaras de transparencia renderizadas frente a la cara.

Parte superior del cuerpo



La parte superior del cuerpo, o torso, de un avatar. No incluye las manos.

Parte inferior del cuerpo



La parte inferior del cuerpo incluye la pelvis y las piernas de un avatar.

Manos



Las manos son las mismas para Shape A y B, y comienzan en las muñecas de un avatar.

Pies



Los pies incluyen tobillos y pie.

circle-exclamation

Cada parte del cuerpo tiene tapones, lo que las hace "herméticas". Estos tapones existen para prevenir glitches antiestéticos si hay problemas de recorte de animación debido a un mal weight de la piel. Es mejor no eliminar estos tapones al editar la malla.



Construyendo modelos 3D para wearables

Limitaciones de tris, materiales y texturas

Para asegurar que Decentraland funcione sin problemas para todos los jugadores, es importante crear modelos de wearables sin usar demasiados triángulos, materiales y texturas. El objetivo es mantener los modelos 3D lo más simples posible para que puedan renderizarse fácilmente, sin sacrificar demasiado detalle.

Hay límites en el número de triángulos y texturas que se pueden usar para cada wearable o accesorio:

  • No más de 1.5K triángulos por slot de wearable: hat, helmet, upper body, lower body, feet y hair.

  • No más de 500 triángulos por categorías: mask, eyewear, earring, tiara, top_head y facial hair.

  • Para accesorios de mano, el presupuesto es de 1k tris. Si el wearable de mano oculta la mano base del avatar, el presupuesto es de 1.5k tris.

  • No más de 2 texturas (a una resolución de 512x512px o menor) por wearable. Todas las texturas deben ser cuadradas y a 72 píxeles/pulgada de resolución.

  • No más de 2 materiales (sin contar el AvatarSkin_MAT)

  • En el caso de wearables de piel, la cantidad de tris permitida es 5k y 5 texturas.

circle-exclamation

Dimensión máxima de ancho, alto y profundidad de los wearables

Existe un límite de distancia para los wearables para asegurar que no obstruyan la visibilidad de las pantallas de otros jugadores ni invadan el espacio de la escena de forma excesiva.

La dimensión de los wearables no puede exceder:

Altura: 2.42 m, Ancho: 2,42 m, Profundidad: 1,4 m




Mapas

Los wearables de Decentraland actualmente soportan 3 tipos de mapas, que son:

  1. Base Color: Esta es la textura principal con los colores y detalles de tu modelo.

  2. Emission: Este mapa es para las partes que brillan en tu modelo. El mapa de emisión va en un material separado específicamente para emission.

  3. Alpha: Este mapa se usa para manejar la transparencia. Utiliza el canal de opacity de la textura. (Siempre es preferible usar Alpha Clip en lugar de Alpha Blend, usando una textura en blanco y negro para el recorte)



Debido a que el cliente de referencia de Decentraland utiliza un Toon Shader para los materiales del avatar, algunos mapas son no necesarios como:

  • Mapas normales: texturas usadas para simular detalles de alta resolución en modelos de bajo polígono codificando normales de superficie como valores RGB.

  • Mapas de rugosidad: texturas usadas para definir la rugosidad de la superficie de objetos 3D.

Para usar estos mapas en Decentraland la solución es hornearlos en una textura. Puedes encontrar más información sobre baking de texturas aquí: https://docs.blender.org/manual/en/latest/render/cycles/baking.htmlarrow-up-right

Normales

El engine de Decentraland renderiza solo las normales de un lado. (Eso significa que un plano solo será visible desde un lado, el otro lado no será renderizado) Así que, para asegurar que tus normales 3D sean absolutamente correctas, podemos comprobarlo de dos maneras distintas.

La primera es activar el "Backface culling" en la configuración de propiedades del Material; esta es una buena práctica para detectar normales invertidas, como en esta imagen:




La segunda manera de comprobar si las normales están bien es activando "Face orientation" en las opciones de overlay del viewport. Volverá tu modelo azul, pero no te preocupes. Las caras azules son las correctas y las rojas son las que necesitan ser corregidas; puedes encontrar esta opción aquí:



Armature

Recuerda no cambiar ninguna de las especificaciones, convenciones de nombres, jerarquía o transforms del armature proporcionado. Cambiar cualquiera de estos hará que el wearable deje de funcionar en el cliente después de exportar.



Asegúrate de que el armature importado no tenga ningún end u neutral hueso, de lo contrario el wearable no va a funcionar tras exportarlo al builder. Si estás importando un .fbx que tiene este problema puedes activar Ignore Leaf Bones al importar el armature.



Cejas, Ojos y Boca

Estas mallas funcionan con un shader transparente, por lo que no tienes que hacer nada aparte de crear tu propia textura png para el nuevo estilo de ceja, ojo o boca que quieras y colocarla correctamente en el mapa UV. Estas texturas deben ser de 256x256px y deben tener canal alfa para la transparencia.

Aquí hay algunas texturas png de ejemplo:





Eyes y Eyebrows usan la misma malla y mapa UV.




Mouth malla y mapa UV.

Para visualizar el resultado final necesitarás usar estos nodos (en Blender):




Máscaras: El Avatar Editor tiene diferentes opciones de color que los jugadores pueden elegir para personalizar sus avatares.



Estas opciones de color se aplican a una máscara específica en el wearable.




El área negra en la imagen de la izquierda (Eyes Mask) indica el área de la textura a la derecha (Eyes Base) que será coloreada. Es importante recordar que el iris siempre necesita tener una escala de grises (si el iris es totalmente negro, el tint no funcionará. Por el contrario, si el iris es totalmente blanco será completamente teñido por el color seleccionado usando el editor).

Handwear

Hay dos tipos de Handwear que puedes hacer bajo la misma categoría.

  1. Reemplazo de manos:



Si quieres crear un wearable de mano que reemplace ambas manos probablemente necesitarás sobrescribir la hand malla base. Al hacer eso, el límite para el wearable de mano sería de 1500 tris.

  1. Accesorios de mano:



También puedes crear accesorios de mano como relojes, pulseras, anillos, etc. En ese sentido, la mano no necesita ser sobrescrita y el límite es de 1000 tris por ítem.

circle-exclamation

Cabello y barba

Hay dos cosas importantes para recordar al crear wearables de cabello personalizados.

Primero, intenta seguir la forma de la cabeza. Siempre puedes referirte a la malla de la cabeza proporcionada en los archivos de ejemplo si necesitas un punto de partida.



Segundo, si quieres que los usuarios puedan cambiar el color del cabello o la barba usando el avatar editor, entonces debes pintar el cabello en escala de grises y usar "Hair" en el nombre del material (ejemplo "M_Hair_Short"). Si quieres incluir otro objeto que no sea influenciado por el tint, simplemente no añadas esa convención de nombre.





Tonos más bajos de gris aparecerán más oscuros y tonos más altos de gris aparecerán más claros, multiplicados por el color seleccionado por el usuario en el avatar editor.

Materiales y texturas base

Hay tres materiales básicos para los modelos de avatar. Uno es el material usado para el wearable en sí, otro se usa para la skin y otro para las cejas, ojos y boca.



Cada malla base viene con su propia textura de skin.




La textura de la skin está hecha en escala de grises para que el motor de render pueda tintar la piel del avatar usando el editor según la preferencia del usuario. Para poder tintar el color de la piel usando el editor, el nombre del material debe ser AvatarSkin_MAT.


circle-exclamation

\\u0001src="../images/wearables-and-emotes/creating-wearables/19_skin_uv.png"width="600"/>

¡Puedes crear texturas personalizadas para tus wearables! Sin embargo, siempre es mejor usar un solo archivo de textura muy pequeño para cada wearable. Usar la textura por defecto AvatarWearable_MAT proporcionada en los archivos de ejemplo garantizará que tus wearables tengan buen rendimiento.


circle-exclamation

✨ En caso de que quieras hacer tus propias texturas para el modelo, recomendamos los siguientes addons para un mejor UV Unwrapping:

UVPacker

UvPacker es un addon gratuito que te ayuda a empaquetar y organizar tus UVs con solo unos pocos clics. Como Decentraland trabaja con 512x para los wearables, esta herramienta es una gran ayuda para crear texturas mejores y más organizadas.

Puedes descargarlo directamente desde la web aquí:

https://www.uv-packer.com/download/arrow-up-right

UVToolKit

UvToolKit es un addon que te ayuda a expandir tus ajustes y opciones de UV para crear excelentes UVs en Blender.

Aquí está el enlace para la descarga: https://alexbel.gumroad.com/l/NbMyaarrow-up-right

Skin Weighting

El skin weighting es el proceso de determinar qué huesos en el rig del avatar afectan a qué wearables durante una animación.

Al asignar skin weights a nuestros nuevos wearables, hay varias consideraciones que debemos tener en cuenta.

Cada asset debe estar ponderado al esqueleto completo. Por ejemplo, un asset de parte superior del cuerpo se verá así al aplicar skin weights:



Los wearables que se encuentran en intersecciones entre partes del cuerpo deben estar completamente ponderados al mismo hueso. Por ejemplo, en estas dos zonas verdes, los vértices del cuello deben estar completamente ponderados solo al hueso "Neck".



Huesos clave

Los huesos "clave" a usar al asignar skin weighting son:

Hueso de la cabeza: para el hair, earrings, tiaras, eyes, eyebrows, mouth y cualquier accesorio que necesite seguir el movimiento de la cabeza.

Hueso del cuello: para los vértices intersección principales de la cabeza y la parte superior del cuerpo.

Hueso de las caderas: para los vértices intersección de la parte superior e inferior del cuerpo.

Huesos de la pierna derecha e izquierda: para los vértices intersección de la parte inferior del cuerpo y los pies.

Antebrazo derecho y antebrazo izquierdo para los vértices intersección de las manos.

circle-exclamation

Exportando wearables

Al exportar wearables, asegúrate de que no haya otros huesos fuera del Armature dado. Un problema común al importar armatures entre diferentes software es la aparición de "_end" u "_neutral" bones. Asegúrate de eliminarlos antes de exportar. De lo contrario, es muy probable que los wearables no funcionen en el cliente posteriormente.



Para exportar el wearable, selecciona el objeto y luego el armature. Asegúrate de no exportar nada más, como cámaras, luces u objetos vacíos.

A continuación, exporta el wearable en glTF2.0 formato. Asegúrate de exportar solo el wearable con sus propiedades de skinning, y sin otras características innecesarias como animación o shape keys.



Buenas prácticas para modelar

Cambia tu malla de T-Pose a A-Pose

Cuando haces wearables, la mejor forma de visualizar el resultado final y facilitar cómo manejas la topología y la posición del wearable es trabajar con el modelo en A-Pose. Para hacerlo debes seguir estos pasos simples:

  1. Primero selecciona la parte superior del cuerpo, luego debes activar "Edit mode" y "On cage" en el modificador del armature.


  1. Ahora, en pose mode puedes rotar los brazos 60°.


  1. Puedes editar tu malla en A-Pose en lugar de T-pose.


  1. Pero también es bueno tener en cuenta que puedes alternar fácilmente de A-Pose a T-Pose volviendo a activar "Edit mode" y "On cage" en el modificador del armature.



Deformación en las articulaciones:

Para obtener los mejores resultados en la topología del wearable cuando se trata de articulaciones (brazos o piernas, por ejemplo), es importante tener buenas prácticas al crear loops. Aquí podemos ver la diferencia en la deformación de la malla para diferentes cortes de loop:



Una buena manera de asegurar que todo se deforma correctamente es hacer un weight paint como el siguiente ejemplo:




Faldas

Un consejo útil y buena práctica al modelar faldas/vestidos es añadir cortes de loop adicionales en las intersecciones de los pliegues. Esto será muy útil cuando tengas que pintar los weights del rig.



Con estos loopcuts la influencia de los vértices se ve mucho más suave y te da mejores resultados al animar una falda/vestido.

Aquí hay un ejemplo de cómo debería ser la influencia ósea:



Sombreros

Una buena práctica al crear hats es añadir un hair a la malla base del sombrero y luego ocultar la categoría hair usando el editor. Hacer esto evitará que el sombrero se solape con otros hairs y reducirá resultados inesperados.



Aumentar el recuento de polígonos

Un consejo valioso es llevar siempre el control del polycount de tus modelos. Para hacer eso en Blender necesitas activar las estadísticas en el panel de overlays del viewport.



Recursos

En esta carpeta compartida puedes encontrar modelos base, texturas y varios otros recursos, incluidos ejemplos de wearables completamente creados. Siéntete libre de aprovechar estos recursos al crear los tuyos.

Modelos de referencia de wearablesarrow-up-right

Última actualización