I’ll refer you to this tutorial
What I’m doing is a variation on that with a slight be more control over timing and scale.