Daytime based Ambience system (Wwise)
Updated: Nov 20, 2019
The original concept for my team's MProf project is a 20-minutes long puzzle-based game where the player has to repair a Lighthouse before the night to save the Ships.
The game begins at the brisk morning and progress into a gale-like night.
I've created an Ambience Weather System in Wwise based on RTCP:
- DayTime: ambience intensity changes throughout the day time;
- AmbiencePosition: distance of a player from the edge of the island (beach);
OutdoorAmbience Actor contains 2 Blend Containers: one for the ambiences close to the sea (AmbienceSea) and a second one with ambiences away from the sea (AmbienceLand). Both have the same structure of 3 Random Containers: Morning, Afternoon and Evening (3-4 assets per Container).
Every asset has been edited as a seamless loop in Cubase Pro 10 and Wavelab Elements 9.5 and is randomly crossfaded by the time of 2 to 5 seconds [Constant-Power (X-fade (power) Fade]. ). This system has a lot of real-time fades but these fades are inaudible within a slow tempo of 'DayTime' parameter (
I paid special attention while preparing assets and structure in Wwise to avoid phasing issues which sometimes may occur (just a moment of inattention is needed to fail on that aspect). This system have a lot of real-time fades but these fades are inaudible within a slow tempo of 'DayTime' parameter (original 20 minutes long game-play has been shortened to 5 minutes as our client requested).
At the moment of writing this blog post I didn't have recordings for a gale/windy weather at the same location so I used other samples to fill this gap (final game doesn't require those recordings so eventual return to recording location is up to me and most likely I'll do it during polishing time if I'll time). The entire process is described below:
AmbienceSea Actor now have additional parameters assigned to RTPCs:
- Voice Volume (DayTime): from the middle of the day time volume is rising up to 3.8dB at the end of a day
- Pitch (DayTime): from the middle of a day a bit of pitch gradually raise up towards the night
AmbienceLand have similar changes:
- Voice Volume (DayTime): from the middle of the day time volume is rising up to 8dB at the end of a day
- Pitch (DayTime): from the middle of a day a bit of pitch gradually goes down towards the night
Additionally, AmbienceAfternoon Container now has additional Pitch LFO RTPC to slightly modulate and make it more animated as for now this container is used for Afternoon, Evening and Night.
it's definitely not enough to create stormy weather at the end of the day so I added more audio assets:
Crickets: obviously ambience at night wouldn't be complete without them. So it's another Blend Container which plays from the end of Afternoon (DayTime RTPC 60-100). It fades in and then fades out by 12dB at the end of a day to make space for gust/stormy wind because crickets are not that active during the storm.
MidnightGust: audio asset from Sonniss (free GDC audio library: 'Soundrangers Wind' folder) which have been edited with Dynamic EQ and Stereo Enhancer to match other audio assets. In Wwise it's very similar to Crickets as it's also a Blend Container triggered at night (after Crickets) with additional parameter change for Pitch controlled by DayTime RTPC.
The game will include forest/park areas so I created another Random Container (outside OutdoorAmbience Actor) with 8 short audio snippets of birds singing in a forest (Tentsmuir Park in Dundee / Scotland). Those recordings are not the greatest as I did them with recorder without a windjammer but good enough to use it in this project. Audio assets are triggered by a Trigger Rate set to a DayTime RTPC with the most intensity at the Morning than a bit slower rate at the Afternoon and much slower at the end of the day (similar to birds activity in real-world) + additional randomization of +2s. Limited to 1 instance per game object because some audio assets are longer than the minimum of 2.5s transition.
Volume is controlled by DayTime and AmbiencePosition so birds can be heard only on a Land and before the night come (volume fades to -200 at Night). Birds Actor will have additional Positioning/Attenuation which may replace Volume RTPC for AmbiencePosition (this will be addressed when a game will have finished Map).
Here is an example of how it sounds now: