Agregando audio
Clase 32 de 34 • Curso de Desarrollo de Videojuegos Móviles con Unity
Contenido del curso
- 8

Creando la cuadrícula
08:00 - 9

Ajustando la cámara
13:06 - 10

Sistema de coordenadas para instanciar las piezas
05:16 - 11

Instanciando las piezas en la cuadrícula
13:39 - 12

Moviendo las piezas
07:53 - 13

Intercambiando las piezas de lugar
14:45 - 14

Permitiendo solo ciertos tipos de movimientos
05:38 - 15

Creando las funciones del match 3
16:13 - 16

Usando el match 3 en nuestro juego
10:21 - 17

Eliminando los matches por defecto
12:31 - 18

Colapsando las piezas
17:31 - 19

Match 3 combo
07:47 - 20

Rellenando las piezas
07:36 - 21

Mejorando la animación de las piezas
07:37
- 24

Hablemos de diseño
01:34 - 25

Agregando un sistema de puntos
16:45 - 26

Sistema de tiempo
07:05 - 27

Interfaz para el sistema de tiempo
09:26 - 28

Creando sistema de UI
06:26 - 29

Pantalla de game over
14:37 - 30

Agregando funcionalidad a la pantalla de game over
09:16 - 31

Reiniciando el juego
08:40 - 32

Agregando audio
10:05 - 33

Terminando el juego
07:39
¿Cómo integrar audio en un videojuego de Unity?
Incorporar audio en tu videojuego es esencial para crear una experiencia envolvente. En esta guía, exploraremos cómo añadir efectos de sonido y música de fondo, utilizando Unity. Desde preparar los recursos de sonido hasta implementarlos y suscribirse a eventos del juego, este proceso te sumergirá en la acústica del desarrollo de videojuegos.
¿Cómo organizar los archivos de sonido?
Lo primero es mantener tus archivos de sonido bien organizados. Desde Unity, crea una nueva carpeta denominada song donde importarás tus archivos de audio. Aquí, necesitarás importar varios efectos de sonido, como:
startmovemissmatch- Música de fondo
Importa estos sonidos desde las fuentes del curso o tus propios recursos.
¿Cómo implementar el Audio Manager?
El Audio Manager es fundamental para manejar los sonidos en tu juego. Aquí está cómo puedes configurarlo:
-
Crear la clase Audio Manager: Dentro de la carpeta de scripts, crea una nueva clase de C#, nombrada
AudioManager.public class AudioManager : MonoBehaviour { public static AudioManager Instance; public AudioClip moveSFX; public AudioClip missSFX; public AudioClip matchSFX; public AudioClip gameOverSFX; private AudioSource sfxSource; void Awake() { if (Instance == null) { Instance = this; } else { Destroy(gameObject); } } } -
Integrar Singletons: El Audio Manager funciona como un singleton para asegurar que solo exista una instancia en el juego.
-
Referenciar clips de audio: Define propiedades para cada clip de audio que planeas usar.
¿Cómo vincular el Audio Manager con los eventos del Game Manager?
Para que el audio se reproduzca cuando suceden eventos específicos del juego, sigue estos pasos:
-
Suscribirse a eventos: Usa los métodos
AddListenerpara subscribirte a eventos comoPointsUpdatedyGameStateUpdateddel Game Manager.void Start() { GameManager.Instance.onPointsUpdated.AddListener(PointsUpdated); GameManager.Instance.OnGameStateUpdated.AddListener(GameStateUpdated); } void GameStateUpdated(GameState newState) { if (newState == GameManager.GameState.GameOver) { sfxSource.PlayOneShot(gameOverSFX); } else if (newState == GameManager.GameState.InGame) { sfxSource.PlayOneShot(matchSFX); } } -
Crear funciones para efectos de sonido: Implementa funciones públicas para reproducir sonidos, como al mover piezas o cuando no se logra un match.
public void Move() { sfxSource.PlayOneShot(moveSFX); } public void Miss() { sfxSource.PlayOneShot(missSFX); }
¿Cómo conectar los eventos de audio con el tablero del juego?
Integra la lógica del audio directamente en el tablero de juego:
-
Modificar la clase Board: En los lugares donde se mueven las piezas, llama a tus funciones de sonido.
public void SwapTiles() { // Código para mover piezas... AudioManager.Instance.Move(); } public void ReverseSwap() { // Código para revertir piezas cuando no se encuentra match... AudioManager.Instance.Miss(); }
¿Cómo configurar el Audio Manager en Unity?
Finalmente, configura todo en Unity:
-
Crear objetos vacíos para AudioManager: Dentro de la jerarquía de Unity, crea un objeto vacío para el Audio Manager. Añade dos objetos más:
SFXyMusic. -
Asignar componentes de AudioSource: A cada uno de estos objetos, asigna un componente de
AudioSource. Configura para la música de fondo un loop bajo y volumen bajo. -
Asignar clips a variables: Dentro del inspector de Unity y en AudioManager, asigna cada clip de audio a su respectiva variable.
¡Y listo! Ahora, al jugar, sentirás la diferencia que hacen los efectos de sonido en la experiencia del usuario. Este es solo el inicio; puedes seguir explorando más sonidos y eventos sonoros para enriquecer tu juego. ¡Así que manos a la obra con tu creatividad y experimenta nuevas ideas de sonidos!