33 #include <AK/SpatialAudio/Common/AkSpatialAudioTypes.h>
34 #include <AK/Plugin/AkReflectGameData.h>
35 #include <AK/SoundEngine/Common/AkSoundEngine.h>
38 enum AkDiffractionFlags
40 DiffractionFlags_UseBuiltInParam = 1 << 0,
41 DiffractionFlags_UseObstruction = 1 << 1,
42 DiffractionFlags_CalcEmitterVirtualPosition = 1 << 3,
44 DefaultDiffractionFlags = DiffractionFlags_UseBuiltInParam | DiffractionFlags_UseObstruction | DiffractionFlags_CalcEmitterVirtualPosition
77 :
params(in_sourcePosition, in_fDistanceScalingFactor, in_fLevel)
203 AkVertex(AkReal32 in_X, AkReal32 in_Y, AkReal32 in_Z) :
X(in_X),
Y(in_Y),
Z(in_Z) {}
215 ,
point1(AK_INVALID_VERTEX)
216 ,
point2(AK_INVALID_VERTEX)
221 AkTriangle(AkVertIdx in_pt0, AkVertIdx in_pt1, AkVertIdx in_pt2, AkSurfIdx in_surfaceInfo)
301 static const AkUInt32
kMaxNodes = AK_MAX_SOUND_PROPAGATION_DEPTH;
519 namespace SpatialAudio
540 AkGameObjectID in_gameObjectID,
549 AkGameObjectID in_gameObjectID
557 AkGameObjectID in_gameObjectID
567 AkGameObjectID in_gameObjectID
577 AkGameObjectID in_gameObjectID,
588 AkGameObjectID in_gameObjectID,
621 AkImageSourceID in_srcID,
623 AkUniqueID in_AuxBusID,
625 AkGameObjectID in_gameObjectID = AK_INVALID_GAME_OBJECT
632 AkImageSourceID in_srcID,
633 AkUniqueID in_AuxBusID,
634 AkGameObjectID in_gameObjectID = AK_INVALID_GAME_OBJECT
666 AkGameObjectID in_gameObjectID,
670 AkUInt32& io_uArraySize
728 AkGameObjectID in_gameObjectID,
748 AkGameObjectID in_gameObjectID,
749 AkReal32 in_fObstruction,
750 AkReal32 in_fOcclusion
763 AkReal32 in_fObstruction,
764 AkReal32 in_fOcclusion
778 AkReal32& out_wetDiffraction
790 AkGameObjectID in_gameObjectID,
794 AkUInt32& io_uArraySize
AkTransform virtualPos
Virtual emitter position. This is the position that is passed to the sound engine to render the audio...
bool RoomGameObj_KeepRegistered
AKSOUNDENGINE_API AKRESULT QueryWetDiffraction(AkPortalID in_portal, AkReal32 &out_wetDiffraction)
AKSOUNDENGINE_API AKRESULT UnregisterListener(AkGameObjectID in_gameObjectID)
Triangle for a spatial audio mesh.
AkUInt32 numPathPoints
Number of valid elements in the pathPoint[], surfaces[], and diffraction[] arrays.
AkUInt32 uPoolSize
Desired memory pool size if a new pool should be created. A pool will be created if uPoolID is not se...
AkReal32 fDiffractionShadowAttenFactor
Multiplier that is applied to the distance attenuation of diffracted sounds (sounds that are in the '...
AkVertex(AkReal32 in_X, AkReal32 in_Y, AkReal32 in_Z)
Constructor.
AkImageSourceParams params
Image source parameters.
AKSOUNDENGINE_API AKRESULT QueryReflectionPaths(AkGameObjectID in_gameObjectID, AkVector &out_listenerPos, AkVector &out_emitterPos, AkReflectionPathInfo *out_aPaths, AkUInt32 &io_uArraySize)
Parameters passed to SetPortal.
AkVector imageSource
Apparent source of the reflected sound that follows this path.
Auxiliary bus sends information per game object per given auxiliary bus.
AKSOUNDENGINE_API AKRESULT RemovePortal(AkPortalID in_PortalID)
AkMemPoolId uPoolID
User-provided pool ID (see AK::MemoryMgr::CreatePool).
AkTriIdx NumTriangles
Number of triangles in Triangles.
AK::SpatialAudio::String name
Name given to image source, can be used to identify the image source in the AK Reflect plugin UI.
AkVertIdx point2
Index into the vertex table passed into AkGeometryParams that describes the third vertex of the trian...
AkReal32 RoomGameObj_AuxSendLevelToSelf
AKSOUNDENGINE_API AKRESULT SetGameObjectInRoom(AkGameObjectID in_gameObjectID, AkRoomID in_CurrentRoomID)
AkAcousticSurface()
Constructor.
AkTriangle(AkVertIdx in_pt0, AkVertIdx in_pt1, AkVertIdx in_pt2, AkSurfIdx in_surfaceInfo)
Constructor.
AKSOUNDENGINE_API AKRESULT Init(const AkSpatialAudioInitSettings &in_initSettings)
Initialize the SpatialAudio API.
AkSpatialAudioInitSettings()
AkPortalParams()
Constructor.
AkImageSourceSettings(AkVector in_sourcePosition, AkReal32 in_fDistanceScalingFactor, AkReal32 in_fLevel)
AkVector pathPoint[AK_MAX_REFLECTION_PATH_LENGTH]
AKSOUNDENGINE_API AkMemPoolId GetPoolID()
Access the internal pool ID passed to Init.
AkRoomParams()
Constructor.
AkUInt32 nodeCount
Total number of nodes in the path. Defines the number of valid entries in the nodes,...
AK::SpatialAudio::OsString strName
Name used to identify portal (optional).
AkUInt32 uNumTexture
Number of valid textures in the texture array.
const char * strName
Name to describe this surface.
AkVector nodes[kMaxNodes]
AkAcousticSurface surfaces[AK_MAX_REFLECTION_PATH_LENGTH]
AkAcousticSurface * Surfaces
AKSOUNDENGINE_API AKRESULT UnregisterEmitter(AkGameObjectID in_gameObjectID)
AkUInt32 diffractionMaxPaths
AkReal32 reflectionMaxPathLength
AkUInt32 reflectionsOrder
AkUInt32 reflectorFilterMask
AK::SpatialAudio::OsString strName
Name used to identify room (optional)
AKSOUNDENGINE_API AKRESULT SetGeometry(AkGeometrySetID in_GeomSetID, const AkGeometryParams &in_params)
Structure for retrieving information about the indirect paths of a sound that have been calculated vi...
AKSOUNDENGINE_API AKRESULT SetPortal(AkPortalID in_PortalID, const AkPortalParams &in_Params)
bool isOccluded
True if the sound path was occluded. Note that the spatial audio library must be recompiled with #def...
AKSOUNDENGINE_API AKRESULT RegisterEmitter(AkGameObjectID in_gameObjectID, const AkEmitterSettings &in_settings)
void SetOneTexture(AkUniqueID in_texture)
AkUniqueID reflectAuxBusID
AkReal32 angles[kMaxNodes]
Raw diffraction angles at each point, in radians.
AKSOUNDENGINE_API AKRESULT SetEmitterAuxSendValues(AkGameObjectID in_gameObjectID, AkAuxSendValue *in_pAuxSends, AkUInt32 in_uNumAux)
AkPortalID portals[kMaxNodes]
AkUInt32 reflectorChannelMask
Bitfield of channels that this surface belongs to. When processing the reflections,...
AKSOUNDENGINE_API AKRESULT SetEmitterObstructionAndOcclusion(AkGameObjectID in_gameObjectID, AkReal32 in_fObstruction, AkReal32 in_fOcclusion)
AkTriangle()
Constructor.
void SetName(const char *in_pName)
Initialization settings of the spatial audio module.
Vertex for a spatial audio mesh.
AkReal32 diffraction[AK_MAX_REFLECTION_PATH_LENGTH]
Diffraction amount, normalized to the range [0,1].
AkUInt8 useImageSources
Enable reflections from image sources that have been added via the AK::SpatialAudio::SetImageSource()...
AKSOUNDENGINE_API AKRESULT RemoveRoom(AkRoomID in_RoomID)
AkVertIdx point0
Index into the vertex table passed into AkGeometryParams that describes the first vertex of the trian...
Base type for ID's used by Wwise spatial audio.
AkUInt32 numReflections
Number of reflections in the pathPoint[] array. Shadow zone diffraction does not count as a reflectio...
AkUInt32 diffractionMaxEdges
bool EnableDiffraction
Switch to enable or disable geometric diffraction for this Geometry.
AkSurfIdx NumSurfaces
Number of of AkTriangleInfo structures in in_pTriangleInfo and number of AkTriIdx's in in_infoMap.
AkReal32 level
Linear gain applied to image source.
AK::SpatialAudio::OsString name
Name given to this sound emitter.
AKSOUNDENGINE_API AKRESULT SetPosition(AkGameObjectID in_gameObjectID, const AkTransform &in_sourcePosition)
static const AkUInt32 kMaxNodes
Defines the maximum number of nodes that a user can retrieve information about. Longer paths will be ...
AKSOUNDENGINE_API AKRESULT SetImageSource(AkImageSourceID in_srcID, const AkImageSourceSettings &in_info, AkUniqueID in_AuxBusID, AkRoomID in_roomID, AkGameObjectID in_gameObjectID=AK_INVALID_GAME_OBJECT)
AkEmitterSettings()
Constructor.
AkReal32 fMovementThreshold
Amount that an emitter or listener has to move to trigger a recalculation of reflections/diffraction....
AkImageSourceSettings & operator=(const AkImageSourceSettings &src)
Operator =.
AkRoomID rooms[kMaxNodes+1]
Settings for a sound emitter.
AKSOUNDENGINE_API AKRESULT RemoveImageSource(AkImageSourceID in_srcID, AkUniqueID in_AuxBusID, AkGameObjectID in_gameObjectID=AK_INVALID_GAME_OBJECT)
bool EnableDiffractionOnBoundaryEdges
Switch to enable or disable geometric diffraction on boundary edges for this Geometry....
AkImageSourceTexture texture
Acoustic texture that goes with this image source.
AkUInt32 uDiffractionFlags
Enable or disable specific diffraction features. See AkDiffractionFlags.
AkVertex * Vertices
Number of vertices in Vertices.
AkUInt32 uMaxSoundPropagationDepth
Maximum number of portals that sound can propagate through; must be less than or equal to AK_MAX_SOUN...
AkReal32 roomReverbAuxBusGain
AKSOUNDENGINE_API AKRESULT QueryDiffractionPaths(AkGameObjectID in_gameObjectID, AkVector &out_listenerPos, AkVector &out_emitterPos, AkDiffractionPathInfo *out_aPaths, AkUInt32 &io_uArraySize)
AkGeometryParams()
Constructor.
AKSOUNDENGINE_API AKRESULT SetPortalObstructionAndOcclusion(AkPortalID in_PortalID, AkReal32 in_fObstruction, AkReal32 in_fOcclusion)
AkReal32 fDiffractionShadowDegrees
AkReal32 obstructionValue
AKSOUNDENGINE_API AKRESULT RemoveGeometry(AkGeometrySetID in_SetID)
AkUniqueID arTextureID[AK_MAX_NUM_TEXTURE]
Unique IDs of the Acoustics Texture ShareSets used to filter this image source.
AKSOUNDENGINE_API AKRESULT SetRoom(AkRoomID in_RoomID, const AkRoomParams &in_Params)
AkReal32 reflectionsAuxBusGain
Send gain (0.f-1.f) that is applied when sending to the bus that has the AkReflect plug-in....
Parameters passed to SetRoom.
Parameters passed to SetGeometry.
AkVertIdx point1
Index into the vertex table passed into AkGeometryParams that describes the second vertex of the tria...
AkReal32 diffractionMaxPathLength
AKSOUNDENGINE_API AKRESULT RegisterListener(AkGameObjectID in_gameObjectID)
Besoin d'aide ?
Des questions ? Des problèmes ? Besoin de plus d'informations ? Contactez-nous, nous pouvons vous aider !
Visitez notre page d'Aide
Décrivez-nous de votre projet. Nous sommes là pour vous aider.
Enregistrez votre projet et nous vous aiderons à démarrer sans aucune obligation !
Partir du bon pied avec Wwise