pabush20 Posted February 17, 2006 Share Posted February 17, 2006 I have an engine model that I want to animate. The speed of the pistons and valves are controled by a custom variable $RPM. Is there any way I can key this variable to change the speed of the engine during the animation? Or am I stuck with the enging running at one speed throughout? Houdini 7. Quote Link to comment Share on other sites More sharing options...
michael Posted February 17, 2006 Share Posted February 17, 2006 put the engine in an OTL, add a parameter called RPM - animate that parameter Quote Link to comment Share on other sites More sharing options...
pabush20 Posted February 17, 2006 Author Share Posted February 17, 2006 put the engine in an OTL, add a parameter called RPM - animate that parameter 24821[/snapback] Umm..what now? I can't find an OTL node. Quote Link to comment Share on other sites More sharing options...
Jason Posted February 17, 2006 Share Posted February 17, 2006 Umm..what now? I can't find an OTL node. 24824[/snapback] An OTL is a special type of Subnet node which can be customized to have parameters. Its a deep topic which you should read up on.. they are extremely powerful, especially for projects where you want to do multiple shots with the same resources or multiple artists need to work together. Are you stuck on Houdini 7? Can you upgrade to 8? Simpler but less powerful: there are things called "Spare Parameters". You can add custom parameters to any node. Look in the little icons to the right of the node name in a Parameter Pane. You can attach spare parameters to any node. You might want to attach one to a Null Object and channel reference it from whereever you need it. Cheers, Jason Quote Link to comment Share on other sites More sharing options...
RickWork Posted February 17, 2006 Share Posted February 17, 2006 Umm..what now? I can't find an OTL node. 24824[/snapback] otl is an operator type library. how about creating a spare channel to your object called "RPM" and just key that? You can use channel reference to acess the spare channel. So where you are referencing $RPM. You can change it to point to your spare channel. Assuming your object is called "myObject" and the spare channel you create is called "RPM": ch("../myObject/RPM") Hope this helps, /Rick Edit: uhm Jason beat me to it. nevermind my reply Quote Link to comment Share on other sites More sharing options...
malexander Posted February 17, 2006 Share Posted February 17, 2006 Note that Spare Parameters are a H8 feature, so in H7 you'll have to use Spare Channels instead (which work in a similar manner, but with a less friendly interface). To add a spare channel, select the node & select "Operator->Add Spare Channels..." from the network pane menu. Then select 'Scope Channels..." (the item directly below Add Spare Channels) and press Accept. Select the entire spare channel in the graph editor, and type in your expression. Since this process is so convoluted, a lot of users just throw down a dummy node and enter their expression in one of its parms. Spare Parameters in H8 work in a much more similar manner to regular parameters one you've created them, so they're always preferrable to Spare Channels. Quote Link to comment Share on other sites More sharing options...
jjstanley Posted February 17, 2006 Share Posted February 17, 2006 Awesome tip on the Spare Parameter!! I had never seen that in V8 before. It is exactly what I have always wanted as the spare channels and I never got along, very clumsy!. These spare parms are very slick = Quote Link to comment Share on other sites More sharing options...
michael Posted February 17, 2006 Share Posted February 17, 2006 spare parameters are cool...but they are not portable - they will only live in /that/ hip file...which is why the OTL suggestion is better IMO...you can have an OTL of your engine with all the parameters that you need up at the top level, and you can use the OTL is any session Quote Link to comment Share on other sites More sharing options...
malexander Posted February 17, 2006 Share Posted February 17, 2006 Yes, Spare Parms are definitely the 'quick hack' for solving small problems or setting up a single node with expressions a little more cleanly. Sometimes it's just not worth it to create a Digital Asset for something small, and that's where Spare Parms step in. In addition to only being local to the hip file you're working on, a newly created Spare Parm also only appears on the actual node you're editing - not all nodes of that type. Of course, you can get around that by setting up a creation script that adds the spare parms to each new instance (ie, opspare -a spare1 $arg1), but of course node instances won't update when you change the parms like D/A's do. Quote Link to comment Share on other sites More sharing options...
iamjaideep80 Posted February 18, 2006 Share Posted February 18, 2006 Ya..... I like Spare Parameters. They r very quick. But I think more flexibility should be added to them. In the sense, now you can not rename them , can not change thier data type and all. I don't expect them to work like OTL. But I think it is not hard to add these features. Then why not???? --------iamjaideep80 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.