Main | November 2007 »

October 30, 2007

Farms!

Something very useful that I've been able to work with here at ghost are render farms. All my past work has been done on a single computer with a single processor, so rendering had to be done overnight and sometimes for several days. A render farm is essentially a giant room full of processors, since rendering is so intensive and can take days for a scene, the more processors, the faster everything gets done. The main farm they have is a collection of 16 processors hooked up in a room. The funny thing is we just got in a dual quad-core mac (yup, 8 processors), which by itself is as fast as the entire farm. If I do more contract work for smaller companies I'm going to need to build a small cheap farm myself and using ghost's has taught me some valuable lessons and problems to avoid. We had a lot of problems with different renderers on the farm, especially mental ray. My biggest lesson was to never build a farm mixing PC and MAC processors. It's only asking for trouble. Macs and PCs have slightly different byte orders, naming conventions, and ways of processing information. Since I've always worked on P's and the software availability is far superior, I'm going to be sticking with PCs.

Since I always attach an image, here's a picture of a server farm, weeee.
ss22.jpg

October 24, 2007

The organization of art

It's only fair to give some credit to the headaches that doing 3d creates. It is the biggest downfall of the medium, that is, the ridiculous technical complexities we have to battle to get things to work they way we want. Linking objects together through the heirarchy of the scene has been one of the biggest problems to deal with in this particular scene I'm doing. Just 1 object has so many inputs and outputs it starts to jar my mind. Half of my problems sound something like this.. how do I rotate the end cup of a tool to match a lifting heart without rotating the tool, yet match the beating of a heart and follow a wire pulling on it. My head usually explodes halfway through that, but the key thing for me to learn is how ot organize my scene to work both for me and someone who may open and edit the scene later.

The first image shows the heirarchy of just the objects the scene I'm working on. It doesn't look too bad, but it's still a pain to sift through. The second shows some of the connections I've created for just a single object. The third image is where the insanity comes in. It's the same view as the second image, only containing every single object in the scene and zoomed out about twenty times. Every single line controls another attribute in the scene, and represents everything I did when building the animation. To give a better idea of the headache this can cause, this is actually only a 10th of the entire network. If I zoomed out any further, the lines would just become solid blocks of color.

Now the last image is something I've developed at ghost, that is, organizing my my entire scene in Maya's outliner window so the everything is much more user friendly and manageable. This will save me a lot of trouble when I'm trying to find a specific object or connection, and will hopefully be much easier for someone else to use if they wish to edit my scene in the future.


More tools, more setup.

Some more final versions of the solidworks tools arrived and most of my time was spent correctly positioning them. The spline setup in my last post was used to create the two tubes now connected to the instruments. Each spline allows the tubes to be both stuck to the tool, stuck to a fixed point just off camera, and bend accordingly. It's kind of a easier way of faking a dynamics simulation.


October 21, 2007

Splines, Splines, and more Splines

Hands down, the most time consuming part of the heart surgery animation is the Splines. Anytime there is a tube or wire in a scene that needs to somehow bend, a spline is going to be the best bet. You could always hand animate every point of the geometry of a three dimension tube, but you'd be animating perhaps over 10,000 points by hand. Since this just plain isn't feasible, a technique called spline-handles is used to make the job much simpler. In my case, I have a tube inside another tube that has to bend and catch another piece of metal. This piece is then pulled through the heart. the Part of the tube through the heart has to stay in the place, while the rest bends to follow a tool that is pulling the tube out the other end of the heart. To accomplish this, I had to imply several different methods on top of each other.

Here's the way it starts out: I have a cylindrical tube made of over 10,000 polygons, called the "mesh", modeled in a rigid straight shape. Since animating each of these polygons would take the next 10 years, I have to create a chain of "joint" or "bone" deformers. Each bone is linked to each other, just like a skeleton, and deforms a small portion of the polygon mesh. I still have over a hundred bones controlling each tube though and hand animating each one to follow a path would still take the better part of a year. So, to still have control over a skeleton, the bones are attached to a three dimensional curve. Now I'm at a place where I can realistically animate this tube. The bones are stacked end to end on this curve in a chain, and rotate on their own to follow the direction of the curve. This technique of attaching a joint chain to a curve is called using a spline, or using a spline handle. Even though it's workable now, a curve may still consist of a dozen to a hundred animatable control points. To simply this again, I group the curve's control points that I wish to animate into a couple clusters. Now, all I have to do is move a couple clusters around the scene to make the tube bend and move in any way I can imagine. So far I have 9 seperate joint chains each on a spline, and 5 of these chains must completely align with each other at some point in the animation.



