Character Creation System in Unity

I’m trying to figure out the best way for players to be able to create characters in Unity. I need a system that will let players create their characters and then easily change their armor sets.

I’m not finding much that helps with this and figuring its something we will have to do from scratch unless anyone knows of any outside options?

I beleave the answer is not that simple. First, all characters has to be rigged with separated parts, so it can be changed, script each king of change (hair, eye, color, etc). This is just baiscs, but is a start point

good Luck

There is one excellent character creation tool being developed by Unity forums user Fernando, there is no release date yet but its looking very promising.

ahh yes, i forgot that, really amazeing product beeing developed by Fernando…

here: http://forum.unity3d.com/threads/153689-procedural-character-generation

Arteria has several character creation sets, but there are no scripts for them.

Hey! Thanks =D

Well what I did with my 2D games for changing outfits and weapons is you hold values for the current piece of equipment and save it by writing to a file or the way I did it was to use PlayerPrefs. And then upon loading a scene I run a check on the value for every body part, and based on that value, I change the material of the player’s head, weapon, clothes, etc.

So I end up having a ton of materials in my editor with names such as head0, head1, head2, etc or weapon0, weapon1, etc all inside the Resources folder. So when I want to change the character’s clothing I run a script with something like

playerhead.material = Resources.Load(“head”+PlayerPrefs.GetInt(“head”));

This technique is used for changing just about anything with the character!

Hi there! Thanks a lot!
Didn´t noticed you´ve wrote before :slight_smile:

Np Fernando my pleasure…ahahaha

Well, if you decide to make this yourself, use Playmaker. You could EASILY do this with playmaker. It would’t even take long.

I don’t see where is the big deal in this ?

Hey Neo_ ,

This is exactly what I was about to say. You just saved my words. I am totally agree with you on this.

Well this is how I do it , for changing armours and actual body parts I have the body modelled separately ,
Per say I have different heads , trunk , legs , hair , and swap between them to get the new body, after that I determine the body parts that use the same texture I combine the 2 meshes too save a draw call .

As far as getting randomness into your 3d models I used morphs.

Hope it helps :wink:

Hi,

I am the developer of a character customization middleware called Mutable. I am evaluating the integration in Unity right now, so i am collecting feedback. Would you be interested in using something like the system explained in http://anticto.com and http://www.youtube.com/watch?v=PtmYeXuNd1c ?

It builds optimised models from a diagram that you have to create them in a separate tool. Then just set the parameters in the script and get the meshes and images. You can actually try the tool yourself (there is a free beta version).

Just let me know any comments!

Jordi

You don’t give nearly enough information on your site for people to make a decision. It could be anything from amazing to completely crappy, and still fit within your description there. It’s hard to get excited about something when you have no clue how it’ll work, and if it’ll actually help your process.

I would strongly recommend you come up with a specific price point for your Indie license. I think for most of us, no details = probably too expensive. Why invest time in a system we “might” not be able to afford?

Cheers,
-D

Mutable looks as if it’s ported from MakeHuman code to Unity, if you were to make the models low poly as possible and license ‘FaceGen’ from Singular Inversions for ‘personalized’ gaming experience you could have a very popular product on your hands but honestly I think mobile hardware is a generation or two away from being able to support that type of in-game customization.

And judging from the ‘grossly graphic’ nature of way too many games I think players would rather have ‘well developed hero avatars like Superman’ than avators of themselves in games. It’s not like toon-type WiiMes, Yahoo!, or xBox 360 Avatars after all.

For the orginal poster:

The rest of the comments apear to be made by folk that haven’t done character modeling (difficult) or writing custom Unity code (whether in C# or whatever: difficult when not copy-pasting and even then still sometimes difficult as you still have to learn the Unity API to make changes) after weeding through all the Unity API needed to integrate and join model meshes and textures to make an avatar.

Even if you’ve taught yourself modeling as I and many have done in Blender and even if your already know or have taught yourself C# you’d still need to learn the internal representation of a model’s FBX components and the Unity API subset needed to do this and that’s saying nothing of modeling your model such that different meshes can be easily exchanged to create new characters.

There is a ‘Monster Base Team’ for sale in the asset store with customization code but that is strictly exchange of textures. The 4 characters are all different complete meshes so it’s really not a good example of exchanging meshes (face, torso, stomach, hips, …) to create new characters. At $70 it’s a OK price and it’s a good example of low-poly modeling.

There is a Unity Dressing Room example and it does exchange meshes but the meshes are so nearly the same geometry that it shows the difficulty of changing a thin character to a fat one by exchanging mesh components at least for those at my level of expertise. Furthermore it’s Unity Pro only, very disappointing as I’d already used my free trial and so couldn’t see the downloaded .asset format of the database used to construct the avatars and to have tried to derive it is likely to have been a months long waste of time. I would need to derive the dB names and structure because the code that does the exchanging and joining is related to Unity API fbx internals and to learn that is many weeks of study. Too bad because the code is very tight. Maybe they will rewrite one day for Unity Free.

There is a Character Workshop (Digitech Gamez) that takes a DAZ Genesis low LOD model and dresses it by overlaying clothes and changing textures that works well. Currently he is rewriting for Unity 4. I have almost finished adapting his 3.5 version to use a more complex database and with many model pieces. It still works by overlaying one mesh over another much as you’d get dressed. I’m using a set of assets I licensed and it’d be difficult (or rather, time consuming and difficult to get it right, for me) to create such a wide variety of characters via modeling all these mesh pieces myself.

Finally, the best approach to this in my opinion is to adapt the MetaMorph Animation Kit v1.1.1 (or spend $150 on MegaFiers) and create in Blender low-poly models with shapekeys to change height, weight, and face. The hair you’d want to create as a seperate piece of clothing, ‘wig style’, with shapekeys to adjust for variance in head size. The clothes you’d need to overlay with the same shapekey adjustments to fit to the base model after applying shape keys. The texture exchange would need to match the textures with the meshes with the new shapekeys. Already, this as the most efficient and flexible way is very difficult as anyone who is familiar with re-fitting clothes, hair, and textures on DAZ and Poser models that no longer work can attest to. That they are low-poly would make it more difficult to properly fit if you are not deriving from the same base mesh everytime.

You could port MakeHuman to Unity if you wanted a more realistic type model but I think a guy name Fernando is already doing that. Still leaves the immense difficulty of customizing faces, hair, and clothes.

Hi,

Thanks for your comments. Actually most complaints about the previous site (we changed it a month ago) were about it having too much information for people to get the concept of the product… we tried to keep it simple this time. The support site does contain more information and it can be accessed freely after registration. Finally, the target of letting people try the creation tool is precisely what you mention of giving them a clear image of what Mutable does and how.

But i understand that for the Unity community, the proper way to test something is to get it from the asset store, and run it, so we are looking into this.

j.

Thanks for your comment. I understand your concern about not knowing the price. We have decided to develop the integration and decide afterwards based on how useful is the result. Because Unity doesn’t give us access to its internals, we cannot do some of the things for hi performance in our system, like doing part of the customization in the shader in some cases when real-time updates are slow. Or maybe we can, but don’t know how yet :).

We will probably release a lite version with the basic features, and then develop a pro version with what is needed for big projects, like streaming and multi-threaded construction. I will report as soon as we have the features and prices clear.

j.

Has anyone got any knowledge or experience of mapping DAZ 3D shaders over to Unity Shaders?