Game
Lemma
12 years ago

Player model and animations


An update from the Kickstarter:

One concern that pops up a lot on Greenlight is the low quality of the player model and animations in Lemma. The reason it’s so bad is that I did all of it myself, and I’m not a character artist. People ask, “but couldn’t you just try harder? What’s so hard about modeling and animating a character anyway? Also, couldn’t you just borrow an existing public domain model?”

Come, join me as I weave a wondrous tale of artistic achievement. It is the story of the current Lemma player model:

5d0c4da7eb92b.jpg

Weeee!

The story starts with modeling. The current player model consists of over 10,000 3D points connected by over 20,000 edges. Being a novice Blender user, I wasn’t about to attempt all that myself.

5d0c4da916dcf.jpg

Luckily, there’s a great open-source project called MakeHuman that can generate all kinds of human models. You can tweak parameters like gender, height, weight, nationality, muscularity, facial features, and more.

I generated a suitable model, imported it into Blender, and made a few tweaks to fit the game’s needs.

The next step was texturing. Normally I would have to painstakingly map each 3D point on the model to a 2D point on a texture surface (a process called “UV unwrapping”). Luckily, the model came with pre-generated UV coordinates, so only a few minor modifications were necessary.

However, the default textures didn’t include clothes, so I used GIMP to overlay some cloth textures. I also baked in some ambient occlusion for a bit of added realism.

5d0c4daa07b1f.jpg

There’s more than one way to skin a character model.

The next step is to add controls so that I can animate the character. Similar story here. Normally I would have to first create a skeleton of bones that roughly matches the shape of the model, then painstakingly assign up to four numbers to each of the 10,000 verticesin the model. These “weights” determine how much each vertex is affected by each bone. Thankfully, MakeHuman once again did the heavy lifting. However, the few modeling tweaks I made earlier had to be properly weighted, and even that was not easy for a novice like me.

5d0c4dacdc6fa.jpg

The green vertices will be affected by the forearm bone.

Finally, we’re ready to animate this monstrosity! Over the course of development I’ve accumulated 34 poses and animations.

5d0c4dad8d341.jpg

The animation code can blend between animations and even layer two different animations on top of each other. For example, the bottom half of the model can play a walking animation while the top half answers the phone.

Each animation contains keyframes that indicate the position, orientation, and scale of each bone. To make the player turn around, I could make a keyframe at 0 seconds with the model facing forward, and another keyframe at 1 seconds with the model completely turned around. The code would blend the two keyframes into a smooth turning animation. Easy enough, right?

Not so much. Here’s just part of the “kick” animation, which lasts about half a second. Each dot is a keyframe.

5d0c4dae2b37a.jpg

It’s like Excel’s nasty older brother.

Once you take into account the fact that the skeleton has 70 bones, even simple animations can take hours to complete.

Long story short, 3D animation is hard! Professional outfits these days use motion capture, but even that requires weeks of intensive post-processing and cleanup by teams of professional animators.

Hopefully this little article gave you a glimpse into the world of game development, and hopefully you understand why I need help to bring the player model to the level of professionalism and quality that this game deserves.

Before I go, just a quick thank you to everyone for supporting Lemma, and a status update! The Kickstarter is over 35% funded and the Greenlight is now 73% of the way to the top 100 games with almost 5,500 yes votes. Thank you guys!



4 comments

Loading...

Next up

Here's a peaceful little forest scene for this #screenshotsaturday, from the beginning of the game.

Enemies can also suddenly spawn through Realm Rifts. These Rift Spawns are going to be stronger than the ones wandering around. TBD on the enemies... #screenshotsaturday #godstear #madewithunity

Back in my art school days I used to ride the 710 COPSA line from Parque Del Plata to Montevideo almost everyday. This is the Marcopolo Viaggio G4 Mercedes Benz model from the late 80s, one of the older bus models that was running on the line.

One of the most critical update for Sunblaze demo. Now you are able to pet a cat! Finally!

Horror WIP A track that will be featured in a future horror game soundtrack! Stay tuned!

Likes appreciated ✌️

#gamedev #composer #horrorgame #indiegame #IndieGameDev #soundtrack

Today I tackled drawing different variations of facial expressions for one of the main characters in Eden. What do you think of it? :) Eden: https://gamejolt.com/games/Eden/592698

Alone Together....

Cash Banooca

not the greatest house, but it's a house! :D