This course represents the first-large scale attempt to identify and organize the common design patterns of computer graphics pipelines The course presenter is on a leave of absence from Pixar to write a book on this topic. A major section of the book takes a CoffeeCup asset from modeling and shading through set and level dressing through animation and lighting and finally to rendering.
The course uses the CoffeeCup approach and presents the pipeline diagrams and code snippets Along the way, a precise terminology and graphical vocabulary is developed. Also, rules for connecting patterns and tracing dependencies are derived from the graphs. Common terms that lack definition (or that are used sloppily) are defined: asset, publish, variant, representation, cache, bake, and so forth.
The course starts simply, with a few models (CoffeeCups) dressed in a set (Joes Diner) Then the course adds complexity in variation, multiple representations, more elaborate workflow contexts, and state caching, and proceeds to organizing all this complexity under asset management.
At each stage, there are choices: several possible patterns may apply Do we generate variants by object redefinition or by attribute grouping? Do we allow hierarchy in the definitions? What inline archives or other optimized representations are generated? How do we keep those in sync? Which of those are subscribed to by downstream processes? There are no right answers, just differing approaches requiring different design patterns.
Pipeline novices will appreciate a look under the hood Pipeline experts will come away with a new insight and vocabulary for describing the things they already know and do.