Metahuman hair disappears at rendering

Hi!

The problem is as follows.

We have a scene, n interior. In it, 20-70 metahumans appear in the frame at the same time. In total, there are about 150 of them at the level (yeah that’s a lot and we render on a farm but that’s the project we have to deal with).

The metahumans are divided into groups and placed on sublevels so that they can be hidden and shown at specific moments when needed.
Previously, 20 different metahuman blueprints were used, but now there are only 4-6 left.
Everything displays well in the viewport, however, during rendering using the level sequencer, 70% of the metahumans’ hair does not load. LOD 0 or 1 is set everywhere because on farther LODs, hair may disappear since the hairstyle may not be calculated for distant shots.
During rendering, the hair does not load in a random order.

In attempts to solve this problem, I increased the warm-up frames value up to 680, but this did not yield any results.

There were attempts to not hide the sublevels with metahumans, but this did not yield any results.

Textures have been optimized, and their size limited to up to 2K. This significantly unloaded the video card, and half of the VRAM remains free, but the hair still disappears.

Also, during rendering, the consumption of RAM gradually increases, and it becomes completely filled, which leads to a crash of the engine after rendering from 300 to 2000 frames (depending on the complexity of the angle and the number of metahumans in the frame)

Graphics card Geforce 4090, 24GB VRAM, 256 GB RAM.

Really, tried days to fix it but can’t. Appreciate your help!

1 Like

Hi. have the same problem for weeks., I was going crazy! After 1000 attempts just this morning I think I found a good solution. Duplicate the MH BP, paste your Skeletal Mesh in the body of MH. Then link the MH face to the Skeletal Mesh as Child. Finally use the root bone of the Skeletal Mesh in the socket to match the face. Adjust the position. Set MH body npt visible and hidden in game. Use scalability cinematic. That’s all.
In my project everythings render perfect. I hope it’s the same for you.

1 Like

Hi,

Hope you guys are doing well. I had the same issue and my problem was the “subsequence” was not working well. I had the MAIN scene on the sequencer. I had two characters that were interacting in that main scene. I created a subsequence of “side” characters. They were 3 in total. None of them rendered their hair.

When I moved those characters from subsequence to the main sequence, everything worked again. I had tried reloading ALL the metahumans that I was using, I had tried checking the files to make sure that the hair materials didn’t get deleted accidentally, but this is what ultimately fixed it for me. Subsequence…at this point, I cannot trust it. I may be using it wrong but I tried everything you guys did above…even the LOD Sync with forcing LOD0/1 and none of that worked until I tried above. Hope it helps you guys and good luck!

1 Like

Hi, thank you for your contribute to the dicussion.

Finally I have understand that there’s not only one way to resolve the problem. MH are very complex, we used them in a lot of very complex situations, and so we have to use different tricks.

In my experience three of the most frequent situaiions in wich MH loose the hair are:

  1. Adding a MH in a new cutscene taking it from another.
  2. Download a new MH from Quixel Bridge.
  3. Update a MH from Quixel Bridge.

In every cases I put all the MH in the sequencer and leave the visibility only to those I use in the cutscene, unchecking “Actor Hidden in Game” to the other.
Sometimes I re-import the MH from the Bridge or put a copy of the same MH in the scene but not in the sequencer. This is the most crazy situation. In rendering the copy doesn’t have hair and the original has his hair come back :slightly_smiling_face:

Anyway it’s a work in progress. Hope this tricks can be useful. Enjoy.

1 Like

I have been having similar problems. I think ever since I moved my project from 5.2 to UE5.3. Skin is flashing blotches, hair, eyebrows etc will render in some Sequences and not others. When it does render in some sequences the hair (which is normally dark brown) can look almost blonde! One hair >> scatter scene lighting if you tick, will do something… but still doesn’t look as natural as in the viewport. Pathtracing render does something - but again not great and doesn’t fix the skin blotchy flashes. :face_with_symbols_over_mouth:

Hi @vvinskyy , I had a similar problem with MetaHuman hair, beards and eyebrows not rendering when I had more than 10 characters in my scene. It would look fine in the viewport but would then disappear in the MRQ. (and the metahuman head wouldn’t take shadows too). However if I pressed play (in the viewport not sequencer), then the hair disappeared too and a warning appeared about exceeding the Skin Cache size.

So to fix this, go into your project settings and increase the skin cache settings from the default 128mb. I set mine to 512 and then everything rendered great, took me weeks to figure this out (was nothing to do with LODs). So my big takeaway now, is that when you render, it’s putting UE into play mode which can give different results than the non-play viewport (besides quality levels) so I’ll periodically check things by pressing play in the viewport. Cheers!

Yes!! You’re just became my best friend! Everithing works and render perfect! Thank you!!

1 Like