DreamWorks Feature Linux and Animation

Robin explains the process and benefits of making animated movies with Linux.

With more than 200 Linux desktops and
400 Linux servers, DreamWorks SKG is not only a leading producer of
animated motion pictures but a major user of Linux as well.
DreamWorks animation utilizes three production pipelines: Aardman
in Bristol, England (Chicken Run),
PDI/DreamWorks in Palo Alto, California
(Shrek, Antz) and
DreamWorks traditional animation in Glendale, California
(The Road to El Dorado, The Prince
of Egypt). Each production unit has its own animation
techniques. Aardman is recognized for claymation, PDI/DreamWorks
for CG (computer graphics) and DreamWorks in Glendale for
traditional techniques.

We visited the Glendale studio where the major animated
motion picture, Spirit, Stallion of the
Cimarron is in production. Spirit,
the story of a wild mustang's adventures in the untamed American
West, is due for domestic release in the summer of 2002.

Some wonder how Linux will dislodge Windows on the desktop
because leading desktop applications such as Microsoft Office
(Word, Excel and Access) aren't there. But, if you are a motion
picture animator most of your everyday tools are already available
on Linux, and the number being ported or even produced specifically
for Linux is increasing at a remarkable rate.

DreamWorks has followed three paths to Linux: new
development, porting and third-party-vendor porting. Head of
technology Ed Leonard says, “To dramatically reduce costs was one
of the big motivating factors in moving animators to Linux. But, it
is our animators' productivity that really counts. Telling the
story well, not the underlying technology, is what matters to us.”
Using Linux saves time for the animators because Linux PC
performance is so much faster than the five-year-old computers
being replaced, even though those SGI IRIX workstations were
awesome machines. Leonard adds, “Microsoft software continues to
play a key role in our overall business, but Linux is particularly
well suited to animation production pipelines.”

An animator's desktop is not the same machine that an
executive or secretary would have. The animator needs a
high-performance workstation with a dual-head, high-performance
graphics system and specialized software for motion picture
production. To typical computer users, the animator's software
tools may be unfamiliar. Let's walk through the DreamWorks
production cycle and see how Linux is used (see Table 1).

An animated feature film starts with a story idea. Production
takes two years. In the preproduction phase called visual
development (vizdev) many different forms of art, including oil
paintings, are created to capture the essence and look of the film.
Some works of art go beyond the general level of detail and realism
that will be in the finished film.

Similar in appearance to a comic book, a storyboard is
sketched by hand on paper to help visualize key production shots.
Then, an animatic movie is created by artists using custom plugins
in Alias|Wavefront's 3-D animation package Maya. Although lacking
the quality of finished animation, the animatic shows the context
for the scene, the camera view and helps with character
development. Using the animatic, the production staff can visualize
parts of the film in motion before it enters production. None of
this preproduction content will make it into the film. It is used
as a guide for producing the real film later.

Scene planning determines the characters, backgrounds and
effects to be built. Animation, backgrounds and effects are
separate departments. The pieces will be brought together later
using compositing software.

For character animation, a scan of a paper sketch is done
using ToonShooter. Production software lead Derek Chan explains,
“ToonShooter is an internal tool we wrote for Linux. It captures
low resolution 640 × 480 line art that the artists use to
time the film.” Created more than a year ago, this Linux capture
stand software is deployed in three animation departments. Chan
says, “Demand was keen for this Linux software, and we delivered
it ahead of schedule. DreamWorks has 60 units in production
now.”

ToonShooter Screenshot

ToonSketch lets artists do quick copystand-style work without
paper or scanner. Senior software engineer Nhi Casey demonstrates,
“We sketch on the Wacom tablet like we would on a piece of paper.
It's fast and has unlimited undo.” Head of software Jim Mainard
adds, “You can do ghosting to see frames before and after. That's
easier for animators to work with than paper that bunches up.”
Utilizing ghosting, the animator traces, or is guided by, adjacent
frames.

Nhi Casey, Senior Software Engineer

To maintain the look of traditional cel animation, DreamWorks
will hand-draw the foreground characters. The scanning department
uses large auto-feed scanners to capture each hand-drawn frame in
high-resolution (2k pixels wide) format. For Prince of
Egypt they handled more than a million pieces of
paper.

ScanLevel, an IRIX-based application, saves the image into a
proprietary compressed raster format. Mainard says a switch to a
Linux version of this software is anticipated later this year once
a driver for the scanner is finished. ProcessLevels, a suite of
proprietary Linux-based tools, performs contrast enhancement to
take out the color of the paper, that is, drive the background to
white and darken line art. It also automatically takes out skew and
optical distortion.

