I first made Tomatina by starting to model hands attached to a normal sphere, my tutor told me that I needed to use a quad sphere for the sake of the topology.

I started again and chose to enhance Tomatina by extruding arms, legs, feet and fingers. This time I had the foresight to slice the sphere in half to then mirror it later, so the model is guaranteed to be symmetrical.

After mirroring I smoothed the mesh and added eyes, to make eyelashes I first tried scaling a cylinder to be pointy then bending them with the bend non-linear deformer to them manually place on the eye. However this was very time consuming and I couldn’t space out the individual lashes equally. I then decided to select vertices on the sphere, to them chamfer and extrude from them, this worked really well and ensured the lash spacing was equal.

I tried a lot of different ways to do the lips, I started making some realistic ones, but in the end I decided to be true to my original design and opted for some cartoon-like ones. I got a pipe then added edges, selected vertices, and manipulated them into the shape of lips. The big challenge was attaching the lips to the character, as in the end the lips were straight, not curved – which they needed to be if there were to fit round Tomatina. I first used the bend tool, which didn’t work, then the shrink-wrap tool which didn’t work with the distance threshold

Even when I changed it to ‘closest if no intersection it didn’t work’


I then thought to go to the cloth simulator and see if it would help. I smoothed the lips to give them some real geometry, made them an ncloth, then made Tomatina a passive collider. I gave the lips a burlap preset and changed the gravity direction to +X rather than -Y, which would make it fall to the floor and not onto Tomatina.

At first there was some collision distance, I learnt that when we put a collider on something, as a default it’s not going to match the object’s skin exactly, there will be some space as a buffer around the object. To get around this I turned the collision thickness down to zero but I got clipping problems, so I changed it to 0.01. I then changed the playback speed in my preferences to ‘play every frame’ as a remembered that the physics would work best when calculated frame by frame. I also changed ‘max payback speed’ to 24 fps so if there’s processing left over, it will be capped off at 24 fps as otherwise the process would speed through the timeline too fast.
I then deleted the history of the lips to destroy the residual cloth physics and deleted all the ncloth things from my outliner.

When it comes to rigging, I am aware that traditionally, we are to begin at the pelvis bone because it is the root joint, and everything emanates from there. This is something that I am familiar with. First, I performed an x-ray on the model and masked the lips and hair in case they came in the way of the planned centring interpolation. I also masked the hair in case it got in the way of the predicted centring interpolation. When I reached the foot, I decided not to put a joint in the bend in the foot as my character because she is wearing high heels, which would be stiff, meaning that there would be no need for a heel roll. When I started rigging my character normally, by making new joints and parenting them, I reached the foot and decided not to put a joint in the bend in the foot as my character because she is wearing high heels. I made an effort to position myself as precisely as possible so that the skinning process would go off without a hitch. I was aware that rays would be shot at each vertex to determine which aspects of the mesh are to be controlled the most and the least, so I wanted to make sure that my positioning was as precise as it could be.
As soon as I rigged the first leg of my character, I started thinking more about the character’s adaptability. I realised that having my character bend her back would not look natural and “tomato-like” if it contorted, so I moved the pelvic joint up to have one bone right in the centre of the model and started a joint chain on the arm.
I named it and then made a copy of it, but then I noticed that I had already made a copy of the root in the middle of the rig. After that, I realised that I would need to pick each joint separately before making another copy of it.
I then began the process of inverse kinematics such that when I moved a single end joint, the complete chain would also move along with it. I started by making an IK handle, and then I chose the hand joint and the shoulder joint so that the IK constraint would go up the arm. As I attempted to move the arm, I became aware that its joint was situated too far forward, which caused the elbow to bend in the incorrect direction when I bent it. As a result, I unparented the elbow joint from the shoulder and hand on both sides, then used shift selection to move both elbow joints back slightly before reparenting them. After moving the chain once more, I noticed that the elbow was moving all over the place. As a result, I made the decision to add a second constraint or pole vector in order to regulate the direction in which the elbow is pointing. Because the pole vector and the join chain got too close together the first time I tried it, the join chain inverted itself to point at the locator. To accomplish this, I used a locator as the signpost and placed it in the joint. After that, I pulled it back so that there was some distance between the pole vector and the join chain. After that, I limited the pole vector and the IK, and the elbow began moving in a more regulated manner; as a result, it was closer to the way an elbow would be pointed in real life. After that, I came to the conclusion that the bones had, for some unknown cause, become displaced. The pole vector was to blame for this problem. After that, the pole vector and the chain’s handle were limited, and the pole vector was adjusted downward in order to align the fingers.
After that, I began to work on moving the finger joints to make them appear more natural. To do this, I first unparented the joints at the fingers, and then I lifted the centre joints so that the IKs could flex. I began by adding IK handles to the fingers, then after that, I added pole vectors to the IK handles themselves.
After that came the part where you add the animation controls. I decided to use a circle as the controller for turning her hips and head, so I made one and attached it to the central joint in the main body of the character. I paused the changes, produced a copy of it, then rotated and sacredd it. After that, I snapped it to a shoulder and made the main body controller its parent. I repeated those steps with a second circle in order to construct the controller for the wrist. As a visual representation of the hierarchy, I made the shoulder controller significantly larger than the wrist controller.
During the process of attaching an animation controller to the thumb, I came to the realisation that I should have modelled it so that it was parallel to the fingers and the direction the body was facing. This is because when I freeze objects, the pivot reverts to the world’s base, but the thumb was sticking out at a 45 degree angle. I turned the controller to try to match the direction that the thumb was pointing, and then I pushed control g to make a null object. This was my attempt to get around the problem. Then, I parented the null to the wrist, and then I parented the left thumb to the null. Finally, I snapped the empty null object to the thumb, rotated it so that it aligned with the controller, and parented the null to the wrist. Because of this, when I froze the transformations of the thumb, the axis arrows remained relative to one another. This is because freezing transformations causes the object to orient itself relative to its parent. In the event that there is no parent, it will be aligned with the global axis.
After that, I chose the wrist controller, followed by the IK handle wrist, and then I went to confine the wrist. I then went on to complete it for the fingers by recreating the same process with the finger controllers and IK handles and choosing the constrain > point option each time. After that, I attached the IK handles for the fingers to the wrists of the respective hands. After selecting the controllers and then the wrist to constrain>orient, I switched on’maintain offset.’ I then followed the process with the other animation controllers, for example, selecting a parent constraint for the main body controller. This allowed the wrist to spin correctly. After selecting the controllers, I first created a group and then cloned that group. Next, I went to the channel box and typed -1 into the box labeled’scale z.’ This allowed me to copy the controllers across to the opposite side of the body.
After I had finished skinning and weight painting my character, I ran into issues with the rig, as it kept detaching from my character and causing me frustration. The first three times this occurred, I unparented the character, repositioned the joints, then reparented and skinned it. However, after this kept happening, I realised there was only so much I could do to fix it.


Another troubling thing happened that I was unable to resolve. When I would bend Tomatina’s legs the slightest bit, her main body would be effected, looking like she was ripped when rendered. This was very confusing to me, as I had weight painted each leg to what I thought was a reasonably high standard.



I had no clue what was going on, and despite my best efforts couldn’t fix it, as google had no answers.