Marc Albrecht

malbrecht

About Me

専門知識
Generalist
Location
Germany
ウェブサイト

Connect

Recent Forum Posts

Applying FBX scale (pre) transforms. Like in Blender. 2020年8月8日2:27

> Why not leave the scale alone in houdini, it would make round tripping a lot cleaner

… well, scaling of other assets for sure is one reason, but most importantly, simulation usually requires “more or less natural” scales. The moment you want to sim cloth, destruction etc, your scale needs to be “sane”.
Then, measuring comes to mind. If you're not “eye-balling” your stuff but have to deliver correct-ish results (I used to do animations for documentation back in the days, before my Houdini times), you may have pre-established camera extrinsic and intrinsic, so that you need to “stay in focus” (pun intended). Not sure if something like that is “a thing” for game engines, not my area of expertise.

But in general, I wouldn't like to work in the wrong scaling. Ever. :-)


Marc

Applying FBX scale (pre) transforms. Like in Blender. 2020年8月7日8:30

> The pre transforms seem to be a bit of a mystery to me as I cannot find them in the paramter interface

Oh, I so very much agree … not having direct access to the “pre transform” (like in that other application I won't mention and it's not Blender) has always hit me like a wet sack of plushfrogs.
You can use “node.moveParmTransformIntoPreTransform()” to send the current transform into “pre” and “node.ovePreTransformIntoParmTransform()” to move the pre-transform into the current transform. You can also “backup” the current world transform into a matrix using “node.worldTransform()” as a source. Shifting stuff around in Python works quite well, but you don't really have that “freedom” that you'd expect from within the parameter interface.

Marc

Applying FBX scale (pre) transforms. Like in Blender. 2020年8月7日8:07

Hmm … looks like you're using an older version of Houdini - my screenshot was from 18.0.5xxx, I think the unit conversion was introduced somewhere around the .400s.

That conversion, I think, is the cleanest way to go.

Otherwise, for simulation I suggest importing the collision/simulation geometry into a new geo-object (Houdini calls them “SOP”, I think). Use an object-merge node, convert “into this object” to apply the “global scale” (see my screenshot above, the scaling on the FBX import network in “/obj” level) and use THAT geometry for collision.

Marc