how to optimize the FPS of a character with multiply materials?
by default, each subMesh owns a material? is it able to be optimized?
So you have a group of skeletal meshes? Or is it one skeletal mesh?
Each skeletal mesh has its own draw call to begin with. So if each character has multiple a good optimization would be to condense them all into a single skeletal mesh. This can be done at runtime: Working with Modular Characters | Unreal Engine Documentation
Then each material is its own draw call, and if each submesh has a separate texture that’s another draw call. The best you can do here is pack all of the textures into a single mega texture, or atlas. Then map each material instance to a different region of the atlas to get the desired texture. Don’t ask me how to do this, I don’t even know. I know the process, but I’ve never done it in UE4.
What this all comes down to though is this: Is your character actually a bottleneck for your game? If you’re seeing slowdown, have you profiled the game on your target platform/configuration to see what’s causing it? Having a few characters on screen with a few dozen draw calls each isn’t usually an issue unless you’re on mobile. For me, I had a couple dozen characters onscreen with some slowdown, but the reason for that was the IK calculations. I gated the calculations behind LOD1 and that did the trick. What does Session Frontend say?
Runtime DataTable : Import and export game data to and from CSV or Google Sheets while your game is running!
easyCSV : Read data from any CSV and put them in an easy-to-access string map!
iTween : Free, smooth, procedural object animation
Setting blend mode to modulate will get you nowhere fps wise.
pardon? not sure what this mean
You will lose framerate due to overdraw, not gain any, and modulate is only used for certain particle effects, not static/skeletal meshes.