throbber
ATI Exhibit 2017
`ARM LTD, et al. v. ATI Technologies ULC
`IPR2018-01148
`Page 1 of 516
`
`

`

`Ta Gd,
`
`7
`RenderMan" Companio
`A Programmer's Guide to Realistic Computer Graphics
`
`e
`Steve Upstill
`
`Pixar
`
`A
`WV ADDISON-WESLEY PUBLISHING COMPANY
`
`Reading, Massachusetts « Menlo Park, California « New York
`DonMills, Ontario + Wokingham, England + Amsterdam + Bonn
`Milan + Paris + Sydney * Singapore * Tokyo + Madrid » San juan
`
`
`
`|
`:
`
`|
`
`ATI Exhibit 2017, Page 2 of 516
`
`ATI Exhibit 2017, Page 2 of 516
`
`

`

`Library of Congress Cataloging-in-Publication Data
`
`Upstill, Steve.
`The RenderMan companion / Steve Upstill.
`p.
`cm.
`Bibliography: p.
`Includes index.
`ISBN 0-201-50868-0
`1. Computer graphics.
`T385.U67 1990
`006.6—dc20
`
`.
`I. Title.
`
`89-33853
`CIP
`
`The information in this book is furnished for informational use only, is subject to change
`without notice, and should not be construed as a commitment by Pixar. Pixar assumes no
`responsibility or liability for any errors or inaccuracies that may appear in this book.
`Pixar owns the copyrights in the RenderMan Interface, including the list of procedures
`which constitute the interface, and the RenderManspecification and manuals. These may
`not be‘copied without Pixar's permission.
`Pixar will enforce its copyrights and trademark rights. However, Pixar does not intend to
`exclude anyone from creating modeling systems that call the RenderMan Interface pro-
`cedures. Also, Pixar does not intend to exclude anyone from creating rendering systems that
`execute the RenderMan Interface, procedures, provided a separate written agreement is
`entered into with Pixar.
`.
`
`"Pixar gives permission for you to copy the RenderMan procedurecalls for writing modeling
`. programs that tise the RenderMan Interface. Any program that incorporates any of the
`RenderMan procedure calls must include the proper copyright notice on each program copy,
`as given in the RenderManInterface Specification, available from Pixar.
`A no-chargelicense iis available from Pixar for anyone who wishesto write a renderer that
`uses the PixarRenderMan procedurecalls. This license mustbe in writing.
`The trademark “RendérMan” should refér only to the scene description interface created
`by Pixar. Please consult that RenderMan Interface Specification, available from Pixar, 3240
`Kerner Blvd., San Rafael, CA 94901, (415) 258-8100, for information on proper andlimited
`use of the trademark.
`Many of the designations used by manufacturers and sellers to distinguish their products
`are claimed as trademarks. Whete those designations appear in this book, and Addison-
`Wesley or Pixar was awareof a trademarkclaim, the designations have been printedin initial
`capsorall caps.
`
`Reprinted with corrections July, 1992
`
`Copyright © 1990 by Pixar. RenderManis a registered trademark of Pixar. All rights
`reserved.
`
`Nopart of this publication may be reproduced, storedin a retrieval system, or transmitted,
`in any form or by any means, electronic, mechanical, photocopying, recording, or other-
`wise, without the prior written permission of the publisher. Printed in the United States of
`America. Published simultaneously in Canada.
`9 10 MA 97
`
`ATI Exhibit 2017, Page 3 of 516
`
`ATI Exhibit 2017, Page 3 of 516
`
`

`

`Preface
`
`Computers and humans have been struggling for almost thir-
`ty years to forge a new tool for visual creation. The ambitions
`of computer graphics practitioners have hurtled along with
`stunning improvements in imaging methods to the point to-
`day that realistic three-dimensional image synthesis is ready
`to take its place as a legitimate, rich medium forartistic expres-
`sion. The worldwide computer graphics research community
`has brought forth a host of powerful techniques all across the
`field, yielding a quality of realism that would have been too
`much to hope for twenty, or even ten, years ago. Increases in
`computer power have brought
`the machines to within the
`reach of ordinary mortals, and the quality of software for gen-
`erating images has improved in parallel. A field that began as
`a laboratory novelty and luxury is now ready to hand visual
`artists a mature technology for creating stunning three-dimen-
`sional images.
`The major remaining problem is familiar from other comput-
`ing, technologies: tying it all together and making it accessible
`to people. The RenderMan Interface provides that access. It is
`a method for describing the content of an image to a comput-
`er program in the kind of detail required to reach realistic lev-
`els of complexity and quality. The two key characteristics of
`the interface are its conceptual simplicity and its complete-
`ness. RenderMan is about access to realism; and this book is
`about access to RenderMan. Cover to cover, every image in
`this book was rendered by a computer using the RenderMan
`
`ATI Exhibit 2017, Page 4 of 516
`
`ATI Exhibit 2017, Page 4 of 516
`
`

