Skip to content

Commit 6ff52c3

Browse files
committed
feat: Attenuation settings
1 parent b7c6b8b commit 6ff52c3

File tree

7 files changed

+80
-11
lines changed

7 files changed

+80
-11
lines changed
Loading
Loading
Loading
Loading
Loading
Loading

modules/ROOT/pages/Development/Satisfactory/Audio.adoc

Lines changed: 80 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
2+
// cspell:ignore Audiokinetic
3+
// cspell:ignore Soundbank
4+
15
= Audio
26

37
[NOTE]
@@ -19,6 +23,64 @@ You will need to manually create the different Audio Buses that link to the othe
1923

2024
TODO: Waiting for CSS to provide the correct audio bus names.
2125

26+
=== Setting Up Attenuation
27+
28+
If you plan to use Wwise audio for buildings or equipment, you must set up **attenuation**.
29+
By default, the audio will play at full volume even if you are on the other side of the map from its origin.
30+
Attenuation causes the sound to become quieter at a distance or not play at all.
31+
32+
[NOTE]
33+
====
34+
Attenuation is not required if you plan to use Audio for UI or ADA messages, and this step can be skipped.
35+
====
36+
37+
On Wwises Project Explorer, go to the `ShareSets` tab. Share Sets are useful for providing the same configuration to multiple Wwise objects.
38+
39+
You will see the section `Attenuations -> Default Work Unit`
40+
41+
image:Satisfactory/Wwise/Wwise_Attenuation_ProjectExplorer.png[Wwise_Attenuation_ProjectExplorer, 350]
42+
43+
Create a new Attenuation object by right-clicking the `Default Work Unit` then `New Child -> Attenuation`
44+
45+
image:Satisfactory/Wwise/Wwise_Attenuation_Create.png[Wwise_Attenuation_Create, 100%]
46+
47+
You can name this whatever you want; just be mindful that you can't use the same name twice.
48+
49+
Open the new Attenuation ShareSet by double clicking the new attenuation shareset.
50+
51+
In the main section, you will be presented with the following:
52+
53+
image:Satisfactory/Wwise/Wwise_Attenuation_Info.png[Wwise_Attenuation_Info, 100%]
54+
55+
==== Distance
56+
57+
Click on the First setting, Volume (by default, will automatically be selected). This is marked in Yellow on the screenshot.
58+
59+
You will then need to set the `Max Distance` setting.
60+
61+
[TIP]
62+
====
63+
This number is in Unreal Units (uu); the conversion is 1000uu = 1 meter.
64+
====
65+
66+
The Max Distance will be the distance away from the building that the player can still hear the sound.
67+
68+
Based on the vanilla buildings, smaller buildings have a maximum distance of 4,000 to 6,000, and larger vanilla buildings are around 6,000 to 10,000.
69+
70+
==== Spread
71+
72+
By default, the spread will be set to 0. This means that the sound comes from a specific point when rotating the player.
73+
74+
This can become very confusing to players when they are standing right next to the building.
75+
76+
On the screenshot above, change the dropdown marked in Red to `Custom`. This will then show the spread graph in the bottom section.
77+
78+
You can add a new point to the graph by double-clicking the line. Then, set the `X` value to roughly the size of your building and the `Y` value to 100.
79+
80+
Add another point to the graph slightly further on, set the `X` value to the size of the building plus a bit more, and set the `Y` value to 0.
81+
82+
image:Satisfactory/Wwise/Wwise_Attenuation_Spread_Graph.png[Wwise_Attenuation_Spread_Graph, 100%]
83+
2284
=== Importing Media Files to Wwise
2385

2486
Open the Wwise project file, typically in `SMLProject/SMLProject_WwiseProject/SMLProject_WwiseProject.wproj`. Double-clicking this file will open Wwise.
@@ -46,6 +108,20 @@ Ensure that you have `Create New Objects` selected under import mode. Verify it
46108

47109
Your audio files are now imported to Wwise and ready to be referenced by Unreal systems.
48110

111+
=== Adding Attenuation To Audio
112+
113+
If you plan on using attenuation on audio, you must first follow the attenuation section of the documentation. xref:Development/Satisfactory/Audio.adoc#_setting_up_attenuation[Setting Up Attenuation].
114+
115+
To set up attenuation on the audio, double-click the audio file in the Wwise Project Explorer `Audio` tab.
116+
117+
Then, once the audio opens in the main section, go to the `Positioning` tab.
118+
119+
Change the `3D Spatialization` setting to `Position + Orientation` (Marked in blue in the screenshot).
120+
121+
Click the `>>` button, then select the Attenuation ShareSet from the list (Marked in red in the screenshot).
122+
123+
image:Satisfactory/Wwise/Wwise_Attenuation_Audio_Settings.png[Wwise_Attenuation_Audio_Settings, 500]
124+
49125
=== Creating Audiokinetic Events
50126

51127
**Audiokinetic Events** (typically shortened to `AKEvents`) allow your mod code to tell the Wwise sound system to do something.
@@ -161,9 +237,9 @@ If you would like to play a one-off AK event, such as a spark sound, you will ne
161237

162238
image:Satisfactory/Wwise/Wwise_UEAkEvent_FireAndForget.png[Wwise_UEAkEvent_FireAndForget, 100%]
163239

164-
This will first create a new `AK Component` at the blueprint's root component and then play the AK Event specified.
240+
This will create a new temporary `AK Component` and then play the AK Event specified.
165241

166-
Once the AK event has ended, you must clean up the `AK Component` using the callback event.
242+
Once the AK event has ended, the temporary `AK Component` will be automatically cleaned up.
167243

168244
==== Looping Events
169245

@@ -174,15 +250,6 @@ otherwise it will continue to play with no way to stop it.
174250

175251
image:Satisfactory/Wwise/Wwise_UEAkEvent_EndPlay.png[Wwise_UEAkEvent_EndPlay, 100%]
176252

177-
178-
=== Setting Up Attenuation
179-
180-
If you plan to use Wwise audio for buildings or equipment, you will need to set up **attenuation**.
181-
By default, the audio will play at full volume even if you are on the other side of the map from its origin.
182-
Attenuation causes the sound to become quieter at a distance, or not play at all.
183-
184-
Wwise has a great tutorial on how to set this up here: https://youtu.be/lOP0seni1DY[Wwise & Unreal | Adding 3D Audio With Attenuation]
185-
186253
=== Updating Wwise Values From Your Mod
187254

188255
Wwise uses a feature called Real-Time Parameter Control (RTPC) that allows game engines like Unreal or Unity to change values on Wwise assets in real-time.
@@ -246,6 +313,8 @@ However, this interferes with the typical one-repo-per-mod structure by tying mu
246313

247314
Wwise offers advice on connecting to source control
248315
https://www.audiokinetic.com/en/library/edge/?source=Help&id=using_wwise_with_source_control_system[in their documentation].
316+
317+
249318
== ADA
250319

251320
See the xref:Development/Satisfactory/AdaMessages.adoc[dedicated page on ADA Messages] for more information.

0 commit comments

Comments
 (0)