Post vellum hair Problem —— hair clump makes the hair rotate abnormally?

   4770   10   1
User Avatar
Member
6 posts
Joined: June 2019
Offline
I have been using vellum to simulate hair. After I have simulated the hair, I found that the wrong hair appears on the correct guide line, and the hair rotates strangely.
So I started a test
First I create a sphere, and create a guide line from the sphere, after using guidegroom and guidedeform to create the necessary attributes and adding animation, then in a new geo, I use hairgen and hairclump to create hairs and tie the hairs together.
Then there is a problem with hairclump! Rotate the sphere, the hair will rotate abnormally.
Image Not Found

Image Not Found

It seems to be related to the tangent attribute of hairclump.
Changing the shape method from ‘extrude and blend’ to ‘linear blend’ can solve this problem, but I don’t want to do this because it will change the hair styling. Is there a better solution?
File is
Image Not Found
Edited by nausicaa - July 31, 2020 08:48:34

Attachments:
CH($RU~$VZ67)N2@K_%})@G.jpg (34.7 KB)
sfsfasdfasf.mov (11.1 MB)
T4~FL`Z%}%V`KOFUQ@ZQ7]7.jpg (34.3 KB)
hair rotate.hip (522.5 KB)

User Avatar
Member
8038 posts
Joined: Sept. 2011
Offline
Yep, looks pretty broken.

Fortunately the old hairclump node seems more stable. (I see a little bit of wiggle, but not to the degree of twisting seen in hairclump::2.0)

Edit:
do you mind if I submit this as a bug, or did you already?
Edited by jsmack - July 31, 2020 14:47:22

Attachments:
hair rotate_downgrade.hip (861.0 KB)

User Avatar
Member
555 posts
Joined: Feb. 2017
Offline
what about linear blend instead of extrude and blend Method ?

Attachments:
Linear.jpg (119.0 KB)
hair rotate_linear.hiplc (522.0 KB)

User Avatar
Member
555 posts
Joined: Feb. 2017
Offline
also in this tute:

https://www.sidefx.com/tutorials/controlling-clumps/ [www.sidefx.com]

at 6:30 he talks about blend method, might be of interest to you.
User Avatar
Member
6 posts
Joined: June 2019
Offline
Thank you for your help, I believe I have learned a lot from it.
I haven't submit this bug.
Edited by nausicaa - Aug. 4, 2020 21:47:07
User Avatar
Member
6 posts
Joined: June 2019
Offline
Unfortunately, although hairclump in the ball rotation test is better than hairclump::2.0.
But on very complex hairs, hairclump's hair rotation error is much more than hairclump::2.0.
Edited by nausicaa - Aug. 4, 2020 21:46:58
User Avatar
Member
8038 posts
Joined: Sept. 2011
Offline
Sounds like clumping isn't usable on animated grooms. Are you able to deform a static groom using animated guides/or the skin? I don't think I've ever used a live groom in practice, there's always some problem that requires going with a deformer route.
User Avatar
Member
6 posts
Joined: June 2019
Offline
There are so many bug with Houdini's hair that surprised me.Houdini 's extrude and blend Method is the default option, but static modeling can only be used.
Hey jsmack,I tried,but guidedeformer is too slow.
Edited by nausicaa - Aug. 5, 2020 05:43:34
User Avatar
Member
31 posts
Joined: Aug. 2017
Offline
The best approach is to framehold your hairgen with a timeshift before doing any work on it with clumps, frizz, and what not. Then after all the clumps and frizz is done create an attribute wrangle and input the hairclump frizz result into input 1, the hairgen before the framehold (animated) in input 2, then take the frameheld hairgen before the clumps and processing and put it into input 3.

Once its all wired up put this vex in the wrangle:
v@P += v@opinput1_P - v@opinput2_P;

This will give the hairclump frizzed fancy hair same motion as the vanilla input hairgen without changing its beautiful shape.

Tanto helped solve this with me over here https://www.sidefx.com/forum/topic/82414/?page=1#heart [www.sidefx.com]
User Avatar
Member
8038 posts
Joined: Sept. 2011
Offline
mannyw
Once its all wired up put this vex in the wrangle:
v@P += v@opinput1_P - v@opinput2_P;

That won't work if there's any rotation in the animation or non-uniform deformation, as the reference frame will be rotated and/or vary spatially.
Edited by jsmack - Jan. 7, 2022 21:27:45
User Avatar
Member
31 posts
Joined: Aug. 2017
Offline
jsmack
mannyw
Once its all wired up put this vex in the wrangle:
v@P += v@opinput1_P - v@opinput2_P;

That won't work if there's any rotation in the animation or non-uniform deformation, as the reference frame will be rotated and/or vary spatially.
Oh really? It's been working fine for me so far but I guess there is not much movement in my current sim. It might show with more intense rotation like your saying. Do you have a solution for that case?
  • Quick Links