Ink Line Rendering for Film Production

Slides:



Advertisements
Similar presentations
Saito, T. and Takahashi, T. Comprehensible Rendering of 3-D Shapes Proc. of SIGGRAPH '90 Genesis of Image Space NPR.
Advertisements

COMPUTER GRAPHICS SOFTWARE.
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
Week 7 - Monday.  What did we talk about last time?  Specular shading  Aliasing and antialiasing.
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
Computer Graphics Visible Surface Determination. Goal of Visible Surface Determination To draw only the surfaces (triangles) that are visible, given a.
Part I: Basics of Computer Graphics
Non-Photo Realistic Rendering Jian Huang CS594 Fall 2003 This set of slides are modified from the NPR Course during SIGGRAPH’2003.
Real-Time Rendering SPEACIAL EFFECTS Lecture 03 Marina Gavrilova.
Chapter 6: Vertices to Fragments Part 2 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
Vertices and Fragments I CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
Computer Graphics (Fall 2005) COMS 4160, Lecture 16: Illumination and Shading 1
Suggestive Contours Final programming assignment Advanced topics in Computer Graphics.
Data Input How do I transfer the paper map data and attribute data to a format that is usable by the GIS software? Data input involves both locational.
NPR - 2D to 3D, painting and rendering Daniel Teece Walt Disney Feature Animation Daniel Teece Walt Disney Feature Animation
Introduction to Computer Graphics
Painterly Rendering for Animation Barbara J. Meier Walt Disney Feature Animation SIGGRAPH 96.
Vector vs. Bitmap SciVis V
Non-photorealistic Rendering Pablo Picasso - The Bird Cage No electrons were harmed during the production of this presentation.
Week 14 - Wednesday.  What did we talk about last time?  Collision handling  Collision detection  Collision determination  Collision response  BSPs.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Beyond Meshes Spring 2012.
Computer Graphics Shadows
V Obtained from a summer workshop in Guildford County July, 2014
Painterly Rendering for Animation – Barbara Meier
MULTIMEDIA TECHNOLOGY SMM 3001 MEDIA - GRAPHICS. In this chapter how the computer creates, stores, and displays graphic images how the computer creates,
Erdem Alpay Ala Nawaiseh. Why Shadows? Real world has shadows More control of the game’s feel  dramatic effects  spooky effects Without shadows the.
Shadow Algorithms Ikrima Elhassan.
1 Bitmap Graphics It is represented by a dot pattern in which each dot is called a pixel. Each pixel can be in any one of the colors available and the.
COMP Bitmapped and Vector Graphics Pages Using Qwizdom.
Vector vs. Bitmap
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
CS 638, Fall 2001 Multi-Pass Rendering The pipeline takes one triangle at a time, so only local information, and pre-computed maps, are available Multi-Pass.
Computer-Generated Pen-and-Ink Illustration of Trees Oliver Deussen & Thomas Strothotte University of Magdeburg.
3D Graphics for Game Programming Chapter IV Fragment Processing and Output Merging.
Hidden Surface Removal 1.  Suppose that we have the polyhedron which has 3 totally visible surfaces, 4 totally invisible/hidden surfaces, and 1 partially.
Lumo: Illumination for Cel Animation Scott F. Johnston.
Rendering Complexity in Computer-Generated Pen- and-Ink Illustrations Brett Wilson & Kwan-Liu Ma The University of California, Davis.
Implementation II Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
Non-Photorealistic Rendering: Toon Shading David Luebke University of Virginia.
03/28/03© 2005 University of Wisconsin NPR Today “Comprehensible Rendering of 3-D Shapes”, Takafumi Saito and Tokiichiro Takahashi, SIGGRAPH 1990 “Painterly.
Implementation II.
09/16/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Environment mapping Light mapping Project Goals for Stage 1.
Ramesh Raskar University of North Carolina at Chapel Hill Ramesh Raskar University of North Carolina at Chapel Hill Image Precision Silhouette Edges Michael.
Aaron Hertzmann New York University
CS123 | INTRODUCTION TO COMPUTER GRAPHICS Andries van Dam © Visible Surface Determination (VSD) To render or not to render, that is the question… 1 of.
A Very Brief Overview of Non-Photorealistic Rendering Conrad Albrecht-Buehler Graduate Thesis Seminar September 24, 2001.
Single Pass Point Rendering and Transparent Shading Paper by Yanci Zhang and Renato Pajarola Presentation by Harmen de Weerd and Hedde Bosman.
Computer Graphics I, Fall 2010 Implementation II.
What are shaders? In the field of computer graphics, a shader is a computer program that runs on the graphics processing unit(GPU) and is used to do shading.
Non-Photorealistic Rendering FORMS. Model dependent Threshold dependent View dependent Outline form of the object Interior form of the object Boundary.
Real Time Nonphotorealistic Rendering. How to achieve real time NPR? Economy of line: present a lot of information with very few strokes. Silhouettes.
Painterly Rendering for Animation Introduction speaks of focus and detail –Small brush strokes focus and provide detail –Large strokes are abstract and.
Shadows David Luebke University of Virginia. Shadows An important visual cue, traditionally hard to do in real-time rendering Outline: –Notation –Planar.
01/28/09Dinesh Manocha, COMP770 Visibility Computations Visible Surface Determination Visibility Culling.
Non-Photorealistic Rendering FORMS. Model dependent Threshold dependent View dependent Outline form of the object Interior form of the object Boundary.
Guilford County SciVis V104.03
Visible-Surface Detection Methods. To identify those parts of a scene that are visible from a chosen viewing position. Surfaces which are obscured by.
Computer Graphics (Fall 2006) COMS 4160, Lecture 16: Illumination and Shading 1
Vector vs. Bitmap. Vector Images Vector images (also called outline images) are images made with lines, text, and shapes. Test type is considered to be.
Non-photorealistic rendering
- Introduction - Graphics Pipeline
Photorealistic Rendering vs. Interactive 3D Graphics
Vector vs. Bitmap.
IMAGES.
CS451Real-time Rendering Pipeline
Chapter 3:- Graphics Eyad Alshareef Eyad Alshareef.
Computer Graphics.
Lecture 13 Clipping & Scan Conversion
Presentation transcript:

