domingo, 12 de julio de 2026devblog

Caras de verdad, y el bug del cuello de jirafa

Un cuerpo compartido para la animación y una cabeza MetaHuman única por jugador, determinada por su ID en la base de datos. El mismo jugador, la misma cara, en cualquier equipo, para siempre. Y entonces se estiraron los cuellos.

Día 27MISMO JUGADORMISMA CARA

Mis jugadores ya tienen caras de verdad.

La arquitectura: un único esqueleto corporal para todos los jugadores. Ahí viven el motion matching, los montajes y todas las animaciones retargeteadas, y no lo toco nunca. La cabeza es una malla MetaHuman aparte que simplemente lleva puesta la pose del cuerpo, y qué cabeza le toca a cada jugador lo decide su ID en la base de datos. El mismo jugador, la misma cara, en cualquier equipo, para siempre.

El bug de la jirafa

Los cuellos se estiraban como los de una jirafa al correr. Estaba ocultando el hueso de la cabeza del cuerpo para que no asomara a través de la de MetaHuman. Resulta que ocultar un hueso colapsa su transformación, y la malla de la cabeza copia exactamente esas transformaciones para colocarse. Le estaba pasando a la cara un hueso de la cabeza corrupto. Funcionaba parado y explotaba en movimiento.

Las dos funciones literalmente no pueden convivir y no existe solución por código. La respuesta era la aburrida, la que yo mismo había escrito en mi documento de diseño el primer día y luego pasé horas esquivando: quitarle la cabeza a la malla del cuerpo. Borrar los polígonos de la cabeza en Blender y conservar el hueso. Que es justo lo que hacen los juegos de fútbol de verdad. Ahora, cero lógica en tiempo de ejecución. Ese tipo de problema, extinguido.

Lección: cuando la solución limpia es "trabajo de contenido" y la chapuza es "código", tiro de código. Ese instinto me costó una tarde.

Y las caras no son algo cosmético. Cada jugador es una fila en una base de datos: nombre, edad, contrato, potencial. Así que cuando un chaval de diecisiete años de tu cantera se hace un hueco en el primer equipo, no es "Player_0412". Tiene una cara que reconoces.

Incluido: cabezas MetaHuman sobre un cuerpo de animación compartido

Este artículo se ha traducido del inglés con ayuda de IA. Leer el original