Character Customization using FSkeletalMeshMerge

Hey =)

I´m playing around for a few days with an character customization system for the first time, and I´m kinda overwhelmed about the possibilities.

As we`re developing some kind of RPG Game, we need a performant modular NPC creation system. Recently I stumbled across "FSkeletalMeshMerge"and implemented a function which merges my modular pieces into one Skeletal mesh and plays the right animation.

But now I really don`t know how to create my materials in an efficient way. I played around with layered Materials to have one “cost intensive” material and with different material instances with “Luos_textureCropper” (Material Function - Texture Cropper (with tutorial) - Unreal Engine Forums).

I noticed, that the FSkeletalMerge dont really merges my Materials into one, so I dont get an performance boost Drawcalls wise. Is there any option to merge my Materials into one?

So my question is: How would you recommend building a performant material to optimize drawcalls/performance for a modular character system?

Thats strange, if you are using same material, FSkeletalMeshMerge::GenerateLODModel is supposed to find out and merge sections with the same material.

I’m also working on character customization using FSkeletalMeshMerge. For me, the main concern about it is the performance of the DoMerge function which took a really long time which causes character spawn hitch for me. Something to look out for.

How do you make separate skeletalmesh? Make sparate mod form start or delete same face for every skeletalmesh?

How many parts of your character are there and how many characters will be on-screen at any given time? With the improved draw calls due to instancing in 4.22, you may just be able to eat the cost of having characters with several materials.Alternatively, you could create one big atlas with all of your parts using one material and it should merge them together.