Números de Daño Flotantes: Aceptación de Entrega e Implementación en Motor
Criterios de fallo cuando los popups se ven borrosos, pierden glifos, ordenan mal o tartamudean; elegir TMP vs dígitos bitmap, pools y orden de Canvas, pasos de aceptación en Unity UGUI, y cómo encaja el arte de dígitos de diseño.
- game-ui-design
- game-dev-ai
- ui-to-engine
- bitmap-font
- unity
- godot
- cocos
- vberai
- 2026
Cuando diez impactos caen en un segundo, los problemas de texto flotante rara vez se arreglan con “fuente más grande”: nítido en el Editor, suave en el dispositivo; el color de crítico funciona pero falta la “K” o el signo menos; los números se posan sobre botones del HUD y roban toques; o Instantiate genera picos de GC. Los popups son UI de alta frecuencia y corta vida—acéptalos por separado del HUD estático.
A continuación se enfoca en Unity UGUI / TextMeshPro (RectTransform, Canvas, sortingOrder). Godot: Label + Theme / bitmap; Cocos: Label + bitmap font + pool—mismos criterios y orden de pasos. Shell del HUD estático: checklist de motor + MCP. Ítem 3 pre-lanzamiento (“arte borroso / números de daño”)—reprobar en dispositivos Release.
Criterios de fallo (cualquiera = no aprobado): legibilidad afectada (borrosidad, recorte, glifos faltantes); tiempo de frame de combate claramente peor que la línea base sin popups en dispositivos objetivo; los popups bloquean toques requeridos con raycasts aún activos; los visuales de crítico/curación/fallo no coinciden con la especificación basada en datos; formato de números inconsistente con la tabla de diseño (p. ej. 1.2K vs 1200 mezclados).
Elegir primero: TMP o dígitos bitmap
| Escenario | Mejor opción | Trampa típica |
|---|---|---|
Dígitos + pocos símbolos (0-9 . + - %) | Bitmap / malla de dígitos personalizada | Huecos en el charset; filtro incorrecto → borrosidad |
| Cadenas localizadas completas (“Critical”, “Immune”) | TMP + tabla de cadenas | Inestabilidad de ancho al mezclar con dígitos |
| Contorno pesado, degradado, estilo animado | Bitmap o secuencia de frames | Estado faltante → fallback de color incorrecto |
| Prototipo | TMP SDF por defecto | Sin resolución de referencia → suave en dispositivo |
Si la borrosidad en dispositivo persiste: referencia del Canvas Scaler, padding/atlas de TMP, Filter Mode del bitmap (a menudo Point)—luego charset o calidad SDF. Ver planificación de charset de bitmap font y ítem 3 pre-lanzamiento.


Unity: construir y aceptar (6 pasos)
1. Canvas dedicado o orden explícito
- Usa un Canvas dedicado (
Screen Space - Cameraalineado con la cámara de combate) o una capa hija del HUD. - Configura
sortingOrderpor encima de la UI de mundo, por debajo de popups modales;raycastTarget = falseen los gráficos del popup. - Popups de mundo: un World Canvas compartido—no un Canvas por número.

2. Pool de objetos
- Precalienta ≥ el conteo máximo en pantalla (estrés por habilidades; a menudo 16–32 mínimo).
- Al reciclar: reinicia posición, alfa, escala, estado de animación, texto.
- Sin
Instantiate/Destroypor impacto.
3. Separar datos de presentación
- El combate emite
DamagePopupEvent(valor, tipo, posición de mundo/punto de anclaje, flag de crítico). - La presentación elige color, prefijo, abreviatura (K/M/B), curvas.
- La tabla de diseño mapea tipo → Prefab de estilo (Normal / Crit / Heal / Miss / Block).
4. Movimiento y legibilidad
- Típico: flotar hacia arriba + desvanecer + ligera escala; 0.4–0.8s; escalonar o encolar en el mismo anclaje.
- Múltiples impactos en el mismo frame: fusionar o desfasar 1–2 frames para evitar solapamiento.
- Si el tamaño sigue la distancia de cámara, usa una regla de escala de mundo—no mezcles con la escala del Canvas de UI dos veces.

