Fibermesh hair and viewport lag
marble
Posts: 7,500
in The Commons
I have some really nice hair items which are fibremesh. I'd love to use them more but I find it kills the viewport response so that posing becomes a real PITA. So I end up not using them.
Is there a way to improve the viewport performance? I tried the usual stuff in preferences - hardware alias and using the "Best" setting but it is still very slow. I am using the normal OpenGL view, not the IRay preview.

Comments
Maybe turn their visibility off until everything else is posed?
I make an active effort to avoid fibermesh for exactly this reason.
Turning off the visibility of the hair makes no difference. I also thought it would but no joy.
edited: rephrased some sentences and added more information
That is odd. You should see an improvement when hiding high geometry count objects.
-> Which viewport drawing settings have you been using?
-> Can you give a specific product example which type of fibermesh hair is giving you trouble?
- - -
- - -
Some general information about fibermesh hair as a starting point to make sure we are talking about the same things:
-> Fibermesh hair in the narrower sense of meaning does not use transparency maps at all.
The thickness of fiber hair can be
- a strand of points (no thickness -> no refraction, no subsurface scattering, just backlighting effects)
- a thin cylinder volume in the form of a hair strand (the increased point count allows for thickness -> refraction, subsurface scattering possible)
- - -
- Some render engines support spline based fiber mesh hair.
The benefit of splines is that they are not using up a lot of space in RAM and VRAM because the hair is not based on actual geometry. Just a preview in the form of curves is shown in the viewport and the final hair quality will show up during rendering.
- - -
- Some artists just create really thick fiber mesh hair with a low hair strand count.
The benefit of those hairs is that they give realistic subsurface and refraction effects for figures standing in the background when a light source shines at the head from behind.
However, up close those thick fiber hair types may look more artificial then higher quality transparency map hair types.
- - -
- Some artists combine countless thin layers of plane shaped hair strands with transparency maps. Depending on your system and render engine those "mixed fiber planes and transparency map" hair types
- slow down the real time and openGL viewport
- cause artifacts in 3rd party render engines that impose a limit on maxium ray bounces through transparency map layers
- > 100s of transparency layers may actually be slower to render than point strand or volume based fiber mesh hair without any transparency maps. (!!!)
- - -
- - -
Suggested system requirements for "high quality" cylinder based fiber mesh hair simulating a real life hair strand count:
For using geometry based fiber mesh hair with around 140'000 hair strands you may at least want 32 GB RAM and 8 GB of VRAM.
- - -
The hair I tried today was Soto's Buzzed Hair and also Short Cropped Hair by RedzStudio. I have no idea how many strands they have.
My PC is Windows 10 64 bit with an i7 6700 CPU and 32GB RAM. I have a GeForce 970 to drive the display, etc., and a 1070 (8GB) just for IRay. The rendering in IRay is not a problem - it is quick. The only problem is the posing lag in the Viewport - which is, I assume, because of the high polygon count. I thought that making the hair invisible might make it easier to pose the figure but that's not so. I wondered whether these is another "trick", perhaps.
Interestingly, I ended up using the George Hair which is also, I am almost sure, fibremesh. The lag was certainly not so severe using Georges's hair.
edited: currently having problems uploading some images... will continue editing this post later.
Both Soto's Buzzed Hair and George Hair work extremely well on my system with no noticeable lag when using the Texture shaded or even Nvidia Iray preview drawing style.
I have not purchased a license for the Short Cropped Hair because it is from another store.
- - -
@ DAZ Studio settings that adjust viewport lag
At which setting is the option Preferences / Interface / Display Optimization: "none" or "best"?
-> On my system with the setting at "none" viewport lag is noticeable. With the setting at "best" viewport lag was gone in the tested scene.
-> A few years ago the OcDS plugin developer suggested to keep display optimization at "best" always.
I do not know if there are any negative side effects or situations for which it is suggested to leave this setting at "none."
- - -
@ George Hair vs Buzzed Hair
Buzzed Hair 2'316'058 Vertices
George Hair - 700'028 Vertices
-> This may explain why George Hair performed better on your system.
- - -
I was not able to figure out why "hiding" the hair in the scene tab does not solve the lag for you.
On my system hiding a high polygon count hair object created in Zbrush did immediately remove the lag caused by that object.
As far as I remember this always worked like that.
Example: In scenes that use a lot of instances I was always able to hide some instance groups by clicking on the eye symbol and any lag would be gone
There must be something that prevents that "hiding" a scene object has the intended effect. Anyone else go an idea?
I find that turning off the visibility greatly improves viewport peformance
that Buzzed hair is unsable if I dont.
I can confirm that the visibility switch (the little eye in the Scene Tab) does not help with the posing lag. Correction: just checked this with a base G3F and just the Buzzed Hair loaded and there is a difference between Visible and Hidden. Not a great difference and the lag is still very noticeable compared to no hair loaded but I was wrong, there is a difference.
Here are my prefs at the moment: