Character customization in CGs...

A place to discuss things that aren't specific to any one creator or game.
Forum rules
Ren'Py specific questions should be posted in the Ren'Py Questions and Annoucements forum, not here.
Post Reply
Message
Author
User avatar
WickedJewels
Newbie
Posts: 3
Joined: Sun Jul 31, 2016 5:03 am
Tumblr: wicked-jewels
Contact:

Character customization in CGs...

#1 Post by WickedJewels »

This is my first post on here, so...I hope I'm doing this right :?

I've been working with some friends on a game for about...3? months now, and something we've wanted to incorporate since the beginning of production is character customization. The plan is to have her eyes, hair, and skin tone be customize-able. The only problem we have with this, however, is that the game is planned to have quite a few CGs/illustrations that include the MC in the image.

I've never been a fan of a "vague" MC in CGs (ie where you only see the back of her head, or a part of her body...), so I would really like to avoid that as much as possible.

So I'll just get to my questions:

1.
How hard would it be to make it where the MC (including her customized looked) was visible in CGs? I know the task would be tedious, but would it be hard?

2.
How would you suggest going about coding for this? I would super appreciate it if you could include an example, as I'm a total visual learner :|

I appreciate any help! (still hoping i did this right.. :( )

User avatar
Zelan
Lemma-Class Veteran
Posts: 2436
Joined: Tue Mar 01, 2016 7:23 pm
Completed: The Dark
Projects: Cosplay Couple
Tumblr: evns
itch: Zelan
Discord: ltnkitsuragi#7082
Contact:

Re: Character customization in CGs...

#2 Post by Zelan »

I'm not an artist, nor am I a coder. But if my limited understanding of how art works is correct, it shouldn't be difficult as long as it's only the color that can be changed. That way, each CG would still only have one lineart but still be able to show every combination. If by hair and eyes you main hairstyle and eye shape, things will be a bit more complicated.

Like I said, I'm not a coder, so I don't know much about a good way to do this. My guess would be that every possible combination for the MC should be drawn and given a different label (maybe something like "kiss1greenbrowndark" to let you know which is which?), but I'm sure if you poked around on here long enough you could find someone who can explain a better/clearer way.

User avatar
LateWhiteRabbit
Eileen-Class Veteran
Posts: 1867
Joined: Sat Jan 19, 2008 2:47 pm
Projects: The Space Between
Contact:

Re: Character customization in CGs...

#3 Post by LateWhiteRabbit »

Could get crazy. Not HARD, but crazy tedious and a load of work. Let's break it down into practical terms:

Let's say you have 3 customizable options - hair, eyes, and skin tone. Let say you have 4 possible choices for each:
Eyes: Blue, Brown, Green, Hazel
Hair: Blond, Brown, Red, Black
Skin: Tone1, Tone2, Tone3, Tone4 (Let's say Pale to Dark).

NOW, for each graphic that shows the character, you would need the following combinations:
Blue,Blond,Tone1
Blue,Brown,Tone1
Blue,Red,Tone1
Blue,Black,Tone1
Brown,Blond,Tone1
Brown,Brown,Tone1
Brown,Red,Tone1
Brown,Black,Tone1
Green,Blond,Tone1
Green,Brown,Tone1
Green,Red,Tone1
Green,Black,Tone1
Hazel,Blond,Tone1
Hazel,Brown,Tone1
Hazel,Red,Tone1
Hazel,Black,Tone1

THEN, repeat that 3 MORE times for all the other skin tones. For each graphic of the main character, you would need 64 different versions. Now, you might get away with overlays for basic sprites, but you would need 64 different colored versions of every CG in the game. Every option you add increases the graphic work EXPONENTIALLY.

That's why most of the time you find customization only in 3D character models, where parts or textures can be swapped out on the same character model, and each piece only needs to be created once.

User avatar
KittyWills
Regular
Posts: 144
Joined: Sun Jun 07, 2015 3:02 pm
Projects: e·phem·er·al, Aeronaut
Organization: KKBGames
Skype: thedeerlord09
Contact:

Re: Character customization in CGs...

#4 Post by KittyWills »

It's tedious. All we are doing is swapping Character Gender and we're getting to a point were we might just ditch the idea all together. Plus adding all those extra images are going to make your game heavier. Images do take up a bit of memory space.

Unless you had all the CGs only have your other characters, keeping the MC out of them. I have seen that before. And just used an overlay like, LateWR said, for the base sprite. But even then you have to add that on top of expressions. You're looking at 100s of sprites.

I don't want to be discouraging. But you are looking at a LOOOT of art. =/

User avatar
WickedJewels
Newbie
Posts: 3
Joined: Sun Jul 31, 2016 5:03 am
Tumblr: wicked-jewels
Contact:

Re: Character customization in CGs...

#5 Post by WickedJewels »

LateWhiteRabbit wrote:Could get crazy. Not HARD, but crazy tedious and a load of work. Let's break it down into practical terms:

Let's say you have 3 customizable options - hair, eyes, and skin tone. Let say you have 4 possible choices for each:
Eyes: Blue, Brown, Green, Hazel
Hair: Blond, Brown, Red, Black
Skin: Tone1, Tone2, Tone3, Tone4 (Let's say Pale to Dark).

NOW, for each graphic that shows the character, you would need the following combinations:
Blue,Blond,Tone1
Blue,Brown,Tone1
Blue,Red,Tone1
Blue,Black,Tone1
Brown,Blond,Tone1
Brown,Brown,Tone1
Brown,Red,Tone1
Brown,Black,Tone1
Green,Blond,Tone1
Green,Brown,Tone1
Green,Red,Tone1
Green,Black,Tone1
Hazel,Blond,Tone1
Hazel,Brown,Tone1
Hazel,Red,Tone1
Hazel,Black,Tone1

THEN, repeat that 3 MORE times for all the other skin tones. For each graphic of the main character, you would need 64 different versions. Now, you might get away with overlays for basic sprites, but you would need 64 different colored versions of every CG in the game. Every option you add increases the graphic work EXPONENTIALLY.

That's why most of the time you find customization only in 3D character models, where parts or textures can be swapped out on the same character model, and each piece only needs to be created once.
That's definitely a lot of versions of every CG...I was thinking, instead of choosing a custom color for each element, we could have 4 set designs to choose from (for example, sprite 1 is pale skin/brown hair/green eyes, sprite 2 is dark skin/black hair/brown eyes, etc).

That way, there would only be 4 versions of every CG the MC appears in, instead of 64 :shock:
KittyWills wrote:It's tedious. All we are doing is swapping Character Gender and we're getting to a point were we might just ditch the idea all together. Plus adding all those extra images are going to make your game heavier. Images do take up a bit of memory space.

Unless you had all the CGs only have your other characters, keeping the MC out of them. I have seen that before. And just used an overlay like, LateWR said, for the base sprite. But even then you have to add that on top of expressions. You're looking at 100s of sprites.

I don't want to be discouraging. But you are looking at a LOOOT of art. =/
It definitely is a LOT of art...our main goal is to make it where the player can relate more to/feel closer to the MC by choosing how she looks. However, after reading your comments, I definitely think we'll stick more towards the 4 set sprite thing!

Does anyone have any tips on how implementing the base design the player chose into CGs, coding-wise?

Thank you all for your replies! :D

User avatar
Zelan
Lemma-Class Veteran
Posts: 2436
Joined: Tue Mar 01, 2016 7:23 pm
Completed: The Dark
Projects: Cosplay Couple
Tumblr: evns
itch: Zelan
Discord: ltnkitsuragi#7082
Contact:

Re: Character customization in CGs...

#6 Post by Zelan »

Since your question is about coding specifically, you might get more/better responses if you post in the corresponding forum. (However, you will probably get less help if you're not using Ren'Py.)

Good luck! ^_^

User avatar
Anyubel
Regular
Posts: 30
Joined: Mon Jun 13, 2016 6:38 pm
Projects: Project Miasma
Deviantart: AnyuBel
Contact:

Re: Character customization in CGs...

#7 Post by Anyubel »

If you only plan on doing four options, it shouldn't be too hard overall, but like other people suggested, it'd take up a lot of file space. As for coding it, I think there may be a better way around this and I'm not sure if it'd actually work for this, but you could do something along the lines of ConditionSwitching in Ren'Py. I've done it before in a project for changing the textbox mid-game, and I think it could maybe be used in a similar fashion for something like choosing between four MC customizations.

User avatar
Aviala
Miko-Class Veteran
Posts: 533
Joined: Tue Sep 03, 2013 8:40 am
Completed: Your Royal Gayness, Love Bug, Lovingly Evil
Organization: Lizard Hazard Games
Tumblr: lizardhazardgames
itch: aviala
Location: Finland
Contact:

Re: Character customization in CGs...

#8 Post by Aviala »

Wait, wait - do I understand right that people are suggesting you actually have a CG for each possible combination? Why not just do it "paperdoll"- style and have the CG without the MC as a base, and separate images of the character skin tone, hair and eyes that you show on top of the CG. That's basically the only sensible solution that doesn't take huge amounts of space. Conditionswitch code is probably your best bet here. It shouldn't even be that hard - it's just A LOT of work. Which, of course, is a hardship on it's own - new devs often underestimate how much work it takes to make a game.

User avatar
WickedJewels
Newbie
Posts: 3
Joined: Sun Jul 31, 2016 5:03 am
Tumblr: wicked-jewels
Contact:

Re: Character customization in CGs...

#9 Post by WickedJewels »

Anyubel wrote:If you only plan on doing four options, it shouldn't be too hard overall, but like other people suggested, it'd take up a lot of file space. As for coding it, I think there may be a better way around this and I'm not sure if it'd actually work for this, but you could do something along the lines of ConditionSwitching in Ren'Py. I've done it before in a project for changing the textbox mid-game, and I think it could maybe be used in a similar fashion for something like choosing between four MC customizations.
It looks like we'll be able to do it with ConditionSwitiching, thank you so much for the suggestion! :D
Aviala wrote:Wait, wait - do I understand right that people are suggesting you actually have a CG for each possible combination? Why not just do it "paperdoll"- style and have the CG without the MC as a base, and separate images of the character skin tone, hair and eyes that you show on top of the CG. That's basically the only sensible solution that doesn't take huge amounts of space. Conditionswitch code is probably your best bet here. It shouldn't even be that hard - it's just A LOT of work. Which, of course, is a hardship on it's own - new devs often underestimate how much work it takes to make a game.
That was my original plan to do it, but I wasn't sure if it would work well since everyone suggested doing different CGs :shock:

But with Conditionswitching, paperdoll style, and lots of time and work--I think it'll be possible to do a decent amount of customization without making the game super heavy! Thank you guys so much, I appreciate the suggestion :D

User avatar
Tyrantauranox
Regular
Posts: 153
Joined: Sat Jun 21, 2014 12:31 am
Contact:

Re: Character customization in CGs...

#10 Post by Tyrantauranox »

I'd try to work out a more technnical solution, rather than having different sprite for every possible color. You could instead have a single set of black & white sprites, "tinting" them different colors in code. Pseudocode example:

HairSpriteColor = Color(255, 255, 255, 255);
SkinSpriteColor = Color(255, 0, 255, 255);
EyesSpriteColor = Color(0, 0, 255, 255);
ShirtSpriteColor = Color(123, 54, 77, 255);
PantsSpriteColor = Color(0, 0, 0, 255);
ShoesSpriteColor = Color(127, 127, 127, 255);

User avatar
sharkmittens
Regular
Posts: 52
Joined: Thu Jul 23, 2015 3:11 pm
Tumblr: corvhush
Soundcloud: corvhush
Location: Atlanta, GA
Contact:

Re: Character customization in CGs...

#11 Post by sharkmittens »

i was actually wondering about something like this myself!
you saved me a whole googling. :twisted:
i'd love to see more games where customizations are an option,
but i'm also plenty aware that it's a tedious process myself.

Post Reply

Who is online

Users browsing this forum: No registered users