Spire
(In development)
Spire is a 3rd Person Action-Platformer that I started as a main project. the purpose of this project is to make myself learn how to build a complete game, from concept to asset building, to modelling, rigging to animating characters, even putting the assets to a game engine, i.e. Unreal Engine. Programming and post processing. I wish to learn each and every stage of game development.
Story Overview
Some say that the Tower of Babel was built over night. Some say that it just appeared out of thin air. Many adventurers went into the Tower but not a single one came back out, as if they were eaten by something in it, not a sliver of cloth, not a lock of hair. And yet so many people are tempted to traverse into the Tower as the secrets beckons so sweetly, some seek glory; some seek fortune; some seek the truth of the Tower.
After sometime, legends concerning the Tower of Babel spread, people travelled from all over the world to behold the magnificent Tower. Some even called it a pilgrimage. Slowly, area surrounding the Tower of Babel turned into a large community, people living in that community called it The Great City of Babel.
Unbeknownst to the citizens and worshippers, the Tower brings nothing but disease and dismay. Witness from other countries called it “The Curse of Babel.”
The story starts as the “Curse” spreads to the village, which lives a young girl. The villagers are sick from the disease and needed a cure, which, rumor told, can only be found in the Tower of Babel, and thus, the young girl embarks on an adventure and ascends the Tower, seeking the cure for the villagers.
Character Concept
The Girl
This is both the player and the main character of the game, only called the girl as there is no real reason to name her. She has a red motif that contrast the usually greenish, brownish environment so that the player could easily spot her.
The girl is carrying a dagger that she picked up during her adventure in the Spire. It might be too big for her as it is originally made for beings much larger than her, but she would use it to protect herself. She also strapped a bag on the scabbard.
Otus The Merchant
There are many people who venture into the Spire seeking fortune and glory, while there are people that could not find peace in the outside world.
Otus is a mysterious figure that the players would occasionally run into during their adventure. He is both a merchant that the player can purchase upgrades and tools from, and one of the few character that the player can talk to (listen to as the girl doesn’t speak) to get a better understanding of the Spire.
The player would collect BELLS from the level and spend them on purchasing upgrades and tools to ease their journey.
Modelling Process
Due to this model needing to be animated, correct edge loops are needed, this led to me spending a lot of time to go back and forth, checking edge loops and to make sure everything is in quads. This is my first time modelling a movable character, so it took much more time that I thought, but the result is quite satisfactory.
Character Modelling
A simplified rendition of the main character, lost the scarf and the free-hanging belts for easier rigging in the future.
This is the smoothed version of the model. Normal map will be added in the end so the “polygon-y” look of the non-smooth model will be solved.
(No need to handicap myself when I am still learning)
Otus is easier to model, only need to slap some accessories on him such as the helmet, a bag and some weapons. The cloak is covering up a lot of things anyways and he doesn’t walk around like the main character, so the only thing that I need to do is to animated the slouch and the head bop/bell ring action.
Rigging
This is the difficult part, simply because I have no experience in rigging a character and this is the first time for me to do it. Youtube tutorials are helpful and I did get help from others with animation experience. It took way too long to do and it was every tedious, but I did managed to do it.
The challenge started right at the beginning, Joints are added and mirrored, The orientation of the mirrored side is, due to the fact that we can’t have good things in Maya, reversed, so we need to actually need to re-orient them with plug-ins and codes. Thank you Comet Cartoons for the code.
After building the joints, controllers are put in, Apparently, it is absolutely prohibited to move the joints on its own, figures, no one want to mess up the whole thing by moving them. The whole point of the controllers are put there as we can freeze their transformations, by freezing transformations and constraining the controls to the joints, no matter how we mess with the pose and orientations, we can always reset the transformation to 0 and it will simply return to T-pose.
(We can use an A-pose for these rigs and animations, but why would you do that? T-poses always runs on 90 degree intervals, but what do I know? I got my references from people who make animations instead of games.)
With skin-weight painted in and we can now see why we should never control the joints itself but the controllers: the orientations changes and they are not frozen, so we would ass a lot of data onto existing data x=10, x+10=20, etc. and this will mess with the model after posing.
Due to this model having not many polys, this is easier to block out the skin weights, but it is harder to determine the skin-weight transitions to another part of mesh. (note: remember to but the point perpendicular to an edge instead of a face. makes things much easier. I did not do that in this model so the painting is harder.)
Skin-weight painting on this basic scale is quite simple but there are a few things we need to pay attention to:
First, Lock all the joints on the skin painting window. then unlock the top joint, then flood the joint with 100% weight.
Second, paint on each and every part of the joints, while keeping them locked. Due to the simplicity of the polys. Focus on 100%, 70% and 30%, each and every part of the skin needs to be adding up to 100%. See the green part(30%), this is because the the weight is 70% (orange) on the same place on the next joint. (The section should be completely black on when viewing from the top joint that we first flooded, if there are other colors when viewing from the top joint, it means that the top joint still have influence to the joint you painted, and this will mess things up.)
Third. paint 100% on the area in front of the joint, 70% on the joints, and 30% a section behind the joint. On the next joint, paint 100% in front of the joint until it touched the previous joint and the same for on the joint and behind the joint. Maya will deal with the over painting.
Remember that we should only bind skin on the base mesh, aka the body, all the other things are constrained onto the joints and they will simply follow without changing shapes like the base mesh.
Clothes: If you are just using Maya for animations, you can just wrap deform the clothing/”soft” mesh onto the base body. BUT, if you are doing games, especially using Unreal Engine or something that takes FBX, Due to it does not take deformer data, you would need to bind the clothes too instead of using a wrap deformer.
Simple Attributes can be added to the controllers to make simple gestures like making a fist.