Ambientes No-Repetitivos en Wwise

Llegó el 2014, es 9 de Enero, y se agota el tiempo para participar en el concurso Wwise Limbo Redux. Así pues, aprovechando el impulso del nuevo año, les contaré un poco acerca de cómo crear ambientes no repetitivos en Wwise a partir de poco material.

Para los que no lo conocen, Wwise es un programa de Audiokinetic creado exclusivamente para diseñar e implementar sonido para medios no-lineales. Es compatible con Unreal y Unity entre otros motores, y ha sido ampliamente empleado para crear juegos para Xbox, Wii y Play Station, incluyendo Assassin’s Creed (2,3 & Brotherhood), Bioshock Infinite, Mass Effect 2&3, y Saints Row: The Third, entre otros. También es compatible con Windows Phone 8, iOS y Android.

LimboWwise

Sonidos Flexibles y Contenedores de Audio Contenedor Aleatorio de Wwise

En los videojuegos, especialmente en los de consola, cuando hablamos de un sonido, no necesariamente nos referimos a un archivo de audio. Es decir, un sonido en un juego no necesariamente es un WAV.  En realidad nos referimos a sonidos flexibles, o contenedores, en los cuales podemos agrupar varios archivos de audio para asignarles comportamientos (como reproducción aleatoria, reproducción simultánea, reproducción en secuencia, etc) y también asignar parámetros a cada sonido individual y a cada contenedor (como rangos de volumen, cambios de tono, filtros de atenuación, etc).

Supongamos que vamos a hacer un ambiente para un juego en la selva. Queremos que la selva tenga varios tipos de pájaros, sapos, grillos, y tal vez que se escuche el río a lo lejos.  Por limitaciones de espacio no podemos usar mucho material de audio.  Tampoco podemos usar un loop de un ambiente y repetirlo eternamente porque va a cansar al jugador.  Es entonces cuando aparece nuestro gran amigo Wwise.

En Wwise podemos crear un contenedor aleatorio (Random Container) y nombrarlo, por decir algo, “Pájaro1”. Dentro de ese contenedor, importamos algunos archivos muy cortos de cantos de pájaros. Para estos ejemplos, edité sonidos que encontré en Macaulay Library.

Crear Contenedor  Contenedor Aleatorio en Wwise

A cada sonido individual se le pueden configurar parámetros como volumen, pitch y atenuación. Por otro lado, al contenedor “Pájaro1” le podemos asignar más comportamientos y parámetros. En este caso, escogí que se reprodujeran los sonidos al azar, evitando reproducir dos veces seguidas un mismo sonido, y también le asigné al contenedor que se reprodujera de manera contínua. También se puede elegir el tipo de transición o crossfade entre cada sonido individual para suavizar los empates entre sonidos.

Parámetros - Wwise

Para añadirle variedad al contenedor “pájaro 1”, podemos asignar rangos de volumen, pitch y filtro.

RandomVol  RandomPitch  RandomFilter

Finalmente, para darle más vida a los sonidos, en la pestaña de posición podemos asignar cambios de movimiento 3D y posición en el eje x.

Position_Wwise

IMPORTANTE:

Si reproducimos todos estos sonidos simultáneamente y continuamente, va a sonar caótico; un reguero de pájaros cantando continuamente sin parar. Por esta razón debemos crear un objeto que contenga silencio y asignarle una duración o un rango de duración.

Una vez tengamos todos nuestros contenedores de los animales listos, debemos crear un contenedor que los agrupe a todos para reproducirlos simultáneamente. Para esto, podemos crear un “Blend Container” que nos permite combinar todos nuestros sonidos. Lo llamaremos Animales y arrastraremos todos los contenedores allí. A cada contenedor le podemos agregar un silencio y especificar sus parámetros según sea conveniente para el diseño sonoro.

Varios Contenedores en Wwise

Pues bien, ya tenemos nuestro gran contenedor con sonidos de animales.  A este “Blend Container” le podemos asignar probabilidades ponderadas de cada sub-contenedor. Por ejemplo, queremos que el pájaro1 suene más que el pájaro3, y menos que los sapos, y así.

Probabilidades en Wwise

Ahora que tenemos todos los animales, necesitamos un ruido de fondo que sirva como base y ayude a que los empates no suenen raros y para que los animales no suenen como parches, mejor dicho, para unificar todos los sonidos. Para esto existen varias técnicas, pero en este ejemplo creé otro Blend Container con un Loop corto de grillos y un Loop corto de un río. Como cada loop es de longitudes distintas, al reproducirlos simultáneamente se va a generar un ambiente que cambia constantemente en el tiempo por lo cual van a ser imperceptibles los loops.

Contenedor - Loop Base de Fondo - Wwise

Para terminar el ambiente, creamos un nuevo Blend Container, en este caso llamado “Ambiente”, y arrastramos todos los contenedores allí para que se reproduzcan simultáneamente.

Espero que haya sido útil este post y si tienen preguntas o comentarios, por favor no duden en escribirme. Si quieren estar al tanto de nuevas publicaciones, los invito a seguir el grupo en LinkedIn, o alternativamente pueden darle follow al blog. ¡Feliz año para todos!

Etiquetado , , ,

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: