Blog homepage

Out With the Old, in With the New: Positioning Revamped in Wwise 2018.1

Wwise Tips & Tools

One of the new features included in Wwise 2018.1.0 is the enhancement of the Positioning tab. The goal of this refactoring is to clarify the terminology, make better use of the screen real estate and introduce two new features to Wwise. This article explains the changes, helping Wwise users understand the new UI. It also explains the added functionality of Positioning:

  • Smooth 2D/3D Transitions: Speaker Panning / 3D Spatialization Mix Slider
  • 3D User-defined around the emitter: Emitter with Automation

 

Picture1

R.I.P. 2D/3D

While improving the terminology used in the Positioning tab, we came to the conclusion that 2D was not the best term to define the behavior of these sounds. The 2D/3D sound concept was introduced in the 90s and we believe it is time to move on. Setting a sound to 2D in Wwise 2017.2.x and earlier meant that it would not be positioned in 3D space. You could assign a particular X-Y coordinate using the 2D Panner, that allows you to set a “position” for a mono sound. For multi-channel sources (i.e. not mono), the result was to change the panning of the volumes sent to the speakers very much like a car radio’s Balance and Fade settings do.

In Wwise 2018.1.0, 2D Positioning is now called Speaker Panning and it can be set to Direct Assignment to play the content of the source directly on their respective channels (L, R, C, etc.), or it can be set to Balance-Fade to enable the Speaker Panner.

 

Picture2

Panning a sound in this way can give the impression that it is positioned in space without requiring the SoundEngine to evaluate the emitter-listener positions. This is how music is panned in a DAW, it is the standard way of panning non-diegetic sounds.

3D Always Meant Listener Relative Routing

Selecting the Listener Relative Routing option for a sound enables several other interface elements of the Positioning tab. Let’s say you want a Speaker Panning sound to be audible only when the listener is close to the emitter, computing the emitter-listener positions becomes necessary. You select Listener Relative Routing to access its Attenuation Editor and set the Output Bus Volume curve with the desired Max distance.

When a sound should appear to play from the position of the game object it is playing from, then we want the SoundEngine to compute 3D Spatialization of the emitter-listener positions. 3D Spatialization is defined as: "The action of panning a sound on speakers based on the positions of the objects in game". In order to do so, set 3D Spatialization to Position or Position + Orientation. When set to Position + Orientation, the multi-channel content of the source will rotate based on the orientation. It is crucial to set the Spread to a value greater than zero to get this effect; all multi channel sources are folded down to mono when the Spread is at zero. A review of the 3D Positioning Illustrated section of Wwise Help can help you visualize the subtleties of Position + Orientation and how Spread and Focus work in Wwise.

Introducing Speaker Panning / 3D Spatialization Mix

Although it was possible to use a Game Parameter to control the 2D/3D positioning type via RTPC (Real-time Parameter Controls) in Wwise 2017.2.x and earlier, the transition between the two was instantaneous; and this would often cause unnatural transitions or even glitches. The only way to achieve a smooth transition between the 2D and 3D versions of a sound involved duplicating the SFX to have a 2D and a 3D copy, place them in a Blend Container and cross fade them in the Blend Track. This workaround is a thing of the past in Wwise 2018.1.0 thanks to the Speaker Panning / 3D Spatialization Mix slider!

 

Picture3

It can be used to either set a static percentage of mix between speaker panned and 3D spatialized, or controlled via RTPC to be dynamically set by the game code. You could also bind the Game Parameter to a built-in parameter like Distance to automate the transition between the speaker panned and 3D spatialized sounds.

3D Game-defined Becomes 3D Positioned Emitter

The 3D Game-defined sounds of Wwise 2017.2.x and earlier are sounds playing on game objects (a.k.a. emitters) that have their position set in the world through calls to the Wwise SDK functions. In Wwise 2018.1.0 the same result is achieved by enabling Listener Relative Routing, use Position or Position + Orientation for 3D Spatialization and set the 3D Position to Emitter:

 

Picture4

The Hold Emitter Position and Orientation option is disabled by default, enable it if you want the initial position of the emitter to be used for spatialization for the entire duration of the sound; thus ignoring the movement of the emitting game object.

3D User-Defined Becomes Listener with Automation

The 3D User-defined sounds of Wwise 2017.2.x and earlier allowed you to “program” one or more paths around the listener to make the sound move while it played. To reach the goal of clarifying the terminology, it has been renamed to Listener with Automation in Wwise 2018.1.0.

 

Picture5

The Hold Listener Orientation option will use the initial orientation of the listener when selected. If the listener changes orientation during the playback, sounds will be panned to reflect the change in orientation. Unselecting this option makes the sounds come from the same speakers no matter how the listener’s orientation changes.

Introducing Emitter with Automation

Another feature frequently requested by Wwise users was the ability to use 3D User-defined positions to be applied to the emitter game object instead of the listener. This feature is now available, it is called Emitter with Automation!

 

Picture6

Using the same Position Editor used for Listener with Automation, it also has a Hold Emitter Position and Orientation option. If this option is used on a sound played on a moving game object, the initial position of the game object when the sound is played will be kept for the duration of playback.

I hope this article helped you understand the changes to Positioning in Wwise 2018.1.0. 

Guillaume Renaud

Customer Support Lead

Audiokinetic

Guillaume Renaud

Customer Support Lead

Audiokinetic

Guillaume has been part of the customer support team at Audiokinetic since early 2014. He is well versed in Wwise and loves to share this knowledge with the community, convinced that technology can only reach its potential when it is understood by its user. When he is not exploring fictional worlds in games or books, he likes to explore the real world wearing running shoes or riding his snowboard.

 @LeRenard42

Comments

Alex Mitchell

January 02, 2019 at 07:45 am

Hi there, Is there any chance that the lessons in the certifications can be updated to with these new changes. I'm currently in lesson 4 and at the positioning section but it uses the older version of Wwise making it a little confusing. Regards, Alex

Guillaume Renaud

January 07, 2019 at 01:50 pm

That is a very good point, we are planning to update the certifications to reflect the changes in Positioning introduced in Wwise 2018.1.0. We can't give you an ETA for that update, we recommend you use Wwise 2017.2.x for the Wwise certifications in the meantime.

Julien Bourgeois

June 25, 2019 at 02:16 pm

+1

Toby Rodriguez

January 16, 2019 at 10:45 pm

Hi! It took me a while to find this post, but I second Alex's request for the lesson documentation update. This will also require an update to the info in the corresponding tutorial videos. That said, this is my first couple weeks learning this tool, and the lessons are amazing. Thank you so much for their clarity.

Gary Spinrad

January 30, 2019 at 07:12 pm

There used to be a 2d setting for use with a b-format ambisonic BG that retained the orientation of the 4 channel sample. How do I set that up now?

Leave a Reply

Your email address will not be published.

More articles

The Challenges of Immersive Reverberation in VR

Read the next blog in this series: Reviewing the immersive potential of classic reverberation...

8.11.2016 - By Benoit Alary

Tips from the Wwise Dev. Team!

This article covers some lesser-known Wwise features through a collection of tips targeting...

24.1.2017 - By Bernard Rodrigue

Introducing the Wwise Authoring API

You know that Wwise has an API for its audio engine, but wouldn’t it be nice if the authoring...

21.2.2017 - By Bernard Rodrigue

Using Wwise in Game Jams and Micro-Projects

Game jams, as fun as they can be, can be stressful and frustrating from an audio point of view....

15.5.2018 - By Yoann Morvan

Keeping it Steady with Wwise Motion Source

Sweet vibration, remember your first time? Maybe you expected it because you bought a Nintendo 64...

23.10.2018 - By Maximilien Simard Poirier

Hitman 2: Enhancing Reverb on Modern CPUs

Popularization of CPUs with six and eight cores means that untapped processing power becomes...

28.8.2019 - By Stepan Boev

More articles

The Challenges of Immersive Reverberation in VR

Read the next blog in this series: Reviewing the immersive potential of classic reverberation...

Tips from the Wwise Dev. Team!

This article covers some lesser-known Wwise features through a collection of tips targeting...

Introducing the Wwise Authoring API

You know that Wwise has an API for its audio engine, but wouldn’t it be nice if the authoring...