Jump to content
Aveyond Studios Community
Duffer123

Request (for RPG/Nov Development) - Character Customisation / Selection HeroActions/ Support

Recommended Posts

@Ant,

See also the post on clothing/armour/equipment. 

So this request is related but more to do with base Character customisation and selection at runtime and usually when a game begins for the first time.

So not swapping out whole HeroObjects but modifying the current one.

So maybe default for maybe height and weight and proportions, gender, age, skin and eye and hair colour etc with defaults by Race and Subrace.  Functionality to change some or all of those parameters at runtime when setting up your character.  Default starting clothing, armour, equipment and weaponry dependent on Class, Race, Subrace... that sort of thing...

Share this post


Link to post
Share on other sites

If you can get something like this working for both 2d and 3d, I know it would be a major selling point for me and a lot of people. Some of the most popular RPGs are the ones that let you flex your creative juices!

I could definitely see some sort of tool that swaps out game objects/sprites from a base animation or skeleton, which can be both 3D and 2D friendly. The hard part would be making something that's simple to use, though...

Share this post


Link to post
Share on other sites

@Ant,

For 2D, this is readily achievable.  For 3D, this is rather the Holy Grail.... as you need to not only circumnavigate recolouring but also things like skinned meshes, blend shapes and mount points (see asset of same name) to peg on other game objects.  Modifying and swapping out weapons and shields would be relatively easy, changing clothes, ears and hair, less so...

Also, do you lend support for MCS, UMA2, MakeHuman and other avatar systems (aka Alvi) which is very codey, or go your own route (aka RPGAIO)?

If you can cover that and keep it sensible and accessible you have yourself the best in class asset just with that...

Share this post


Link to post
Share on other sites

Some thoughts on Character customization for 3D:

I think we should steer clear of making something complicated like UMA and focus more on something that let’s people easily use their own art. One of the major complaints I’ve seen with UMA and the reason I steered clear of it is that it is REALLY complicated for anyone that would want to use their own 3D art. It’s possible, and apparently amazing if you can get it working, but it’s not user friendly.

I wouldn’t mind seeing something closer to what PlyGame did.

In Plygame, you can create lists with Objects, materials, textures, colors, ect that can be swapped out on your character model with the click of a button. It’s based on having a “base” model that hides and shows objects. I was able to make this little creator demo using PlyGame’s system:

https://akillustrate.itch.io/loc-character-creator-demo

While I think PlyGame is fantastic, and would recommend it to anyone who wants to try and learn how to make games, I did run into a few things that could have been better for character creation and might be worth considering if you want to jump into 3D character creation:

1. Setting up the buttons took forever as it involved copying and pasting the code and changing a few pieces here in there every time. Especially with the color buttons. Unfortunately, I do not have a suggestion how to fix this, but it would be something to consider before starting.
2. The meshes are still there after you are done. If there was a to hide them instead or attach them to bones or game objects, such that they are all not just in the same place, it would be much nicer to the system.
3. There wasn’t any clear blendshape or slider support. I probably could have make my own with some digging, but if you can make it so people can easily set up sliders (be it with blendshapes or otherwise) that would be really cool.



I’m not saying you should copy plygame, but I do think the 3d character creator is something worth looking at for some ideas on how to tackle your own system. You could easily have Hero objects with lists of the things that are the "change to" bits, and apply it to the buttons to send it back and forth. And for single buttons, just have the number of the changed-thing in the unity editor, thus making it easy to adjust. And for sliders, have a list of what the slider affects (ex. Sliding muscles affect the blendshapes of the body and clothes of the character.)

 

If you want I can talk more about my own process and hurdles with making the creator I linked above. Perhaps it would give you ideas?

Share this post


Link to post
Share on other sites

@AK-i that is a fantastic demo. Would you mind sharing how you adjusted the piece of clothing to fit the body types? Do you have different variants of the same mesh for each body type? Or did you map the clothing mesh vertices to your body to auto-morph with a change in body shape? 

I'm also a big fan of body customization in games, ideally with both bone scaling (to do things like lengthen/shorten limbs or broaden/narrow shoulders) and blendshapes (to adjust individual body part features). I have yet to find one or more assets on the store that allow you to get your clothing/armor meshes to match body customizations of that nature in a way that lets you swap out any clothing/armor mesh at runtime. (Besides UMA, which as already noted, is rather complicated. Not that it isn't a wonder and boon for the community, since it's free and all.)

I've seen some assets that let you map vertices in the editor, but you essentially have to save the mapped mesh along with the character model prefab and basically disable the mesh renderer if you don't want it to show. Seems rather clunky to have <N> meshes for all your clothing/armor options attached to your character running around and only rendering whatever is equipped at the time. It's been a while since I've looked into this type of system again, so maybe there is something better out there. 

Share this post


Link to post
Share on other sites

@Ant

Certainly! ^^/

Like I said before, an ideal character creator would be one that 1. Let's you easily use your own art, 2. Supports both blendshapes AND model swapping, and 3. makes the process of setting it up as painless as possible, making use of the editor (Be it unity or herokit's) as much as possible so you don't have to constantly rewrite your code.

Part of what made plygame's difficult was that I kept having to go back into the code (or in plygame's case, the visual coding block system) and changing several little things for every single button. It wasn't hard but it was very tedious. Whereas if I could just have the thing I needed to change show up in the editor and the code pull from it, it would have been faster. (If I go back to that character creator, I'll probably try and figure out how to do that myself. Which I am confident plyGame's visual coder can do. Save me some headache and wrist pain)

So for example, I want the Material on the Eyes to change color. I can make a button that does that, and when I copy and paste the button, I can then change the color on the individuals.

THEN I can copy and paste that set, and select all the buttons, and change "Eyes" to "Shirt" or "Ears" ect. using all the same color materials, without changing all of them. Sort of like how in unity, you can select several things, change an attribute in the editor, and it changes for all the selected things.

Hopes this helps! I'll try to explain more later when I have the time!

 

@ChiaPet

Thank you! I went with a more art, less code solution. So I had to create individual pieces of clothing for every body type! The correct version of the clothes are then connected to the body type it is supposed to match.

If I were to tackle this with sliders, the clothes would probably have sliders too

I will say, this isn't the most ideal method, as rigging and animating the character is incredibly difficult. However it worked for the style I used!

Share this post


Link to post
Share on other sites

Heyya! Another long time no speak.

I wanted to make a flow character of a sort of basic character creator and how it would work. (Please forgive any typos and what not, I kinda whipped this up quick)

Fmnam3M.png

I think that Hero kit could achieve this With something like:

  • Character (Also the root.)
    • Armature
      • Main Body (weighted to Armature. Not swappable/hideable)
        • Materials/submaterials database
        • Blendshape database
      • Rigged clothes/parts Database  (weighted to Armature. Swappable/hideable)
        • Materials/ submaterials database
        • Blendshape database
      • Static clothes/parts Database(attached to single bones)
        • Materials/ submaterials
    • Blendshape Slider database (With the blendshapes they affect? Not sure on this one)

 

Game devs could then have multiple "characters" to match the race/class/ect someone chooses if they so please!

This is all suggestion, of course... Just have Customization on the mind again and was brainstorming a bit, ahaha...

 

Share this post


Link to post
Share on other sites

Thank you! I certainly hope so!

It's not the most advanced character creation solution, but it's definitely a simple one I think people would appreciate as it will get the job done for a character creator, and could easily be used for other things as well. (Equipping new weapons, character wearing plot or game based clothing, ect.) I think the flexibility in simplicity is important!

I think Hero' kits databases and lists would make it easy to add new customization features too! (Like if someone made a new hat, and wanted to add it!) and could also open up doors to other gameplay ideas. All someone would have to do is make sure their art matches their base armature/mesh when they bring it into unity. (Clothes rigged, scales, blendshaped and origin'd correctly. Textures mapped correctly too!)

The Hero kit layout would definitely make keeping track of those global variables a lot easier too. As more complex character creators have a LOT of those.

[Edit]
Also looking back to my list.

Maybe the Rigged and Static clothes lists should be under the main body? Then it could follow the blendshapes easier?

Share this post


Link to post
Share on other sites

I think this is really great and well thought-out! One challenge I think I see is how you'd implement a working example of this type of character system for the community/customers to use as a starting point. Does Ant need to include art assets? Should we as the community crowdfund/crowdsource those assets? Or do we share the creation of this example and the related documentation with Ant, who would really just be responsible for the functionality in HeroKit and help with hints on that documentation effort? 

<Insert my prior suggestion for a community wiki here. :P >

Share this post


Link to post
Share on other sites

Hm... I guess that would be up to Ant!

I personally figured a solution like this would put all the art up to the artist. (Ie. Artist makes all the art. Herokit just helps artist stack and sort all the art into a creator that can be used at run time for their RPG.)

If there is an example scene, I think showing off that the character creator can literally be anything would be nice. Maybe change the colors of those monster models. Stick hats and bow ties on them. I'm sure there are other free models out there that can show the same.

Share this post


Link to post
Share on other sites

Yeah, I think for me as a hobbyist exploring game dev in my spare time (and with my spare money lol), solving the 3D character art problem for a robust RPG-style character customization system can be such a big hurdle. UMA is way tpo complex for my meager coding skills. I really lament that Mixamo Fuse is on hold indefinitely; that tool had such promise for character customization back in the day...

Share this post


Link to post
Share on other sites

That's fair!

As an artist who has trouble reading code (it strain my eyes really bad...), UMA is definitely a daunting one. I can tell it's a powerful system that has had a lot of time put into it, but sadly it's too complex to get anywhere if you want to use custom art. It also uses a solution that doesn't work for every style out there.

And yeah, Mixamo was definitely a sad loss :( ... It was really well put together and could have gone so far. It's really a shame.

I'd hope my proposed solution would work with something like Meshtint Studio's "SimP Series", which seems to use a similar approach, minus an actual in game character creator.

Here's another graph to show how I think HeroKit could implement in-game character creator tools. Again sorry for any spelling errors!

zszJuD9.png

 

Share this post


Link to post
Share on other sites

I've seen those SimP models on the asset store. Those don't have blendshapes though, do they? I'm trying to figure out where to find a good stable of artistically coherent assets for fantasy/medieval settings. UMA is too daunting for me to use from a coding perspective. Morph3D seems to be just as complex and frustrating, but for different reasons (lack of developer transparency being chief among them). Just using Daz3D models won't work either, as all of the clothing/armor/hair content is way too high poly to use in games--not to mention the nickel-and-dime-you-to-death licensing model they have now. Ugh, why is game dev so hard lol...

Share this post


Link to post
Share on other sites

@ChiaPet

Looking back, no, I don't think they do have blendshapes. They do look like they have swappable bodies though? Which still might work with my suggestion. It would just involve having the main body be swappable. (Like how it would have to be if your character creator had you choosing from different races) Might require rethinking the flow chart a bit...

If you're going toony, SimP would be the way to go. I've yet to find a more impressive library of toony character assets, and the fact that you can make your own textures is really nice. I don't have any good suggestions for Realism, though, sadly...

 

@Duffer123

Ah, I completely forgot about Manuel Bastioni! I haven't heard much from them on Blender Nation lately. Aren't they a bit high poly though?

Share this post


Link to post
Share on other sites

This is a tool that would be very valuable. And it would save a lot of time creating characters for a large world. RPG Maker has something similar for 2D. Smile engine may also have this for 3D, but I need to check.

Share this post


Link to post
Share on other sites

@Duffer123 I've actually been checking in on the Manuel Bastoni models, as well as MakeHuman.org's. The Bastoni ones seem to have more promise. I also have SKINN, although I find the documentation to be lacking, even if it seems like there's tons of great functionality there and in development. 

Still, there's a huge dearth of assets to tack onto these base models (hair, clothing, armor, etc.). It feels like there is or should be a decent market for this, right? :-/

Share this post


Link to post
Share on other sites

@Ant

Absolutely! ^^/ It could definitely be helpful both for letting players make their own character and for quick populating!

I know I need to redo my in-game character creator at some point, so I definitely wouldn't mind helping with the testing!

@ChiaPet @Duffer123

There is definitely a market, but I think people either decide to go for the complex systems like UMA, or just build their own from scratch.

Share this post


Link to post
Share on other sites

Yeah, I suppose character art is very specific to your game's art direction. That's one issue I see with UMA--or more specifically, another reason why I shy away from it. If you are using the base UMA models, it'll be pretty obvious to anyone familiar with the asset. Converting custom models to UMA seems to also be problematic, or at least, very user unfriendly. 

Share this post


Link to post
Share on other sites

Trying to think of a list of things to consider. Here's what I got so far:

Object Layering - Layers Objects and Prefabs on top of a base. The base should probably be an actual armature instead of a base model to allow flexibility for character creators that want more than one race to choose from

Rigged Meshes - Base body types and clothing choices that are rigged and have blendshapes/shape keys. (prefabs)

Static Meshes - Unrigged Objects that are prefabs that just need to be assigned to a bone on the armature to follow.

Material Changer - Changes the material on a objects chosen material slot (if an object has more than one material slot)

Blendshape Slider - A slider that affects one or more blendshapes. Good for body type adjustment among other things

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×