I am using Unity professionally but switched to Unreal for personal projects recently to expand my skillset. Currently I´m trying to implement a footstep system for my 3rd Person project.
In Unity I did a similar system by doing raycasts from emitters (feet of player and AI) to determine when a foot hit the ground, where and with what intensity (to adjust sound volume accordingly). I thought I could use this approach in Unreal using Skeleton Sockets.
But I also searched for Unreal tutorials on footstep systems and they all used animation notifies to trigger sound playback. I have some concerns about this approach:
- It requires animators to manually add these notifies to their animation. If this step is forgotten no sounds will play. If the animation is adjusted, notify positions may need to be adjusted too. This sounds quite error prone
- It does not give information on how hard the foot hit the ground
- It does not give information where exactly the foot hit the ground. This can make a difference if the main player is close to the camera and stereo/surround sound should be played back from the correct physical location
So my question is: Why is the notify approach used so wildly? Because it´s the easiest or is there something that I´m missing?
Thanks in advance,