Version
menu

Wwise SDK 2025.1.0
AkReflectGameData.h
Go to the documentation of this file.
1 /*******************************************************************************
2 The content of this file includes portions of the AUDIOKINETIC Wwise Technology
3 released in source code form as part of the SDK installer package.
4 
5 Commercial License Usage
6 
7 Licensees holding valid commercial licenses to the AUDIOKINETIC Wwise Technology
8 may use this file in accordance with the end user license agreement provided
9 with the software or, alternatively, in accordance with the terms contained in a
10 written agreement between you and Audiokinetic Inc.
11 
12 Apache License Usage
13 
14 Alternatively, this file may be used under the Apache License, Version 2.0 (the
15 "Apache License"); you may not use this file except in compliance with the
16 Apache License. You may obtain a copy of the Apache License at
17 http://www.apache.org/licenses/LICENSE-2.0.
18 
19 Unless required by applicable law or agreed to in writing, software distributed
20 under the Apache License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
21 OR CONDITIONS OF ANY KIND, either express or implied. See the Apache License for
22 the specific language governing permissions and limitations under the License.
23 
24  Copyright (c) 2025 Audiokinetic Inc.
25 *******************************************************************************/
26 
27 #ifndef _AK_REFLECT_GAMEDATA_H_
28 #define _AK_REFLECT_GAMEDATA_H_
29 
32 
34 {
36  : uID((AkImageSourceID)-1)
37  , params()
38  , texture()
39  , name()
40  {}
41 
42  AkReflectImageSource(AkImageSourceID in_uID, AkVector64 in_sourcePosition, AkReal32 in_fDistanceScalingFactor, AkReal32 in_fLevel)
43  : uID(in_uID)
44  , params(in_sourcePosition, in_fDistanceScalingFactor, in_fLevel)
45  , texture()
46  , name()
47  {
48  }
49 
50  void SetName(const char * in_pName)
51  {
52  name.SetName(in_pName);
53  }
54 
55  AkImageSourceID uID; ///< Image source ID (for matching delay lines across frames)
56  AkImageSourceParams params; ///< Image source properties
57  AkImageSourceTexture texture; ///< Image source's acoustic textures. Note that changing any of these textures across frames for a given image source, identified by uID, may result in a discontinuity in the audio signal.
58  AkImageSourceName name; ///< Image source name, for profiling.
59 };
60 
61 /// Data structure sent by the game to an instance of the Reflect plug-in.
63 {
64  AkGameObjectID listenerID; ///< ID of the listener used to compute spatialization and distance evaluation from within the targeted Reflect plug-in instance. It needs to be one of the listeners that are listening to the game object associated with the targeted plug-in instance. See AK::SoundEngine::SetListeners and AK::SoundEngine::SetGameObjectAuxSendValues.
65  AkUInt32 uNumImageSources; ///< Number of image sources passed in the variable array, below.
66  AkReflectImageSource arSources[1]; ///< Variable array of image sources. You should allocate storage for the structure by calling AkReflectGameData::GetSize() with the desired number of sources.
67 
68  /// Default constructor.
71  , uNumImageSources(0)
72  {}
73 
74  /// Helper function for computing the size required to allocate the AkReflectGameData structure.
75  static AkUInt32 GetSize(AkUInt32 in_uNumSources)
76  {
77  return (in_uNumSources > 0) ? sizeof(AkReflectGameData) + (in_uNumSources - 1) * sizeof(AkReflectImageSource) : sizeof(AkReflectGameData);
78  }
79 };
80 #endif // _AK_REFLECT_GAMEDATA_H_
AkReflectImageSource(AkImageSourceID in_uID, AkVector64 in_sourcePosition, AkReal32 in_fDistanceScalingFactor, AkReal32 in_fLevel)
AkReflectImageSource arSources[1]
Variable array of image sources. You should allocate storage for the structure by calling AkReflectGa...
AkImageSourceTexture texture
Image source's acoustic textures. Note that changing any of these textures across frames for a given ...
Data used to describe one image source in Reflect.
AkUInt64 AkGameObjectID
Game object ID.
Definition: AkTypedefs.h:47
AkUInt32 AkImageSourceID
Image Source ID.
Definition: AkTypedefs.h:71
static const AkGameObjectID AK_INVALID_GAME_OBJECT
Invalid game object (may also mean all game objects)
Definition: AkConstants.h:33
AkUInt32 uNumImageSources
Number of image sources passed in the variable array, below.
void SetName(const char *in_pName)
float AkReal32
32-bit floating point
static AkUInt32 GetSize(AkUInt32 in_uNumSources)
Helper function for computing the size required to allocate the AkReflectGameData structure.
AkGameObjectID listenerID
ID of the listener used to compute spatialization and distance evaluation from within the targeted Re...
AkImageSourceID uID
Image source ID (for matching delay lines across frames)
Data structure sent by the game to an instance of the Reflect plug-in.
AkReflectGameData()
Default constructor.
AkImageSourceName name
Image source name, for profiling.
3D 64-bit vector. Intended as storage for world positions of sounds and objects, benefiting from 64-b...
Definition: Ak3DObjects.h:34
uint32_t AkUInt32
Unsigned 32-bit integer.
void SetName(const char *in_pName)
AkImageSourceParams params
Image source properties.

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