5. Charset y formato
- Bitmap: verifica
0-9 . , + - % x K M By proyecta reglas de abreviatura. - TMP: divide campos o sprites—no dependas de una sola cadena para cambiar fuentes.
- Con desbordamiento de locale: no rasterices oraciones localizadas completas como arte de popup.
6. Prueba en dispositivo
- Dev y Release: enjambre de mobs de 30s, habilidad de jefe multi-tick, dispositivo de baja RAM.
- Compara tiempo de frame con vs sin popups; captura de pantalla de crítico/curación/fallo una vez cada uno.
- Los criterios de aprobación viven en Prefab + configuración de pool, no solo en la Escena de prueba.
Entrega de diseño (dígitos y estados)
| Entrega | Uso |
|---|---|
| Arte de dígitos o estilos TMP por estado (Normal/Crit/Heal/Miss) | Prefab/Material guiado por tabla |
| Contorno/sombra a resolución objetivo | Verificación de nitidez en dispositivo |
| Color + icono de crítico/combo en dígitos | Evitar tintes codificados en el código |
| Alcance del charset (solo dígitos vs unidades localizadas) | Bitmap o tabla de cadenas |
Checklist de entrega de diseño: si los popups son raster, especifica por locale o no; por defecto dígitos bitmap + etiquetas TMP.
Enrutamiento de correcciones
| Síntoma | Causa probable | Acción | Responsable |
|---|---|---|---|
| Suave en dispositivo, nítido en Editor | Scaler / SDF / filtro bitmap | Alinear resolución de referencia; filtro Point; padding SDF | Ingeniería |
| Glifos faltantes | Charset / símbolos | Extender charset; o TMP | Ingeniería + Diseño |
| Bloquea botones | Orden / raycast | Bajar orden o desactivar raycast | Ingeniería |
| Tartamudeo | Sin pool / demasiados FX+texto | Pool; fusionar pops del mismo frame | Ingeniería |
| Aspecto de crítico incorrecto | Colores codificados | Tipo→Prefab; estados de diseño | Ingeniería + Diseño |
| Separado del estilo del HUD | Dos pipelines de fuentes | Unificar fuente o Theme | Diseño + Ingeniería |
Preguntas frecuentes
¿Los popups deben ser World Space?
No. La 2D fija a menudo usa Screen Space - Camera; las cámaras 3D libres a menudo usan World Canvas. Elige uno y documéntalo.
¿Partículas de UI para el estilo?
Bien para FX; los dígitos se quedan como Label/TMP/malla por locale y pooling.
¿Un script con la lógica de daño?
Emite eventos desde la lógica; toggle de presentación (ShowDamageNumbers) para pruebas y accesibilidad.
¿Números grandes?
Una regla de formateo del diseño; implementación única—sin copiar y pegar entre scripts de UI.
Seguir leyendo
Más guías que te pueden interesar
Eliminación de fondo gratis en VberAI: recortes con Glow / VFX / semitransparentes con PNG + Alpha
VberAI AI Super Matting: matting gratis para FX de glow, eliminación de fondo con IA hasta 4096×4096 y Super AI para pelo, bordes semitransparentes y sombras con PNG + Alpha.
- vberai
- ai-super-matting
- matting
- super-matting
VberAI de extremo a extremo: AI Studio + Engine MCP para un minijuego jugable
Genera o importa UI en AI Studio, luego impulsa la lógica y la depuración con Cursor mediante Godot, Unity o Cocos MCP. Incluye una grabación de un match-3 chibi, desde la exportación del Studio hasta una versión jugable sin código escrito a mano.
- VberAI
- AI Studio
- Unity MCP
- Godot MCP
Diseño de UI para juegos: flujo de trabajo tradicional vs arte con IA + división en VberAI Studio
Compara el corte manual de UI en PS/Figma con VberAI Studio: importa o genera UI con IA, divide capas automáticamente y exporta PSD por capas o sets de imágenes.
- game-ui-design
- game-ui-designer-flow
- ui-slicing
- AIGC