Vellum hair pin animation is not smooth at the root

   4326   7   2
User Avatar
Member
53 posts
Joined: June 2009
Offline
Hi

I have been having this problem at the root of the curves defining the vellum hair
I do not understand why the first 3 points get misaligned and brake the continuity of the curve when simulated

I tried adding more points with the hair generate SOP, it does not help

I tried as well playing with the pin to animation parameters on the vellumhair1 SOP but it's not helping, the soft option gets the root point loose, and we still see the problem.

Anyone got this problem before?
Thanks

Attached are screenshots with Hair Generate segments = 20, 40, 60

Attachments:
vellum_hair_smooth_root_pin_segments20.png (47.2 KB)
vellum_hair_smooth_root_pin_segments40.png (38.1 KB)
vellum_hair_smooth_root_pin_segments60.png (33.8 KB)
vellum_hair_smooth_root_pin.hiplc (559.4 KB)

User Avatar
Member
555 posts
Joined: Feb. 2017
Offline
2 things:

- you are so wasteful with hair segments…the more you have the softer the hair will be like spaghetti…I used 8 segs instead of 60 !!!

- your collider…why soooooo high res ?, you're just gonna weigh your sim down using heavy meshes, that's why there's a concept of using proxies (lowres approximations) in sims. I lowered your sphere to Freq 4

So with these settings…works fine

raise your Freq of the collider higher…it screws up…why ? ask the techs.
raise your segment count…goodluck controlling your hair….very hard.

Attachments:
Hair_Roots.jpg (408.8 KB)
vu_vellum_hair_smooth_root_pin.hiplc (563.5 KB)

User Avatar
Member
555 posts
Joined: Feb. 2017
Offline
ps: you may still see the odd hair with a kink at the root !!!

go to solver tab, lower/raise the Post Collision Passes and you can see the kinks moving around live in the viewport (at 0 should work)…why does it behave this way ? Ask the techs.
Edited by vusta - Jan. 23, 2020 23:46:10
User Avatar
Member
8777 posts
Joined: July 2007
Offline
bebe
I do not understand why the first 3 points get misaligned and brake the continuity of the curve when simulated

your thickness (pscale) is much bigger than half of the segment length, therefore points push each other apart
Tomas Slancik
FX Supervisor
Method Studios, NY
User Avatar
Member
53 posts
Joined: June 2009
Offline
Thanks tamte for pointing that out
It makes complete sense, and I will make sure of that from now on, but it does not help here

I set 10 segments for a length of 0.2, so each segments is 0.02
I then set pscale to 0.005, so it's smaller than half the segment, and I still have the problem
To confirm that, I visualized the Guide Geometry Thickness, and as you can see on the screenshot it's smaller
To be sure I also copied to points a sphere and had the same result

But I followed your logic and thought that the root is sitting on the collision geometry
So and went to check the collision DOP to visualize the collision radius
It's 0.0 by default but I noticed that when you increase it, it gets worse

So I went out and shrinked my collider by 5% and it worked
And if you want the exact amount then you can use a Peak SOP with distance set to pscale (see last picture attached)
I could also offset the hair roots by the same amount instead

Anyway thanks for pointing me in the right direction!

Attachments:
vellum_hair_smooth_root_pin_check_pscale_with_geometry_guides.png (53.0 KB)
vellum_hair_smooth_root_pin_check_pscale_with_spheres.png (33.2 KB)
vellum_hair_smooth_root_pin_collider_shrinked_down.png (31.6 KB)
vellum_hair_smooth_root_pin_v02.hiplc (565.5 KB)

User Avatar
Member
8777 posts
Joined: July 2007
Offline
you can also just set i@disableexternal on your root points to 1 so that it doesn't collide with your geo
Tomas Slancik
FX Supervisor
Method Studios, NY
User Avatar
Member
53 posts
Joined: June 2009
Offline
Oh nice, probably better. Thanks!
User Avatar
Member
6 posts
Joined: June 2017
Offline
tamte
you can also just set i@disableexternal on your root points to 1 so that it doesn't collide with your geo

Hey Tomas,

I'm new to houdini an struggling with the same problem. I have no experience with vex or so, would you mind sharing where to put this
i@disableexternal ?

Thanks!

Rizon
  • Quick Links