Finalising Character Models & Rigging

Week: 25 – 31 October

This week I continued modeling the horse character from last week and the pending unfinished crab character I did during the summer break. I want to start with the animation as soon as possible, so I have to finalise both characters quickly including the rigging, UV map, and textures.

Crab Character: Modeling

The crab character still has several unfinished parts which are the antenna and the mouth area including teeth and tongue.

Previous version of the character
Sketch

I started by defining and finishing the shape of the lip and the interior of the mouth

I then did a very quick models of the character’s tongue and tooth from basic cubes.

Tongue and teeth

The tooth and tongue model were then placed inside the mouth. I duplicated the tooth into three more teeth with slightly different sizes and rotations to make it look uneven.

Tongue and teeth inside the mouth

For the antenna, I duplicated one of the legs and modified the shape to make it look like the antenna from the sketch.

Reshaping the antenna

After the model finished, I think the single antenna looked a bit weird, so I decided to make it a pair.

While working on the modeling, I was also rethinking about the story of my FMP, probably changing to something related to student and university. Maybe the story will be about the characters going to class, similar to my reference for the crab character, which is Monster University. I will finalise the details of the idea and shots next week.

References: Alexander from Monster University
Modeling a bag from basic cube
I used a plane to make the zip line and applied ‘Solidify’ modifier to create the object depth
Bag pockets and zip line merged with the bag model
Modeling the bag’s strap from a plane with ‘Solidify’ modifier for the object depth
Final form of the bag’s strap
I made the cap from a sphere and plane.

Crab Character: UV and Texture

I didn’t planned to have a realistic or painted texture for the character, but instead to use a simple procedural textures. So I need to unwrap the character’s UV first.

The first step is to mark the seams so Blender can unwrap each part properly, and I can have the texture seams at the areas I wanted, which are at the back and the bottom so they will not really visible to the viewer.

Marking UV seams on the character
Bag’s seams
Cap’s seam
Unwrap all objects with seams
Unwrapped UV of the crab’s body
Bump texture nodes for the crab’s body
Bump texture nodes for the bag
Character with texture (viewport)
Character with texture (render)

I duplicated the crab body parts to 2 or 3 more for color variations, so in the animation / shots I can quickly turn on or off the object in the collection to make the character look different between shots.

Duplicated object for color variations

Crab Character: Rigging

For the character, I built the skeleton manually from scratch using the standard Blender bone.

Basic bone setup for the half / right side of the body
Facial bones
Knee and elbow controllers
Leg’s IK setup
Leg’s IK setup
Hand’s IK setup
Hand’s IK setup
Mirrored bones

Skinning and vertex weight

For the skinning process, I used the manual vertex value instead of the standard weight painting method. I prefer the manual method especially when the object has a low-poly state since I can choose and select the vertices easily. 

For me it is multiple time faster to skin this way where I can just select the vertices and enter the intended weight to quickly make them following which bone I want, compared to using weight painting brush where we keep painting again and again to get the correct values for each body parts. This manual method is especially very effective when dealing with very narrow areas such as fingers. Using weight paint in this area instead can be very painful when it painted the wrong surfaces since they are very close to each other.

If I want the vertices around the character’s chest to follow 100% to the upper spine bone for example, I can just set those vertices weight value to 1.0 to that bone, and set the vertices loop between the upper and lower spine to the value of 0.2 so that it will follow the upper spine for 20% to create soft and smooth bend. It’s very fast and I can get consistent weight for all sides.

Skinning using manual vertex weights values
Skinning and vertex weights
Skinning and vertex weights
Skinning and vertex weights
Pose test
Pose test

Horse Character: Modeling

After the crab character finished, I quickly worked on the horse character. The process was almost similar with the crab especially for the UV unwrap and rigging, so I will not described the process as detail as the crab character.

The last week version of the character

I started by reshaping the head and face to make it look more stylised.

Reshaping the eye and eyebrow
Reshaping the mouth area. I also made some adjustments to the overall topologies of the head
Polishing the body parts especially around the areas of the front and middle legs.
Hair with ‘Solidify’ modifier
New iteration
New iteration (head and face)

I think the horse’s face look a bit fierce so I made more adjustment to the face again to make the character look more friendly. I enlarged the eye made it more round.

The new friendly face

I also decided to reduce the number of hair on the character, and made the character to have a human-like hairstyle.

New hair!
The teeth
Modified bag from the crab character
Final model

Horse Character: UV and Texture

Marking the UV Seams
Texture nodes setup
Character with texture (render)

Horse Character: Rigging

I used the same techniques as the crab character including the IK and the manual vertex weight value for the skinning.

Basic bone setup
Facial bones
Hair’s bones
Mirrored bones
Leg’s IK setup
Foot’s IK setup

After using the manual vertex value method several times for both characters, the only thing that really annoying was it will not automatically normalize the weight value to the sum of 1.0 between multiple bones that shared the same vertices. So I will need to use the ‘Normalize All’ function every time I entered new value to the selected vertices so it will deduct and calculate the balance weight values to the other bones. If I forgot to ‘normalize’, multiple bones can effect the same vertices with the same maximum weight which can cause the shapes to not properly follow the intended bones.

I used the manual vertex weight value when skinning in 3dsmax as well, but 3dsmax will automatically normalize the value. I’m not sure if I can do the same in Blender but I cannot find the way yet, other than to use the ‘Normalize All’ function.

Skinning and vertex weights
Skinning and vertex weights
Skinning and vertex weights
Skinning and vertex weights
Skinning and vertex weights
Skinning and vertex weights
Pose test (face)
Pose test (body)

Finally, I managed to finished both characters including the texture and rigging this week, so I can start with the animation as soon as possible. I planned to finalise the story first next week.

Leave a Reply

Your email address will not be published. Required fields are marked *