Ink Line Rendering for Film Production Daniel Teece Walt Disney Feature Animation daniel.teece@disney.com

Introduction Coming up… Background Four routes to an ink line image Production examples

Ink Lines and NPR The bigger picture “Natural Media Emulation” Several commercial ‘toon renderers’ Research papers: Winkenbach Elber Gooch & Gooch Amongst others Books (Gooch & Gooch, Apodaca & Gritz)

Applications Why do we need to render lines? Outlines convey information minimally Simplicity of a line, variety of styles For Disney - merging with traditionally animated artwork Various uses, various approaches

Surface Shaders The shortest route Surface normal tested against view vector, and dot product compared to threshold value No rendering code needed (just a shader) Easy integration with rendering pipeline Able to take advantage of standard features in scanline renderer Difficult to control line width

Surface Shaders Shader example: float angle = abs(normalize(N) . normalize(I)); float border = 1 - step (0.3, angle); Ci = mix (Ci, color 0, border); (from [Apodaca, Gritz 00])

Image Buffers and Edge Detection An established and proven approach Sobel edge detection on reference images High resolution (often 4K or higher) Various render passes: Z Depth (one float per pixel) Surface Normal (one 3D vector per pixel) or N.I Object / Surface IDs (one or more ints per pixel)

Image Buffers and Edge Detection Strengths and Weaknesses Proven approach, production tested A lot comes “for free” - e.g. intersection lines, visibility Slow due to image size / multiple passes Finding threshold values can be difficult - limited fine-grain control

Technical illustration using edge detection Image Buffers and Edge Detection Technical illustration using edge detection

Image Buffers and Edge Detection Examples of production use Hercules - the Hydra Mulan - the Hun charge The Iron Giant - the Giant Osmosis Jones - Drix

