A Trick to stop your Metahuman crashing your Hololens2

When I first started importing my Metahuman into my Unreal file and pixel streaming it to the Hololens 2, it would crash seemingly randomly. If I had my Metahuman in front of the PlayerStart on load, then it crashed instantly. If I had my Metahuman load behind me and I had to turn to look at it, then it would load but as soon as I walked towards it, it would crash. If I placed it further away it wouldn’t crash, but then I couldn’t walk up close to it.

So I did a quick experiment where I hid every part of the Metahuman  – no crash – and then introduced elements back one by one. Other developers probably already knew this, but I discovered that it was the hair elements making it crash.

Now Metahumans having hair in general is ok, it was when it was switching between LODs that it crashed, so I realised then pretty quickly that it was when switching between a low LOD (when I was far away) to a high LOD (when I walked up close).

This might change when the full official release of Metahumans and Unreal 5 is released, but for the time being I just need to learn as much as I can about Unreal, Metahumans and Hololens development. So I have a solution that will let me continue on, and to be honest the rendering of the Metahumans is still pretty darn nice. I mean when I get close, I keep expecting them to give me a sidelong glance.

So, if you just want a quick fix this is what I did. You can go into more research about the LODs later and mess about more closely with those once you get it to stop crashing.

So – Groom Assets are what you want to tweak.

 

Start with Hair – in the LODs details, every Geometry Type dropdown where it says  Strands, change it to Cards.

 

Do the same for the eyebrows.

Now I didn’t change the eyelashes because they disappeared when I did. But I did just hide the eyelashes for now.

Another thing I did was to limit the LODsync settings so that it wasn’t trying to switch between the levels while running. To do that go into the metahuman blueprint,  and select LODSync

 

Then I limited the Num LODs (Sets the maximum number of available LODs that any component in the list can use. ) I didn’t want it flicking between levels so I set this to 1. Then I set the Forced LOD to 1. 

 

 

But still it stopped crashing in the Hololens 2 and that was my objective.