Game
Gamedec

3 years ago

Dev-Diary: Animating a character in Gamedec with Mateusz Cios


Hi, my name is Matthew, and I am an animation lead at Anshar Studios. Today, I will show you the process behind creating a character as a fully animated final piece.

Skeleton

Before we start bringing our carefully crafted 3D character to life, we need to make it possible for it to move. Like an actual human, it will need some kind of skeleton. The process is a bit time-consuming and tedious because every mistake made here will affect our future work with the animation. Skeletal systems in 3d software are most often created using the hierarchy of joints, which visually look pretty similar to an actual human skeleton. We have to make sure that the joints are placed in anatomically correct places. We have to check if the joint orientation reflects the rotation that we want to work with. For anatomical correctness, of course, this rule can be bent while working on some kind of a stylized character, monster, or really anything else more cartoonish. Still, for a realistic character, it's more like a rule of thumb.

skeleton.png

Skinning

Okay, now that we have a fitting skeleton inside our character's body, the time has come to bind the skin, generating skin weights for our character. Weights are basically a black and white map representing 0 to 1 values, 0 being black and 1 being white. Those values determine the strength with which every single joint affects every vertex of the character mesh. There is also a different way to display skinning values called color ramp, which looks like a temperature gradient from dark blue to red. Still, I prefer the black and white mode because it's easier to see some misplaced influences.

skinning_rigidelement.gif

There are a couple of ways you can bind the skin to the skeleton. Still, in the Gamedec pipeline, those are not really that important because we streamlined the whole skinning process using copy weight Maya script. Instead of painting the skin weights on hundreds of different characters by hand, we created a base body model and skinned it to perfection. Now we are using it as our base for all future skins. With this method, the skinning process is taken to the nearly finished state with a press of one button, all that is left to do is to look for some misplaced influences and adjusting skin weight values on different clothing, hairstyles, or any other elements that turned out to be problematic for the script. There are also cases of material difference, for example, the shoulders on the gif below. Still, the script did not know this, and it turned out too flexible. These things are being fixed at this stage too.

basebody.png

Unreal Engine

After the character is skinned properly, it's time to move it to the engine and see how it performs. We can test various animations to see if the skinning is well done and if the elements hold their places well. I usually use our test level to play desired animations with a press of the button on the widget. This is usually the final step before a new character is approved and can be used in the game, but some cases will need a final touch to look good. One of those cases is the long skirts of female characters inhabiting the wild west world - Harvest Time. The skeleton that we use is pretty simple because Gamedec is an isometric game. We do not need a significant amount of detail to make things look good. But sometimes, the overall low amount of bones in our skeleton and the lack of support joints for cloth turns out to be an obstacle that makes it really difficult to keep things looking smooth.

Our savior here is the built-in cloth simulation system to give us a really realistic look on those problematic skirts with low effort. The procedure itself is straightforward to use but at the same time pretty complicated given the number of variables and parameters that we can tweak to get the behavior of the fabric just right. To name a few, cloth stiffness, simulation weight, and friction are just a tiny portion of the possible tweak values. With the help of this fantastic tool, we just made our skirt look like it's straight from the real world.

noclothism.gif
clothism.gif

How did you like this article?

Do you have your favorite piece of animator work among other games? Do you consider animations important for immersion level?

----------------------------------------------------

If you'd like to talk with our team members, want to ask a question to the Author of the Gamedecverse (Marcin S. Przybyłek), or chat with enthusiasts like you - join our Discord channel.

Stay safe!



0 comments

Loading...

Next up

Monthly Changelog - May 2021

The Great Pandemic in the Gamedecverse

Into the GamedecVerse: Military & Out-Rangers

Announcing the Lost In Isolation FNaF Game Jam

The GameJam Starts Friday (submit games below)

https://gamejolt.com/c/fnaf/plenty_s_fnaf_jam

Join The Discord For Updates

https://discord.gg/SWV9fQWZ2R

Hosted by @PlentyXD

Help from @hunterallen_ and me

Art by @Funkilicous and Yellw.00f

Hello Detectives! One augmented Italian cyber plumber left a mysterious note: > GAMEDEC NINTENDO SWITCH >> JULY 1st, 2022 > CIAO

You can expect a chunky discount of 40% off for the first two weeks!

Check out the trailer: https://bit.ly/3HgUt2x

You knew Olaf, Ale Abbey's fluffy doggo. Prepare to meet Otto the cat, the monastery Cellar's sleepy restless guardian🍻⛪

You will - indeed - be able to pet them in-game for a bonus in Satisfaction!🐈☺️

#indiegame #petthedog #pixelart #screenshotsaturday

Thanks to your support, we've been working hard on fixing bugs that you reported for the last couple of weeks. Your feedback is vital to us, so we thank you and encourage you to continue to send us all the comments and ideas you have for the Gamedec.

GAMEDEC IS NOW AVAILABLE WORLDWIDE

Collected new gameplay footage this week. And finally found (and added) a new piece of music that suits the mood of the game

IGN Polska has nominated Gamedec for "Best Polish Game of 2021"! You can vote here: https://bit.ly/3a6jMYl (scroll down on the page to locate the voting form)

This wouldn't be possible without you <3 Thank you in advance 😁