Version

menu_open

Proximity Settings

The proximity settings enable fine control of the voice routing that occurs on the server. These settings optimize bandwidth usage when many users are in the same room, but any individual player only hears a small number of others, such as in open world and battle royale games .

In most team-based games, where members of a team can only speak amongst themselves, it is easier to use a room ID for each team instead of proximity settings.

By default, all users have a team ID of 0, which indicates that they are not part of any team. In this case, the server does not filter anything when it routes voices to the user.

Since 32-bit integers are used for the coordinate and range arguments of the following functions, developers might be required to non-linearly map game object positions to the positions sent to GMEWWisePlugin_SetSelfPosition and the range sent to GMEWWisePlugin_SetRangeAudioRecvRange.

/**
* @brief Set the team ID for the current player.
*	Players with the same team ID can always talk to each other,
*	regardless of the distance between them in any team mode.
*	A team is a group of players sharing the same team ID within the same room.
* @param[in] teamID Integer value identifying a team ID.
*	A team ID of 0 indicates “No team”, and will deactivate any filtering done on the
*	server when routing voices to this user.
* @sa GMEWWisePlugin_SetRangeAudioTeamMode
*/
void GMEWWisePlugin_SetRangeAudioTeamID(int teamID);
/**
* @brief Set the team mode to use for the current player.
* @param[in] teamMode The communication mode for the current player
*	* TEAMMODE_GLOBAL: Sound from players of any team is received if their position 
*		is within the receiving range.
*		Sound from players in the same team is always received.
*	* TEAMMODE_TEAM: Sound is only received from teammates, i.e., players sharing 
*		the same team ID as the current player.
*		Filtering based on the distance range is not applied.
*/
void GMEWWisePlugin_SetRangeAudioTeamMode(
GMEWWisePlugin_TeamMode teamMode
);
/**
* @brief Set the hearing distance between players in global team mode.
*	In global team mode, sound from players with a different team ID 
*	will be received when their position is within range.
*	The range is the 3D distance between player positions, as set by 
*	GMEWWisePlugin_SetSelfPosition.
*	The filtering applied by this range is done on the server.
* @param[in] range Integer value represents the hearing distance.
* @sa GMEWWisePlugin_SetSelfPosition
*/
void GMEWWisePlugin_SetRangeAudioRecvRange(int range);
/**
* @brief Set the position of the current player.
* @param[in] positionX The X-coordinate of the current player
* @param[in] positionY The Y-coordinate of the current player
* @param[in] positionZ The Z-coordinate of the current player
* @sa GMEWWisePlugin_SetRangeAudioRecvRange
*/
void GMEWWisePlugin_SetSelfPosition(int positionX, int positionY, int positionZ);

Was this page helpful?

Need Support?

Questions? Problems? Need more info? Contact us, and we can help!

Visit our Support page

Tell us about your project. We're here to help.

Register your project and we'll help you get started with no strings attached!

Get started with Wwise