Sunday, 18 April 2010

The Rotation Problem

As homework, the group were asked to watch a video on http://www.guerrillacg.org/ about the “rotation problem”. I had never heard of this before and was intrigued to know what it was and what implications this problem had on animating in 3D, as well as any possible solutions to get around the rotation problem.

The video started off by identifying the two main different ways of calculating rotation within computer software, Euler and Quaternion.
Euler calculates it’s rotation in degrees on the three axis, where as Quaternion calculates it’s rotation with four values, the first three are position values of a vector direction (numbers on the grid) and one roll value.

The rotation problem only occurs within the Euler type of rotation. It happens when the rotation gimbal locks, two rotation axis align and by doing so affectively reduce the number of axis from three to two. This is problematic when animating within three dimensional space and only having two movable axis. When animating with Gimbal Lock, the computer works out that to get from one key frame to another, it has to move in the wrong direction to enable the two aligned rotation axis to separate.

A good analogy would be if a man were sitting with his arms crossed and someone threw a ball for him to catch. The most efficient way for him to catch the ball would be to move his arms directly toward the oncoming ball. However as his arms are tied up in this theoretical Gimbal Lock, so the man has to move his arms away from each other and the ball so they are uncrossed, this allows his arms to be able to move in the direction of the ball to catch it.

This rotation problem sounds enough for an animator to use the Quaternion way of animating rotation. However, Quaternion animation doesn’t have animation cures and Euler animation does, so it is usually more beneficial to animate in Euler, especially organic motion.

Saturday, 17 April 2010

Introduction to Rigging in Maya

The first thing the group looked at was a video from the website http://www.guerrillacg.org/ which is a great website for learning the fundamentals of 3D software.

The first video we viewed was on hierarchy basics. A hierarchy of two or more objects controls the rotation scale and position (also called transforms) of said objects. A hierarchy is like a chain of command or relationship between a parent and a child. The terminology of parent and child is used to describe the hierarchy of objects in Maya. The “parent” object controls the “child” object, the child is free to rotate, scale and position themselves in 3D space with no consequence to the parent. When the parent object rotates, moves or scales, the child object duplicates the same transforms in 3D space.

The video also explained about grouping under a null. A null is usually a cross, box or grid and is used for several things, marking a position for multiple objects to transform from, storing rendering information and be used to label a group of objects. This is useful when animating several things that have multiple objects. A null is not seen after rendering.

On the video, an analogy used to explain the relationship within a multiple object hierarchy was a fruit bowl on a table, which is on a rug. If the rug is moved, the table and fruit bowl move, if the table is moved the fruit bowl moves but the rug stays still and so on. While this analogy is useful, I feel that gravity acting upon the objects could get confusing.

I prefer the analogy of the tree, imagine a tree with branches and leaves, the tree is the parent, the braches are parented to the tree and the leaves are parented to the branch. Therefore, you could pick the leaves off a branch and move them independently. If you broke a branch off the tree, the leaves would move with the branch, and if you moved the tree, the braches and leaves would go with the tree.

One of the most vital things we learnt when modelling for animation was how to move the pivot point of an object, this is important because when grouped objects are animated, they take their transform information from the parent objects’ pivot point. When animating anything with more than one part, the pivot points need to be moved into the correct position (sometimes not even on the object) so that the objects animate properly.

Problems can occur because in the real world, objects that are attached to each other, move as if they are attached, but in the 3D world, objects can pass through each other with no consequences, the animator has to cheat physics to recreate it’s affects on the animated objects.

Introduction

In this blog I will be explaining the technical processes and contemporary theory of digital 3D. And explain my experience of rigging fundamentals and how a game ready asset was created.
There will also be technical and conceptual drawings to illiterate the process of the project.