Contenido del curso
Crea la estructura base
- 3

Controla un puntero con rotación facial en Spark AR
14:59 min - 4

Lógica de enemigos con Patch Assets en Spark AR
16:58 min - 5

Detectar contacto entre objetos en Spark AR
09:43 min - 6

Simula gestos en Spark AR sin webcam
04:48 min - 7

Contadores de puntos y vidas en Spark AR
13:14 min - 8

Pulse Multiplexer para unir señales en Spark AR
03:09 min - 9

Cómo mostrar el puntaje en Spark AR
07:17 min - 10

Animación Game Over en Spark AR con script
13:53 min - 11

Modo de juego y espera en Spark AR
14:20 min - 12

Dificultad progresiva con patches en Spark AR
14:05 min
Crea los gráficos
- 13

Swizzle y Gradient Map: recolorea rostros en Spark
Viendo ahora - 14

Gráficos procedurales para animar en Spark AR
10:48 min - 15

Ojos y colores en un fantasma SDF
06:25 min - 16

Animaciones reactivas para fantasmas en Meta Spark
11:06 min - 17

Capas y materiales para orden visual en AR
03:21 min - 18

Cómo importar objetos 3D en Spark AR
08:48 min
Acabado Final
Recursos
Resumen
¿Quieres aplicar imágenes a un rostro y transformarlas sin traer decenas de archivos pesados? En Spark AR puedes importar una sola textura y animarla, recolorearla y hacerla reaccionar a tu juego usando nodos como Swizzle y Gradient Map. Esto le sirve a cualquier creador de filtros que quiera controlar la parte visual de un efecto desde cero.
Todo arranca con un objeto facial que te permita ver lo que haces con el material. Sin una superficie donde proyectar, trabajas a ciegas.
Cómo preparo el objeto facial y el material en Spark
Lo primero es agregar un Face Mesh ligado directamente al Face Tracker. Ese es el lienzo donde vas a ver tu textura sobre la cara en tiempo real.
Después de crear el mesh, el flujo es sencillo:
- Agrega un nuevo material llamado por defecto Material 0.
- Renómbralo a algo claro como Cara con doble clic.
- Cámbialo a modo Flat y trae su textura al Patch Editor [01:03].
Aquí ya tienes dos caminos para controlar el color. Uno es usar un nodo value, que además de valores numéricos tiene un modo de color, así que puedes controlar directamente qué color recibe el material e incluso agregarle una animación de entrada.
¿Para qué sirve el modo Flat en un material de Spark? Es un modo que muestra la textura plana sin cálculos de iluminación. Lo usas cuando quieres que la imagen se vea tal cual la diseñaste sobre el rostro.
Qué hace el nodo Swizzle y cómo extraigo canales de color
La imagen que importas trae gráficos con colores muy primarios, y eso es a propósito. La intención de usar colores primarios es poder extraer cada canal por separado y sacar mucha más información de una sola imagen [02:28].
Para eso entra el nodo Swizzle. Recibe una entrada con varios colores y te deja exportar solo el que necesitas. Si escribes R, sacas el canal rojo; con G, el verde; con B, el azul [02:50].
Y aquí viene lo interesante: puedes reordenar los canales a mano. Como los colores siguen el orden R, G, B y luego alfa, puedes escribir B en la primera posición para mover lo que estaba en azul hacia el canal rojo, poner 0 en verde y azul, y 1 en alfa [03:30].
¿Qué es el canal alfa en una textura? Es el canal que controla la transparencia. Un valor de 1 hace el pixel totalmente opaco y un 0 lo vuelve invisible, lo que te permite recortar formas usando un color.
Antes de seguir, un detalle práctico: corrige que la textura no se vea dentro de los ojos seleccionando el Face Mesh y activando la opción de ojos [04:20].
Cómo recoloreo y animo con Gradient Map
Cuando pides un solo canal con Swizzle, no recibes RGB sino un valor de luminosidad de 0 a 100 por ciento. Por eso se ve blanco aunque metas un solo color. Ese canal es la materia prima perfecta para el nodo Gradient Map [04:45].
El Gradient Map toma esa luminosidad y la reinterpreta como un degradado. Lo que estaba en 0 por ciento lo puedes volver rojo, y lo más brillante lo conviertes en amarillo. Con eso ya tienes un look completamente distinto a partir de la misma imagen.
Lo potente llega al encadenar varios Gradient Step:
- Conectas el gradiente de uno al previous del siguiente como output.
- Defines que el primero vaya de 0 a 0.5 y el segundo de 0.5 a 1.
- Así multiplicas los valores de color disponibles en la misma textura [05:40].
Con ese encadenamiento logras pasar de negro a rojo y luego a amarillo, un resultado muy volcánico y lava. Y como estos pasos se manejan con flechas, todos los canales se pueden animar, cambiar por código o hacer que reaccionen cada vez que sube un punto en el juego [06:30].
Por qué cambiar el blend mode a Add mejora el efecto
Al terminar el degradado aparece un problema: el look de fuego se ve sobre fondo negro encima de la cara. La solución está en los atributos del material, en el blend mode, que define cómo se mezclan los colores entre el fondo y el material [07:20].
Por defecto está en alfa, que coloca el material como un objeto con transparencia. Al cambiarlo a add, el modo suma los valores de color.
¿Por qué funciona tan bien? Porque el negro vale cero, así que no agrega nada y desaparece, mientras que los colores brillantes sí se suman sobre la cara. En los materiales de la clase hay un artículo con todos los modos de blending para que estudies cada opción [08:00].
Con este flujo ya no dependes de traer animaciones cuadro por cuadro ni archivos pesados: generas todos esos comportamientos directo en Spark a partir de una sola textura. ¿Qué look vas a crear tú con Gradient Map? Cuéntalo en los comentarios.