Skip to content

Godot: sistema de audio (música por bioma + SFX mapeados a señales) #47

Description

@leocagli

Objetivo

Implementar el sistema de audio con música ambiental por bioma, SFX mapeados a señales del juego y ajustes de volumen persistidos.

Alcance

  • Buses de audio: Master, Music (−6 dB), SFX (0 dB)
  • Música: loops ambientales por bioma dominante (pradera, desierto, tundra, océano), crossfade suave
  • SFX: mover unidad, atacar, construir ciudad, finalizar turno, victoria, derrota, wallet conectada
  • Volumen configurable en menú de opciones, guardado con ConfigFile
  • Silencio automático al perder el foco de la ventana (pestaña del navegador en segundo plano)

Skill de referencia

/godot-audio-systems

Tareas

  • Configurar buses en AudioServer y guardar layout en audio_bus_layout.tres
  • MusicManager.gd autoload: play_biome(biome) con tween de volume para crossfade
  • SFXLibrary.gd: diccionario { "unit_move": preload(...), "attack": preload(...), ... }
  • AudioManager.gd: suscribirse a EventBus y llamar play_sfx(key, position) con atenuación 2D
  • OptionsMenu.tscn: sliders para Music/SFX/Master conectados a AudioServer.set_bus_volume_db
  • _notification(NOTIFICATION_APPLICATION_FOCUS_OUT): silenciar Music bus

Aceptación

La música cambia de loop al moverse a una región de bioma diferente, los SFX suenan en la posición del evento en el mapa y los ajustes de volumen persisten entre sesiones del navegador.

🎁 Evidencia = reward mayor

  • Si tu PR incluye capturas de pantalla mostrando esto andando end to end, entra a reward de GrantFox en esta issue.
  • Si además sumás un video demo corto, califica para reward mayor.
  • No es obligatorio, pero pesa mucho en la evaluación.

Qué conviene mostrar en esta issue:

  • Video con audio moviendo una unidad de una región de bioma a otra, para que se escuche el crossfade entre los loops de MusicManager.
  • Video con audio de varios SFX disparados desde EventBus (mover unidad, atacar, fundar ciudad, finalizar turno) donde se note la atenuación 2D según la posición del evento en el mapa.
  • Captura del OptionsMenu con los sliders de Master, Music y SFX, más un clip que muestre que el valor persiste al recargar la pestaña del navegador y que la música se silencia al perder el foco.

Pegá las capturas directo en la descripción del PR, arrastrándolas al cuadro de texto de GitHub.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    GrantFox OSSPart of the GrantFox OSS campaignMaybe RewardedMay be eligible for GrantFox rewardThird CampaignCampaign: Third CampaignaudioMusica y efectos de sonidogodotPort a Godot 4

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions