So I am I trying to make a conversational system and my initial thought was to use anim-montages. I was going to use the anim-montage nodes’ “starting section” to trigger the animation and dialogue from a section of the montage–
However the sound is not spatialized, and plays as 2d. It seems like the only option for sounds playing through animation timeline is 2d sounds and not 3D sounds in the world. That seems like a big limmitation, Maybe I am missing something here though.
Is there a way to have the sound from an animation play at the location of the animation and actor in 3d like the Play sound at location node-- but in the animation timeline?
Is this approach fraught for some reason? Should I use the in built dialogue system (it seemed built for VO and not for performance and voice-- but maybe I’m wrong.
TLDR-- Using meta human animator, I’m trying to make a conversational system and need to keep track of 3d sounds and their location spatialization settings and keep it all in sync from the animation timeline and then in Montages derived from the timeline. Any help would be really appreciated.
One option I guess would be to use a custom notify to trigger an event in the character to play the sound at location, but my issue, is that it would break the logic/ sync when jumping around to different montages..
For my system it would beneficial to record dialogue as scenes and to navigate the takes via the Montage Start position-- my issue how to sync audio with a montage start position change.
----Option 2 ----
And the obvious solution I guess is to cut every-line of dialogue into it’s own file and have it be separate “play montage” nodes-- but that seems entirely bad for my purposes for multiple reasons and is what I am trying to avoid doing.
OK I figured it out it if anyone is curious it’s not to bad you just have to make a custom sync-Notify in the montage, and add that in where you have your section breaks. So when you are setting up your montage sections, just also add a track that will add the sync-notify. I made a new bp-class called “JS_AnimationTime”.
In the event reference you can get the “current animation time”-- that is the key that will make this work and sync nicely.
Then in the Montage, when you set up your sections, just include this notify on each section break and the audio will be all synced.
And that’s all, no updates to each notify as it gets the current time in the notify (from get current time) so … it’s actually pretty easy.