Ir al contenido
Descargar

Sonido

Los sonidos son archivos WAV, OGG o MP3 en el proyecto. El nombre del sonido es el nombre del archivo sin la extensión.

Función Qué hace Ejemplo
SoundId Audio::play(std::string_view name, PlayOptions options = {}) Empieza a reproducir un sonido y vuelve al instante. Devuelve un SoundId, o 0 si el sonido no existe. Audio::play("explosao");
void Audio::stop(SoundId id) Detiene un sonido que está sonando. Audio::stop(music_);
void Audio::stopAll() Detiene todos los sonidos. Audio::stopAll();

PlayOptions tiene dos campos, que pasas entre llaves:

Campo Por defecto Qué es
volume 1.0f Volumen, de 0 a 1.
loop false true repite el sonido hasta Audio::stop.
Audio::play("tiro", {.volume = 0.4f});
SoundId music = Audio::play("musica", {.volume = 0.6f, .loop = true});

La música de fondo se lee del archivo poco a poco, sin cargar todo en la memoria. Solo suena una música a la vez: reproducir otra reemplaza la anterior.

Función Qué hace Ejemplo
bool Audio::playMusic(std::string_view name, float volume = 1.0f, bool loop = true) Empieza a reproducir la música. Devuelve false si el sonido no existe. Audio::playMusic("tema", 0.6f);
void Audio::stopMusic() Detiene la música. Audio::stopMusic();
void Audio::setMusicVolume(float volume) Cambia el volumen de la música, de 0 a 1. Audio::setMusicVolume(0.3f);
bool Audio::musicPlaying() true si hay una música sonando. if (!Audio::musicPlaying()) ...
  • Varios sonidos pueden sonar al mismo tiempo.
  • Formatos: WAV, OGG y MP3. Usa WAV en los efectos cortos y OGG o MP3 en la música.
  • El botón Copiar código en el Inspector del sonido copia la línea Audio::play("...");. Mira Sonidos.