es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo cambiar la música de fondo de una escena a otra?

Hay solo dos escenas en mi juego.
La primera es el menú y la segunda es el juego.
En la segunda escena agregué música de fondo y me aseguré de que al recargar la escena la música no se interrumpa, pero esto significa que al regresar al menú la música sigue superponiéndose a la del menú.

¿Puedes darme alguna solución, por favor? ¡Gracias!

Este es el código para que la música continúe cuando se recargan las escenas:

using UnityEngine;
using UnityEngine.SceneManagement;

public class BackgroundMusic : MonoBehaviour
{
    private static BackgroundMusic backgroundMusic;

    void Awake()
    {

       if (backgroundMusic == null)
        {
            backgroundMusic = this;
            DontDestroyOnLoad(backgroundMusic);
            Debug.Log(SceneManager.GetActiveScene().name);
        }
        else
        {
            Destroy(gameObject);
        }
    }

}
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Una solución podría ser agregar un sistema de eventos al juego y utilizarlo para controlar la música. Cuando se carga la escena del juego, se activaría un evento para iniciar la música. Al regresar al menú, se activaría otro evento para detener la música. De esta manera, la música no se superpondrá con la música del menú. Otra solución podría ser tener un administrador de audio separado en la escena del juego que controle la música y la detenga cuando se descargue la escena.

Comments are closed.