Digital InkAndPaint takes the scanned line drawings and adds
color. Star painter Tina Staples demonstrates her skill with
InkAndPaint, an internal Linux application. It works a bit like the
GIMP or Photoshop but is specialized for all sorts of bucket fill
image operations. Leonard jokes that it's a bit like paint by
numbers on steroids. Tina is so fast at painting a frame we had to
ask her to slow way down so we could follow what she was doing.
Tina exclaims, “We go so fast now! Using Linux has doubled my
speed, and we're meeting our quotas each week.”

Tina Staples, Star Painter

InkAndPaint Screenshot

InkAndPaint does autofill by region, has touchup tools and
automated tweens. “Automation breaks down as scenes progress”,
says Mainard. “A good operator is needed to color areas where
several lines intersect.” If that isn't done right you see a
crawly effect from the color changing at the intersection points
frame to frame. “Color where lines come together is hard to
automate, but we hope to do more development with autofill”, says
Mainard. “Tina is so fast with InkAndPaint it almost doesn't
matter.”

InkAndPaint replaced dual-head Octane workstations with Linux
PCs. The left monitor is used for painting, while the right monitor
shows the markup guide. Leonard points out that they overcame a lot
of Linux graphics issues early, such as overlay planes, to get
snappy screen performance. That (and the work on the Wacom tablet
drivers) has been given back to the Open Source community.

Most backgrounds are drawn 2-D by hand using either
traditional tools, such as oil paint, or digital tools such as
Macintosh Photoshop. Background drawings can be quite large.
Mainard says, “In Prince of Egypt some were
six to eight feet wide.” ScanBackground, an IRIX-based program,
digitizes those through a 36“ Tangent scanner. Scanning algorithms
stitch the large backgrounds back together.

Backgrounds that need to exhibit perspective changes are
created in 3-D using Maya. Colors may be projection textures
(texture maps) or paint. For 3-D paint DreamWorks was using Studio
Paint, another Alias|Wavefront product. But, they are switching to
wpaint, a proprietary Linux
application developed at PDI/DreamWorks.

The special effects department creates organic effects such
as dust, fire, fluids, smoke and particles. Senior software
engineer for advanced R&D future films Galen Gornowicz has been
developing technology for an unannounced animated motion picture
for a year. “I've been working on developing an ocean scene that
renders in real time. There are proprietary systems that can do
this, but we're running a plugin on top of Maya”, says Gornowicz.
The productivity gain in Linux is a big plus. “With the old
systems we would go to lunch when rendering something like this.
And, the water models were executed at the command line, not
interactive like this”, he points out.

Gornowicz says, “We use Maya for effects plus a whole host
of plugins such as Calypso water developed for Linux.” DreamWorks
found that the water in Calypso was too photo-realistic, too much
like the movie The Perfect Storm. Gornowicz is
working to modify the water's look to match the movie's vizdev
images. Developing a Maya plugin involves writing a MEL script for
simple effects or using C/C++ for a more complex or
high-performance plugin. When using a compiled plugin, an
interpreted MEL script (sort of like JavaScript) is used to create
a menu choice and hook the plugin into Maya. Any function may be
called by the MEL script. A plugin has no main().

Rendering, producing an image of a computer-generated object,
may be done locally on the user's workstation or on the DreamWorks
renderfarm. The renderfarm accepts jobs in queue or as a priority
render on three refrigerator-sized SGI Origin 2000 servers (with
8-16 CPUs).

SGI Renderfarm

Linux Renderfarm

At PDI/DreamWorks the renderfarm used for
Shrek has a 1,000+ processors, 80% Linux and
20% IRIX. Even before acquiring PDI, DreamWorks in Glendale was
rendering using Linux. They have older Origin 200 servers running
IRIX but are switching to much cheaper Pentium computers. The
Glendale renderfarm is half the size of the one at PDI/DreamWorks
because traditional animation is less CPU-intensive than CG. VA
Linux provided Glendale's first Linux render computers that proved
Intel PCs capable. DreamWorks is building a new render tower made
up of dual 1GHz P3 2GB RAM computers housed in a 1RU (1.75”)
package stacked 41 units high. This refrigerator-sized unit is
replacing computers consuming 40-50 feet of data center rack
space.

The compositing department puts all the pieces together: the
characters, the backgrounds and the special effects. They also do
matting of foreground objects, for example where a character is
standing partly behind a rock. Mainard explains, “DreamWorks uses
a heavily modified version of Director, which was originally
developed by Cambridge Animation. This software is similar to
Shake, a popular commercial compositing software package, but has
been modified for use with X-sheets.” An X-sheet is a frame-timing
list and how animators traditionally prefer to work. All of
DreamWorks tools are modified to support X-sheets. Director also
has special support for rendering InkAndPaint levels at the right
resolution with correct anti-aliasing.

Artists mostly work at quarter resolution with 1k wide
images. For feature release the final rendering is done at 2k, or
for IMAX release at 3k or 4k. The final render outputs the frames
as TIFF files to the output server that passes them to Cineon
Lightening film recorder serial number 1. The laser film recorder
prints at a rate of about 3fps for 16-bit per channel 2K frames.
Mainard says, “Once a sequence is complete we film out that with a
series of Perl scripts that prepare data for the film recorder.
Processed film comes back as color dailies, typically every
day.”

“Linux works great for games, but porting from rich graphics
APIs of SGI takes time”, says Leonard. “HP, IBM and SGI have
responded with good Linux solutions for us.” Leonard says Dell
also “gets it” and will be expanding more into Linux. Asked why
we saw no AMD CPUs Leonard says, “Linux on Intel provides a strong
and consistent platform for the high-end workstation market across
several vendors. That's why we're not pursuing things like Linux on
Alpha, FreeBSD or proprietary UNIX solutions.” Leonard adds, “HP
has great Linux support. We were getting two patches a day from
these guys.” Instead of maintenance contracts, DreamWorks now buys
inexpensive spare PCs. Leonard says that “disposable rendering”
will enable DreamWorks to replace desktops and the renderfarm every
two years instead of five.

DreamWorks uses both internally developed programs tailored
to the needs of their animation production and commercially
available animation software. DreamWorks has three million lines of
code internally, most of which was originally developed for the SGI
IRIX operating system. Linux is much more similar to IRIX than
Windows, and consequently, is much easier for porting such large
masses of code. Linux Maya (to be reviewed here next month) is a
commercial software package that plays a large role in their
production.

Each DreamWorks animation pipeline (Aardman, PDI/DreamWorks,
DreamWorks traditional) has the capacity to produce a major
animated motion picture every 18 to 24 months. Thanks to the
economics of Linux, a fourth CG production pipeline is being
constructed at DreamWorks in Glendale. Entering production early
next year, the new pipeline will be based entirely on Linux using
Intel IA-64 and Pentium4 processors. We can look forward to more
films like Shrek and
Spirit being powered by Linux, and to more
amazing animation from DreamWorks SKG.

Robin
Rowe is a partner in MovieEditor.com, a technology
company that creates internet and broadcast video applications. He
has written for Dr. Dobb's Journal, the C++
Report, the C/C++ Users Journal and
Data Based Advisor. His software designs
include a client/server video editing system in use at a Manhattan
24-hour broadcast television news station, Time Warner New York One
and associated web site
http://www.ny1.com/. You
can reach him at robin.rowe@movieeditor.com.

3D Studio Max is not publicaly available for and linux OS because to say linux OS is a very broad comment.

As of now there are over 300 different linux distributions. A distribution is a linux "bundle". These bundles are specially designed to do what ever you want. That is why linux software is distributed in the form of source code. This source code is compiled on your linux distro and therefor is fitted like a glove to your machine.

The reason they don't have 3D Studio Max for ;inux is because they don't want to release their source code, as this it cost money and they don't want to give away their secrets.

But for big compainies like DreamWorks SKG I'm sure that Autodesk would be more than willing to sell them a working linux version (source code).

So the short version is:
3DS Max for linux is for big developers only.

There are many ways to get 3D Studio Max working on Linux,
WINE is almost like an emulator just like VMWARE. Which will emulate Microsoft. Meaning you can run All of your fancy Microsoft software on LINUX*

That is not entirely true.
Many softwares come nowadays in binary form for Linux. There are commercial softwares that run on Linux and don't have they're source code open to the public.
Three examples that come to my mind: Adobe's Flash Player, Opera browser and Java Virtual Machines.
That means that if AutoDesk really wants to release 3D Studio for Linux, they can, and they don't risk losing any of their "secrets".
Cassiano

Maya is what dreamworks use, Maya unlimited v6.0 is very expensive, you could buy it to learn it, but it's so expensive that the chances of you being put off by it's difficulty outweigh any good stuff.

If you really want to learn Maya, I would advise going to university, I think it was Brighton Uni that does courses in 3D Visualisation if your interested (and in the UK).

blender works great & there are lots of totorials & books to teach you everything you need to know. there are also video totorials. check out elephants dream. its a open source movie made with blender & a few other open source products. it has all the .blend files on the dvd