`

`The capabilities provided by RenderMan span much of
`present-day computer graphics. It is not practical to cover that
`topic from the ground up in one book. The ideal reader brings
`the equivalent of an undergraduate course in computer graph-
`ics. He or she should, however, be able to survive armed only
`with a feeling for
`three-dimensional geometry, an intuition
`into the nature of light reflection and enough experience with
`computers
`to read a program. Each discussion includes
`enough background to use the corresponding features,
`leav-
`ing out non-essential
`information. There are also suggested
`readings for anyone who wants more background.
`
`Those who will benefit most from the book are programmers
`who can generate computer models in enough detail to pro-
`duce interesting imagery. The RenderMan Interface is meant
`to be challenged, to expand the limits of what can be imagined.
`with a computer.
`
`Structure of This Book
`
`This book is divided into four parts. The first part is intended
`mainly to define terms and break ground for the remainder.
`Chapter 1 discusses the roots of synthetic imagery in the be-
`havior of light, and how RenderMan in particular reflects
`that process. A series of example programs in Chapter 2 step
`the reader through a basic RenderMan program, introducing
`specific aspects of the interface as they arise. After these exam-
`ples, the key concepts of the interface can be drawn in more
`detail in Chapter3.
`
`After this introductory material, Parts II and III should beself-
`sufficient. They separately address the topics of shape and
`shading. Part II covers shape, the description of geometric con-
`tent in three dimensions, as well as the process of viewing
`that contentin an image.
`
`The ability to create interesting variations in shading is intro-
`duced :in Part II: lighting scenes as a whole, and controlling
`the reflective properties of objects in a scene. The fourth part
`describes
`the RenderMan facilities
`that are important
`for
`achieving the most powerful shading effects: the RenderMan
`
`iv
`
`Preface
`
`ATI Exhibit 2017, Page 5 of 516
`
`ATI Exhibit 2017, Page 5 of 516
`
`

`

`Shading Language. The shading language challenges the us-
`er’s imagination by providing nearly complete control over
`the ultimate appearanceof an image.
`
`The goal of this book is to help the reader make pictures. In
`the beginning, we set out the conceptual structures and terms
`embodied in the interface so that the actual routines and stan-
`dard methods make sense. That exposition begins with the
`broad. discussions of the introductory chapters and culminates
`in the Glossary of Technical Terms found at the end. Every
`term is highlighted in boldface when first discussed or signifi-
`cantly expanded, and is summarized in the Glossary.
`
`To: flesh out the conceptual material, there are program exam-
`ples at each point of discussion, beginning with the simplest.
`The examples should be useful for learning the interface and
`should serve as a modelfor writing other programs.
`
`Once the concepts are mastered and the examples assimilated,
`the book should serve as a useful reference to the functional-
`ity of the interface, so that the programmer can look back and
`quickly extract the information necessary for actually using a
`particular routine. Two features are provided for that pur-
`pose. When a given procedure is first discussed, its definition
`is set off in a box along with a terse description of the proce-
`dure’s parameters and,
`if appropriate, a figure illustrating
`their meanings. At the end of the book, Appendix D declares
`all procedures in alphabetical order,
`together with the page
`wherethe boxed declaration appears.
`
`Appendixes A and C are also useful references; Appendix A
`summarizes
`the structure of RenderMan for determining
`what routines are appropriate at which point in a program,
`and Appendix C reproduces a C headerfile, ri.h, which de-
`clares all RenderMan types, routines and constants. Almost
`any RenderManrenderer will havea similar 17.h.
`
`they are often
`Since this is a book about computer images,
`used to illustrate points and concepts. All of the raster imag-
`ery found in the book was computer-generated, sometimes
`with line art added using Adobe Illustrator. All the synthetic
`imagery used the RenderManInterface.
`
`Structure of This Book
`
`v
`
`ATI Exhibit 2017, Page 6 of 516
`
`ATI Exhibit 2017, Page 6 of 516
`
`

