Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ink Line Rendering for Film Production

Similar presentations


Presentation on theme: "Ink Line Rendering for Film Production"— Presentation transcript:

1

2 Ink Line Rendering for Film Production
Daniel Teece Walt Disney Feature Animation

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

4 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)

5 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

6 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

7 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])

8 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)

9 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

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

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

12 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

13 Inverted Surface Outline Rendering
A simple example

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

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

16 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

17 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]

18 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

19 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

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

21 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

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

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

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

25 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

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

27 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

28 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)

29 Inka - Line Quality © Disney Tapering lines

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

31 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

32 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)

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

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

35 Acknowledgements Hiroki Itokazu Tad Gielow Jack Brooks


Download ppt "Ink Line Rendering for Film Production"

Similar presentations


Ads by Google