Table of Contents

AKRESULT __cdecl AK::SpatialAudio::QueryDiffractionPaths ( AkGameObjectID  in_gameObjectID,
AkVector out_listenerPos,
AkVector out_emitterPos,
AkDiffractionPathInfo out_aPaths,
AkUInt32 io_uArraySize  
)

Query information about the diffraction state for a particular listener and emitter, which has been calculated using the data provided via the spatial audio emitter API. This function can be used for debugging purposes. Returned in out_aPaths, this array contains the sound paths calculated from diffraction around a geometric edge and/or diffraction through portals connecting rooms. No paths will be returned in any of the following conditions: (1) the emitter game object has a direct line of sight to the listener game object, (2) the emitter and listener are in the same room, and the listener is completely outside the radius of the emitter as defined by AkEmitterSettings::diffractionMaxPathLength, or (3) The emitter and listener are in different rooms, but there are no paths found via portals between the emitter and the listener. A single path with zero diffraction nodes is returned when all of the following conditions are met: (1) the emitter and listener are in the same room, (2) there is no direct line of sight, and (3) either AkEmitterSettings::diffractionMaxPathLength is exceeded or the accumulated diffraction coefficient exceeds 1.0. This function must acquire the global sound engine lock and, therefore, may block waiting for the lock.

See also:
Parameters:
in_gameObjectID  The ID of the game object that the client wishes to query.
out_listenerPos  Returns the position of the listener game object that is associated with the game object in_gameObjectID.
out_emitterPos  Returns the position of the emitter game object in_gameObjectID.
out_aPaths  Pointer to an array of AkDiffractionPathInfo's which will be filled on return.
io_uArraySize  The number of slots in out_aPaths, after returning the number of valid elements written.