El siguiente tutorial es traducción del original en inglés extraído de la base de conocimientos de Second Life.

NOTAS DE TRADUCCIÓN:

  1. Traducimos wereable como vestible y es referencia a los objetos que se pueden vestir en el avatar, ropas, pelos, zapatos, joyas, etc.
  2. BAKE significa, literalmente, hornear, es dificil traducir esta palabra en términos de SL, la idea es hacer referencia al proceso de tomar todas las texturas que componen las distintas zonas del avatar y fundirlas en una sola (Referencia), por la cual, si bien no es el término correcto, técnicamente hablando, aquí en reemplazo de BAKE vamos a usar las palabras «fundido» o «renderizado». Asimismo, cuando se haga referencia a la característica técnica se mencionará sin traducir: BAKE ON MESH.


Bakes on Mesh es una característica que permite que las texturas fundidas del avatar de sistema se muestren en objetos mesh anexados al avatar.

¿Qué es una textura fundida y por qué la querría usar en mesh?

Si usas un avatar  estándar de sistema, puedes usar varias capas de textura para personalizar su piel y agregar tatuajes y capas de ropa. Para ahorrar tiempo de procesamiento y proporcionar a todos los usuarios de cualquier sistema la misma vista de tu apariencia, un servidor «hornea» esas texturas en una única textura combinada. Anteriormente, si deseabas usar una parte del cuerpo personalizada en mesh y hacer el mismo tipo de personalización, la parte del cuerpo necesitará su propio sistema de texturizado. Además, generalmente necesitará aplicar un dispositivo «alfa» anexado a la parte del cuerpo del avatar estándar subyacente para ocultarlo de modo que no interfiera con su parte de mesh. Con bake on mesh, puedes aplicar cualquier máscara del sistema y otras capas a tu avatar (no necesitas usar la capa alfa), y luego indicarle al visor que aplique la textura fundida resultante a la parte del cuerpo de la malla. La parte del avatar del sistema subyacente se oculta automáticamente, por lo que no se requiere la capa alfa anexada.

Características principales

  • Cualquier cara de un objeto mesh puede ser texturizada usando cualquiera de las texturas fundidas del servidor.
  • La región correspondiente del avatar del sistema está oculta si algún mesh  anexado está usando una textura fundida.
  • Se han introducido nuevos canales de fundido de textura para dar más control sobre cómo se texturizan los mesh.
  • Ahora se proporciona un nuevo «dispositivo vestible universal» con soporte para los nuevos canales de textura.

Beneficios

  • Evita la necesidad de aplicadores, lo que lleva a un flujo de trabajo de personalización más fácil.
  • Evita la necesidad de avatares «de cebolla» (con varias capas encima), lo que lleva a menos mesh y menos texturas en el tiempo de visualización.
  • Evita la necesidad de vender mesh con todos los permisos. El usuario puede personalizar cualquier mesh configurado para usar Bakes on Mesh simplemente equipando los vestibles apropiados, sin necesidad de modificar la malla en sí.

Cómo funciona

Canales vestibles y fundidos

Tradicionalmente, los objetos vestibles del avatar se han renderizado en seis texturas diferentes (BAKE_HEAD, BAKE_UPPER, BAKE_LOWER, BAKE_EYES, BAKE_SKIRT, BAKE_HAIR). Estas texturas se obtienen mediante la composición de las texturas correspondientes en los diversos elementos vestibles en tu avatar. Por ejemplo, una camisa establece la textura SUPERIOR (UPPER), y varias camisas en capas combinadas  contribuirían a crear la textura BAKE_UPPER resultante.

El proyecto Bakes on Mesh también agregó cinco nuevos canales de renderizado: LEFT_ARM_BAKED, LEFT_LEG_BAKED, AUX1_BAKED, AUX2_BAKED, AUX3_BAKED. A diferencia de las texturas originales, el avatar del sistema no utiliza ninguna de estas texturas. Son puramente extensiones para permitir un mayor control sobre la apariencia del mesh.

LEFT_ARM_BAKED y LEFT_LEG_BAKED están destinados a ayudar a crear avatares mesh donde las extremidades izquierda y derecha tienen diferentes texturas.
Los canales AUX son de uso general y podrían usarse para regiones del cuerpo que no poseen los avatares del sistema (como las alas) o para otros fines.
En total, esto proporciona 11 canales posibles para que los vestibles usen para texturas y para que produzca el servicio de renderizado.

Vestibles universales

