WYSIWYG NPR: Drawing Strokes Directly on 3D Models - PowerPoint PPT Presentation

andrew
wysiwyg npr drawing strokes directly on 3d models l.
Skip this Video
Loading SlideShow in 5 Seconds..
WYSIWYG NPR: Drawing Strokes Directly on 3D Models PowerPoint Presentation
Download Presentation
WYSIWYG NPR: Drawing Strokes Directly on 3D Models

play fullscreen
1 / 37
Download Presentation
WYSIWYG NPR: Drawing Strokes Directly on 3D Models
416 Views
Download Presentation

WYSIWYG NPR: Drawing Strokes Directly on 3D Models

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. WYSIWYG NPR:Drawing Strokes Directly on 3D Models Robert D. Kalnins Lee Markosian Barbara J. Meier Michael A. Kowalski Joseph C. Lee Philip L. Davidson Matthew Webb John F. Hughes Adam Finkelstein Princeton University Brown University

  2. Outline • Related Work • Introduction • Objective • An Example • Paper • Toon Shaders • Stroke • Silleuette • Hatching • Results

  3. Markosian et al. 1997 Salisbury et al. 1997 Deussen & Strothotte 2000 Meier 1996 Related Work 1/2 • NPR approaches • Producing still images

  4. Markosian et al. 2000 Praun et al. 2001 Related Work 2/2 • NPR approaches • Producing still images • Interactive rendering (with temporal coherency)

  5. Introduction • Direct WYSIWYG painting [Hanrahan & Haeberli 1990] • Directly painting texture maps onto 3D models

  6. billboard bridge ground strokes terrain editing Introduction • Providing direct drawing interfaces for creating stylized scenes [Cohen et al. 2000]

  7. Objective • A system that Provides direct drawing interfaces for creating stylized scenes • Starting with a 3D model, and • Drawing directly on it

  8. Loading a model. Displaying the model in a silhouette style. An Example

  9. Choosing a toon shader. Creating background color and texture. Adjusting the lighting. An Example

  10. Choosing a brush. (black pencil) Selecting silhouette style. Drawing creases. An Example

  11. Adding a label by drawing decal strokes. An Example

  12. Drawing hatching. An Example

  13. Choosing a toon shader. Creating background color and texture. Adjusting the lighting. Where we are…

  14. Paper 1/2 • Background color or image

  15. at h = 1, t(a) = clamp(2a) at h  (0, 1), t(a) = h clamp(2a) + (1 – h) clamp(2a – 1) at h = 0, t(a) = clamp(2a - 1) Paper 2/2 • Media simulation for a paper effect • Paper texture encoding a height field, h  [0, 1] • Compositing incoming color into the framebuffer with transparency t(a)

  16. Generating texture coordinates from L . n Toon Shaders • Drawing each patch of the object • Using custom 1D texture maps [Lake et al. 2000]

  17. Toon Shaders with Media Simulation • Rendered over a coarse paper texture

  18. Where We Are… Crease strokes Decal strokes Silhouettes

  19. Strokes 1/2 • Stroke primitive • [Northrup and Markosian 2000] • Represented as a Catmull-Rom spline • Elements under user control: • Color • Alpha • Width • Degree of taper at endpoints • “halo”

  20. Strokes 2/2 • Visibility • Using an ID reference image: [Northrup and Markosian 2000] rendering mesh faces, crease edges, silhouette polylines – each in a unique color

  21. this work [Hanrahan & Haeberli 1990] Decal Strokes • For drawing directly onto a surface • Represented as spline curves • Benefits: • No necessity for a parameterization of the surface. • No sampling artifacts • Consistent screen-space width of strokes

  22. Crease Strokes • Creases: • Chains of mesh edges following sharp features • When a crease is oversketched, … • Recorded as a crease path + a set of displacements Base Path

  23. Stylized Strokes • Rubber Stamping • Repeating a sequence of example offsets • Synthesizing by example • Adopting ‘video texture’ to generate less repetitive offsets [Schödlet al. 2000]

  24. Silhouettes 1/4 • Applying a sketched prototype stroke to all silhouettes • Issues: • Silhouette detection • Temporal coherency

  25. nv nv v v cv cv f(v) = nv. cv Silhouettes 2/4 • Silhouette detection: • Checking randomly sampled faces • Tracing neighboring triangles containing any silhouette

  26. Silhouettes 3/4 • Temporal coherency • Silhouettes are view-dependent

  27. Silhouettes 3/4 • Temporal coherency • Using arc-length parameter of the previous frame

  28. Silhouettes 4/4 • Scaling • Scaling magnitude of the offsets • Only when zoomed out

  29. Where We Are… Hatching

  30. Hatching • Structured hatching • A group of roughly parallel strokes • Automatic LOD control User specified strokes Start transition

  31. Hatching • Free hatching • Building LODs explicitly by the artist

  32. Hatching • Mobile hatching • Hatching moving on the surface ex) the shade and the highlight

  33. a mobile hatching group Hatching • Mobile hatching • Inferring light direction • Assume “diffuse highlights” or “dark light” • How… • 1. Projects the strokes into uv-space • 2. Computes their convex hull • 3. Finds its centroid c and records the normal nc nc c v u

  34. n(u) a mobile hatching group T Hatching • Mobile hatching • Creating a mobile hatching group at each local maximum in l(u) • Using a threshold T • T=1/2 • Avoiding popping effect • Fade out as l(u) approaches T l(u) = nc.n(u) c v u

  35. Results • Environment: • 1.5GHz Pentium IV CPU / GeForce3 GPU

  36. Results

  37. Conclusion and Future Work • A system for drawing stroke-based NPR styles directly on 3D models • Extending to • Styles such as stippling and pointilism • Object-to-object interactions