faux set driven key

   7987   14   4
User Avatar
Member
5 posts
Joined: July 2005
Offline
hi all

i am doing a few experiments with rigging chars in houdini, and would like to know peoples approach to mimicking set driven key…
any suggextions would be gratefully recieved…

thanks for your time..
User Avatar
Member
4140 posts
Joined: July 2005
Offline
hehe…I love how all the other packages out there come up with TM names for stuff that Houdini has had before it existed(in Prisms) and is just called…Houdini.

OTOH, maybe SESI should start coming up with trademarks for this stuff, get a little court action going. “Houdini, with True Proceduralism(TM)”, anyone?

Anyway, I apologize since I'm not a Lightwave user so I may be oversimplifying what it entails, but AFAIK this just means assigning one channel to drive other multiple channels. There are dozens of ways to do that in Houdini, and that is it's true strength in one way, and a small curse in another. Not being a pre-rolled package to specifically drive, say, character animation, it might take a couple more steps. However, when you're in production, you'll bless the programmers at SESI because you can wire things up anyway you want, great for last minute fixes and clever design. Add to that the ability to package all this cleverness in OTLs and it's awesome.

Anyway, I'll point to a couple of locations in the docs, hopefully they'll get you started. If you're comfortable using equations and prefer that sort of method, you can RMB copy over params and paste references to them in other fields. Search for “Copy Values to Another Parameter” in the online docs.

If you eschew writing and managing formulae, that's what CHOPs were designed to do - essentially as SOPs gives you a fully procedural network approach to building and animating data, so CHOPs lets you import, massage, generate and export animation channels without all that tedious mucking about in hyperspace. Check out CHOPs in the docs for more info.

Let me know if i've missed the point.

Cheers,

J.C.
John Coldrick
User Avatar
Member
5 posts
Joined: July 2005
Offline
thanks for the reply…youve not missed the point at all…i think i need to look a little deeper into CHOPs….

what i want is when an object (such as a bone) reaches a certain angle (or position) for it to drive some other animated paramiter…when building rigs in maya this stuff is invaluable…and indeed im sure there are several ways to achieve this in houdini…i shall take a look at the docs again and come back if i am still a little astray…

thanks..
User Avatar
Member
543 posts
Joined: July 2005
Offline
JColdrick
hehe…I love how all the other packages out there come up with TM names for stuff that Houdini has had before it existed(in Prisms) and is just called…Houdini.

OTOH, maybe SESI should start coming up with trademarks for this stuff, get a little court action going. “Houdini, with True Proceduralism(TM)”, anyone?
Good one JC, I love it!


–Mark
========================================================
You are no age between space
User Avatar
Member
12490 posts
Joined: July 2005
Online
Hey there,

The Set Driven Key is basically the same as the fit() expression in Houdini.

I not sure about Maya, but in Houdini you can have multiple segment functions in one channel - which means that every segment (the curve between keyframes) can be the warm home to a new fit() expression. You can quickly cobble together a very close approximation of the Set Driven functionality.

Hope this helps,
Jason
Jason Iversen, Technology Supervisor & FX Pipeline/R+D Lead @ Weta FX
also, http://www.odforce.net [www.odforce.net]
User Avatar
Member
4140 posts
Joined: July 2005
Offline
Oh. ops:

Then it's not this [geocities.com]?

Cheers,

J.C.
John Coldrick
User Avatar
Member
7025 posts
Joined: July 2005
Offline
Daniel Kramer made a Set Driven Key TCL script, that would build a CHOP network for you behind the scenes.

Technically, Set Driven Key is easy in Houdini, but it lacks even a basic UI for setup, which is what Daniel provided.

The nicest part of many of the Maya tools is not what they do but how they do it. Set Driven Key should be as simple as “place stuff here, create relationship, move it here, create relationship” and you're done. As you may guess, Houdini does not offer that )

I don't think his script worked even in 6 or 7 for some reason, though.

Cheers,

Peter B
User Avatar
Member
12490 posts
Joined: July 2005
Online
Personally I'd prefer it to be handled by segment functions instead of CHOPs, purely because the relationship is self-contained and a little easier to follow, perhaps?

It'd be a nice reach out to Maya artsts (riggers, mostly) to have nice UI support for it.
Jason Iversen, Technology Supervisor & FX Pipeline/R+D Lead @ Weta FX
also, http://www.odforce.net [www.odforce.net]
User Avatar
Member
7025 posts
Joined: July 2005
Offline
Yeah, but CHOPs are way way faster since they cache the entire frame range, playback is so much smoother.
User Avatar
Member
12490 posts
Joined: July 2005
Online
I believe channels are cached too now, no?
Jason Iversen, Technology Supervisor & FX Pipeline/R+D Lead @ Weta FX
also, http://www.odforce.net [www.odforce.net]
User Avatar
Member
7025 posts
Joined: July 2005
Offline
Errr, yeah, that's what I meant to say…
User Avatar
Member
12490 posts
Joined: July 2005
Online
So this should be as fast as CHOPs, then?

Houdini 8.0.340: Caching of expression results for display in the graph editor is now available through preferences / animation / enable channel cache. This is most useful when using expressions that reference SOPs that require the SOP to cook during expression evaluation.

Unless this doesn't help execution speed when the channel editor is closed…
Jason Iversen, Technology Supervisor & FX Pipeline/R+D Lead @ Weta FX
also, http://www.odforce.net [www.odforce.net]
User Avatar
Member
5 posts
Joined: July 2005
Offline
thanks for the responces….i tried using the fit() expression on the translation of a sphere to drive another sphere twice the distance and it all went swimmingly….however with more complex relationships it is a bit of a hardship to write expressions for each..as you say it would be nice to have a connection editor UI of some sort….

i dont quite understand how to achieve the same thing in CHOPs yet, you guys have said that both expression channels and CHOPs are cached..so would there be any more advantage or overhead saving to be had in using CHOPs to drive this kind of relationship…

thanks again
User Avatar
Member
2199 posts
Joined: July 2005
Online
Yeah I've been looking at this too, it's a bit like the situation with parenting points to objects (blatant plug - I'll stick this up on exchange soon), you can do it but there is no immediate obvious and easy way to do it which would be nice.

I was thinking it would be nice just to have it at object level like the blend obj.
This would perhaps just be good for character stuff and anything that needs more flexibility could be dealt with in chops.
The trick is finding just the right hammer for every screw
User Avatar
Member
29 posts
Joined: July 2005
Offline
Yea, I did write a tcl script that mimic's maya's connection editor and some setdriven key functionality. I haven't used it in a long time but the code exists here:

http://www.odforce.net/codex/interface.htm [odforce.net] Scroll down for “HouCon”

It probably doesn't work in the current ver.. I'll take a look if I have time.

Basically what I did was generate a lookup table in chops.. so when tx of object A is .5 it looks up the lookuptable curve and finds that tx of object b should be .8.. I think the chop to use is the “lookup” chop.

I wrote that script proably 6 or 7 years ago.. so it may be just too out of date and there are probably better interfaces for just a set-driven like UI. It is nice to have the visual system for setdriven like maya has, I'll agree.

I pretty much use fit() for everything in houdini.. but for more complex relationships with eases or other non-linear relationships it's easier to do visually.. at least to block it in.

daniel
Daniel Kramer
Sony Pictures Imageworks
  • Quick Links