Eggs Why Zed - Ulven's 3d Blog

Sausage fingersModelling

Posted by Ulven Thu, November 20, 2008 21:34:09

I've seen this a lot when working with both modellers and riggers and I hope this post will help overcome the problem of 'sausage fingers'. The problem is joint between the modelling and rigging process (see post 2 if you want to read further comments on why it is a useful combination) I've decided to show this in pictures as it is apparently worth a thousand words and I don't have time to write an essay :)

Although it might appear to the modeller rotating points that this model of a hand might work fine... The sub division will bend straight over the vertices, smoothing it much more than is desireable.

Let's start with looking at the flow. Exactly 3 edgeloops is required for each joint. No more, no less. Once their vertices are correctly in place, they will make up a perfectly bendable joint with good definition. If you use two, and you're clever, you can get very good definition too, but it might be difficult to get the bump in with this amount of detail. Five or more is very superfluous while four is acceptable (although only if each line contributes greatly to definition like modelling the full inset in great detail, in which case five might be acceptable too). Remember that extra wrinkles can be done in Zbrush or some other displacement/bump map program. Move the vertices slighly apart at the bottom of the finger, so that when it starts collapsing, they will have further to go befor they overlap, this goes for ALL single rotation joints with subdivision regardless of number of edgeloops (knees, elbows etc should all be done the same way).

Another problem I often see on the modelling part is that the thumb has been modelled the same as the other fingers, and as an extrusion from where we see the thumb separate from the hand. This is not correct and will always bend wrong. The thumb bone has a pillow (as does the other fingers but their ones are more linked) and the polyflow should always reflect that.

As I was saying about the thumb starting within the hand, so does the other fingers. We have bones running up to them, which allows us to do things like cup our hands, and secondly, the first joint of the actual finger is INSIDE the palm, not at the edge where the finger separates from the others visually. This is an extremely common mistake and well worth noting.

