Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


3dome last won the day on November 25 2018

3dome had the most liked content!

Community Reputation

117 Excellent


About 3dome

Personal Information

  • Name
  • Location

Recent Profile Visitors

2,456 profile views
  1. move points to coloured neighbours

    happy to help not in front of Houdini right now, but if you don't want to have them stack up you could either just use a point relax SOP (maybe only on the blue points) or not blend all the way to 1 (-> percentcomplete) but stop a bit earlier, randomized per point Depending on how detailed you need to go, you could factor in pscale (if present) but sooner or later things will break and you'd be better of using a solver
  2. move points to coloured neighbours

    i would assume this is a more efficient - and I would say simpler - way: if(@Cd.x < .5) //do the operations only on the blue points { int near = nearpoint(0, "\x40Cd.x>.9", @P); //find the nearest neighbour but already limit the points to sample to the red ones vector p = point(0, "P", near); @P = lerp(@P, p, ch("percentcomplete")); } for a bit more "organic" movement you could do something like this: if(@Cd.x < .5) { int near = nearpoint(0, "\x40Cd.x>.9", @P); vector p = point(0, "P", near); float b = fit(@Frame, 1, distance(@P, p)*125, 0, 1); @P = lerp(@P, p, b); //blend the positions over a certain amount of time based on the distance between the blue and red point, so distant points take longer to complete the lerp() }
  3. Switch if group

    Use this expression: nprimsgroup(opinputpath(".",0), "groupname")==0 If you are looking for a point group, use npointsgroup() instead.
  4. Shade volume attribute based on Volume Size

    of course it removes them, because they are volume related intrinsic attributes. But if you see them, there's no need to convert to polys anyway. Just use them in your shader
  5. Shade volume attribute based on Volume Size

    can't upload files and i usually work straight with VDBs but let's assume 1) you have a sphere -> isooffset Do you see the measured* intrinsics? (in H16.5 they are available) 2) convertvdb (to VDB, class Fog to SDF) 3) convertvdb (to Polygons) 4) from there all the measure and sum stuff (measure + attribpromote SOP) will check this evening if I can see intrinsics after 1) in H17
  6. Shade volume attribute based on Volume Size

    don't have H17 at hand but since volumeRasterizeAttribute uses volumeRasterizeParticles internally and at least in H16.5 volumeRasterizeParticles has those intrinsics I don't know why they shouldn't be available to you. I don't think SideFX removed them in 17, need to check later though edit: in any case, this is Houdini so there's a million way to do things. How about convert your volume (to SDF) to polygons, measure area, sum up area -> get some value that way
  7. Shade volume attribute based on Volume Size

    It doesn't create the attribute by default, but what stops you from doing it yourself? Also you might leverage the intrinsic attributes measuredvolume and measuredarea
  8. For-each odd number

    no i don't think so but you can use this bbox("../foreach_begin1/", D_ZSIZE)*detail("../foreach_count1/","iteration",0) to get rid of the hard coded value and stay fully procedural
  9. For-each odd number

    have this expression on your first keyframe: bezier()*if(detail("../foreach_count1/","iteration",0)%2==0,1,-1) (just add the bold part)
  10. Shade volume attribute based on Volume Size

    not sure if i understood correctly, but I'd try a switch SOP with an expression like sizeOfVolume < threshold to switch between 2 material SOPs edit: or store the size of the volume in attribute that you read (bind) inside of the material followed by two-way switch, etc to drive whatever material parameters you want to drive based on that
  11. assemble (pack) them, use Add SOP to keep only the points -> basically ready for second copy stamping
  12. Tool to run ordered file cache nodes

    apart from TOPs you can always use Fetch ROPs and wire them together in the desired fashion edit: also have a look at this
  13. as a start turn off any disturbance, turbulence, shredding, sharpening, confinement, play with Temperature diffusion, maybe add a gasblur if you are still unhappy use that as a base and shape the sim from there
  14. Collisions with SDF

    in a wrangle, plug in the points you want to make "collide" in the first input, SDF in the second (i recommend turning on "Fill Interior") float depth = volumesample(1, 0, @P); //how deep inside the volume is the point vector grad = volumegradient(1, 0, @P); //direction to the surface of the volume (depth = 0) at the point's position @P += -depth * grad; //to push the point to the surface of the volume, you need to invert either the depth or the gradient
  15. 3D faded trail?

    maybe this can help