Steam Audio Plugin - 2.0 beta 17 SDK Update

I have updated Steam Audio Plugin to utilize 2.0 beta 17 SDK, and fixed some bugs on the plugin source.

Highlights on the new features & bug fixes:

  • Intel Embree ray tracer
  • Sound directivity support, and new dipole variables for reverb & occlusion
  • Occlusion sample count support
  • Irradiance Distance support
  • Thread support for reverb bake & real time simulation (Huge performance boost on reverb bake times, and real time reverb simulation)
  • Performance improvements on reverb by calculating only requested effect type between panning and HRTF. Also reverb is based on wet audio buffer instead of mixed audio now, for better compatibility with changes after beta 16.
  • Support for ambisonics rotator
  • Removed hard coded maxConvolutionSources value, and exposed it to plugin settings.
  • Improved readability by removing reused code piece creating a new SimulationSettings struct on each related class.
  • Also all of the bugfixes & new features coming from Steam Audio SDK for beta 14, 15, 16 and 17 version updates, except the planned features list below.

Planned Features:

  • Sofa file support (Introduced with beta 16)
  • Dynamic actor support (Introduced with beta 17)
  • AMD Radeon Rays ray tracer support
  • Support for using Unreal’s physics tracer as ray tracer.

MR can be found here: https://github.com/EpicGames/UnrealEngine/pull/5940 Most of changes are made by reverse engineering Unity plugin, it was a little bit pain to understand what’s going on with each API update.

It’s based on 4.23 branch, but I think it can be merged into 4.22 easily too.

I also have fixed the famous bug on Steam Audio, where Steam Audio always uses firstly loaded scene’s data.

PR can be found in https://github.com/EpicGames/UnrealEngine/pull/5979

Updated Steam Audio SDK to beta 17. Changes are included in PR.

So is Steam Audio Safely Usable now?

Yep. Do not forget to apply my other PR mentinoned in the plugin update PR, which fixes level change bug.

Might wait for Epic to accept the changes, thanks!