Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


3dome last won the day on November 9 2019

3dome had the most liked content!

Community Reputation

135 Excellent


About 3dome

  • Rank

Personal Information

  • Name
  • Location

Recent Profile Visitors

3,295 profile views
  1. Multi-Shader RBD sim, diffuse to Cd

    just a random thing that popped into my mind: storing the sourceprim a particle was emitted from, using that with primuv() to lookup the shop_materialpath attribute to get the shader assinged to that sourcprim and from there get the texturepath (not figured out that part)
  2. If / Else group - VEX

    while there are functions like inprimgroup() or inpointgroup(), whenever possible I like to use the shorthand @group_groupname syntax. So if you run over points and are looking for a pointgroup then your code would be if(@group_inside) { f@stiffness = 1; } else { f@stiffness = 1000; }
  3. Maya Camera to Houdini

    use alembicArchive node, point it to the exported camera .abc file and hit Build/Update hierarchy
  4. Caching VDB's - reducing size

    absolutely. only cache the fields you need. If you need vel for motion blur, you could resample the vel VDB to 1/3 of the resolution, that's usually enough for motionblur. Also make sure to save out 16bit fields instead of 32bit and one more big saving comes from compressing the volume as well as masking the vel field by the density field
  5. I think the vector merge can only merge VDBs, so reversing the order of convertVDB and vectormerge should do the trick Also, you might want to set the vector type on the vectorMerge to the correct type (i think it's called displacement/vel/acceleration) so it gets interpreted correctly in some other operations
  6. Get all points on a prim?

    same wrangle, add following lines of code vector avg = {0,0,0}; for(int i = 0; i!=@scattered; ++i) { int pt = findattribval(1, "point", "sourceprim", @primnum, i); vector p = point(1, "P", pt); avg += p; } avg /= float(@scattered); v@avgP = avg;
  7. Get all points on a prim?

    on the scatter, under Output atributes, turn on Prim Num Attribute then use a primitivewrangle, plug the grid into the first and scatter into second input: i@scattered = findattribvalcount(1, "point", "sourceprim", @primnum);
  8. Velocity offsets point position from sops to dops

    interesting. The docs state 17.5 but I think they removed it in 17.5 then and the docs page is just there for legacy purpose (because until it really is removed the operator is just hidden by default)
  9. Velocity offsets point position from sops to dops

    seems like the particleFluidEmitter DOP ships with some version of Houdini. I'm using 17.5.173 and I do not have it, so must come with a later build https://www.sidefx.com/docs/houdini/nodes/dop/particlefluidemitter.html
  10. Volume - Outline Not Visible?

    hmm I guess it's guide geometry (like when you create an otl and can spcifiy a node as guide geo, just here it's code in c++) and maybe it's a small bug in the code. anyway, if you need to see it you could put down a volumevisualize SOP as a workaround
  11. you have to promote the parameter, then it should work
  12. You don't necessarily need a loop, although it might be the cleanest (and if compilable) fastest way. Anyway, here is a file to show 2 other methods of doing it dm_surviveConversion.hipnc
  13. Looping over Groups with only Points

    I hope I understand this correctly. There's 2 things you could do: 1) Don't use groups, attributes are superior in most cases. Instead of creating groups, create an integer or string attribute and use that as Piece Attribute on the loop, like ThomasPara suggested. 2) The name SOP can build names from groups, from there it's the same as 1) Iirc the old foreach subnet had the option to run over groups, the new ones does not.
  14. maybe you could try a different approach, like creating an array with the frames you want to render and then use a few lines of python as discussed here
  15. If the pre-build nodes don't give you what you need, like i said, build it yourself. This file is by no means the best solution, but it gets the job done. dm_Cluster_Individual_Problem_01.hip