Page MenuHome

Hair Dynamics does not work for all strands when hair has been cut
Open, NormalPublic

Description

System Information
System 1:
Operating system: Linux Mint 18.3 Cinnamon 64-bit
Cinnamon version: 3.6.7
Linux Kernel: 4.13.0-39-generic
Processor: Intel Core i5-4430 CPU @ 3.00GHz (4 cores)
Memory: 23.2GiB
Graphics card: NVIDIA GTX 1070 + NVIDIA GTX 760

Tested and verified on secondary PC with Linux Mint 18 Cinnamon + Intel Core M-5Y10c CPU (duo core) as well.

Blender Version
Broken:

  • 2.79 (official),
  • 2.79.6 (build hash: e50a3dd4c4e),
  • 2.79.6 (build hash: 5c10c92b23c),
  • 2.76b (official),
  • 2.80 Alpha 2 (build hash: ee7236859df),
  • possibly more.

Short description of error
Simulating hair dynamics using the hair dynamics option (standard settings) does not work for all hair particles when the hair has been cut in particle edit mode. In particular, hair simulation only works for some strands, the others remain stationary throughout the simulation. The affected particles are seemingly random depending on the cut shape, although shorter strands seem to have a larger likelihood of remaining stationary. The affected strands do not change over time, they only change depending on the cut.

Exact steps for others to reproduce the error
See attached .blend file for the finished result.

Simplest way to reproduce:

  1. Add a particle system to the default cube. (Rotate the cube 45 degrees to prevent vertical hairs - this is to allow gravity to work on all hairs.)
  2. Change particle system type to 'Hair'. Do not change any of the other settings.
  3. Go to particle edit mode with the cube selected. Using either the 'cut' tool, shrink tool or shape cut, cut the hair to some arbitrary shape (preferably with both long and short strands).
  4. Enable 'Hair Dynamics' in the particle settings tab. Do not change the settings there (although changing any does not resolve the error to my knowledge).
  5. Perform the simulation by pressing the 'play' button in the timeline. If the bug has been reproduced, you should see some of the hair particles fall down normally, whereas some of them will remain stationary. If not, try a different cut.

When performing all steps above, except for the particle edit, the bug does not occur. Therefore, the culprit seems to be in the length of individual guide hairs.

The bug seems to occur using more complex geometry as well.

Another note: using a hair length texture does not produce the bug - because the guide hairs still have uniform length.

Details

Type
Bug

Event Timeline

Bastien Montagne (mont29) triaged this task as Incomplete priority.Sep 17 2018, 9:49 AM

Does this still happen within 2.8? Otherwise there is very little chance this get fixed in 2.7x series now… ;)

Thanks for your response.

I quickly tested it for the latest 2.8 build on my secondary PC, and the old file (that I uploaded) seems to explode the hair when simulating again after a couple frames. Probably a cache issue though. The few frames in which it doesn't explode, the problem still seems to be there.

To rule out regressions, I created a *new* file in 2.8 using the same method, and after the second try, the bug occurred - the shortest strands no longer moved and were stuck, despite the other hairs moving. Therefore, the problem still seems to be present in 2.8.

Bastien Montagne (mont29) raised the priority of this task from Incomplete to Normal.

@Sergey Sharybin (sergey) you worked on hair recently, maybe you can check on that one? Thanks.