Inverted Surface Outline Rendering A novel alternative Standard back face culling creates outlines from surfaces Each original surface has two surfaces, one flipped and slightly larger than original The offset between the surfaces is the line

Inverted Surface Outline Rendering A simple example

Inverted Surface Outline Rendering © Disney © Disney © Disney Images courtesy of Hiroki Itokazu, George Taylor and Lance Williams

Inverted Surface Outline Rendering Rendering can be completely off-the-shelf Focus shifts to modeling No line parameterization Surface intersections problematic

Geometry-based Ink Line Rendering Edge detection in object space Lines typically generated from polygonal data Rendering is more easily separated from line extraction NURBS edge extraction has also been explored [Gooch98] [Elber,Cohen90] Memory use shifts from image buffers to geometrical data structures

Geometry-based Ink Line Rendering Silhouette detection refinements Interpolation (edges across faces) Probabilistic Searching [Markosian et al 97] Edge buffer [Buchanan, Sousa 00] Other approaches: Dual Surface [Hertzmann, Zorin 00] Gauss Maps [Gooch et al 99]

Geometry-based Ink Line Rendering Strengths and Weaknesses Fast, but some computations are costly Vectorized lines can be used elsewhere Have to compute visibility Tessellation quality is critical Numerical precision issues Software development effort is larger

Case Study : Inka A hybrid ink line renderer Primarily a geometry-based approach Lines derived from tessellated geometry (not from NURBS as in Gooch / Elber) High level of localized control over lines Part of digital production pipeline Used for approvals / roughs and final art

Inka - Requirements Inka needed to support: Large models Faster render times High quality lines Controllability for LookDev TDs © Disney

Line Segment Generation Visibility Determination Inka - Process Attributes Attribute Parsing Geometry Surface Tessellation Camera Scan Conversion Line Segment Generation Line Refinement Visibility Determination Output Image Line Drawing Vector Lines

Inka - Attributes A text file providing ink line directives # Set line width and color width *object1* 1.5 color *object2* 0.6 0.5 0.4 1.0 # Turn off certain lines noLine *object1* vmin,vmax noLine *object2* trim # Visibility directives outlineZMin *object1* 0.0002 selfZBias *object2* 0.08

Inka - Tessellation NURBS / SubDs to triangles Can have significant impact on results View dependent / view independent Trims are supported Inventor format - pipeline standard

Inka - Line Segment Generation Line types: Silhouettes Boundaries Trims Surface Curves Space Curves Creases Intersections are computed separately

Inka - Visibility High resolution Z-Buffer Appel’s quantitative visibility [Appel67] was initial approach Z-Buffer is higher resolution than image (typically 2x - 4x) Line edges compared with scan-converted surface depth values Numerical precision can be an issue

zBias moves point towards viewer Inka - Visibility Issues zBias zBias moves point towards viewer ambiguous intersections

Inka - Line Drawing Merged lines are scan converted edge by edge Tapering and other effects may be applied Alpha accumulation is controlled by attributes and pixel compositing modes

Inka - Line Quality Line shaders allow user to control variation of color, width etc. Line tapering lends hand-drawn appearance, using screen-space algorithm Further extended by vector output - lines replaced by other drawing primitives (e.g. Sable stroke renderer)

Inka - Line Quality © Disney Tapering lines

Vector output in interactive viewer Inka - Vector Viewer Vector output in interactive viewer

Inka - Extra Features Simple paint layers Memory management (geometry groups) Animated attributes SWF export Line attenuation based on depth Width and opacity can vary with distance

Inka - Summary Geometry-based Highly controllable Part of production pipeline Film appearances: The Emperor’s New Groove (2000) Atlantis - The Lost Empire (2001) Lilo and Stitch (2002) Treasure Planet (2002)

Inka - Summary Inka software developers : Yun-Chen Sung Mike King Patrick Dalton Rasmus Tamstorf Joe Lohmar Ramon Montoya Vozmediano Daniel Teece

Conclusions Different approaches, each with merits and pitfalls Image quality over speed Controllability over interactivity Integration is important

Acknowledgements Hiroki Itokazu Tad Gielow Jack Brooks