`

`Acknowledgments
`
`I would never have had the opportunity to write this book
`without the support of Pixar. It took a great leap of faith to put
`a work of this complexity into the hands of a first-time au-
`thor, and a great deal of patience to remain calm as the scope
`of it actually dawned on him. In particular, the manager of
`RenderMan, Mickey Mantle, was a steady, cheerful pillar in
`the face of inflating schedules and authorialstress.
`
`A book like this is like an enormous, open-book take-home
`quiz consisting of one essay question, in which the only ac-
`ceptable score is Perfect. Sooner or later you realize that there
`is no alternative but to cheat by calling on the help of others.
`My warmest thanks and heartiest gratitude go to those who
`stepped in to contribute major pieces of this work:
`
`Thanks to: my Alpha readers (Ken Fishkin, Rick Sayre, Alvy
`Ray Smith, Flip Phillips, Dana Batali) for their tolerance for
`half-baked prose; my technical reviewers (Tony Derose, Lin-
`coln Hu, Andy Hertzfeld and Andries Van Dam) for their tact;
`my Beta readers (Ed Catmull, Alvy Ray Smith, Tom Porter,
`Pat Hanrahan, Darwyn Peachey, Tony Apodaca and Jim Law-
`son at Pixar, and Peter Shieh and Ann Eldredge at Autodesk)
`for their thoroughness and immunity to repeated readings;
`Craig Good for the use of his Venice photograph; and of
`course to Krys, Andrea and Kimberly for understanding my
`frequent absencesfrom hometo work.
`
`The images rendered here would have had to await the sec-
`ondedition without
`the tools of the Animation Production
`Group at Pixar, In particular, Eben Ostby provided handhold-
`ing and bug fixes with a cheerful, unflappable patience, and
`Don Conway worked weekends scanning colorplates.
`
`Tom Deering and Fred Bunting bore the brunt of turning a
`large body of text into a finished book: Tom’s line art graces
`every chapter, and Fred had to condense hundreds of techni-
`cal terms into the Glossary. The two of them skillfully worked
`a pile of touchy software to greateffect, and Tom’s twins spent
`many Dadless weekends as a result. Nancy Tague’s consulta-
`tion on typography and layout was equally essential. Without
`
`vl
`
`Preface
`
`ATI Exhibit 2017, Page 7 of 516
`
`ATI Exhibit 2017, Page 7 of 516
`
`

`

`the sense of craft brought by Nancy, Tom and Fred, the finish
`on this project would have been much the worse.
`Tom Porter: spent many weeks with Pat Hanrahan on diplo-
`matic forays gathering industry input on the RenderMan In-
`terface. Tom’s contribution. didn’t stop there, however. He
`was alreadyavailable to pick up thankless tasks like managing
`the production of the color section and correcting images. His
`desk, has for years borne a worn, cracked, chipped bowling pin
`labelled “The Complexity. of Reality.” He made that complexi-
`ty a reality fer.the cover itnage, dubbed “Textbook Strike,” as-
`sembling the power of RenderMan to make what I believe to
`be the second most convincing synthetic image ever pro-
`duced. The greatest. of thanks to him and to Flip Phillips, who
`animated the bowlingpins.
`The entire RenderMan. teain at Pixar contributed to this book
`either directly, by pitching in, or indirectly, by clearing space
`for others to help out. This is the first publicly available fruit
`of their effort, and I only hope it is a faithful reflection of their
`capability and dedication.
`The RerderMan Mafia, Tony Apodaca, Darwyn Peachey arid
`Jim Lawson, took their microscopes to.a whole series of penul-
`timate drafts of the manuscript, ferreting out errors and tak-
`ing thé time in the midst of hectic implementation to nail
`down dozens of details at the fringes of the specification. They
`also responded immediately to bug reports when the images
`were in production.
`Mike Malione shouldered the job of collecting a set of useful,
`pedagogically iriteresting shaders and making them present-
`able in Chapter 16. The results are a credit to his care andskill.
`Malcolm Blanchard developed the shaders
`for
`the office
`scene, pencils arid guitar in the color plates, and he wasal-
`ways available and cheerful to pick up pieces of work, render
`pictures, instantly read one more penultimate draft or make a
`program useful, correct or interesting.
`Finally, I am in many ways only a ghost writer for the archi-
`tect ofthe RenderMan Interface, Pat Hanrahan. Not only did
`he sally forth on dozens of missions to hammer out a coher-
`ent design. Not only did he bring his own clarity of thought
`and sense of purpose to maintaining order in the face of po-
`
`Acknowledgments
`
`vii
`
`ATI Exhibit 2017, Page 8 of 516
`
`ATI Exhibit 2017, Page 8 of 516
`
`