Mental Ray

One very important thing I'm learning by being at Ghost is how to use Mental Ray. It used to be a stand-alone render that has been recently incorporated into Maya. The rendering stage is a 3d program's final stage of converting everything in a scene into it's final pixel images. On the left side of the sceen is a skull textured and rendered with Maya's default renderer, and on the right is a skull rendered in Mental Ray. Mental Ray has amazing capabilities to simulate real light and materials. The skull has a technique called sub-surface scattering on it, which allows light to hit geometry and bounce around underneath the surface of an object before it is finally reflected back.

Unfortunetly, I'm probably not going to be able to use mental ray very much on the heart surgery animation I'm working on. While mental ray is a lot mroe powerful, the time it takes to render each frame can take considerably longer. Depending on how advanced a scene in, a single frame that may take a minute in the normal renderer might take over an hour with Mental Ray features on. Mental Ray also takes much longer to setup in a scene because it is far more complex and is much more likely to cause errors than the default renderer. Basically, since Mental Ray usually takes much longer to produce work, it costs more to use. This means most companies that are not concered withcinematic quality simply stay away from Mental Ray because they can't budget for it. On the up side, One of the programers at Ghost gave me a training DVD to study Mental Ray in much more depth. There are a lot of techniques which signiticantly reduce setup and render time, but it requires a lot of training and knowledge to use them all. This is essentially why some CGI artists specialize in rendering exclusively.


October 14, 2007

What's behind an image

One of the biggest things I've been learning from Ghost is how to composite. I've been having to learn how to build frames for compositors, so they can easily stich together animations. Now I got to do some comping myself.

Here's an image I built and deconstructed so you can see what goes into each frame, along with the final composite. For some scenes, it becomes quite a bit intenser when extra effects and transitions are stacking on top of each other.

What you're looking at it in the image, from top to bottom are as follows:
The first 3 top images are layers of the background. The first is the basic background pattern, while the other two are animated images laid over the top to give a slight sense of a liquid moving background.
The next image is a glass see-thru heart next to it's alpha layers. These alpha layers are black and white images used to mask off certain areas of each source image, so that each layer only shows up where its alpha is darkest.
The bottom image is our main heart, again with it's alpha as well.
The final image is an occlusion pass, used to find areas where objects cast shadows upon themselves.

Tools arrived

So I got all the Solidworks files, and imported them all into Maya. Most of the work was done making new textures to materials to match the real life tools, and sizing and parenting objects together so they work together. Here's some of the new screenshots.



October 7, 2007

Working with what I got.

Well the client hasn't given me all the solidworks models of the instruments yet. So while I'm waiting on them to keep going, I made a crude version of the instrument to understand how it is actually placed and how it fits into the body. These screenshots were sent off to get the position of the instrument approved before I work with the more details models.


October 2, 2007

New Project at Ghost

So I've started a new project with Ghost productions working on a new animation for a client. The project is to create an animation to show how an instrument is used to correct a deficient mitral valve in the human heart.

The guys at Ghost whipped up an animation last year for this same client on an earlier version of this tool, and I'm going to be working them to match the style but create something brand new. I've been provided with existing models from the old scene to work with, along with a lot of technical schematics on how the tool should theoretically work and a video of someone actually performing the surgery. I'm gonna post some screenshots of the some of the resources I have.

What I'm hoping to learn from this is mainly how to pickup and duplicate a pre-existing style and turn around and crank out an animation that looks as thought it was done by the original author. I'll have to pick some brains of the staff to understand how and why their style looks the way it does. I expect I will have to work very closely with compositors at ghost, since all the timing, animation, camera work and lights will be made from scratch. This will be great for me, both in learning how to to composite, and how to produce work that compositors can easily use. I'm also going to get a taste of working more closely with clients and their changing demands, since I'll be the chief person designing this animation.

Anyhoo, here's some screenshots to get me started,
they are some crude solidworks sketches of how the tool fits, Ghost's old animation of the previous tool, and some actual shots of the surgery taking place:


ss1.jpg