Character creation menus

I’m new to the game development side of things. I am an IT professional of 12 years and I’ve always wanted to get into game design so I finally got the system together to do it after I found Unreal Engine was available to all. I have been watching tutorial videos and looking through forums on things. I was just curious if anyone here has done an open world game(or started one) with a character creation menu? By this I mean, at the beginning of the game you come to the main menu, Press “A” to start, loads up a character selection screen with a few slots(3 or 4) to create a custom character for each slot if wanted. In these slots you’d be able to select a class, a race, then update eye color, hair, face, body, etc. Obviously it can be done but I was curious if there were any tutorials on how to get started with these?

1 Like


I actually already made several of these. Customizers are rather easy to make, but which method to use is the real question and the limitations of different systems. If you want to make simple color changes, it is just done by using a parameter in a material or a material collection with a vector parameter. Hook it up to a widget with sliders for each color, make a blueprint to communicate between widget and customizer and you have a very basic color changing system.

However, if you want to go more advanced and have for example morphs to alter the face or the body proportions/features, you would need a model with morphs and you can also use sliders to change the morphs. The downside with morphs however is that your cloth will clip through. To avoid it you would have to create morphs for the clothes too. Basicly, it is pretty performance intensive and I would, if you want to have morphs (facial mocap and such), just use it on the face.

When you want to work with matching clothes and body modifications, you can use the bones of the model and transform them in the animation blueprint of the character to change. The limitation here is that you need to use the same rig and have similar weightings on the clothes like the body you want to modify. Jiggle bones or spring joints need this even more to not cut through the cloth.

Then you also have the option to create different body meshes and manipulate them (like mount and blade). You would have every freedom, but it comes with a cost. Every seperate mesh increases the draw calls and by using for example 3 different meshes (head, body, hair), 2 additional meshes need to be rendered. If you are not careful and you just use a slighly different color on one of your meshes, your meshes will basicly have strong seams and will look ugly. Also the weighting of different body parts will not be able to have smooth transitions, because they are not part of one mesh. This body swap technique has it’s pitfalls.

I would recommend in terms of changing things on the texture (like eye color for example) to rely on masks and put different masks in a single RGB texture with an alpha channel. This will get you masks for 4 different modifications you want to make to the texture. The good thing is that these masks doesn’t need to have a high resolutions. Artifacting is not as strong and barely visible after some tests I’ve done.

Just to summarize it: It really depends on, what your game will need and how much flexibility you want to have :).

As of now, I can’t tell you, where to find tutorials. I always make the stuff myself, so I rarely search for specific tutorials.

Hi Booher04,

Congrats and welcome to the UnrealEngine Community.

A Character Creator is a deceivingly advance game subsystem. At first glance, they can appear to be a simple system of attaching/swapping meshes, adjusting morphs, and adjusting material parameters. But, once you dive into the development of a Character Creator, you’ll quickly discover it requires Tutorials for UE4’s Networking, Blueprints, UMG GUI, Skeletal Mesh/Skeleton Assets, and Materials. You’ll find a free Character Creator Template here and a couple in the Unreal Marketplace: 1, 2. @DarkGodsLair is offering excellent advice for working out how to design your characters for customization.

Assuming your open world game is networked multiplayer, you’ll need to consider your network implementation upfront as it dictates how you design your Actors, Variables, and Functions. I’ve been learning UE4 for 2 years, developing a In-game Multi-user Editing App in the process for my open world game. I’m running into formidable challenges replicating Character Customizations to the other Clients {Spawn the Character, Spawn/Despawn Accessories, Attach Accessories to Character, Apply Customized Attributes Values}. I’m all for discussion on the networking for character creators, vehicle customizers, Fort Builders, Weapon Crafters, and other construction apps.