the other thing houdini does is accumulate air resistance and target velocity if you have 2 or more wind forces. the function to do that yourself: “`void addWindForce(vector targetv2; float airresist2; vector _targetv; float _airresist) {
float airresist_sum = _airresist + airresist2; _targetv = (_targetv * _airresist + targetv2 * airresist2) / airresist_sum; _airresist = airresist_sum; }“`
Author: admin
Archived post by WhileRomeBurns
if you want to use `targetv`, `airresist`, `drag` you could do the math yourself and store them in custom attributes like `@c_targetv` so bullet doesn’t pick um up and make nans
it’ll be something like this:
“`float imass = 1.0 / @mass;
@c_airresist = @c_airresist * @c_drag; if (@c_airresist > 0) {
// the relative ang vel v@v -= v@c_targetv;
// quadratic drag v@v *= 1.0 / ( (@c_airresist * imass * @TimeInc * length(v@v)) + 1.0 );
// restore frame v@v += v@c_targetv; }“`
i don’t see how that could produce a nan unless c_airresist was negative or mass was zero
which you can add checks for if you like
just skip zero-mass dudes
Archived post by CiaranM
It’s a SOP Solver, so just do your group masking the SOP way 🙂 Specifically, set the group mask on your wrangle nodes to @name=boxes* or @name=spheres*. You really only need a single SOP solver (with Data Name and Group back to default) with as much wrangling per-group as you like inside of it. I really like to keep it simple and keep all of my packed geometry coming from a single SOP source into a single RBD Packed Object. Do as much as you can with SOP-type workflows, avoiding DOP anachronisms at all costs.
Archived post by PaqWak
Hey @flight404 … to simplify a little bit the process you can also just use HF + remesh + messing with some noise in vops.
Attachments in this post:
http://fx-td.com/houdiniandchill/wp-content/uploads/discord/20201901/14/20/houdinifx_itwZgqoEWE.png
http://fx-td.com/houdiniandchill/wp-content/uploads/discord/20201901/14/20/quickcliff.hipnc
Archived post by eetu
here’s the loop-a-2d-plane-though-a-3d-noise idea. doesn’t really work with 15 frames, but at ~60 it’s pretty ok
Attachments in this post:
http://fx-td.com/houdiniandchill/wp-content/uploads/discord/20202101/13/20/ee_3d_loopnoise.hiplc
Archived post by lcrs
nuke not shipping with an autowrite or easy variables is so silly… fwiw the equivs of $HIP, $HIPFILE and $OS respectively are: “`[file dir [value root.name]] [string range [file tail [value root.name]] 0 end-3] [value name]“`
Archived post by Antidistinctlyminty
@aswaab @mestela Do a reload of the module
To refresh panels _you have to import that module explicitly first_ In my case it’s `import nymus.houdini.ui.panel` After which you’re free to use `reload(nymus.houdini.ui.panel)` Then hit the panel reload button. All shall be refreshed.
Archived post by sonofkilldozer
Attachments in this post:
http://fx-td.com/houdiniandchill/wp-content/uploads/discord/20203601/08/20/gain.hiplc
Archived post by Ambrosiussen
Archived post by Bender
Just remember I made this sweet spreadsheet with all the sidefx tuts in chronological order docs.google.com/spreadsheets/d/1t0mxP1g5aCRzm6h5DMxrNZ6gfWyIEZah6jv6OKh9iLQ/edit?usp=sharing
hyperlinks to the tuts
Been using it lots to find the tuts Im after – I have a personal copy with notes against the vids Ive watched for quick reference