Jump to content

ThomasPara

Members
  • Content count

    59
  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won

    3

ThomasPara last won the day on June 26

ThomasPara had the most liked content!

Community Reputation

24 Excellent

About ThomasPara

  • Rank
    Peon

Contact Methods

  • Website URL
    www.helmet.no

Personal Information

  • Name
    Thomas
  • Location
    Trondheim

Recent Profile Visitors

670 profile views
  1. Polygon from vdb topology problem

    Timeshift your dirt geo (after vdb, might get heavy if its a dense mesh) and insert it to input#01 on a pointwrangle Timeshift your cloth and insert into input#02 Take the moving cloth and insert it into input#03 int prim_id; vector prim_uv; float dist = xyzdist(1,@P,prim_id,prim_uv); vector surface_pos = primuv(2,"P",prim_id,prim_uv); vector surface_normal = primuv(2,"N",prim_id,prim_uv); @P = surface_pos + (surface_normal * dist);
  2. make a pointwrangle on your points, before the copy to points sop and write: @pscale = fit01(rand(@ptnum),chf("min"),chf("max")); And push the little icon on the right to get the sliders
  3. Highlight in viewport ?

    Is that packed objects or instances? If so its the viewport culling the instances.
  4. Exclude identical points from different arrays

    That might become alot of processing and hard to multithread. I would try: Wrangle#1 Create an empty array on the goalpoints Wrangle#2 Let the points search for their goalpoint and append their id to the goalpoint array. Wrangle#3 Check the goalpoints and their arrays and select the points that you want to connect to. This can be multithreaded and there is only one set of arrays (no comparing).
  5. Vegetation using bullet

    I think this is the right way to go. We use bullet aswell on trees and foliage, great for interaction with other objects (since grain and wire is a bit to unstable). You can set rotational stiffness on the rbd objects to make it more bendy. Now it looks a bit dry.
  6. @name attribute without assembly ?

    I was tierd when i wrote that post, but its all in the file.
  7. Cone To Glue Constraint Switch / metal Bending

    The main problem is that your glue constraints arent active from the start. Just merge all your constraints before you put them inside the solver, it will figure it out based on the constraint_names. Cone_to_Glue_Jiggle_fix.hipnc
  8. Cool, i dont think thoose chips are so healty for that burger! And i forgot that they put that option in houdini 16, sorry about that.
  9. @name attribute without assembly ?

    In the "attribute transfer", set it to name. After that insert an attribute promote, where you promote your name attribute from primitive to point. Now your connect adjacent pieces will have the name attribute. connect_adjacent_01.hiplc
  10. @name attribute without assembly ?

    You can use whatever to set your name attribute as long as its a primitve attribute. ex: put down a connectivity and use the @class attribute. s@name = "piece"+itoa(i@class); or you could use the primitive number itself s@name = "packed_prim"+itoa(@primnum); or closest point to this primitive int nearpt = nearpoint(1,@P); s@name = "say_my_name"+itoa(nearpt); or get the name of the closest point int nearpt = nearpoint(1,@P); s@name = point(1,"name",nearpt); Its just an attribute you can call whatever and name whatever. If several primitives have the same attribute with the same value, they get packed togheter.
  11. Some minor things you forgot, the most important one was to set the right input on your Constraint Network. Since that was incorrect it couldnt find the Constraints. I also set your Goal Twist Axis and Constrained Twist Axis to X(1,0,0). But usualy this is Z on a curve where orientations is set. If you want to noise your curves before you drop them you need to set some orientations that follow the curve. I think Entagama has something on Parallell Transport or i could share my setup on fixing orientations on curves. chips_sim_v006_fix.hiplc
  12. I think the rbd is the way to go on this one. Heres a simple setup to get you starting. chips.hiplc
  13. trying to roate pieces of my burger randomly

    You can also just pack them first, that will give you the pivots. Use assemble. Or connectivity. If you use connectivity you need to assign the name on the primitives yourself. //primitive wrangle with class as primitive attribute s@name = "piece"+itoa(i@class); Then pack by name attribute. Now you can rotate the packed primitives //pointwrangle matrix3 m = primintrinsic(0,"transform",@ptnum); vector axis_y = set(0,1,0); //if you want axis to be aligned with packed transform axis_y *= m; float angle = radians(rand(@ptnum)*360); rotate(m,angle,axis_y); setprimintrinsic(0,"transform",@ptnum,m,"set");
  14. trying to roate pieces of my burger randomly

    matrix3 m = ident(); vector axis = set(0,1,0); float angle = radians(rand(i@class)*360); rotate(m,angle,axis); @P *= m; Write that in a pointwrangle after a connectivity node set to points.
  15. VEX: get attribute values into an array

    use append append(scale,size);
×