Audio en Bucle en Unreal Engine 5: Pausar y Detener con Audio Component en Blueprint

- Andrés Cruz - EN In english

Video thumbnail

En Unreal Engine 5, tengo un sistema en el que cuando mi jugador recibe un 75% de daño, se reproduce un sonido de alerta. Sin embargo, también cuento con ciertos cristales que restauran su vida, y cuando el jugador los toca, ese sonido ya no debe seguir sonando, pues solo tiene sentido reproducirlo mientras el jugador está por debajo del 25% de vida restante.

El reto está en hacer que ese audio en bucle se pueda detener de forma confiable desde Blueprint, y eso no es tan sencillo como parece a primera vista.

Problemas al Usar Spawn Sound 2D con Looping

La primera aproximación natural es importar el archivo de sonido (.wav o .ogg), abrir el Sound Wave en el editor y activar la propiedad Looping directamente desde el panel de detalles. Con eso hecho, podríamos usar el nodo Spawn Sound 2D en Blueprint, que devuelve una referencia al Audio Component generado y, en teoría, nos permite iniciarlo o detenerlo a voluntad:

Nodo Spawn Sound 2D en Blueprint de Unreal Engine 5

El problema es que, cuando el sonido está configurado en bucle, llamar a Stop sobre la referencia devuelta por Spawn Sound 2D no siempre funciona correctamente. En mi caso, prácticamente nunca lo detuvo. Por ejemplo, al tocar el cristal para recuperar vida, esperaba que el sonido de alerta de bajo HP se cortara de inmediato, pero el audio seguía reproduciéndose sin parar. Este es un comportamiento conocido con sonidos en bucle creados dinámicamente con este nodo: la referencia devuelta puede quedar huérfana o simplemente ignorar la llamada al método Stop.

Solución: Usar un Audio Component en el Personaje

La solución más robusta y limpia es añadir un Audio Component directamente al Blueprint del jugador como un componente fijo, en lugar de generarlo de forma dinámica. El proceso es el siguiente:

  • En el Blueprint del personaje, ve al panel de componentes, busca Audio y agrégalo. Ese componente vivirá durante toda la vida del actor, lo que nos garantiza una referencia estable en todo momento.
  • Con el componente seleccionado, asígnale el Sound Wave o Sound Cue que deseas reproducir, y activa la propiedad Looping desde sus detalles. Esto le indica al componente que debe repetir el audio indefinidamente una vez iniciado.

Desde Blueprint, en lugar de usar el problemático nodo Spawn Sound 2D, simplemente arrastras la referencia del Audio Component desde el panel de componentes y llamas a sus métodos directamente: usa Play cuando el jugador baje del umbral de vida y necesites iniciar el sonido, y Stop cuando el jugador recupere vida y debas silenciarlo. Como la referencia siempre apunta al mismo componente, el método Stop funciona de forma confiable en todo momento.

Audio Component con métodos Play y Stop en Blueprint de Unreal Engine 5

También puedes usar el nodo Set Paused del Audio Component si lo que quieres es pausar el audio y luego reanudarlo desde el mismo punto, sin reiniciar la reproducción desde el principio. Esto es útil, por ejemplo, si el jugador entra en un menú de pausa y no quieres que el sonido de alerta se corte bruscamente y vuelva a empezar desde cero.

Detalle Importante: Desactivar Auto Activate

Un punto crítico que no debes pasar por alto: asegúrate de desactivar la propiedad Auto Activate en los detalles del Audio Component. Si la dejas activa, el sonido comenzará a reproducirse en cuanto el actor aparezca en el mundo, independientemente de la lógica de tu Blueprint. En mi caso, el comportamiento correcto es que el audio solo arranque de forma programática cuando el jugador recibe suficiente daño, así que desactivar Auto Activate es indispensable para que el sistema funcione como se espera.

Aprende a implementar un sistema de audio en bucle en Unreal Engine 5 que puedas pausar, reanudar y detener desde Blueprint. Descubre por qué Spawn Sound 2D falla con sonidos looping y cómo solucionarlo con un Audio Component, su propiedad Looping y los nodos Play, Stop y Set Paused.


Únete a la comunidad de desarrolladores que han decidido dejar de picar código y empezar a construir productos reales. Recibe mis mejores trucos de arquitectura cada semana:

Acepto recibir anuncios de interes sobre este Blog.