Tuesday, August 11, 2009

#0023 CG pipelines defined

{{Potd/2006-11-13 (en)}}
   Defining the   
Computer Graphics Pipeline   

Before we move into an in-depth examination of CG production pipelines, let 's clarify our definition of a pipeline.  In parts 1 to 4 of this series, we deconstructed the pipeline and looked at what it is not and the characteristics that define a CG pipeline.

In preparing this series, drawn mostly from my own experience, I made a survey of available documents on the internet and found very few discussions about CG pipelines, other than a plethora of want ads for supervisors capable of defining, constructing and maintaining CG production pipelines.  I did come across a masters thesis by Dane Edward Bettis, written in 2005, that attempted to define the CG production pipeline, describe the need for CG production pipelines, and provided examples of operating pipelines and a brief methodology for designing a CG production pipeline.  His paper, "Digital production pipelines: examining structures and methods in the computer effects industry", published online through Texas A&M University, looks at CG production pipelines from the point of view of companies making fully animated 3d films.  It is an interesting academic look at our industry.

Mr. Bettis seeks to define for his audience what a Digital Production Pipeline is, and  offers us this; I offer it as an academicians point of view:
A digital production pipeline must, by definition, utilize digital computing hardware and software to facilitate human work and collaboration for the overarching purpose of producing content for film. A digital production pipeline is not defined by its structure; its structure is merely a manifestation of its influences. Ideally, chief among these influences should be the needs of the film, the values of the studio, the strengths of their manpower, and the software/hardware legacy of the studio. 
A digital production pipeline is not a permanent structure, but rather a malleable set of components which can be arranged, configured, and adapted into new structures as needed. These malleable components are  human groups with assigned task domains and computer systems to support them. The human groups are normally referred to as departments or teams. The digital systems are operating systems, software tools and applications, networks, processors, and storage. The digital production pipeline is the synergy of these two types of components into adaptable systems and structures for the purpose of producing a film.

 The pipeline concept can be thought of as a malleable Lego constructor set, in which even the pieces themselves may be pulled apart, merged, interchanged, or replaced. The structure resulting from these components, flexible and dynamic in its operation, can be understood as a unique expression of the production situation that it was created in. And ideally the pipeline should be a conscious, practical and efficient response to the situation that birthed it.

Now, allow me to point out a few ideas which you will see echo the points I have made in the first four articles.   
First, Mr. Bettis talks about the influences that will effect the structure of a digital production pipeline.  He lists these as 1) the needs of the film [let's say CG project]; 2) the values of the studio; 3) the strength of the manpower and 4) the software/hardware legacy of the studio.  This echos what I said about the form following the function and being defined by the available resources.  I will combine labor and software/hardware as resources and will replace "values of the studio" with the broader idea expressed in the term company culture, a very powerful determinant in how a pipeline is structured.
He also talks about the malleable components, and identifies two: human groups and computer systems.  In conversations with associates I've referred to this malleability as the ability to construct "ad hoc" pipelines.  The malleability provides a flexibility toward changing needs, again reflecting that form will follow function, and given the right underlying structure and well managed and prepared workers, can be rapidly implemented.
I see three dimensions where Bettis identifies two components, human groups and computer systems: personnel, tools and procedure.  (Bettis calls these three "layers" and uses similar but different labels for the three.  His paper does a good job of describing these three "layers" and how one goes about building a pipeline by addressing each of these three dimensions.)

A CG pipeline comprised of one or two dimensions will not get the job done; it takes all three dimensions to form a CG pipeline. Personnel without effective tools will be less productive and possibly unproductive; personnel using tools without any coordinating policies and procedures may get work done, but again productive efficiency will be harmed.  For example, an artist using software lacking necessary functionality will either be unable to achieve the desired effect or will be forced to develop a work-around.  An artist with a broken machine is unable to work at all.  Likewise, an artist who has no knowledge of production specifications may turn in unusable work.  These are simplistic, extreme examples, but they illustrate the idea.
Further, the effective strength and malleability of each dimension of the pipeline determines how well a pipeline will function and how easily it can be adapted to new needs.  How a CG supervisor manages these three dimensions of the pipeline is a key to its success.

One final point:  Mr. Betttis is looking at production pipelines.  In addition, we will be looking at the data or materials pipeline as well as the direction or approval pipeline.  While some may see these as integral to the production pipeline, I view these as parallel yet separate pipelines, for several reasons.

First, while all three are desirable, not all three need to be implemented as pipelines to get the work done.  Instead of a materials pipeline, a small shop may merely have an intake workflow and a delivery workflow, with no intermediate collection and control of assets.   Or perhaps the approval process and materials are pipelined but because of the nature of the work and the resources, the CG work is handled by individuals with their own workflows and no central production pipeline.  Likewise, the approval process could be very flat, with all approvals being run through one person.  Again, these are unusual scenarios, but because they are possible and because it allows us to study each class of pipelines separately, I see them as separate classes of pipelines.

Second, the personnel in each of these three classes will differ.  While there will be many points of contact between the three classes of CG pipelines, and there will be some common personnel, there are differences.  For example, there should be no coordinators in a production pipeline.  Coordinators are not production personnel.  However, coordinators should form the bulk of the workers in a materials pipeline.  Likewise, there will be few supervisors in a production pipeline, and these will be the lower level supervisors who are actually not functioning as supervisors when working within the pipeline.  They are hands-on, part of the crew, and in the U.S., this should not comprise more than 50% of a supervisor's time.  But all supervisors will be involved in the approval pipeline.

Third, the tools required in the three classes of pipelines will  be different.  A production pipeline will use graphics software and utilities to help glue them together, and may interface with the materials pipeline through an asset management system.  A materials pipeline may employ an asset management software solution or use basic filesystems and structural conventions to keep things organized.  A materials pipeline will also employ some sort of logging and documentation system to keep track of what comes in, goes out, and hopefully what we have.  Likewise, an approval pipeline will have its own set of software solutions, which could include various collaboration tools, project management software, spreadsheets, databases, etc.

Fourth each class of pipeline will have a unique set of policies and procedures governing how the personnel use the tools, coordinate their work, and keep the pipeline flowing.
A Functional Description of CG Pipelines
Having looked at the CG pipeline now in parts 1 to 5 of this series, I offer this functional description of a CG pipeline:
  1. A CG pipeline belongs to one of three classes: 
    1. production  (task)            primary
    2. material      (data)           secondary
    3. approval     (meta-data)   tertiary
  2. A CG pipeline is comprised of three structural dimensions: 
    1. personnel
    2. tools 
    3. procedure
  3. A CG pipeline utilizes technology but is not the technology
  4. A CG pipeline divides a workflow into separate and meaningful tasks assigned to two or more persons
  5. A CG pipeline tasks divisions are determined using a tree of specialization across the three dimensions
  6. The CG pipeline structural form is dictated by 
    1. the functional mission,
    2. resources available and 
    3. company culture
  7.  A CG pipeline is malleable
We can now begin to explore in detail each class of pipeline within the context of this description.

Happy Renders to you!
 Bettis, Dane Edward "Digital production pipelines: examining structures and methods in the computer effects industry", Texas A&M University, http://txspace.tamu.edu/handle/1969.1/2406?show=full, 2005; A useful examination of the digital pipeline with specific examples of pipeline structures.

Reblog this post [with Zemanta]