Make a USD file
So you wanna save a USD? Just like you're saving .bgeo or .abc, but all universal n shit? Fine.
- Get into sops
- Make a pig
- Save your hip as i_heart_usd.hip
- Append a USD Export sop
- Jump to the second tab of its parameters, set the output path to $HIP/geo/pig.usd
- Click save to disk.
Congrats! You're now a master of USD!
Load a USD file
Oh, you wanna load it back in? Who are you, Pixar or something?
- Stay in sops
- Put down a USD Import sop
- Set the path to $HIP/geo/pig.usd
- Admire the pig.
Sweet eh? Middle click on the node, note that its a single point with a single prim, a packed USD. What if you wanted to modify this?
Unpack a USD prim
- Append a 'unpack usd to polygons'
Done! And if you're still in the hip with the original pig sop, even the materials have been restored.
Ok, so what?
Right, so even at this stage there's a few things worth pointing out.
Used this way, USD ia almost a 1:1 drop in replacement for bego and alembic. There's differences of course, but generally the tradeoffs are pretty good:
- They're smaller than either alembics or bego
- They'll load in other dcc's with less data loss (bego loads only in houdini of course, usd has many tricks alembic lack)
- When saved and loaded in this way, its mostly transparent to the houdini user; all attributes are stored on save, read back on load, its fast to work with
- Most common geo types are supported this way; polys, curves (ie fur/hair), points, nurbs (sorta), subdivs.
- Volumes are NOT supported this way, but we'll get to that later.