Los nuevos canales no son útiles a menos que haya alguna forma de usar artículos que usen esos canales. Para satisfacer esta necesidad, se ha agregado un nuevo tipo portátil llamado Universal. El vestible universal tiene ranuras correspondientes a los 11 canales de renderizado nuevos y antiguos. En orden de capas, los vestibles universales van entre las capas de tatuaje y de cuerpo.

Establecer un mesh para usar texturas fundidas

Ahora puedes aplicar estas texturas a las texturas difusas de los archivos adjuntos de tu avatar:

Haz clic derecho en el archivo adjunto, haz clic en editar y desde el menú Editar cara selecciona las texturas.
Haz clic en el icono de textura difusa para abrir el selector de textura.
El selector de textura tiene un modo de botón de radio adicional llamado ‘bake’ para seleccionar texturas fundidas del servidor. El modo de botón de opción «bake» tiene un menú desplegable para seleccionar texturas fundidas del servidor.

Cuando un archivo adjunto usa una textura fundida, la región base del mesh correspondiente del avatar del sistema se oculta.

Si una cara de mesh está configurada para mostrar una textura fundida pero no está unida a un avatar, verás una textura fundida predeterminada. Si estás utilizando un visor más antiguo sin el soporte Bakes on Mesh, las caras configuradas para mostrar texturas fundidas también se mostrarán como la textura fundida predeterminada, y las regiones base de mesh no se ocultarán.

 

Las texturas de «respaldo» para los canales de fundido originales. Los visores que no admitan Bakes on Mesh mostrarán estas imágenes en lugar de las texturas fundidas. También las verás en cualquier objeto no adjunto que esté configurado para usar Bakes on Mesh. Los nuevos canales de fundido tienen texturas de respaldo similares.

Ejemplo:

Trabajando con los nuevos canales

Los nuevos canales de fundido se manejan de manera un poco diferente a los seis originales. Con los canales originales, como la parte superior del cuerpo, hay varios tipos de vestibles que pueden afectar el contenido, y siempre hay una capa base de piel en la parte inferior de la pila de texturas. Esto significa que, a menos que estés utilizando una capa alfa, tus texturas fundidas siempre serán opacas. Para los nuevos canales, las únicas texturas son aquellas suministradas por cualquier vestible universal que tengas, por lo que las texturas fundidas resultantes pueden ser transparentes. Ten en cuenta que esta es actualmente la única forma de hacer que los nuevos canales sean transparentes, ya que no existe una «capa alfa universal» (podemos agregarla en el futuro).

Si deseas una textura fundida transparente en uno de los nuevos canales que se utilizará para hacer que tu mesh sea parcialmente transparente, deberás configurar el modo alfa para esa cara en «Mezcla alfa».

Por ejemplo, en este caso hay un vestible universal con una textura de anillo transparente. La textura se aplica a la parte superior del cuerpo y a los canales del brazo izquierdo. El modo alfa está configurado en Mezcla Alfa. Resultados: la parte superior del cuerpo y el brazo derecho son opacos, porque hay una capa de piel opaca en la parte inferior de todo. El brazo izquierdo es transparente y la transparencia se aplica para hacer que partes del brazo izquierdo sean transparentes:
Con el mismo atuendo, pero el modo alfa configurado en Ninguno, verías esto. Ten en cuenta que ahora el brazo izquierdo es opaco con un color alternativo que se muestra debajo de las regiones transparentes:
Si agregas un vestible universal adicional con una textura de piel opaca adecuada para el canal del brazo izquierdo, obtendrás esto. Ahora ambos brazos son opacos, independientemente de si el modo alfa está configurado en Ninguno o en Mezcla alfa:

Trabajando con Animesh

Los objetos de Animesh se tratan de manera algo diferente cuando se anexan al avatar. Debido a que tienen sus propios esqueletos, tienen textura independientemente del avatar al que están unidos. Un objeto animesh adjunto no admite Bakes on Mesh y mostrará las texturas Bakes on Mesh utilizando las texturas de marcador de posición descritas anteriormente.

Soporte de scripts

Bakes on Mesh funciona definiendo identificadores de textura especiales correspondientes a cada uno de los canales de fundido. Hay constantes LSL correspondientes para cada uno de los canales, por lo que también puedes escribir un script que habilite Bakes on Mesh para una cara mesh. Las constantes de LSL son:

  • IMG_USE_BAKED_HEAD
  • IMG_USE_BAKED_UPPER
  • IMG_USE_BAKED_LOWER
  • IMG_USE_BAKED_EYES
  • IMG_USE_BAKED_SKIRT
  • IMG_USE_BAKED_HAIR
  • IMG_USE_BAKED_LEFTARM
  • IMG_USE_BAKED_LEFTLEG
  • IMG_USE_BAKED_AUX1
  • IMG_USE_BAKED_AUX2
  • IMG_USE_BAKED_AUX3

