resonance-audio / resonance-audio-unity-sdk

Resonance Audio SDK for Unity
https://resonance-audio.github.io/resonance-audio/develop/unity/getting-started
Other
297 stars 38 forks source link

feature request: adding transition to probes #6

Open laurentopia opened 6 years ago

laurentopia commented 6 years ago

Current behavior is to switch to one set of RT60s band to another one with a time transition. We have no control over the time transition period and if the listener stops mid way, the transition continues leading to a weird feeling of not being grounded in reality.

A more realistic behavior would be to lerp as the listener moves through the overlap of the probe volumes.

A good example of implementation is Unity's light probes that use tetrahedral interpolation. In this case, the API would ideally offer an option audioProbes.Tetrahedalize() method, or maybe some simpler name like Partition() that would do the delaunay "meshing".

mauskopf commented 6 years ago

Thanks for your feature request! We're looking into it.

laurentopia commented 6 years ago

how is this going?

pan-athen commented 6 years ago

Not sure if this going to help, a trick from post-production applied to interactive audio practices. If the morphing of one reverb to another cannot work due to technical issues, maybe a second reverb pipeline could be used to crossfade between the first probe to the second. Effectively lowering the output of the first probe's wet mix and raising the output of the second probe's wet mix.

Probe mixing pipelines (channels) could be added dynamically and the user could set an upper limit (say 2 or 3) or probe outputs that the system can handle mixing, for optimization purposes. The mixing between the probe outputs (just like dynamic reverb returns) could be driven by the distance between them, or by adding an extra layer of handles in the probe widget to set max distance (just like the native Unity reverb works), or by just overlapping probes. The extra handle solution is my favorite, because you can really set how much of a cave reverberation the player can hear when outside and in front of a cave opening.

Not sure if something like this could be implemented due to the nature of the way that the Resonance Audio optimization works.