The final 'trick' I will devulge is using 'T-bones', bones going across the joint of the finger, to hold the fleshy parts in place, and maintain volume. When you bend your finger it collapses only at the joints while the fleshy parts even expand a bit (you could add an expression to get this if you're a bit anal about it :) ) Remember leaving the vertices at the bottom slightly further apart than at the top? Now the T bones will help grab a hold of these more than they do at the top and therefore hold them tightly in place while the top still bends around the axis as it should

Thanks a lot for reading. Hope it helped someone with their wonky fingers.

Various worflow thoughtsAnimation

Posted by Ulven Wed, November 19, 2008 22:02:49

There's a lot of different workflows in animation. I want to talk a bit about the main ones and what they're good for and not so good for. First of all let me say that most animators tend to adopt at least one method and then personalize it, and although I won't say that one workflow is better than another, I can say what I find from my experience to be the pros and cons of each one. Most animators will know the basic concepts here and there might not be anything new, but hopefully some people will find something about it a bit interesting.

Do now/fix later vs. planning.
All animation should involve some planning but there is also something to be said for the trial and error approach of just making the keyframes and then deleting/moving/changing them as you see fit. It certainly helps you understand how and why things work in animation. The problem is that, especially for an inexperienced animator, you're going to make a lot of mistakes and it's going to be gradually more difficult to change your animation if something doesn't work, that could be spotted in a progressively more detailed planning process. Planning things well out can help a lot on the quality, but in many cases, with two equally experienced animators, the guy jumping in feet first and fixing things as he sees them, will complete the shot much quicker than the one planning it in great detail. In a heavily directed setting, with a lot of changes and contemplation, it will be the other way around.

Straight ahead: The favourite method of the do now/fix later animator. Possibly the quickest workflow from shot on desk to shot out the door IF the following three criteria are met: 1. You're a decent animator. 2. You know what you/the client/director wants. 3. There's minimal changes once you're done. "All" it involves is knowing how the animation should look like before you start :) No mean feat. But it works great in many circumstances. The motion is fluid. You create follow throughs and breakdowns as you go. In many cases the director/client/whatever have told me 'great job' after just a single pass through with this method. On the desk and out the door the same day. I recently started the lip synch/facial animation part of a 25 second acting shot using this method and it was complete just after lunch the same day, with the director commenting on how good the lip synch was! Now the other side of the coin is that had it not worked out, I would have had a lot of useless animation on my hands to clean up. And since the director/lead animator had no input other than the brief at the start, it could've ended up being quite a wasted bit of energy. Arguably, if you can work so much quicker this way than pose to pose that you could afford doing multiple attempts, or if the changes are small, it could work out fine. In the end, this method is most suitable for short time frame work with little or no changes needed. And it's a very suitable method for boshing shots out for things like kids tv as well as short and sweet animations. When I work freelance doing shots and ads and there is not neccessarily a director or lead animator to turn around to for opinion and direction, this is often my method of choice because I can burn through the shot at a quick pace and the client will have something 'complete' to address for the next day.

Pose to pose:  There are several slightly different approaches to this, but the main goal is to get a good sense of how the whole shot will be early on. Lay down the key/golden/storytelling poses first. Straight away both you or anyone else working on it can see what is working and what is not for the whole shot. Many use stepped keys for this so they can focus only on the poses. Once this is done, I tend to progress to finding out how long each main pose should be held for, by setting all my keys to linear and copying the pose for the entire hirearchy to a new frame in between it and the next pose, and after that, start creating breakdowns, accents etc in between each pose. 
The main benefit of this method is quite simply that it's possible to review what works and what doesn't very early on, before you lay in all that work of getting the motion looking nice. You can pass the shot to another animator quite easily, or he can work on a different character in the same scene, reacting to your key poses while you continiue to refine the motion. The main drawback with the method is that since you're not seeing exactly how your motion is going to be throughout the process, one typically finds oneself spending more time tweaking curves and working with the inbetweens, and overlaps, follow throughs etc are more difficult to get fluid (you can get a lot for free here in straight ahead animation). In the case of long form, heavily directed and/or multi animator shots this is definately the method of choice though, as the benefits most often far outweigh the drawbacks for these types of animation. 'Can we bring the character over to the left of the screen as he's doing that?' could be a killer question in straight ahead animation, but could be relatively easily spotted and changed early on in the process of pose to pose animation.

Rigging: Selection & ManipulationRigging

Posted by Ulven Thu, July 24, 2008 15:51:14

I'm going to look at the process of selection and manipulation in 3d rigs. The one thing one does the most times in animation is selecting an item and manipulating it on one or more axis. When multiplied up by the thousands of times we perform the action, we can see why a good rig/program will make it as efficient, intuitive and quick as possible to perform this action, while a bad rig/program will do the exact opposite.

The time it takes for your brain to focus your attention on a new item on a screen is close to linear to the distance the eyes have to travel to get there factored by the difficulty of the task.
To try it yourself, get out a stopclock (most mobile phones for instance will have this) or use an online one. (The benefit of using a regular one is that you can take the time with your off hand while clicking the target to get a more accurate time by including your hand to eye coordination with the mouse).

First, find the center S close to the center and then take the time to find the other S








The "Boris" rig from In the Boris rig from Jason Ryan Animation they use a classic example of an "off character selection control"

The benefit here is that the difficulty of the task is very low (your brain doesn't need to analyze the item very much, the controls are quite clearly positioned in an easy to read, 2d representation of the character. If you want, you can position your mouse over an item in the rig, and then check the time it takes to move your mouse over to the representation in the rig and click on it's coloured dot (zoom in on the image to full screen to get more accurate results). The time it takes would be factored a bit by what position the character is in the world view (identifying right and left, what limb it is, how small it is on screen etc). The relationship between distance in full screen (also try dual monitor if you've got one) and time taken should be quite linear.
The further your eyes travel, the longer it takes.
The main drawback of this is that your eyes and mouse will always travel at least a certain distance (off the world view and onto the character picking menu, then usually back to the item's manipulation control, selecting axis, then dragging). The total time for this will always be 'a bit high', but the variation in time taken will be very low, and you get a predictable time efficiency, even though it's quite a bit lower than what is ideal.

The most standard way of rigging is to have control objects, that are the key manipulation points of a character. They are typically positioned logically to what they control, directly on the character. You typically select them with a mouse click and then for instance select the axis of rotation and then drag to perform the rotation. This method is quite direct, as the attention of the brain only needs to shift to the item, click it, then shift to the axis, usually on the manipulator which will typically be on top of the item you have selected which is not that far away, then perform the dragging action. Compared to the item selection mode, this should be the quickest way, and in many cases, it is. As long as the control item in the world view is easily selectable, this is simply the quicker of the two methods to use. Of course though, there is a drawback. The more cluttered the control items become, the more difficult it gets to select the item. Let's say you have a foot complete with IK Toeball, IK Toe, Heel control and forward kinematics toe/toes. It can sometimes get quite hard to select the item you want (especially from some angles) and you get a lot more mis-clicks and efficiency goes down.

An example of a control objects rig where selection has become difficult

There is another, somewhat over looked method which is even faster though. Much faster. This method incorporates setup of controls so that they react by default the most likely way the user wants to manipulate them. This way the control can be set up to for instance, select an object and drag it on a certain few axis in the same go. This way, there's only one mouse click action, the mouse and attention only travels up to the initial control, and after that you're already manipulating. This is by default on any distance at least twice as fast as the other two. A good example of how this works can be found in this old rig test I did for these types of controls (the rigs I use are more refined, but this shows the principle very well) Another example of how this can be done is animate immediate in messiah:
Both of these techniques of click-n-drag control suffer the same drawback of possibly difficult selection as with normal control objects, and additionally the possibility that you would want to affect different axis than what is set up. However, both have the option to use the normal transformation controls as well and it's perfectly possible to combine them with the off character selection panel to add some help with selection in problematic cases.

So what's the difference of a few seconds? Why is this important? Well, when multiplied over the amount of times we actually perform this action of selection and manipulation the difference in efficiency of work is quite large. And the action we perform the most, is probably what we would want to be the most efficient. If you want to record how many mouse clicks you do per day, there's a program called workrave you can download for free here which records the amount of mouse clicks and the distance on the screen your mouse travels (seemingly slightly inaccurate for me). It also tells you when to take a break from the computer and has a couple of nice excersises so you're less likely to suffer from CT. (You want your work to be efficient, not health threatening).

Burning the candle on both endsBusiness

Posted by Ulven Tue, May 06, 2008 16:40:59

It's a bad idea, but sometimes you're so swamped with work that you're working for clients in the Europe at day time, then working for clients in the US at night time, and then Australia in 
the early morning hours, before you start the new day for the europeans.
It's important to take care that you have work and rest/fun in decent measures. At least that's what the veteran freelancers say, the ones that haven't gone mad yet.

Walker 2 Development

Posted by Ulven Fri, April 18, 2008 15:30:42

The walkcycle generator has been refined with better code to handle turns, side steps and autotiming.

3d KarmaOther

Posted by Ulven Thu, April 10, 2008 13:52:59

A lot of people have asked me where/how I get jobs as a freelancer.
Up until now, I have entirely been hired based on internet presence. Even though I didn't have a demo reel until a few months ago. How can that be? Well let me share a notion in which I fully believe and through my work have experienced to be completely true.

The basic concept
There's such a thing as what I will in lack of a better word call "3d Karma". I'll try to explain
what I mean by that in this post. The basic concept is that you try to help others as
best you can, when you can, and in return they will remember you and help you later if
they can. But it doesn't stop there. and this is why it feels a bit precievable as "karma" at
work. Third parties also like seeing helpful people guiding others and your "return" will
often come from someone else than the ones that you helped.

Another thing you can do is doing things that benefit the whole community, not just one person, a good example would be some free video tutorials, plugins, rigs and other content for anyone to use freely. Sharing "secret tricks" that you have up your sleeve will get you much more noticed than simply keeping that trick for your clients. The clients don't usually know if someone else around the globe knows how to do that thing too so it's usually less important to maintain monopoly of the skill than to get noticed by others.

The opposite
The opposite of helping others isn't critisizing their work, it is whining about yours. This is one of the most damaging to your 3d Karma. In a production setting, it lowers your work morale, as well as the work morale of those around you. It's easy to give in to whining and joining in, and if the director lets it slip, it will slowly erode the fun of the 3d work
for everyone and everyone will be loaded with negative energy when they're doing their
work. It's less productive as well as less fun to work in that setting.

Another major putoff is of course treating other artists badly either on public forums or during production. That's a sure fire way of getting a bad rep. Being a bad team worker
is of course also going to kill off any chance of a career in production no matter how good you are. Those are a given, and not really something to that need explaining further.

The bottom line
If you keep your 3d Karma in good favour, even with a lower level of skill you will often be more in demand than if your skill is higher and your 3d karma smells like rotten fish. And if your 3d karma is good and you are of equal skill, the competition is already settled. Selflessness in action is the key, the fact that it will benefit you later is consequential.

Specialised roles in 3d productionAnimation

Posted by Ulven Wed, April 09, 2008 20:26:49

I went to a lecture called "Digital Dreams" in Tate modern with Mike Milne, Director of Computer Animation, Framestore CFC, and although most of what he said was nice to hear about there was something that I find somewhat disagreeable with how the trend is in big 3d productions. It's something that I know is happening elsewhere as well and Pixar has openly said that this is how they approach it. What I find myself disagreeing with is the peaked specialisations of roles in the computer animation industry.

Essentially what it is, is that the bigger the production, the more specialized each artist tends to be. There are modellers, grouped by soft and hard body (at framestore they actually do the creature models in clay and do a 3d scan but I'm talking generally here), and to some extent now also zbrush sculptors as a specialized role. Character animators is another specialization (that there seems to be a lot of competition for as well), and some have other types of animators (technical animators for instance, and camera animators). Texture painting artists are often seperated out as well or may sometimes be combined with lighting TDs, sometimes with modellers. All of the above tend to be taken from an art course background, and there's especially focus on animator's not having to be technically competent with 3d skills.

Technical directors tend to be taken from a computer science background, require extensive experience in programming, but need only a basic understanding of motion.

All of this, seem to many to mean the death of the generalist role. People find what they're interested in early on and are adviced to focus on that alone. Now although I would agree that in this day and age you need to be somewhat specialized, essentially "have a lot of points in one of your skills", I think it's a bad thing if it becomes so specialized that all any one artist can build is the The Leaning Tower of Pisa and no one can build the Pyramids. 
To explain my analogy, what I think is important is that the skills we aquire through our education and careers are built with a solid foundation in the understanding of every aspect of 3d, then gradually specialized rather than focused entirely in one point from the start. Yes, this takes a while to do. It takes longer to get higher, but it is for sure a more sturdy building approach.

Let me take a practical example, the modeller-rigger. Modelling is a lot about understanding volume and shaping from your imagination (even with reference pictures, they don't usually show everything). Some topology knowledge is usually required, but more and more, people are wanting to be freed from such restrictions that are placed by traditional topology (all quads is a typical restriction for modellers that want to output to messiah for instance). I can understand that one as a modeller would want to free oneself from restrictions so that one can "just create, and not worry about complicated stuff". However it's much better to work WITH the process than try to work against it and have the process bend to suit you. 
A rigging aware modeller, can achieve a great control of shape, while at the same time decreasing the amount of time spent in rigging by making the topology in such a way that it will deform nicely regardless of extreme bends and squashing/stretching etc. 
The production as a whole saves time and money and can focus on more important bits.

Another practical example is the rigger-animator. Many traditionally trained TD often want to limit the animator so he can't break the rig, or rotate things so far that the deformation gets ugly. I've yet to meet a single animator that likes having limits placed on anything in the rig. The role of the rigger is to ENABLE motion control for the animator, not disable it. The kind of controls and how they should work, is far superior when created by someone who has a good understanding of how the controls are actually used, as well as how to set them up, than one that only knows how to set them up.

Then there is the animator-programmer. In general, tools that have been programmed by animator-programmers, rather than that of 'distanced' programmers, have a tendency to be more useful to animators, even though they are possibly of less complicated design and feature wise less packed. They have arisen from the direct need of the animator to do something in animation, and he makes it to suit his particular need in the way he wants to work with it. Getting this insight through imagination for the non animating programmer is a much more difficult task and often requires years of experience working with animators. We still need the pure programmers of course, what I'm saying is just that there is still a need for, and a great benefit in having animator-programmers, and other such hybrid, more generalist roles.

And as the dog chases it's tail, the programmer-lighter will use his skills in programming to enable new rendering technology and program shaders. Similarly an animator-lighter will use lighting to help convey the emotions of the animation rather than get hung up on technical details of the lighting (which, outside of the 3d world, people feel are less important anyway, as long as it looks good, none of my non-3d friends seem to care what technology made that surface look a bit peachy or how tight the radiosity shadow accuracy is). 

And of course to finish it off, the lighter-modeller will know best how to light his creations 
to make them look like he originally intended.

Generalists rejoice, there is use in you yet. I think the trick now though is to find the thing that you're good enough at to compete in with the specialists, sell yourself in on that skill alone in your demo-reel and perhaps show secondary and tertiary skills later on or in a seperate reel, or after you've got the job. What they need is a way of "slotting you in" to their system. After that, any secondary or tertiary skills you also posess is going to be what the marketing people call a 'delightful surprise' to whomever hired you, and will aid you in your job (yet a lot of the time not in getting the job in the first place). Smaller companies still highly appreciate a diverse skillset (so keep a seperate reel for them showing everything you can do) and as a freelancer you should have as many legs to stand on as possible, say yes to every job, and make sure you can outsource it to other freelancing friends of high quality if you have too much. It will come back to you later.


Posted by Ulven Wed, April 09, 2008 16:46:16

Our footsteps module for messiah, "Walker", should soon be ready for beta testing. It allows for the parametrisation of any walkcycle into a repeatable, resizable walkcycle that can be fitted to any character.
The walker will come with a few preset walks and a file in which you can create your own.
There are very few limitations on how the rig needs to be in order to use it and it will be able
to fit on anything from a rocket powered voodoo zombie to an undermotivated mouse. No guarantees that the same animation will look equally natural on both though.
You can see the development in phases from the first proof of concept to where it is now:

First "footsteps"

Repeating walkcycle with slidercontrols using only messiah expressions

First propper footsteps

Footstep test walking around a bend and up some stairs