Since V7 Customer Update for Unreal Engine 5.0 and above, you have to enable the Hair Rendering features in your project settings to support Groom, since some of our Blueprints rely on the Groom asset type.
If you see a buch of Groom errors like below, you cannot recompile those Blueprints.
Let's fix this issue.
Please, verify in BP_Character
> Interfaces > Character Editor > Character > Add Groom Component
, that the node Add Component
shows an error.
If yes, the Hair Rendering features are indeed disabled. If no, please contact us.
Enable the Hair Rendering features, as mentioned in this Unreal Engine documentation.
Restart your engine afterwards.
If you did not save any of the Character Editor Blueprints in their broken state before enabling the features, you are good to go. The engine restart should have recompiled the Blueprints automatically and you should be able to continue with the Character Editor as desired.
Please, verify again that the Add Component
node from above has now been renamed to Add Groom Component
and no longer shows an error.
Though, if you did save any of the Character Editor Blueprints in their broken state by any chance and still receive errors, we recommend you to add a fresh copy of the Character Editor content to your project.
Unreal Engine 5.0 might still have some issues with Groom. E.g., Groom assets get somewhat "shiny" when point the player camera to areas where no mesh geometry or sky sphere is (i.e. our atmospheric fog in the showcase map). Another thing is, that it is fiddly to setup Groom physics properly, so the hairs do not stretch like crazy, when we spin our character inside the in-game editor. It looks like Unreal Engine has to further evolve Groom on its own. This is nothing we can improve.
Currently, we have an open Unreal Engine Bug Ticket, since we noticed that Groom CDAs, that we have tested, ignore ForcedLOD = 0
and still keep changing their LODs when zooming the camera in the Character Editor. We could reproduce this in UE 5.0 and 5.1 and think this might be a bug with Blueprint-created Groom components. We keep you informed about any updates on this.
We faced the issue with some Groom Assets, that the strands LOD 1
is breaking when you zoom out which switches to LOD 2
and shows the Groom cards. If you zoom back in to LOD 1
again, the strand break, like shown in the screenshots below. If you re-apply the Groom CDA, the component is re-created and the strands are working again.
This issue is nothing truly breaking as it does not affect default testing strategy and packaged games, as you can see in our replication tutorial Package the Project for Multiplayer. But if you want to use that Unreal feature, maybe YOU 😉 can help us with fixing this issue.
Back to the issue, if you test your Multiplayer game in engine with the Editor Preference “Run Under One Process” turned off, you probably will face the problem, that clients only have Customization Data Assets available that are available to the current Preset Data Table
, assigned in BP_Character
. For some reason, with this preference, multiplayer clients cannot use the loading logic of WBP_CDA_Loader
as these clients run on their own process and seem to not have access to the Content Browser assets, which our CDAs are.
You can see the result below:
The two clients have less CDAs displayed, the listen server on the other hand can use all CDAs normally.
Changing the CDAs on a client, will also sometimes cause a crash of that client, because of mismatching information about the selected CDA between server and client.
If we cannot fix the issue, please use the default testing strategy by turning on Editor Preference “Run Under One Process” again if you want to test the Character Editor in multiplayer and in engine. For standalone testing we currently just recommend packaging the game.
Though, a tooltip mentions that turning this on has potential to have more issues, but in our case, it is the other way around as you have seen above. As you can see below, with this setting the CDAs all load properly, because they are delivered by the main process, the engine is running on.