1 / 20

# Suggestive Contours with Geometry Shader - PowerPoint PPT Presentation

Suggestive Contours with Geometry Shader. Based on Suggestive Contours for Conveying Shape SIGGRAPH 2003. Sungbae Kim Master Student College of Computing Georgia Tech. Conveying shape with lines. Contours and Suggesstive Contours [DeCarlo et al. 2003]. Related work. Contour

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

## PowerPoint Slideshow about ' Suggestive Contours with Geometry Shader' - dinah

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

Based on Suggestive Contours for Conveying ShapeSIGGRAPH 2003

Sungbae Kim

Master Student

College of Computing

Georgia Tech

Contours and Suggesstive Contours

[DeCarlo et al. 2003]

Contour

(also called silhouette)

Crease

Ridges and valleys

(also called crest)

Rusinkiewicz, SIGGRAPH 2005 Course note

• Contours have shape cue

• Contours in nearby viewpoints also have shape cue

 Suggestive Contours

• Contours + Suggestive Contours

q : contour

p : suggestive contour

Should appear suddenly

[DeCarlo et al. 2003]

• Draw lines where N(P)∙V(P) = 0

• Contours in nearby viewpoints

local minima n∙v

Kr = 0 && DwKr > 0

[DeCarlo et al. 2003]

• Compute Per vertex

• Draw zero crossing

Rusinkiewicz, SIGGRAPH 2005 Course note

Primary direction 2

w

How to compute Kr=0 in mesh

• K1, K2 can be pre-computed per vertex

• Compute Per vertex

• Draw zero crossing

Kr > 0

Kr < 0

Kr < 0

Rusinkiewicz, SIGGRAPH 2005 Course note

• P, Q, S, T can be pre-computed per vertex

• Compute Per vertex

• Interpolation

Primary direction 1 : e1

Kr > 0

v

DwKr > 0

u

Kr=0

w

Primary direction 2 : e2

Kr < 0

Kr < 0

### Implementation

CPU - Intel Core2 Duo 2.0GHz, RAM - 2GB, VIDEO Card – NVIDIA Quadro FX 570M

• Calculation values from mesh

• Primary directions

• Primary curvatures

• Derivatives of curvatures (P, Q, R, S)

Use TriMesh library

• Cg is very easy

• Operation Per Primitives (line, triangle, line with adjacency, triangle with adjacency, etc.)

• Generating new primitives such as line, triangle

• Few references

• Several examples from NVIDIA

Draw edges between front and back face

My motivation

Example from NVIDIA OpenGL SDK 10

• View-dependent calculation and line generation in Vertex & Geometry shader

• Use texture coordinates as input arguments

• Too many vertices, normals, faces, texture coordinates

• Use buffer object

• Using z-buf

• 2-pass rendering

• 1st pass : Setting depth values by Rendering mesh

• 2nd pass : line drawing

vertices : 48484

triangles : 96964

51 fps

Horse

vertices : 72027

triangles : 144046

34 fps

Bunny

vertices : 262909

triangles : 525814

10 fps

Lucy

vertices : 237018

triangles : 474048

3.5 fps

Angel

vertices : 437645

triangles : 871414

6 fps

Dragon

vertices : 543652

triangles : 1087116

4 fps

Happy Buddha