Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


pusat last won the day on August 28 2017

pusat had the most liked content!

Community Reputation

107 Excellent


About pusat

  • Rank

Personal Information

  • Name

Recent Profile Visitors

1,763 profile views
  1. Change f@test to v@test.
  2. Use Convert Line SOP and then after the scatter using an attribwrangle, use xyzdist to compute the distance of points to these edges and then using a threshold delete these points.
  3. VEX SIMD vs. Remove coincident primitives

    Hi, This is a fast way: http://www.orbolt.com/asset/animatrix::deleteOverlappingPolygons::1.00 You can see the VEX code inside.
  4. Primitive Split SOP
  5. Replicating circular points around normals

    You can simplify it a bit using sample_circle_uniform and dihedral functions: for(int i = 0; i < points; i++){ float u = i / float(points); vector p = sample_circle_uniform(set(u, ch("r"))); matrix m = dihedral({0,1,0}, @N); addpoint(0, @P + set(p.x, 0, p.y) * m); }
  6. Get max/min two points of each primtive inside a group.

    Ok I assumed you have a different group for each primitive. If not, you can just use the adhoc group syntax like "4" to mean primitive #4, etc.
  7. Get max/min two points of each primtive inside a group.

    Hi, I didn't check your scene but you can use getbbox VEX function that accepts a primitive group, or can use adhoc group syntax. vector pmin = 0; vector pmax = 0; getbbox ( 0, myPrimGroup, pmin, pmax ); // Delete all points except these by checking distance2(@P, pmin/pmax) functions. But this is only for AABB (axis aligned bounding box), if you want OBB (oriented bounding box), then you have to use more involved methods such as PCA, SVD, etc or just use a For Loop SOP network with Bound SOP (OBB=on).
  8. Attribute chooser

    You can check out the attributes parameter of this node to see the script I am using to create a similar menu automatically: https://www.dropbox.com/s/69zed1t2xvn62tb/AttributeFit_SOP_Animatrix.otl?dl=1 I would post the code if I was in front of Houdini.
  9. Houdini 17 Wishlist

    Yes let's just censor any views that opposes yours
  10. You can also PolyExtrude the curves before the Boolean and then blast the new points afterwards using a few Group nodes before and after the Boolean (Credits: Entagma)
  11. Houdini Universal Unique ID (UUID)?

    I created an RFE for having a GUID before. It could be generated automatically by Houdini on demand thus it wouldn't impact anything unless you access the property on a node instance for example. I also think session ids are useless.
  12. Closest point to line

    ptlined will be slow because it's calling sqrt(). You should implement your own pointLineDistanceSquared: vector pointLineDistanceSquared ( vector p; vector linep0; vector linep1 ) { vector dir = linep1 - linep0; vector pp = p - linep0; return length2 ( cross ( dir, p ) ) / length2 ( dir ); } Then you can multi-thread the distance calculation using Run Over Numbers, storing them as detail attributes and then compute the smallest one at the last step.
  13. vop accel attribute

    To compute acceleration, you need to compute the differences between velocities, so you can do: v1-v0 using a TimeShift($F-1).
  14. Simple project to learn Houdini

    You can do all this inside a single AttribWrangle using the intersect() function.
  15. Houdini 17 Wishlist

    I would love to have this as a toggle where the pivot is always set to current selection. Geometry selection over object selection, etc.