Seeking "Wrecking ball" (Wire/RDB Constraint) example

   5834   8   2
User Avatar
Member
207 posts
Joined: 11月 2015
Offline
Hi there! I'm in search of an example of how to set up a ‘wrecking ball’ effect in Houdini. The thing I'd like to do is have a single object suspended by TWO wires. The ‘far’ end of the wires will be animated.

It's not clear to me, based on what I've found so far, whether I first set up my ‘ball’ with some kind of flexible (spring?) constraint, then attach wires and let them sort of go along for the ride (which seems backwards to me), or whether there's a way for me to pin my ball to the ends of the wires, and have it be properly suspended from them both.

Might anyone be able to point me to any examples demonstrating something like this?

Thank you!
User Avatar
Member
1742 posts
Joined: 5月 2006
Online
Try the attached file, also this might help:

http://www.tokeru.com/cgwiki/index.php?title=ConstraintNetworks [www.tokeru.com]

Attachments:
wrecking_ball.hipnc (220.0 KB)
wrecking_ball_flipbook.gif (610.9 KB)

http://www.tokeru.com/cgwiki [www.tokeru.com]
https://www.patreon.com/mattestela [www.patreon.com]
User Avatar
Member
207 posts
Joined: 11月 2015
Offline
Thank you sir, this is awesome. A followup question, for clarity:

Suppose I want my wrecking ball to begin up in the air, above the constraint points illustrated in your GIF above. So, when the ball first ‘settles’, the two ‘chains’ holding it go slack, then tighten as the ball falls.

It seems, from the examples you note above, that the order of operations here is:

–set up the ball first, using (probably) spring constraints.
–figure out where I want to ‘connect’ the ends of the chain that will ultimately suspend the ball, both on the surface of the ball itself and from the points from which the chains originate.
–Create curves connecting the ball to it's anchor points.
–setup a wire sim on these curves.

Or, worded more simply, the ball/constraints drive the simulation of the wires suspending it…is that right?

I guess that's my ultimate question: in the case of a wrecking ball, does the ball drive the wire sim of the chain(s) suspending it, or are the chains simulated first, and the ball simulated off the resulting wire sim? Other analogous examples might be a yoyo, or any rope with a weight on it. In Houdini DOP parlance, this situation seems to be two separate sims (the constrained ‘weight’, and the wire sim of the suspending rope/chain), and I'm having a hard time imagining which drives which.

Thanks!
User Avatar
Member
1742 posts
Joined: 5月 2006
Online
Whatever the relative positions are of the anchors to the weight, it should move as you expect. Here I've appended a transform sop immediately after the sphere, and I'm taking turns adjusting that transform and adjusting the ‘raise on y’ transform to move the anchors. You can see each time I do that, reset to frame 1, sim, it behaves appropriately.

If you want something more like a chain, and to see slack and all that stuff, the easiest way is probably to just add lots of little rbd links to represent the chain, connected to the big weight. The trick, as is always the way with houdini, is to find a way procedurally generate that setup, so you're not hand-wiring loads of little chain links together.
Edited by mestela - 2017年8月6日 08:33:25

Attachments:
rbd_pin_move_stuff.gif (147.0 KB)

http://www.tokeru.com/cgwiki [www.tokeru.com]
https://www.patreon.com/mattestela [www.patreon.com]
User Avatar
Member
1742 posts
Joined: 5月 2006
Online
Heh, damnit, had to give it a go…

Attachments:
chain_wrecking_ball.gif (583.5 KB)
wrecking_ball02.hipnc (208.0 KB)

http://www.tokeru.com/cgwiki [www.tokeru.com]
https://www.patreon.com/mattestela [www.patreon.com]
User Avatar
Member
207 posts
Joined: 11月 2015
Offline
Cool! Thank you for this!

I realize in describing this that ‘chain’ is misleading (the thing I'm actually trying to simulate are braided steel cables, not specifically-individual links). That's why I've been asking about the wire solver specifically. But I suppose it should be easy enough to create some curves that follow the chain links you're creating here, though I'm curious if this is a ‘heavy hammer’ solution for the case of braided cable/rope rather than individual links?

Regardless, thanks for these very helpful illustrations of setting this up, super-useful for me to learn!
User Avatar
Member
1742 posts
Joined: 5月 2006
Online
I haven't spent enough time with the wire solver to say yes or no frankly. I've generally found it quite twitchy and hard to deal with, doesn't play nice with other solvers etc, whereas sticking with pure packed rbd or even grains is more intuitive.

Your mileage may vary though! I've seen folk get really impressive results with wires, so if you have the time it's worth investigating.
http://www.tokeru.com/cgwiki [www.tokeru.com]
https://www.patreon.com/mattestela [www.patreon.com]
User Avatar
Member
207 posts
Joined: 11月 2015
Offline
Thanks again for these examples, I'm starting to wrap my head around this.

How do I constrain hero geometry to what's clearly proxy geo in your example? The wrecking ball proxy, for example, spins around independent of the chains as if it's on a gimbal. Physically, though, I'd need to fasten the chains to the ball such that it didn't spin freely. This would mean:

–The points where the chains connect to the ball need to maintain a constant relationship to each other (they cannot slip around the surface of the ball)
–The ball hero geo needs to be constrained to the proxy, with proper rotations

Thank you!
User Avatar
Member
1742 posts
Joined: 5月 2006
Online
could either set the constraint type to ‘all’ so its no longer a freespinning ball an socket joint, or i'd probably make multiple constraints for the whole thing to lock down the possible motion. Again, have a read of this, the stuff towards the end is relevant to your questions:

http://www.tokeru.com/cgwiki/index.php?title=ConstraintNetworks [www.tokeru.com]
http://www.tokeru.com/cgwiki [www.tokeru.com]
https://www.patreon.com/mattestela [www.patreon.com]
  • Quick Links