`

`tential chaos. Not only did he read more drafts of this book
`than anyoneelse, and in more exhaustive detail. Not only did
`his comments clarify the text consistently. But his determina-
`tion to make this a useful, cogent, accessible description of
`RenderMan kept me going two drafts after my own motiva-
`tion had worn to the nub. Those two drafts madeall the differ-
`ence in the finished product.
`This book is affectionately dedicated to Pat. His contribution
`to Pixar will long befelt.
`
`.
`
`Further Reading
`
`For playing catch-up before beginning this book,there are two
`widely-used general texts in the computer graphics field. New-
`man and Sproull’s Principles of Interactive Computer Graphics
`[NEWMAN79] has been. a standard for almostfifteen years. It
`covers much more than three-dimensional
`raster graphics,
`and as a result its coverage of that topic may be too broad for
`the current reader. Foley & Van Dam’s Fundamentals of Interac-
`tive Computer Graphics [FOLEY82] is more recent, and has con-
`comitantly more emphasis on raster graphics. The upcoming
`second edition promises to be exhaustive. Either of these texts
`would be useful to readers who skip around intelligently. Less
`well-known, but no less useful, is Roger’s Procedural Elements
`of Computer Graphics [ROGERSS85].
`At a more sophisticated level, computer graphics is a fast-
`moving field, and a. substantial amount of its work is found
`in academic papers. The yearly proceedings of the Association
`for’ Computing Machinery’s Special Interest Group in Com-
`puter Graphics (SIGGRAPH)are the venue of choice for lead-
`ing research, along with the ACM’s Transactions on Graphics.
`They form a rich source of advanced information. A good col-
`lection of papers from SIGGRAPH and other sources is John
`Beatty and Kelly Booth’s
`‘Tutorial: Computer Graphics”
`[BEATTY82], published by the Institute of Electrical and Elec-
`tronic Engineers.
`.
`
`viii
`
`’ Preface
`
`ATI Exhibit 2017, Page 9 of 516
`
`ATI Exhibit 2017, Page 9 of 516
`
`

`

`
`
`| Table of Contents
`
`
`
`Preface oon ecccccscccessssesessssssssseeessssnsssvesscssssssseeessssssneeseeesssnnnesetee
`
`tii
`
`FOPOWOTK nn... esesseesseeeecsssssssenececsssssnnsesssssssnnsscsnnsnnneeenecnenneesss
`
`xv
`
`1
`The Image-Rendering World .........0........ccceeccceceeeeeee
`' Making Pictures in the Real World .........ccs 2
`Synthetic Rendering: How Computers DoIt... een
`5
`Modeling vs. Rendering.......sccssssnietsenes
`11
`
`Whatis RenderMan?ou... ccesecccsssesssaeesesseseeenerenesseeneesess
`412
`WhatRenderMan Offers ......csessssssesseesseenserseessssensereresreeess
`14
`
`Getting Started cesseccccesssessseesessssseseeeeeeeeseeseeensssoneeevese
`
`A Basic Program...
`Controlling the Picture...
`A More Complex ODjeCt.......scecesssseeesseessensesssssssessseeneenenes
`Combining Objects...........00
`
`A Simple Animation...............
`we
`vee
`
`SUMIMALY o..scsssccerseceeeesseneseaneseanesgesseeeeseseassesuecenecesecaneneenneneaney
`
`The Structure of a RenderMan Program.....................
`RenderMan Procedures....ssscssssesscscrsnssesesrerscsrsssesersecsennes
`Data TYPes ...scteeseteeeeeees
`vee
`ese
`Graphics State...ccc
`Program Structure: BIOCKS......scsessesseecsesegeesssssseeeereessaenes
`
`
`
`17
`17
`20
`23
`29
`33
`34
`
`/
`37
`37
`40
`44
`47
`
`ix
`
`ATI Exhibit 2017, Page 10 of 516
`
`ATI Exhibit 2017, Page 10 of 516
`
`

`

