Steve Goes Fishing

COSC3P98 Graphics

Animation Final

Ethan Simms


Introduction

The webpage outlines a report on the creation of Steve Goes Fishing. This is my final project for COSC3P98 Graphics. The project is an animation inspired by Minecraft and Minecraft Youtube music videos (https://www.youtube.com/watch?v=I-sH53vXP2A).

My goal for this project was to further my knowledge of animation and learn Blender.



Technical Information

Tools Used:

Animation Stats:


Shot Breakdown

This table outlines the shots this animation consists of before editing. This breakdown will include the shot number, shot name, length in frames, angle, and any other notes.

# Shot Name Length (frames) Angle Other
1 Steve's House 45 Aerial Drone -
2 Steve's Fishing Dock 45 Aerial Drone -
3 Fishes Roaming 135 Low Wide
  • Camera starts underwater
  • Fish enter roaming
  • Camera goes above water to frame bobber
  • Bobber flies in disturbing the fish
4 Steve Close-Up 185 Close-Up
  • Camera starts back from Steve
  • Steve finds a spot to sit
  • Steve rests
  • Steve starts to spot fish
  • Camera tracks into Steve's face
  • Steve looks shocked
5 Fish Closeup 75 Low Close-Up
  • Camera underwater framing bobber, fish, and Steve
  • Steve gets ready
  • Fish plays with bobber/hook
  • Fish tries to eat hook
  • Steve yanks on rod
  • Fish jerks up
6 Fish Flopping 125 Low Mid-Shot
  • Fish flops around

Environment

Creating the environment for this project was rather simple. The process to create the environment involved building a world in Minecraft and then loading it into an application to export it into a 3D file format.

I started this process by finding a suitable world seed with an environment that had a forest and a river. A forest is important as in this animation, only a portion of the world is being exported and trees will hide the edge of the world. I decided on the Minecraft seed 3230635667607345219, around the location (x y z) -1174 76 775. After finding the location, I began to build!

Here is a comparison before and after the build!

The next step after finalizing the build is to export it. I used an application called Mineways. Mineways is used for all sorts of applications from 3D printing to Animation. Mineways is easy to use, all I had to do was select the world, find my build, outline it, and click export.

Here is the viewport in Mineways.

After exporting the world as a 3D object, we must now import it into Blender. Again, this process is also simple, all done through their import window. Upon first importing the world there were some issues with the alpha values on textures, which I solved by changing the alpha blending mode to Alpha-Clip on most materials.

Lighting played a big role in making this scene feel good. I first applied a solid light blueish color to the sky, choosing to forgo a texture. This created some ambient lighting. Next was to apply sunlight, this allowed for shadows and a brighter lighting setting. Finally, I had some in-world torches that looked odd not glowing. I applied an area light to make them feel real.

Here is the viewport in Blender with the world.


The Rigs

An important aspect of my success with this animation relied on the usability of the character and fish rigs.

Steve's rig was set up with advanced features, IK for arms, IK for legs, gizmos for moving the upper and lower body, and full facial features.

Full Steve Rig.

Steve Arm Gizmo.

Steve Leg Gizmo.

Steve Facial Rig.

The second rig I used was the fish rig (technically one for the cod and one for salmon but they were similar). This rig was much less advanced and only had moveable bones.

Full Fish Rig.


Animating the Fish

I found animating the fish to be the most difficult task I had in this project. The biggest problem with animating a fish is that they are in water which is a completely different domain compared to animating a human on land.

A great example of the trouble I had with the fish is when the cod does a 90-degree turn. The best I could get it to feel is by making it look like the fish "drifts" (like a car) to try and capture the aerodynamics of water.

A still of the Cod turning.

Another strategy I tried to make the fish feel real was to play with rotating the whole model and not just the back portion of their body while they are swimming. This made it feel like they were trying to go fight/"back and forth" to stay in a straight line while moving.

Additionally, I also have a portion where the fish is out of the water on land. In that shot, the fish is fighting for its life struggling to breathe on land. I tried to capture this by making the fish propel itself upwards using both sides of their body to flip up in the air.

The fish propelling themself.

The curve of the height off the ground of the fish.

The first image shows how the fish is pushing their upper and lower body upwards, essentially creating enough momentum to propel itself into the air. The second image shows the height of the fish while it is jumping. The fish starts its animation at frame 520 but doesn't finish until frame 525. At 525 the fish transfers the momentum into their full body causing them to move up and then down. Notice how the curve is a parabola this is because the fish is in freefall as soon as it lifts off the ground.


Animating Steve

Unlike the fish, Steve felt much easier to animate. The dynamics of a human are much easier to visualize, and you can live-test your animations yourself by acting them out. If they feel off in real life, then they might feel off in the animation. I used this strategy while animating Steve, trying to capture the velocity of each body part properly to try and make him feel more life-like.

A still of Steve during the sit animation.

I found animating Steve during the fifth shot to be very enjoyable. As Steve is in the background in this shot, I got to watch the fish do its animation while animating the physics of Steve yanking on the rod. I got to see the timing in real-time for both the fish and Steve, if it felt off I knew it immediately. In this shot, I tried to capture the physics of an imaginary fishing line. A fishing line isn't fully straight but has a lot of slack, so pulling on it won't cause an immediate reaction at the bobber. Steve starts moving the rod at frame 470 but the bobber doesn't move until frame 480.

Frame 470 before the pull.

Frame 480 during the pull.

Frame 483 during the pull with the bobber yanked.


Outcomes

As stated in the introduction, my goal for this project was to further my knowledge of animation and learn Blender. Overall, I have achieved this. My biggest concern with learning Blender was their extensive use of keybinding. As I have prior experience with other 3D applications, I have grown accustomed to a certain control scheme and it can be frustrating learning another. I did extensive research on the Blender viewport and found many different ways to move around a scene, even finding a way to navigate how I am familiar with it! As for animation, I found myself enjoying the process of setting keyframes and modifying the curves to try and get the movement to look how I want it to look. Coming from a gaming background, I am very interested in taking this process and applying it to a single-character animation and getting it running around in Unity.


References and Usages

All IPs relating to Minecraft including Steve or any models, textures, and sounds, belong to the registered trademark of Mojang Synergies AB.
Steve rig: https://sites.google.com/view/boxscape-studios/downloads
Fish rig: https://sites.google.com/view/boxscape-studios/downloads
World Exporter: https://www.realtimerendering.com/erich/minecraft/public/mineways/
Bird Sound Effect from Pixabay
Fishing rod cast from https://www.youtube.com/watch?v=VPVDUHCjmUE
Water plop from https://www.youtube.com/watch?v=bCPKfDOYyOc
Fish flop sounds https://www.youtube.com/watch?v=iRKbxIUTsRY