[Sidefx-houdini-list] clean transforms

Jeff Wagner jeff at sidefx.com
Fri May 28 12:01:24 EDT 2010

I use pre-transforms quite often but in rigs only.

I would not recommend that you channel reference any Transform channels 
on an object in a character hierarchy. Use Rivet Object or hscript 
expression functions (known as constraints in other apps):

vtorigin()[0], vtorigin[1], vtorigin()[2] to grab x, y and z translates

These will return the real world position relative to any other object 
in the network regardless of pre-transforms.

One reason why pre-transforms exist is that in heavy rigs with thousands 
of nodes, using nulls just to locate other objects does indeed have a 
memory overhead (something like 15k...) so using pre-tranforms reduces 
the memory footprint and efficiency to a degree.

Pre-transforms don't make much sense outside of char and prop rigs as 
Alex mentioned.

One issue in all of this is if you somehow introduce non-proportional 
scales buried in a pre-transform. That really can screw you up something 
good in any rig in any software. I have a tool where I select two 
objects and it returns the transforms to get from one to the other. It 
flags any objects that have a non-prop scale in the pre-transform or the 
scale parms.


Alex Lim wrote:
> Hi,
> Other people might have a different opinion on this, but IMHO, yes and no.
> Yes, I think you may get into trouble if you zero'd an Object out 
> somewhere in the world space, but then later you perform additional 
> transform operation there, you may not notice (initially) that there are 
> cleaned transform in that node. So if you or someone else do a lot of 
> referencing to that Object chain, there is a little danger that when 
> your hierarchy get complicated, you will be spending a lot of time 
> figuring out why the numbers don't match up just because you used some 
> expressions that may not take into account pre-transform.
> I rarely see pre-transform on FX and lighting setups. Mostly on rigging, 
> it seems. Which made sense because you'd probably want to give animators 
> a clean, zero'd parameter rig to work with.
> No, pre-transform can still be extracted regardless, either by 
> combination of objpretransform() and explodematrix() or other expression 
> functions. It is a useful thing.
> IMHO, you should be able to work without cleaning transform in Houdini 
> tho. But if you have to, just make sure things are well labeled/noted 
> and you should be okay. :)
> HTH,
> Alex
> On 5/28/2010 8:00 AM, James Rutherford wrote:
>> Probably a dumb question but will get into a future problem if I clean transforms on chain root nulls on a rig I'm working on.
>> Jim Rutherford
>> _______________________________________________
>> Sidefx-houdini-list mailing list
>> Sidefx-houdini-list at sidefx.com
>> https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list
> _______________________________________________
> Sidefx-houdini-list mailing list
> Sidefx-houdini-list at sidefx.com
> https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list

More information about the Sidefx-houdini-list mailing list