Animate A Cartoon Fox [Animal and Creature Animation - Unit01]
Cartoon Fox Hop!
12/02/24
Right - time to get things back on track! Given my confusion on what I should be doing being rectified I’d finished my 3d Scene project and I’m into the main module - starting with the first task! I spent a little bit of time sorting out my Trello Kansan board to get things more organised. After watching the lecturers and theory slides I’d planned to do a basic hop and then explore a short performance - similar to what I did with bouncy ball. However, the main task appeared to be the overlapping action of a simple hop so I later re-organised my board to keep this as a stretch goal. I split these into 2 cards to start getting a feeling of completion moving forward. I also then added the other two tasks that I also hadn’t started yet to the board into my backlog to help visualise my workload.
I am feeling very behind at the moment which is causing me some stress, however, now that I understand this is the main module and that 1 task will be added a week my main focus is to get back to the point I am back on track and there is only 1 task to focus on each week! My plan for this week was to use my free day (Monday) to get ‘Unit 01 - Cartoon Fox Hop’ complete and make a start on ‘Unit 02 - Quadruped Walk’. I’d then use my evenings after work to make progress through the Quadruped Walk and have both projects written up by the end of the week (Friday 16th). I could then use the weekend to complete ‘Unit 03 - Quadruped Trot’ by which point another task will be released. I then have a week off work from 19th - 23rd February which will give me uninterrupted time to complete ‘Unit 04 - Quadruped Run’ and ‘Unit 05 - Animate a Spider in Motion’. This should put me back on track!
There are a couple of stretch goals I’ve identified that I do plan to come back to, however, my focus at the moment is to get caught up and I can leave these till later! Below shows my reorganised and current Kanban board with the focus on completing Unit 01 - Cartoon Fox Hop!
I split the task into a few smaller tasks which would output some variety in animations with minimal effort.
Initially the rig can in with a black tail. I knew that the tail was a Nurbs Surface based on the videos I’d watched that taught this module. I also knew that you could reverse poly directions and assumed you could do the same with Nurbs. I checked out the surfaces tab and saw the reverse function at the bottom and - Voila! It was fixed! The issue was on the regular ball as well as the “Fox” alternate skin as shown below.
I grabbed the thumbnails from the Bouncing Ball with Tail - Theory Video (2017) as reference - particularly for the tail. I work with my iPad in front of me with this blog open to capture progress so it is a good way for me to refer back to these key studies. I’ve used the Animator’s Survival Kit religiously with human animations so I understood the value of good reference. I did tend to skip drawing thumbnails when I was in industry and I think it’s something I should explore more of to strengthen my creative pipeline and get things feeling more alive. I have ProCreate Dreams which is a great little tool for creating quick animatics so later on in the course I’d like to make more use of this! However, for now I had this reference and it was all I needed to get going!
Initial Bounce
I thought I’d kick things off with the motion of the main mass and get this animating nicely. Essentially with have a sentient bouncy ball here - a bouncy ball that’s capable of squashing down as anticipation and propelling itself upward into a jump. I focused on getting a nice loop working - I set all curves to pre & post infinity as cycle to get a nice loop happening. There were a few key things I was doing for this animation that I’ll detail below with images of key poses and important curves in the graph editor.
Firstly I wanted a nice slight hang in the air. This was easy enough to achieve through breaking the tangents on the translate Y curve and tilting the tangents upward toward the peak of the jump. This creates a few frames where there is little to no increase in Y value which gives it that hang. The brief was to create a cartoon fox hop so I thought this emphasised the cartoon nature of this hop. I later went on to increase the height of the jump slightly and tweak the corresponding handles. You will also notice a few frames where the fox is stuck to the ground - this was to allow for the squash and stretch to take place! I was happy with the translate Y curve as it achieved my goals and the motion felt reflective of this cartoon-like animation I wanted to achieve!
To make this feel a little more sentient than a bouncy ball I wanted some tilt to happen so that the fox was rotating upwards as it launched into the air and then rotated downward as it pushed it’s weight forward for the landing. You can see that in this rotate X curve below. This felt good as it looked like it was transferring its weight throughout the animation. I later reflected that I could have actually offset these curves from the translate Y to create a bit of overlapping action across these two action which could have looked a little more natural. However, I did exaggerate the amount of rotation later in the process that helped make the fox feel a little more alive.
I had some pretty standard squash and stretch going on - typical to that of a bouncy ball. I played around with the timing and spacing of key frames to get the squash fluidly occurring in a natural way until I was happy. The timing did take a little bit to get just right, however, the biggest factor here was breaking the tangent on the landing squash so that I could make a sharp down. This continued the sharp down speed I created on the main mass (shown and discussed above on translate y) which made the full motion of the character flow together much stronger. We have a slightly smoother stretch out and settle as it returned to its natural shape - I made sure these curves were smooth. I was really happy with how this came out - initially it felt a little jerky but this shows how focusing on one element at a time and refining the motion using the graph editor can really support your full motion. You just need to take into consideration all motion to help these curves all work together - something that isn’t too difficult with a rig that has so few controls like this one!
Overall, this provided a strong base for the animation and I was now at a point to move on. I was happy that the main mass felt alive and believable so I would turn my focus and attention toward the tail. The tail will be affected by the main mass’s motion, however, it will follow through and overlap the main mass. The only slight difference here is that tail’s have a skeletal structure and muscles meaning that they can be controlled by their owner. In this scenario I was going to keep things simple but hopefully get some nice flicking of the tail, successive breaking of joints and generally overlapping action that stayed true to the thumbnails I was following.
Initial Tail Animation
I started by following the thumbnails to set the key poses that would create the base animation. I was going to use the same frame numbers initially and then I’ve experiment with the graph editor to refine the motion and ensure it was smooth in addition to offsetting frames along the joints to get that successive breaking of joints I knew would look appealing.
The below images show the key poses of the tail. When the mass is heading up, the tail is heading down and when the mass is heading down the tail is heading up. This was all controlled through a simple rotate X. It’s a bit strange that I’ve spent so long working in 2D and I’m still working in 2D even though it’s a 3D animation! My stretch goal for animating a performance of this little rig would explore the other axis a little more but for the time being I wanted to focus on the core motion of this and not over complicate things I as have a habit of.
This animation pass focusing on the tail I would say was successful! The overlapping action was clear and the tail gives this little fox so much personality. The timing I’d used was fairly snappy and this combined that rotation on the main mass I discussed earlier was giving this character a fairly joyous ‘hoppy’ feeling. I was happy with this hop as the main animation was almost realised and it was achieving the goals I set out to in the beginning. The next step was to experiment with offsetting the individual tail joints so that they weren’t all rotating in sync with one another. I really love this successive breaking of joints as it often makes things feel less robotic and more natural which is pleasing to the eye. The animation was looking pretty natural with the tail’s main motion overlapped with the main mass, however, I knew this would take it to the next level and improve the overall visual quality of charm to this animation!
Successive Breaking of Joints
My typical process to offset the frames is to grab them and move them along, however, the issue with this is that you can end up with some dead space where there are no frames at the beginning and then your final frames exceed the length of your loop. You can overcome this by keying at the end of your loop, copying that to the beginning and altering the tangents in the graph editor to smooth out the motion. However, I accidentally learned a better way of doing this on this animation. Because I’d set up pre/post infinity - I didn’t actually need to do anything to those keys as they looped before and after with the cycle! If I needed to export this to a game engine it would also be fine as I’d have been able to run a key frame bake across the loop frame range and it’d be baked in for the export! This was super fun to play around with as I could freely offset and adjust the key frames knowing that the infinity would handle the cycling loop for me.
Below you can see the offsetting of the tail joints so that they happen one after another with a spacing of 1 frame. This was all it needed to get the tail feeling looser and less robotic; if you add too much spacing then you begin to lose your key poses you set out in the beginning.
You can see the spacing of the key frames below to achieve this offset. It can start to really complicate your timeline therefore you need to be very aware of what you’ve done and only focus on the transforms you’ve animated on specific controls - rather than viewing it as a full animation. It is worth noting that this is a process you would do towards the end of an animation due to these reasons of over complicating your timeline. It is worth it for the quality, however, can make it more difficult to correct key poses if you didn’t get them right initially. This is exactly the reason why I wanted to work in these animation passes and secure quality before moving on. It’s kinda like an ice sculpture that you’re slowly chipping away at and adding detail - you can’t add these beautiful details until you’ve blocked those major forms in. It’s exactly the same with animation!
I was extremely happy with this outcome. You can see in the two play lasts that the tail is feeling a lot looser which makes it feel more natural. This was my goal from the beginning and I knew it’d add that level of quality to this simple animation and right now, being behind schedule, I was all about quality over quantity! I really love how there is a little bit of weight to the bounce and you can almost feel that impact of the main mass hitting the ground causing the tail to whip downwards.
Exaggeration and Appeal
I wanted to add some finishing bits of polish and final touches to accentuate this character’s animation and get the tail feeling ‘alive’. I wanted it to look like the tail was being moved and controlled by the creature in addition to being affected by the main mass. To do this I wanted to make it so that not every rotation angle on the tail joints was the same. This is a common problem when grabbing multiple controls and manipulating them at the same time as you are mathematically keeping them the same and anything mathematically the same doesn’t make engaging animation!
So my plan was to vary the rotation X values on the tail joints by giving greater values to those towards the end and tighter values to those closer to the main mass. The parts near the main mass would be more controlled with the muscles that hold this into place whereas the further you get away for this anchor point we should see more rotation as it is less easily controlled by the muscles and should appear more floppy. This should not only make this more realistic but give it a little bit of character - especially if I exaggerated the amount I increased rotate X values exponentially.
Below shows a much more curved key pose to this tail and also the curves that achieved this effect. This was to be my final animation pass for this jump as well as a general quality pass to ensure there was no intersection of the tail with the ground. I was getting a little bit of intersection of the tail and ground due to altering a range of values, however, I increased the jump height as mentioned earlier which actually helped with the springy, joyous nature of this little, happy fox! You can see the results of my final tweaks in the outcomes below!
Final Outcomes
I’ve included a few angles of this final jump loop and some examples with some mock up lighting. The side angle allows you to clearly see the animation, whilst the perspective angle appears a little more natural in it’s presentation.
These refinements to the animation made a huge difference! The tail had a natural curl to it, which in my opinion gives it the impression of the fox curling it in addition to the follow through of the main action. This makes it feel very alive and gives the impression that this tail is part of the main mass. I particularly like the little whip on the end point of the tail - It flips over at the top and then whips round in an arced fashion to the down position. As I’ve used the successive breaking of joints I have overlapping action happening within the tail in addition to the overlapping action of the tail to the main body. The little hang in the air I achieved on the main mass allows the tail to whip underneath the main mass before it curls back up and flicks over head. I feel these points really achieve that quality of cartoon charm I was aiming for at the beginning of this project.
Basic Lighting Setup
I chose not to render this in the interest of time - it could always be rendered later! The animation motion itself would appear the same regardless and this didn’t seem a good use of time at this point. To get around this I tweaked the view port settings with a few lights to get a higher quality playblast. I was using SSAA to improve the visual quality and make the edges less jagged. Then my 3 point lighting set up using simple directional lights with shadows enables on the main light and SSAO kept the character feeling grounded with shadows. One thing I love about 3 point lighting is the rim light that back light creates - this helps catch the silhouette of the character to help the animation stand out!
The lighting set up does improve the final presentation in lieu of a render and helps enhance the 3d forms - almost like improving the use of solid drawing / solid poses to make the poses more readable! This was definitely a good use of time as I already had the knowledge on 3 point lighting theory and it didn’t take very long to do!
Modifying the Animation : Moving Forward
Whilst I did want to create a performance animation for this character I thought I’d just experiment with the infinity cycle looping and translation to have this character hopping along the path using my existing animation. I've got a slight pause on moving forward for translate Z to keep the hops grounded. When I first did this without it, it felt way too floaty so this helped each hop ‘land’ with a bit more weight. I’ve then altered the pre and post infinity to cycle with offset to keep the character moving forward rather than just looping.
I’ve exaggerated the x rotation of the main body a little more to help create some squirrel like arcs happen as this little character hops through the scene. I mentioned earlier I could have experimented with offsetting this curve which might have added a little more overlapping action, however, I feel this would be a minor tweak. The curves below show this X rotation - it isn’t completely uniform to vary the timing which gives it a little bit of overlap in itself!
The forward motion helps improve this animation and turn it from a cycle into a simple sequence of a fox hopping through the scene. I’m happy with the happy, joyous nature to this hoppy fox. This is further emphasised by the exaggerated, whipping tail. I did think it is perhaps a bit too exaggerated the amount this tail rotates and I could have experimented with reducing this, however, I feel I would have made it look more stiff. The more exaggerated tail I feel is more reflective of my initial goals.
This has been a good mini project where I have experimented with overlapping action in a range of ways highlighted throughout this post. I’ve learnt a bit more about pre/post infinity of curves to control a loop - this is a technique I will use again in the future, particularly when making loops for games. The way infinity allows you to offset keys is very powerful and I hadn’t even considered doing this previously!
The end quality of this animation is good and achieves the learning outcomes (Listed below). I’ve definitely explored overlapping action and progressive breaking of joints to create a floppy, happy tail that overlaps the main mass. I’ve achieved a cartoon-like animation style through the joyous, happy appeal I’ve tried to convey through the character’s animation. However, if I can catch up on this module’s tasks I would love to revisit this rig to create a performance animation and tell a little bit more of a story (More on what I would do below).
Learning Outcomes :
- Flexibility and Overlapping Action Essentials: Delve into the foundational principles of flexibility and overlapping action in animation. Understand how these elements contribute to the fluidity and expressiveness of character movement, breathing life into your animated creations.
- Introduction to the Ultimate Tailed Rig: Familiarise yourself with the "Ultimate Tailed" Rig, a specialized resource crafted to enhance your understanding and application of flexibility and overlapping action in animation.
- Cartoony Animation Techniques: Explore techniques to infuse a touch of whimsy into your animations. Understand how to leverage the cartoony nature of the Ultimate Tailed Rig to create lively and entertaining tail animations that resonate with charm and character.
- Hands-on Tutorial – Fox Tail Animation: A step-by-step tutorial that guides you through the process of animating a fox's tail using the Ultimate Tailed Rig in Maya. Learn how to apply flexibility and overlapping action principles to create fun and expressive animations.
Below you can see the final Trello card all ticked off. I’m glad I separated out the stretch goal to animate a small performance with this rig as I would have felt like I made less progress and it did feel really good moving this Unit 01 card to the ‘Done’ column! This aligns with Kanban principals to visualise the work load and reduce the number of task in progress. I also need to make sure that I don’t get carried away and going off on tangents and instead focus on achieving quality outcomes linked to the core task - particularly as I am still behind!
Stretch Goal : Performance Sequence
The night before I started this Unit my mind was racing with ideas for what I would do to complete this unit. I did have to tell myself that I would focus on the core task and allow myself to progress to the other units, before I came back to this stretch goal. This was especially true as this wasn’t in the learning outcomes directly and the task seemed to be to focus on the hop and the overlapping action of the tail - so that is what I did as I’ve described in this blog post.
If I do get the time I would like to explore the following performance sequence :
- Bounce in from screen left
- Approach a kids plastic slide
- Sniff slide
- Happy spin hop
- Squash down
- Bounce and whip up into the air along the steps of the slide
- Hang in air above the slide slightly
- Make contact with the slide continuing the previous arced path
- Slide down
- Flyo off the end of the slide into the air
- Flip into a ‘present’ pose - hanging in the air slightly
- Falling down to the ground again with a couple of bounces
- Happy spin hop
- Bounce off the screen right to create a loop in the animation
I’ve rearranged the Trello board to move this into the backlog and recognise this as a stretch goal. This will enable me to move onto Unit 02 - Quadruped Walk and continue my plan of catching up. I completed this unit 01 project in about half a day which puts me bang on track with the project management plan I set out at the beginning and hope to be fully caught up in the next week! I am really looking forward to this because then I will be in sync with new content that is getting added and it will allow me to explore some of the stretch goals I want to set myself. It’s a little bit of a horrible feeling at the moment knowing that I’ve been working hard to push myself but realising I’ve been putting that effort into the wrong/less important places!
Below shows the Trello card and breakdown of the process I plan to follow if I get the time to undertake this mini project. I estimate this would take around a day to complete.
Reference List
- Bouncing Ball with Tail - Theory Video (2017) YouTube video, added by Alexander Williams [Online]. Available at Bouncing Ball with Tail - Theory Video - YouTube [Accessed 27 March 2024].
Comments
Post a Comment