real time hatching
Download
Skip this Video
Download Presentation
Real–Time Hatching

Loading in 2 Seconds...

play fullscreen
1 / 28

Real–Time Hatching - PowerPoint PPT Presentation


  • 81 Views
  • Uploaded on

Real–Time Hatching. Princeton University Microsoft Research Princeton University Princeton University. Emil Praun Hugues Hoppe Matthew Webb Adam Finkelstein. Goal. Stroke-based rendering of 3D models Strokes convey: tone material shape. Demo. Challenges.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Real–Time Hatching' - questa


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
real time hatching

Real–Time Hatching

Princeton University

Microsoft Research

Princeton University

Princeton University

Emil Praun

Hugues Hoppe

Matthew Webb

Adam Finkelstein

slide2
Goal
  • Stroke-based rendering of 3D models
  • Strokes convey:
    • tone
    • material
    • shape

Demo

challenges
Challenges
  • Interactive camera and lighting control
  • Temporal (frame to frame) coherence
  • Spatial continuity
  • Artistic freedom
approach
Approach

Set of textures

Example stroke

Result

Mesh

Preprocess

Real-Time

previous work

[Hertzmann et al. 2000]

[Winkenbach et al. ’94, ’96]

[Sousa et al. ’99]

Previous Work
  • Off-line
  • Real-Time Hatching

& many others …

previous work1
Previous Work
  • NPR
  • Real-Time Hatching
    • Technical Illustration
      • [Gooch et al. ’99]
    • Graftals
      • [Kowalski et al. ’99, …]
    • Silhouette rendering
      • [Markosian et al. ’97]
      • [Hertzmann et al. 2000]
      • [Sander et al. 2000]
previous work2
Previous Work
  • Real-Time Hatching
    • Screen-space “filter” [Lake et al. 2000]
    • Fixed density strokes [Elber ’99]
previous work stroke collections
Previous Work – Stroke Collections
  • Prioritized Stroke Textures[Salisbury et al. ’94][Winkenbach et al. ’94]

Art Maps[Klein et al. 2000]

scale 

tone 

tonal art maps
Tonal Art Maps
  • Collection of stroke images
  • Will blend  design with high coherence
  • Stroke nesting property

demo

scale 

tone 

approach1
Approach

Tonal Art Map

Example stroke

Result

Mesh

Preprocess

Real-Time

generating tonal art maps
Generating Tonal Art Maps
  • Draw or import bitmap for one stroke
  • Automatically fill TAM with strokes
    • When placing stroke in an image,add it to all finer & darker images
    • Fill table column by column, coarse to fine
    • Space strokes evenly
even spacing of strokes

candidate stroke

candidate stroke

candidate stroke

Even Spacing of Strokes
  • Choose best stroke from large candidate pool
  • Fitness = uniformity & progress towards tone

candidate stroke

even spacing of strokes1
Even Spacing of Strokes
  • Choose best stroke from large candidate pool
  • Fitness = uniformity & progress towards tone

candidate stroke

1 TAM column(same tone)

even spacing of strokes2
Even Spacing of Strokes
  • Choose best stroke from large candidate pool
  • Fitness = uniformity & progress towards tone

1 TAM column(same tone)

Keep Gaussian pyramid for all TAM images

approach2
Approach

Tonal Art Map

Example stroke

Result

Mesh

Preprocess

Real-Time

continuity

spatial discontinuity

Continuity
  • Stroke size continuity  mipmapping
  • Tone continuity  blend multiple textures
    • Spatial continuity: same contribution for a texture on both sides of an edge
  • Temporal continuity: no “popping”

demo

texture blending
Texture Blending

tone

tone

v1

v2

v3

6-way blend  final

texture blending1
Texture Blending
  • Pack grayscale tones in R,G,B channels→ 6 tones in 2 textures
  • Use multitexture engine→ single-pass 6-way blend
  • Vertex programs compute blend weights→ static vertex data

!!VP1.0 #Vertex Program for Real-Time Hatching.

//output vertex homogeneous coordinates

DP4 R2.x, c[0], v[OPOS];

DP4 R2.y, c[1], v[OPOS];

DP4 R2.z, c[2], v[OPOS];

DP4 R2.w, c[3], v[OPOS];

MOV o[HPOS], R2;

//stroke texture coordinates, transformed

DP3 o[TEX0].x, c[4], v[TEX0];

DP3 o[TEX0].y, c[5], v[TEX0];

DP3 o[TEX1].x, c[4], v[TEX0];

DP3 o[TEX1].y, c[5], v[TEX0];

// splotch mask coordinates

MOV o[TEX2], v[TEX0];

//get the Gouraud shade

DP3 R1, c[8], v[NRML];

//apply clamp-linear tone transfer function

MUL R1, R1, c[9].x;

ADD R1, R1, c[9].y;

MAX R1, R1, c[9].z;

MIN R1, R1, c[9].w;

//now look up the weights for the TAMs blending

EXP R2.y, R1.x; //frac(tone)

ARL A0.x, R1.x;

MOV R3, c[A0.x + 10];

MAD R3, -R2.y, R3, R3;

MAD o[COL1], R2.y, c[A0.x + 11], R3;

MOV R4, c[A0.x + 20];

MAD R4, -R2.y, R4, R4;

MAD o[COL0], R2.y, c[A0.x + 21], R4;

END

approach3
Approach

Tonal Art Map

Example stroke

Result

Mesh

Lappedtexture

Preprocess

Real-Time

texturing arbitrary surfaces
Texturing Arbitrary Surfaces
  • Lapped Textures[Praun et al. 2000]
direction field
Direction Field
  • Based on surface principal curvatures
  • Optimized to be smooth
    • [Hertzmann & Zorin 2000]
    • Symmetry: 180º instead of 90º
    • Sample on faces
slide23
Demo

Gargoyle

slide24
Demo

chalk gray charcoal 

Venus

summary
Summary
  • Real-time hatching for NPR
  • Strokes rendered as textures
  • High coherence TAMs prevent blend artifacts
  • 6-way blend very fast on modern graphics
future work

Bill Plympton

Future Work
  • More general TAMs
  • View-dependent stroke direction
  • Automatic indication
acknowledgements
Acknowledgements
  • Support
  • Microsoft Research, NSF
  • Hardware
  • NVidia, Dell
  • Models
  • Viewpoint, Cyberware, Stanford, MIT
  • Thanks
  • Georges Winkenbach, Lee Markosian, Grady Klein
npar 2002
NPAR 2002
  • International Symposium on Non-Photorealistic Animation and Rendering
  • Annecy, France
  • Submissions: November 12, 2001
  • Conference: June 3-5, 2002
  • http://npar2002.cs.princeton.edu
ad