`
`Coordinate Systems..
`
`
`Hider Selection..........osssessssseesiness
`A Boilerplate RenderMan Program.......cscccccsssceeceneige
`SUITATY0...sseessseccssseeccnseceestsersussceesssscsssssenssecsesseessseesessesssnses
`CHAPTER 4
`.
`Primitive Surfaces I: Quadric Surfaces... 59
`Quadric Declaration ROUtiies ...cccssccsssessssessssssseccsssssssesssesens
`62
`
`54
`54
`56
`
`CHAPTER 5
`Primitive Surfaces I]: Polygons................. canseseccnuenveeeceeeenners
`Basic Polygon Types....sesssssssesesscssensesseensniesescennsnieseessanies
`CHAPTER 6
`;
`85
`Primitive Surfaces III: Parametric Surfaces...
`
`86
`Uniform Bilinear and Bicubic Patches...............
`90
`Types of Bicubic Surface... iscssesessessssesesesssesssssseesseersscess
`94
`Bicubic Patch Meshes.......ccsscssesssessesssecenessecseessessssssessessees
`Non-uniform RationalB+-Spline Surfaces (NURBs)........... 103
`Further Reading... isssssesssssesssesssssecseestecsesssseessescnseatesesseeese 105
`
`69
`69
`
`CHAPTER 7
`
`Geometric Transformations and Hierarchical
`Modeling...............assaresconnseescensensenssuecseeeeieresessnecsssssssssena 107
`
`Concepts of Hierarchical Modeling...epee: 107
`
`Geometric Transformation Environmentoo... 110
`
`Constructive Solid Geometry ....ccccccseceseeseseseeeeeseeseeteee 125
`Object IMStancitng «oeeseeessecseceesssessssenseseatsasansesneseescneseesceeesseas 133
`CHAPTER 8
`Viewing |: The Digital Camera... 137
`An Example viewing Program desaeescesecseescsnssereesesseeetenenserees 138
`sacdesesseceseeeeeeeateseeesetaes seeseaeseaeneneeaees
`141
`A Virtual Camera..
`
`The Digital Image...
`A Better Viewing Prograim....csccssssessesssssecsssscnenssesecneenes 167
`
`CHAPTER 9
`Viewing II: A Modelof the Rendering Process............. 171
`Surface Approximation....cccccclsesssseccnseccneenecesneeses
`171
`Raster OUPUt.eeieeecscsssesscssenegueeaseneeresecnesaceeenesneeaeases 172
`
`x
`
`Table of Contents
`
`ATI Exhibit 2017, Page 11 of 516
`
`ATI Exhibit 2017, Page 11 of 516
`
`

`

`
`Depth ofField .......
`
`.Motion Blur.............
`
`Further Research o.....ccccccssccsccscsssceccesssecercsusesscescsaseescssseereeeees
`191
`
`Procedural Models and Level of Detail.......................... 193
`Level of Detail Calculations and Models...............sseeeee
`194
`
`Procedural Models......c:scsssceneereecsseeeesssssees
`wee
`201
`Further Reading.....ccssccsssssessecssessesreeeneereesesaneenessicansenecsscnnsenes 208
`
`.
`Lighting and Shading.............ccsssssccsccsiessseeseeeeesseeneeness 209
`Using Shaders .....cccsssccssessssescusesensecnreennresseessnesccasenniseanranes
`211
`Light Source Shaders..
`wa. 216
`
`wee 225
`Surface ShaderS......:cssseccssersecctserreeceseserees
`Volume Shaders........ccsccccecscesreceeersesecersneses
`we 233
`
`wa 237
`Other Shaders.........
`
`Further Reading .....ccsecsesssssecesseenersecnsensneeressssscseenennesneenanns 237
`
`Surface Mapping... cccccssssscesssssseeenecseeseessessssnssnnnneeens 239
`Simple Surface Mapping...cssesiesecsmeseeeeseenneenatey
`241
`Using Texture Maps........-ee
`we 250
`
`Texture Mapping Generalized....
`257
`
`CONCIUSION wiccicccseecssceeseteecesceneeseecceessecessessteneeeenssenessensaneees 270
`Further Reading ........cccsseseseeeseeseseerecesnesseesnesnssmeamnanseneas
`271
`
`273
`The RenderMan Shading LanguageI: Introduction
`Shaders from the Outside Looking In...cesses 276
`Shaders from the Inside Looking Out... cesses 280
`
`An Example Shader ......cccseecsscsseesecseersecressetennesseesnaessanssaes 282
`
`Further Reading ........cccessssecsssseeeeeetesneseseesesssmsannnsennaeese 285
`
`CHAPTER 14
`287
`The RenderMan Shading LanguageII: Description
`Defining Shaders and FUnctions.........sssccsseeessseesessesens 287
`Data eceecccscsscssscsssssssccssenscesscecssccesscseeerersesaeseassessepseessscaersssneeages 288
`
`
`SYMEAX .o.ssecssecseesessssensecseceerenseneteveesnessssseessesnassenssenneeneseaesnatnasens 297
`MTUMIMANCE 0. ese cessescaceeeeeeeaerseeeseseesesssseensaeesscseneseeeenes 302
`illuminate and sollar..........:ccccccccecece se sceseessesesssaneseseseneseenense 305
`
`Table of Contents
`
`xi
`
`ATI Exhibit 2017, Page 12 of 516
`
`ATI Exhibit 2017, Page 12 of 516
`
`

