
Lección 3.4: Efectos de sonido y partículas
Tutorial
Beginner
+10XP
60 mins
(504)
Unity Technologies

Descripción general:
Este juego se ve extremadamente bien, pero le falta algo crucial: ¡efectos de partículas y de sonido! Los sonidos y la música le darán vida a un mundo más bien silencioso y las partículas harán que las acciones del jugador sean más dinámicas y atractivas. En esta lección agregaremos sonidos y partículas geniales cuando el personaje corre, salta o choca.
Resultado del proyecto:
La música se reproducirá mientras el jugador corre por la Escena dejando una estela de partículas de polvo a su paso. Un sonido de resorte se escuchará cuando salte y escucharemos un boom al chocar, lo cual creará una nube de partículas de humo mientras cae.
1. ¿Cómo personalizar una partícula de explosión?
El primer efecto de partículas que debemos agregar es una explosión para cuando el jugador choque con un obstáculo.
- En Course Library > Particles, arrastra FX_Explosion_Smoke a la Hierarchy, después utiliza los botones Play / Restart / Stop para crear una vista previa.
- Modifica un poco la configuración para que el Particle System sea justo como lo quieras.
- Asegúrate de desmarcar la configuración Play on Awake.
- Arrastra la Particle hasta tu jugador para hacerla un child object, después posiciónala relativa al jugador.
2. ¿Cómo reproducir la partícula al momento de la colisión?
Descubrimos los efectos de partículas y encontramos una explosión para el choque, pero necesitamos asignarla al Player Controller (Control del jugador) y escribir un poco de nuevo código para reproducirla.
- En PlayerController.cs, declara un nuevo public ParticleSystem explosionParticle;.
- En el Inspector, asigna la explosión a la variable Explosion Particle.
- En el enunciado condicional if donde el jugador choca con un obstáculo, llama explosionParticle.Play();, después prueba y corrige las Particle Properties.

3. ¿Cómo agregar una partícula de salpicadura de polvo?
El siguiente efecto de partículas que necesitamos es un salpicador de polvo para crear el efecto de que el jugador golpea el suelo mientras acelera por la Escena. El truco es que la partícula solo debe reproducirse cuando el jugador está en el suelo.
- Arrastra FX_DirtSplatter como el objeto secundario del jugador, reubícalo, rótalo y edita su configuración.
- Declara una nueva public ParticleSystem dirtParticle;, luego asígnala en el Inspector.
- Agrega dirtParticle.Stop(); cuando el jugador salta o colisiona con un Obstacle.
- Agrega dirtParticle.Play(); cuando el jugador aterriza en el suelo.

4. ¿Cómo agregar música al objeto de cámara?
Nuestros efectos de partículas se ven bien, así que es momento de pasar a los sonidos. Para poder agregar música, necesitamos adjuntar componentes de sonido a la cámara. Después de todo, la cámara representa los ojos Y los oídos de la Escena.
- Selecciona el objeto Main Camera y después Add Component > Audio Source.
- En Course Library > Sound, arrastra un clip de música a la variable AudioClip en el Inspector.
- Reduce el volumen para que sea más fácil escuchar los efectos de sonido.
- Marca la casilla de selección Loop.
5. ¿Cómo declarara variables para Clips de audio?
Ya que tenemos un poco de buena música en reproducción, es momento de agregar algunos efectos de sonido. Esta vez los clips de audio provendrán del jugador, en lugar de la cámara.
- En PlayerController.cs, declara un nuevo public AudioClip jumpSound; y un nuevo public AudioClip crashSound;.
- En Course Library > Sound, arrastra un clip hasta cada nueva variable de sonido en el Inspector.
6. ¿Cómo reproducir clips de audio al saltar y al chocar?
Asignamos clips de audio a los saltos y choques en PlayerController. Ahora necesitamos reproducirlos en el momento correcto para darle al juego una experiencia de audio completa.
- Agrega un componente Audio Source al Player.
- Declara un nuevo private AudioSource playerAudio; e inicialízalo como playerAudio = GetComponent<AudioSource>();.
- Llama playerAudio.PlayOneShot(jumpSound, 1.0f); cuando el personaje salta.
- Llama playerAudio.PlayOneShot(crashSound, 1.0f); cuando el personaje choca.

7. Resumen de la lección
Nueva funcionalidad:
- La música se reproduce durante el juego
- Efectos de partículas a los pies del jugador cuando corre
- Efectos de sonido y explosión cuando el jugador choca con un obstáculo
Nuevos conceptos y habilidades:
- Sistemas de partículas
- Posicionamiento de objetos secundarios
- Audio Clips y Audio Sources
- Reproduce y detén efectos de sonido
Resumen general:
- Hemos creado un juego extremadamente pulido: tenemos efectos de sonido y partículas muy geniales. Tenemos música de fondo muy animada. Aprendimos sobre cómo utilizar animaciones para nuestros personajes y conjuramos un poco de magia de programación para que nuestro fondo se deslizara eternamente.