Ways to "trigger" actions besides NLA

I’m new to actions/drivers/nla so forgive the newbie question. I understand how to create actions and push them down to the NLA. But what I really am wanting to do is have a driver that controls the action that I’ve baked to an f-curve/sound.

So basically, I’ve figured out how to make an empty, animate it’s movement on one axis, and then use that as a driver in a var to control the position of a different object (and multiply the var to make the movement more exaggerated). But what I really want to be able to do is somehow bake a sound/f-curve to my empty, and then use that to trigger an action start, instead of just altering the position of the target object. Hope that makes sense, is it possible? Basically I’m trying to figure out how to easily trigger the start of an action based on a sound file… Thanks!

Hey, There is a ‘Speaker’ object in blender - maybe that would work. Dig around on clockmenders site, he does alot with sound

1 Like

Thanks for that, perfect. I had seen this a long time ago, but didn’t know it had been updated past 2.49 now, so yay!

Using Animation Nodes (in 2.79) you can bake sound files to drive animations, examples on my website. I have also developed additional nodes to animate from MIDI files, again, examples on my website, let me know a bit more about what you want to do and I can help you!

There are new sound node for 2.8, but I don’t think they are stable/included in a source code release yet. Which Blender are you using?

Cheers, Clock.

PS. Thanks @ajcdfin for the mention!

1 Like

Yeah I’m on 2.79, my machine is too old to handle 2.8 for the moment… Yeah I’m excited to start reading through your site and looking at examples. Here’s a link to what I just did on instagram… This was just baking sound to f-curve on emptys, translation on one axis, and the those were used as drivers on the z location of the spheres so i could make a var and multiply it to match the length of the glass rectangles…

1 Like

Exactly how I started and look where I ended up! Now we have Live MIDI and Audio input to drive live animations, see my WIP. Not quite ready to release the Live stuff yet, but we are getting there.

Keep up the good work!

Cheers, Clock. :beers:

1 Like

Instead of an empty, you have an extra controller bone in your armature. It’s just a bone set to non-deform (it shouldn’t directly affect the mesh - and setting non-deform prevents accidental weighting), and be moved by the driver. (Can be a child of the root, and just on some hidden layer out of the way of the main rig.) The relative movement of that bone is all that matters, and you control that via the driver. Then that bone is in turn referenced by any bone using an action constraint that you want to control. Should work, since I’ve done some similar rigs to that.

Empties are useful in some cases (simple and convenient), but bones have a few more properties for animation that make them more accessible (or better?), and for the most part they work in the same manner.