`

`CHAPTER 15
`
`The RenderManShading LanguageIII: Tools................ 311
`Mathematical Functions......cc.ccccsssssssscsssevrsssscerserevsesesneeceees 311
`
`Shading, Coloring, and Lighting Functions........ccese 315
`Map Access Function.1.......cccccssessesecseeseesesteeesssateeaseeenes 319
`Geometric Functions 0... cesses eecessessesseensseseeesessceseenee 325
`Further Reading...eescssessesecteneeseeseesseectsarsessessestesessaeaes 332
`
`CHAPTER 16
`
`A Gallery of Shaderss...........:cccccccscssssesscscsssssssssessssssessenssnsssssisn 333
`Standard shaders ...0.......ecessccecseseececeeseeneessSeaseseseeaeavevenssuennene 333
`Procedural Texturing .....cccccceseessscneeeesssseenserecseaseess 343
`Simple Tricks............ esceeeseeeseeneseseeseessersscsecueneassatseersacsneaenneees 360
`
`Texture Mapping ........ccssccccecesescceerersensectenesseseateaseseeassaeess 371
`A Case Study: One Perfect Pencil uu... ceesecseeeceeeeeseeeeees 381
`Further Examples......ccccscssssssssssssssescssssssessecesnseneeetersseers 386
`The FUture oo... cscssssesessescssscssesstssvessesssessenesnescneeaseneerersasereesess 387
`
`APPENDIX A
`
`Summaryof RenderManProgram Structure................. 389
`Order of Transformations 0.0... cc escescceeseseereeeeatesteseerseenees 389
`RenderMan Program Structure .......ceesecesscseecsenseeneeees 390
`
`APPENDIX B
`
`Constructing Basis Matrices for Bicubic Surfaces....... 393
`Introduction oo... eessecsessscssesarsssesseessesseeseaeecessnteaseceeeasentsneensenees 393
`A TensedInterpolating Spline........csseecesessssereeseceeeenees 395
`A Tensed Approximating Spline 00...
`eeeeeeeeeee 398
`A Biased, Tensed Interpolating Spline... 400
`
`A Biased, Tensed Approximating Spline... 402
`Further Reading ...c.cccessssssecsscssensesecceessessesseessesessatenesses 403
`
`APPENDIX C
`
`The rif Header File .........cccccccccceccsssccccsesessssessssseessseesssssess 405
`
`APPENDIX D
`
`,
`
`List of RenderMan Functions o.........cccccecccccsseecssssseeescseeeees 409
`
`RenderManInterface Routines..............
`RenderMan Shading Language Routines... 415
`
`xti
`
`Table of Contents
`
`ATI Exhibit 2017, Page 13 of 516
`
`ATI Exhibit 2017, Page 13 of 516
`
`

`

`Glossaryof Technnical Teri..............ccccccssscscsscscssssssseeneneee 419
`
`Bibliography«ssssssscetssssssscsnnceeceeeeessssmnnnnnanscseceeeee 443
`
`VWooccccccccssssesseececseessscenessvssscsusssscsscsuccseessccueesunsnseaessceneensesuteaeeere 447
`
`Table of Contents
`
`;
`
`xiii
`
`ATI Exhibit 2017, Page 14 of 516
`
`ATI Exhibit 2017, Page 14 of 516
`
`

`