Éstas se pueden usar en comandos como llSetLinkTexture () o llSetLinkPrimitiveParamsFast (). Por ejemplo:

llSetLinkPrimitiveParamsFast(0, [PRIM_TEXTURE, 0, IMG_USE_BAKED_UPPER, <1.0, 1.0, 0.0>, ZERO_VECTOR, 0.0]);

configuraría la primer cara de un prim no vinculado para usar la textura fundida de la parte superior del cuerpo.

Ejemplo paso a paso

Aquí convertiremos un avatar del sistema en un avatar de mesh simple que use bake on mesh:

1. Inicia sesión utilizando un visor compatible con Bake on Mesh
2. Habilita el menú Desarrollo. Si no lo tienes activo, ve a Yo -> Preferencias, y en la pestaña Avanzado pulsa en Mostrar Menú Desarrollo.
3. en el menú Desarrollo, selecciona Desarrollo > Avatar > Pruebas de personaje > probar varón. Ahora verás un avatar estándar del sistema.
4. Necesitarás un avatar mesh para reemplazar al avatar de sistema. En tu navegador web, ve a https://jira.secondlife.com/browse/BUG-139234 y descarga el archivo «aditya_90.dae».
5. En el Visor Second Life, selecciona Construir > Subir > Modelo y selecciona el archivo «aditya_90.dae». En las opciones de subida, marca Incluir el peso de la piel. Define el nombre del modelo como «aditya_90».
6. Pulsa el botón Calcular pesos y precios y sube el modelo. Deberías tener en tu inventario un modelo llamado «aditya_90». Anéxatelo a tu avatar haciendo doble clic sobre dicho ítem en el inventario.
7. En este punto ya tienes un mesh, mostrado con la textura blanca por defecto, superpuesto a tu avatar del sistema. Ahora, necesitas convertir este mesh para utilizar Bake on Mesh. Esto también ocultará automáticamente el avatar de sistema.
8.  Pulsa el botón derecho sobre tu avatar y selecciona Editar. En la ventana de edición, selecciona «Elegir la cara». Pulsa en el pecho del avatar para seleccionar el cuerpo superior (Upper Body).
9. En la pestaña Textura, pulsa en el selector de texturas, el cuadrado con la textura blanca.
10. Marca la opción «bake» y luego, en el selector desplegable, elige el valor «BAKED_UPPER». Por último pulsa OK.
11. Ahora, tu avatar muestra el cuerpo superior correctamente texturizado sin mostrar la textura blanca. Lo que estás viendo es la superfice mesh texturizada con la textura fundida «upper body baked». El avatar de sistema para el cuerpo superior queda oculto.
12. Ahora repetimos el proceso para las otras regiones del cuerpo.

  • Seleccionar cara en el área de la cabeza y definir el uso de BAKED_HEAD
  • Seleccionar cara por cada uno de los ojos y definir el uso de BAKED_EYES
  • seleccionar cara para el cuerpo inferior y definir el uso de BAKED_LOWER
13. Obtener todas las caras seleccionadas y modificadas correctamente es un poco complicado. Si algo se estropea, vuelve a intentarlo con cualquier cara que se estropee. Al final, el avatar debería verse así:
14. El cabello se ve mal porque es un accesorio que no se construyó para este mesh. Puedes deshacerse de él haciendo clic derecho y seleccionando Quitar.
En este punto, tu avatar está completamente configurado para usar Bakes on Mesh. Ahora puedes personalizarlo de la misma manera que lo harías con el avatar de sistema. Por ejemplo, quitarse un itém de ropa:
 

O personalizar algo como ser el color de los ojos usando los controles deslizantes.

Si quieres retornar al avatar de sistema, simplemente te quitas el mesh:

Probar Contenido

Existen algunos contenidos de ejemplo para ayudar a los creadores que quieran comenzar con Bakes on Mesh:

https://jira.secondlife.com/browse/BUG-139234 el archivo «Aditya_for_BOM.dae» es un modelo para subir con caras separadas para el brazo izquierdo y la pierna izquierda, de esta manera se puede utilizar con los nuevos canales left arm y left leg.

https://jira.secondlife.com/browse/BUG-139234 el archivo «aditya_90.dae» es un modelo para subir que tiene definido el juego original de caras, correspondientes a cabeza, cuerpo superior, cuerpo inferior y asi sucesivamente. Las extremidades izquierdas y las extremidades derechas se mostrarán usando las mismas texturas con este modelo.