버전
menu_open

Understanding Virtual Voice Behavior

To maintain an optimal level of performance when many sounds are playing simultaneously, sounds below a certain volume level should not take up valuable processing power and memory. Instead of playing these inaudible sounds, the sound engine can queue them in the virtual voice list. Wwise continues to manage and monitor these sounds, but once inside the virtual voice list, they are no longer processed by the sound engine and won't take up one of the hardware's active voices.

When you select the virtual voices feature, sounds move back and forth between the physical and the virtual voice based on their volume levels when they are under threshold, or if their playback limit was exceeded. As the volume reaches the threshold set by the Wwise user in Project Settings, they are added to the virtual voice list and sound processing stops. As volume levels increase, as is the case when sounds move within the max distance radius, the sounds will move from the virtual voice list to the physical voice where they will be processed by the sound engine again.

Managing virtual voice behavior can be done in the advanced setting of any sound object, Actor-Mixer, or audio bus in the Advanced Settings tab of the Property Editor.

Setting virtual voice behavior in the advanced setting tab

There are three options to choose from when determining the move from physical to virtual voice:

  • Continue to play - Continues playing the object as a physical voice even though it will no longer be heard.

  • Kill voice - Stops playing the object. No fade out is applied with this option.

  • Send to virtual voice - Sends the object to the virtual voice list.

When a sound or motion object is sent to the virtual voice list, certain parameters of the object are monitored by the sound engine, but no processing for audio or motion occurs.

When Send to Virtual Voice is set, there are three options that determine the behavior of sounds or motion objects that move from the virtual voice list back to the physical voice.

  • Play from beginning - Plays the object from its beginning. This option resets the object's loop count.

  • Play from elapsed time - Continues playing the object as if it had never stopped playing.

This option is not sample accurate, so sounds returning to the physical voice may be out of sync with other sounds playing.

  • Resume - Pauses the object when it moves from the physical voice to the virtual voice list and then resume playback when it moves back to the physical voice.

Each behavior has its own performance characteristics, as demonstrated in the following table:

[Note] Designer Note

Streamed sounds stop consuming I/O bandwidth while they are virtual. When the selected behavior is Play From Beginning or Play from Elapsed Time, the I/O buffer is flushed. This causes a delay before the sound is heard again when the voices switch from virtual to physical.

In short, taking control of instances and priorities can actually change the sound of your game. Special care and handling should be used when defining the properties at every level of both the Actor and Master-Mixer Hierarchies. Restrictively modifying these setting can prevent important sounds from being heard appropriately, in the same way that ignoring the setting can result in unwelcome behavior.

For additional information on Instance Limiting, Prioritization, and Virtual Voices:

Video Tutorial - Voice Management

Wwise SDK > Going Further > Optimizing Memory Pools > Tips to Reduce Memory Usage

Wwise Help > Using Sounds and Motion to Enhance Gameplay > Managing the Priority of Sounds and Motion > Limiting Object Playback Instances

Wwise Help > Using Sounds and Motion to Enhance Gameplay > Managing the Priority of Sounds and Motion > Priority Tips and Best Practices

Wwise Help > Using Sounds and Motion to Enhance Gameplay > Managing the Priority of Sounds and Motion > Understanding How Wwise Prioritizes Sounds and Motion Objects


이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요