`ATI Exhibit 2017, Page 15 of 516
`
`ATI Exhibit 2017, Page 15 of 516
`
`

`

`
`
`
`
`Foreword
`
`The quest for realism in computer graphics has had an excit-
`ing history. We have seen an evolution from crude pictures
`made on expensive research machines to compelling images
`made on desktop computers. This quest has been one of the
`focal points of my professionallife. It has been a fun and re-
`warding twenty years.
`
`Back in the early days of computer graphics we were happy to
`get any picturesat all. The objects had jagged edges and looked
`like they were made out ofplastic, but we were full of ideas
`that could make them look better. Our goal was to make the
`images lookreal.
`the University of
`the early developments were at
`Utah, where Dave Evans and Ivan Sutherland started a re-
`markable computer graphics program that attracted people
`from all over. In addition, Utah had a notable image process-
`ing group led by Tom Stockham. Thefirst major task was to
`develop algorithms for determining what was visible in a
`scene, which led to the famous paper analyzing hidden-sur-
`face algorithms by Ivan Sutherland, Bob Sproull, and Bob
`Schumacher. My own contribution here was the develop-
`mentof the Z buffer.
`Better shading was the next major problem. Henri Gouraud
`discovered that he could substantially reduce the faceted ap-
`pearance of objects by linearly interpolating the values at the
`vertices of the polygons. Bui T. Phong took it a step further by
`interpolating the surface normals to get a smoother appear-
`ance as well as highlights. I made a contribution by develop-
`
`XV
`
`ATI Exhibit 2017, Page 16 of 516
`
`ATI Exhibit 2017, Page 16 of 516
`
`

`

`ing texture mapping and the display of cubic patches. It was
`only at this point that I felt pictures were starting to look real-
`istic. Jim Blinn went on to extend texture mapping to include
`perturbation of surface normals, producing stunning pictures
`of oranges and strawberries. We had reached the point where
`the calculations required to shade became greater than. those
`required to determinevisibility.
`As computer graphics developed, major advances began to
`come from other places. I left Utah to become the director of
`the Computer Graphics Lab at the New York Institute of Tech-
`nology, where researchers from all over the country came to
`develop realistic images and animation. During the late 70's
`Cornell grew to be a major computer graphics institution un-
`der the direction of Don Greenberg.
`It was there that Rob
`Cook discovered that the lighting model everyone used best
`approximated plastic. He proposed a different model that Jet
`us simulate other surfaces such as metals.
`By the early 80’s realism fever began to catch hold. Turner
`Whitted made ray tracing popular and thus started a caval-
`cade of advances in ray tracing. At first the pictures took ex-
`traordinarily long to produce—sometimes days. But again
`new algorithms were developed that made ray tracing more
`efficient. Around the same time SIGGRAPH became a phe-
`nomenon. Each year the proceedings had some great new pic-
`tures: fractals, plants, radiosity, cloth, and so on. Somecriti-
`cized the emphasis on “pretty pictures,” but the excitement
`was undeniable. Every time someone made a new discovery
`it would be shown to colleagues, resulting in raves and ap-
`plause, and causing others to redouble their efforts to do even
`better.
`
`In 1979 Alvy Ray Smith and I had joined Lucasfilm to start
`the Computer Division, which later became Pixar. Some of
`the best people from the above institutions gathered to try to
`make images so realistic that they could be used in live-action
`motion pictures.
`Wedecided to throw the book out and start all over again in
`defining a system for creating extremely complex pictures
`with a high degree of realism. We had a phenomenal team—
`both Loren Carpenter and Rob Cook were amazingly produc-
`tive and creative. Rodney Stock suggested dithered sampling
`
`xvi
`
`Foreword
`
`ATI Exhibit 2017, Page 17 of 516
`
`ATI Exhibit 2017, Page 17 of 516
`
`

