Open GitGhillie opened 3 months ago
So far it looks like source->reflectionState.accumEnergyField.get()
returns a nullptr in this line: https://github.com/ValveSoftware/steam-audio/blob/bbf020ab3690db999ae6f28ddc4422303b5d04e8/core/src/core/simulation_manager.cpp#L227
So when it tries to access that element in energyFields
it results in a violation here: https://github.com/ValveSoftware/steam-audio/blob/bbf020ab3690db999ae6f28ddc4422303b5d04e8/core/src/core/reflection_simulator.cpp#L181
Not sure yet why source->reflectionState.accumEnergyField.get()
is returning a nullptr.
Looks like it's necessary to pass IPL_SIMULATIONFLAGS_REFLECTIONS when creating the source, even though the Programmer's Guide only suggests setting the inputs with iplSourceSetInputs(source, IPL_SIMULATIONFLAGS_REFLECTIONS, &inputs);
. Is this the intended behavior or is it just the docs that need updating?
System Information
Issue Description I'm trying to integrate the FMOD plugin into a Rust game engine which has been working great with direct effects, but now I'm trying to add support for reflections/reverb and ran into a crash when calling
iplSimulatorRunReflections
. So I tried to recreate the issue with just the C api and the rust bindings that I'm using and ran into the same issue.I expect debugging Rust bindings is out of scope for Valve, but I wonder if in general my approach is correct? The setup can be seen here, including the settings for the simulator, listener and the source: https://gist.github.com/GitGhillie/b8b56c077e73e77ae16a3b81619c8c33
Let me know if I missed any information or if there is anything I can do to help debug this.
Crash Dump I do get some warnings before the crash, but if I understand correctly they are not relevant for the setup I have so far.