Character Generation Game

We’ve all seen them by now. Fallout 4 has one. Skyrim is famous for them. Dark Souls III has an excellent one. A game within the game is to design your character.

How the heck would that work in Blender? How the heck does it work in the AAA games? Any clues?

Simple answers first:

Yes, I have a clue :wink:

Vot with that one. These evil closed source people keep that very secret leaving us in a dark room without a light.

You simply model a character, or a chair, or a rock, a complete world.

I miss the question

Due to its complexity I need some more information about what you want to achieve:

What do you mean?
A) How to get a variance of characters without modelling each of them manually?
B) How to customize a character in-game without modelling it manually before hand?.

I hope you see where this is heading on. The basics can be pretty much the same, just the input differs. To reduce confusion on any explanation I would like to see your goal.

Here’s your only clue:

SHAPE KEYS

heh heh heh…

Ah me, now I have to ask a question back. What exactly is the difference between these two?

Here’s exactly what I want.
1: Various body heights and types that can be further customized - fatter or leaner, muscular or flabby, etc.
2: Heads that fit the right sized bodies, but are otherwise customizable with fuller or thinner lips, wider or narrower, longer or shorter noses. More or less pronounced cheek bones, etc.
3: In my ideal fantasy world, these alterations should also fit higher poly copies used for cut scenes. And is it at all possible to make armature follow such deformations? I’m thinking the reason Fallout 4’s faces are less editable than Dark Souls 3 faces is because they show up in cut scenes.

I don’t mind modeling a few different heads and bodies (or even a ton of them. Heck, I have a niece that loves games that do nothing except dress up 3d dolls). But what I want is for the player to be able to do substantial customization to those faces and bodies, probably edit skin colors and textures, and then, after they are done, have that face and body be the one that they play the game as.

If they want to change mid game, I guess that would be easy enough if you already have the functionality in place to begin with. Fallout 4 has plastic surgeons for just such an emergency…

P.S. I really appreciate you humoring me. I am just now learning to model… So this is kind of like showing up first day of arithmetic and asking how to do calculus, but a rough outline and whether or not you think it can be done in Blender at all is mostly what I am looking for.

P.P.S. It’s always fascinated me to imagine a game where your small character is lighter and flies farther when getting hit. Most ragdoll physics seem to assume some sort of constant weight? Can these variously sized bodies be made to interact with appropriate mass using Bullet?

This is largely a completed project with Manuel Bastioni 3d humanoids.

YouTube Demo

Website for Instructions and Download

In case anyone else is looking and imagining this in the same terms I was but somehow missing it in Google searches.

There are many ways of making a character customization. Trivially, you could model all possible character customizations, but if you have more than two non-dependent custom features, the exponential scale on the work would be a lot more noticeable.

So here’s how I would do it in Blender.

  • Body deformations (muscles, face, body type)
    I would do all of these with “shape keys”, here’s what you can do with shape keys:

  • jaw lines, expression, mouth, ears, forehead, nose

  • you can interpolate between skinny, muscular, fat

  • you can save these values (shape key frames) externally to load later

  • Body color
    You can use materials for this, and save the color value of the model externally to load later

  • Body art (tattoos, scars, texture)
    You should have separate diffuse maps that you can layer on top of each other, again, you’d need to save these externally somewhere so you can load the character later

  • Body additions (rings, ear rings, hair, eyes)
    You do this exactly how you would do equipment, except the “equipment” instead of being clothes, they’re body parts

And I think that pretty much covers everything you’d want to do.

These are really high level tips, but I hope they offer you some insight into what you want to achieve.

Programming wise, I don’t think character customization is hard at all, and it can definitely be done with python and BGE. The assets take a long time to do and I feel that’s probably the hardest part: making everything fit together nicely.

Again, I don’t think character customization is “difficult”, I just think it’s a lot of work… A lot of work that is not worth doing unless your game is a character customization. But that’s just me :slight_smile:

Good luck!

I would take a more simple approach. Once I modeled and rigged the charactor. . In edit mode, I would select the head and seperate it from the body (“P” in edit mode) then make copies. (shift D or alt D) I would do the same with the shirt, pants, arms. painskin. whatever etc. Make sure you name them in object data in case you want to replace mesh, Then I could edit, paint, sculpt, texture, etc, them separately, and they would all still be parented to the armature. (because I rigged it beforehand) You could then use the visibility actuators, replace mesh, or just end the parts you didn’t want. or whatever you wanted to do.