`

`and Tom Porter suggested spreading the samples over time.
`Rob generalized the shading formulas to “shade trees,” Pat
`Hanrahan and Jim Lawson generalized this to a shading lan-
`
`Thepictures werestarting to look amazingly good.
`And just as important. we now understood what it meant to
`describe an image. This opened the door to the definition of an
`interface that could be independent of algorithms, hardware,
`and speed of execution. Pat, Hanrahan putall that we knew
`about geometry, lighting models, ray tracing, antialiasing, mo-
`tion blur, and shade trees into a compact interface, which he
`named RenderMan.
`Our goal wasn’t just to make photorealistic pictures; it was al-
`so to make the tools and systems that would let thousands of
`people create pictures of whatever they chose to design. Two
`more things were needed. Mickey Mantle, Tony Apodaca, Dar-
`wyn Peachey, and Jim Lawson took research code and made
`software that met the RenderMan specification. Finally, Steve
`Upstill took responsibility for explainingit all in this book.
`The quest for better pictures will continue, of course, but we
`have reached a new era. I am proud to be associated with the
`team that has made the results of twenty years of research
`available to everybody.
`
`Ed Catmull
`
`The RenderManinterface is meant to be the PostScript of 3-D
`graphics. Just as PostScript allows a desktop publishing system
`to pass page representations to a printer, RenderMan allows
`three-dimensional modeling systems to pass scene descrip-
`tions to a renderer. The design of the RenderManinterface
`hasbeen the result of a great deal of experience designing and
`implementing rendering systems.
`In 1981 Loren Carpenter wrote the first rendering system at
`Lucasfilm. He named it REYES, which stood for Renders Every-
`
`xvii
`
`ATI Exhibit 2017, Page 18 of 516
`
`ATI Exhibit 2017, Page 18 of 516
`
`

`

`thing You Ever Saw. After its use for the Genesis effect of Star
`Trek I, the Wrath of Khan, Rob Cook and Ed Catmull set out
`with Loren to redesign it to produce film resolution pictures
`of typical naturally occurring scenes. They estimated that a
`model of a natural scene would require 80,000,000 polygons, a
`level of complexity far beyond the capabilities or even aspira-
`tions of existing systems. This goal forced them to rethink ev-
`ery aspectof the rendering process.
`Another fundamental goal of the Lucasfilm group was to
`avoid digital artifacts in image production. The most trouble-
`some were those due to spatial aliasing (aggies), but
`they
`came to realize that
`temporal aliasing was responsible for
`strobing artifacts during animation. A practical motion blural-
`gorithm was therefore needed. A friendly competition among
`Ed, Loren and Rob culminated in Rob’s discovery of stochastic
`sampling, which led to practical solutions for spatial antialias-
`ing, motion blur, depth of field and a variety of other effects.
`One of the most challenging aspects of the RenderMan design
`was the goal
`to allow control over these effects, and image
`quality in general.
`
`During this period Rob also invented shade trees, which Jim
`Lawson and I have enhanced to be a complete shading lan-
`guage. The observation that modeling the optical properties
`of real materials requires the full generality of a programming
`language is perhaps the most important aspect of RenderMan,
`and one which distinguishes it from other graphics interfaces,
`which are usually based on a single large parameterized shad-
`ing model.
`
`to routinely generate pictures
`It was painfully obvious that
`containing 80,000,000 polygons in a reasonable amount of
`time would require special-purpose hardware. Tom Porter,
`Adam Levinthal, Mark Leather and Jeff Mock set out to de-
`sign a large-scale machine, named the REYES machine, to ren-
`der these types of pictures. The prospect of the REYES ma-
`chine led to the need for a standard interface between the
`scenes being produced by a modeling system and accepted by
`the rendering system. This interface is RenderMan.
`Bill Reeves and I designed the first version of RenderMan.
`Most notable was the fact that the interface was built around
`
`xviii
`
`Foreword
`
`ATI Exhibit 2017, Page 19 of 516
`
`ATI Exhibit 2017, Page 19 of 516
`
`

`

`the
`that
`It was thought crucial
`curved-surface primitives.
`modeling program not convert
`these into polygons, because
`this would lead to geometric artifacts (polygonal silhouettes)
`and shading artifacts (Mach bands) in the final images. In fact,
`rendering curved surfaces had always been an active area of
`research at Lucasfilm and Pixar, beginning with Tom Duff's
`quadric and Loren Carpenter’s bicubic patch rendering algo-
`rithms. Of course, the process of choosing the exact set of
`primitives caused many heated arguments. In the end, weal-
`lowed for primitives that rendering systems could be expected
`to handle directly, without decomposition.
`Ourinitial specification was then circulated internally for an
`extensive design review. Tony Apodaca, Loren Carpenter, Ed
`Catmull, Rob Cook, Charlie Gunn, Paul Heckbert, Jim Law-
`son, Sam Leffler, Mickey Mantle, Eben Ostby, Darwyn
`Peachey, To

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket