Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Painting Interface for Interactive Surface Deformations Jason Lawrence Thomas Funkhouser Princeton University.

Similar presentations


Presentation on theme: "A Painting Interface for Interactive Surface Deformations Jason Lawrence Thomas Funkhouser Princeton University."— Presentation transcript:

1 A Painting Interface for Interactive Surface Deformations Jason Lawrence Thomas Funkhouser Princeton University

2 Motivation Many objects are hard to model:

3 Challenges Complex Surfaces Scale User Control

4 Challenges Complex Surfaces Scale User Control

5 Challenges Museth et al. Complex Surfaces Scale User Control

6 Existing Interfaces Control lattice –Free-form deformations –NURBS surface control points Physical Simulation –Deformable Models –Level Set Editing Operators Sculpting interfaces –Voxel-based sculpting –Surface sculpting

7 Existing Interfaces Control lattice –Free-form deformations –NURBS surface control points Physical Simulation –Deformable Models –Level Set Editing Operators Sculpting interfaces –Voxel-based sculpting –Surface sculpting

8 Existing Interfaces Control lattice –Free-form deformations –NURBS surface control points Physical Simulation –Deformable Models –Level Set Editing Operators Sculpting interfaces –Voxel-based sculpting –Surface sculpting

9 Existing Interfaces Control lattice –Free-form deformations –NURBS surface control points Physical Simulation –Deformable Models –Level Set Editing Operators Sculpting interfaces –Voxel-based sculpting –Surface sculpting

10 Existing Interfaces Control lattice –Free-form deformations –NURBS surface control points Physical Simulation –Deformable Models –Level Set Editing Operators Sculpting interfaces –Voxel-based sculpting –Surface sculpting

11 Existing Interfaces Control lattice –Free-form deformations –NURBS surface control points Physical Simulation –Deformable Models –Level Set Editing Operators Sculpting interfaces –Voxel-based sculpting –Surface sculpting Maya Artisan Sculpt Surface Tool

12 Key Observation Directly “painting” and then interactively simulating is a more controllable, powerful way to locally deform surfaces.

13 Our Approach The user paints directly onto the surface of an object. Paint is interpreted as the instantaneous surface velocity. User simulates velocity until the desired effect is achieved.

14 Our Approach The user paints directly onto the surface of an object. Paint is interpreted as the instantaneous surface velocity. User simulates velocity until the desired effect is achieved.

15 Our Approach The user paints directly onto the surface of an object. Paint is interpreted as the instantaneous surface velocity. User simulates velocity until the desired effect is achieved.

16 Overview of Talk Introduction Method –Applying Paint –Defining Paint –Simulating Paint Results

17 Overview of Talk Introduction Method –Applying Paint –Defining Paint –Simulating Paint Results

18 Applying Paint Directly inject paint into scene. Use 2D brush bitmaps to modulate intensity [Hanrahan90]. Various Brushes

19 Applying Paint

20

21 Overview of Talk Background Method –Applying Paint –Defining Paint –Simulating Paint Results

22 Defining Paint What is paint? –Paint describes surface velocity

23 Surface Velocity Surface velocity can capture useful modeling operations: –Propagating: organic, blobby deformations –Advective: spiky, discontinuous –Curvature-dependent: diffusion

24 Surface Velocity We define surface velocity at some point along the model’s surface x, with surface normal n, as the linear combination of three terms: v(x) = v prop (x) + v adv (x) + v curv (x)

25 Propagating Velocity “Propagating” velocity causes the surface to move in the direction of its current surface normal, producing blobby, organic deformations: v prop (x) = αn

26 Propagating Velocity

27 Advective Velocity “Advective” velocity causes the surface to move at a constant speed in a constant direction: v adv (x) = βp

28 Advective Velocity

29 Curvature-Dependent Velocity “Curvature-dependent” velocity causes the surface to move at a speed proportional to its mean curvature, κ, in the direction of its surface normal. v curv (x) = γκn

30 Curvature-Dependent Velocity

31 Specify Paint Total velocity of a point on the model’s surface: v(x) = αn + βp + γκn

32 Specify Paint The paint IS the values of α, β, and γ. The direction of advective motion, p, determined by current viewing direction, surface normal, or arbitrary direction.

33 Overview of Talk Background Method –Applying Paint –Defining Paint –Simulating Paint Results

34 Simulating Paint Goal: move surface according to velocity user has “painted.”

35 Dynamic Surface We need a surface representation that supports: –Interactive update rates. –Associate paint with surface. –Editing at multiple scales. Created prototype system with two representations: –Level Sets –Dynamic Triangle Mesh

36 Triangle Mesh Represent surface as triangle mesh where the vertices are free to move in space. Store paint at each vertex.

37 Adaptive Refinement Our implementation provides two types of mesh refinement: –Temporal: refine mesh during deformation to accurately sample the dynamic surface. –Brush-Dependent: refine mesh depending on location and orientation of brush to accurately sample the brush.

38 Temporal Refinement Explicitly maintain an even distribution of vertices over the surface by refining mesh.

39 Temporal Refinement Explicitly maintain an even distribution of vertices over the surface by refining mesh.

40 Adaptive Refinement Our implementation provides two types of mesh refinement: –Temporal: refine mesh during deformation to accurately sample the dynamic surface. –Painting: refine mesh depending on location and orientation of brush to accurately sample the brush.

41 Brush-Dependent Refinement

42 Overview of Talk Background Method –Applying Paint –Defining Paint –Simulating Paint Results

43 Results

44 Results Painting interface meets challenges: –Complex Surfaces –Scale –User Control Modeling Time: 20 min.

45 Results Painting interface meets challenges: –Complex Surfaces –Scale –User Control Modeling Time: 20 min.

46 Results Painting interface meets challenges: –Complex Surfaces –Scale –User Control Modeling Time: 3 min.

47 Conclusion We have found that this painting metaphor gives the user direct, local control over surface deformations for several applications: –Creating new models –Removing noise from existing models –Adding geometric texture to an existing surface at multiple scales

48 Limitations Covers limited class of objects. Self- intersections. Topological changes. David Breen, et. al.

49 Limitations Covers limited class of objects. Self- intersections. Topological changes.

50 Limitations Covers limited class of objects. Self- intersections. Topological changes.

51 Limitations Covers limited class of objects. Self- intersections. Topological changes.

52 Future Work Adaptive level sets. Transfering geometric texture from one part of a model to another. Expressing geometric content as paint for compression applications. Time-dependent pigment vectors (e.g. spline curves on a sphere).

53 Acknowledgements Ross Whitaker’s VISPACK Daniel Aliaga

54

55 Applying Paint: Level Sets

56 Level Sets: Details Level Set Theory tells us how to change the samples to induce some desired change in the embedded surface.

57 Level Sets: Details Fundamental result from LS theory. F(…) is the speed of the surface at position x in the direction of its normal vector!

58 Mesh Refinement Maintain desired edge length. f = actual/desired –f < 0.5 collapse –f > 1.5 split Swap to maximize minimum interior angle. Markosian, et. al.


Download ppt "A Painting Interface for Interactive Surface Deformations Jason Lawrence Thomas Funkhouser Princeton University."

Similar presentations


Ads by Google