54
Teddy: A Sketching Teddy: A Sketching Interface for 3D Interface for 3D Freeform Design Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology SIGGRAPH 1999 SIGGRAPH 1999

Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Embed Size (px)

Citation preview

Page 1: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Teddy: A Sketching Teddy: A Sketching Interface for 3D Interface for 3D Freeform DesignFreeform Design

Takeo IgarashiUniversity of Tokyo

Satoshi Matsuoka, Hidehiko TanakaTokyo Institute of Technology

SIGGRAPH 1999SIGGRAPH 1999

Page 2: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

ListList

1. Abstract

2. Introduction

3. Related Work

4. User Interface

5. Modeling Operations

6. Algorithm

7. Implementation

8. User Experience

9. Future Work

1. Overview

2. Creating a New Object

3. Painting and Erasing on the Surface

4. Extrusion

5. Cutting

6. Smoothing

7. Transformation

1. Creating a New Object

2. Painting on the Surface

3. Extrusion

4. Cutting

5. Smoothing

Page 3: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Abstract *Abstract *

Sketching Interface for 3D Freeform Design Sketching interface for quickly and easily designing

freeform models

User draws 2D freeform strokes interactively

System constructs 3D polygonal surface automatically

System supports several modeling operations

• Inflating the region surrounded by the silhouette

Page 4: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Abstract **Abstract **

Teddy Prototype system Java program Mesh construction

is done in real-time

User Study (for first-user) Mastering the operations : 10 minutes Constructing interesting 3D models : minutes

Page 5: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

1. Introduction *1. Introduction *

Creating Freeform Surfaces is difficult & tedious

SKETCH This paper extends ideas of SKETCH

Using Freeform strokes as expressive design tool User draw 2D freeform strokes interactively

System constructs a 3D polygon surface models based on the strokes

Editing operations by strokes

Resulting models have a hand-crafted feel

Page 6: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

MoviesMovies

Page 7: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

SKETCH: An interface for SKETCH: An interface for sketching 3D scenessketching 3D scenes

Modeling 3D Object by Sketch Interface Legends of strokes

CSG subtraction

Page 8: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

1. Introduction **1. Introduction **

Paper Sketch Interface Algorithms for constructing 3D shapes from 2D strokes Implementation of our prototype system, Teddy

Geometric representation Standard polygonal mesh

Interface can be used to other representation Volumes or metaballs metaball

Page 9: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

1. Introduction ***1. Introduction ***

Design Goal of Teddy Construction of approximate models

Not for careful editing of precise model

Interactive Real-time pen-and-ink rendering

Java on mid-range PC

Page 10: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

1. Introduction ****1. Introduction ****

Obvious Application of Teddy Design of 3D models for character animation

Rapid prototyping in the early stages of design

Educational/recreational use for non-professionals and children

Real-time communication assistance on pen-based system

Page 11: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Figure 2:Painted models created using Teddy and painted using a commercial texture-map editor

Page 12: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Applications Applications

PC package MagicalSketch 2

Gamecube game Playstation2 game

                           

                              

Page 13: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

2. Related Work *2. Related Work *

Geometric Modeling Typical procedure

- Start with a simple primitives

• Successive transformation

• Combination of multiple primitives

Transformation Techniques

- User create various precise, smooth models interactively

• Deformation [15] Free-form deformations with lattices of arbitrary topology

[23] Wires: a geometric deformation technique

• Shape manipulation [8] Visual interfaces for solids modeling

Construct complex model

Page 14: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Free-form deformations with Free-form deformations with lattices of arbitrary topologylattices of arbitrary topology

R. MacCracken and K.I. Joy. SIGGRAPH 96

Generalize Previous FFD Lattices of Arbitrary Topology Use Catmull-Clark subdivision

Page 15: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Wires: a geometric Wires: a geometric deformation techniquedeformation technique

K. Singh and E. Fiume SIGGRAPH 98

Wire curve is shape’s deformable features

Page 16: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

2. Related Work **2. Related Work **

Implicit Surfaces ( Skeleton Models ) User specifies the skeleton of model

System construct smooth, natural-looking surfaces

[3] Interactive techniques for implicit modeling

[18] Polygon inflation for animated models: a method for the extrusion of arbitrary polygon meshes.

Surface inflation method [17] Object modeling by distribution function and a method of

image generation

Page 17: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Interactive techniques for Interactive techniques for implicit modelingimplicit modeling

J. Bloomenthal and B. Wyvill 1990 Symposium on Interactive 3D Graphics

User control its skeleton,system compute correspondingimplicit surface automatically

Page 18: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

2. Related Work ***2. Related Work ***

This paper User specify the silhouette of shape instead of skeleton

Inspired by previous sketch-based modeling system Inferring 3D models from freehand sketches and constraints

SKETCH: An interface for sketching 3D scenes

Interpret user’s stroke and construct 3D rectilinear model

Goal of this paper Interface for designing rounded freeform models

Page 19: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

2. Related Work ****2. Related Work ****

Inflation of a 2D drawing Shading in Two Dimensions

3D surface editing based on 2D painting 3D Paint Target is 2D array with associated height values Rather than 3D pol

ygon

Using 3D Input/Output Devices The Holosketch VR sketching system.

Page 20: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

3D Paint3D Paint L. Williams 1990 Symposium on Interactive 3D Graphics

Extend Drawing, painting metaphor to 3rd dimensions

Surface is Height Value of 2D Arrays

Page 21: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

2. Related Work ****2. Related Work ****

Freeform Strokes for 2D Application Specifying gestural command

Ambiguous intentions: A paperlike interface for creative design Interactive sketching for the early stages of user interface design

Specifying 2D curve A mark-based interaction paradigm for free-hand drawing

• Editing curve by sketching

Merits• Find the best matching arcs or splines automatically

• Freeing the user from explicit control of underlying parameter

Page 22: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Interactive Sketching for the Early Interactive Sketching for the Early Stages of User Interface Design Stages of User Interface Design

J.A. Landay and B.A. Myers. 1995 CHI

SILK Interface designers sketch the interface system produces application based on sketch automatically

Page 23: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

2. Related Work *****2. Related Work *****

Volumetric representation Volume sculpting Sculpting: an interactive volumetric modeling technique Useful for designing topologically complicated shapes

Mesh-construction algorithm Fundamental representation for geometric modeling and CG Based on a variety of work on polygonal mesh manipulation

Mesh optimization Shape design : Free-form shape design using triangulated

surfaces Surface fairing : A signal processing approach to fair surface

design

Page 24: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Sculpting: an interactive Sculpting: an interactive volumetric modeling techniquevolumetric modeling technique

T. Galyean and J.F. Hughes 1991 SIGGRAPH

Sculpting 3D Voxel DataControlling by 3D Devices

Page 25: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

3. User Interface3. User Interface

Physical User Interface Traditional 2D input devices

• Mouse or tablet

Interface Do not use

• WIMP-style direct manipulation techniques

• WIMP = window, icon, menu, pointer

• Standard interface widget

• Button, menu …

Use only freeform strokes on the screen

Page 26: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

4. Modeling Operation4. Modeling Operation

Modeling Operation from the User’s point of view Operations are executed after user complete a stroke

Not Supported Creation of Multiple Objects and combining single object Model must have a spherical topology

• E.g torus (x) Strokes do not intersect

Basic Operations Creation, Painting, Extrusion, cutting, erasing

Page 27: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

4.1 Overview4.1 Overview

Basic Operation and Result

Summarizing the modeling operation available

Page 28: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology
Page 29: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology
Page 30: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Figure 5: example of Creation Operation (top: Stroke, middle: result, bottom: rotation)

Page 31: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Figure 6: example of Extrusion (top: extruding stroke, bottom: result of extrusion)

Figure 7: More Extrusion Operation (digging cave, drawing)

Page 32: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Figure 8: Cutting Operation

Figure 9: Extrusion After Cutting

Page 33: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Figure 10: Smoothing Operation

Page 34: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Figure 11: Examples of Transformation (top: bending, bottom: distorting)

Page 35: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5. Algorithm5. Algorithm

How the system constructs a 3D polygonal mesh from the user’s freeform strokes

Creation and extrusion Freeform surface construction based on skeleton

Input Strokes is Resampled To remove noise in the handwriting input strokes To construct a regular polygonal mesh Smooth polyline with uniform edge length

Page 36: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.1 Creating a New Object*5.1 Creating a New Object*

Overall Procedure

1. Closed planar polygon

2. Spine or axes of the polygon

3. Elevate vertices of the spine

4. Polygonal mesh wrapping the spine

Page 37: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.1 Creating a New Object**5.1 Creating a New Object**

Figure 13: Finding the Spine

Page 38: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

1. Closed planar polygon (13a) All edges has predefined unit length

External edge: initial polygon

Internal edge: edges added in the triangulation

- Triangulation (13b) Constraint Delaunay Triangulation

Terminal triangle: 2 external edges

Sleeve triangle: 1 external edges

Junction triangle: 0 external edge

5.1 Creating a New Object5.1 Creating a New Object******

Page 39: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.1 Creating a New Object5.1 Creating a New Object********

2. Spine or axes of the polygon Spine by Chordal Axis (13c)

• Connecting the midpoint of the internal edges

Pruning (13d)

Pruned spine (13e)• Chordal axis of remaining sleeve and junction triangles

Subdivision of sleeve and junction triangle (13f)

Page 40: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.1 Creating a New Object5.1 Creating a New Object**********

Pruning Merge triangles Removing interior edge

Triangulation with a fan

• Stop 1: Some vertex lies outside the semicircle

• Stop 2: Newly merged triangle is a junction triangle

Page 41: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.1 Creating a New Object5.1 Creating a New Object************

3. Elevate vertices of the spine

Average distance between vertex and external vertex directly connected to the vertex (b)

4. Polygonal mesh wrapping the spine Elevate fan edge is converted to a quarter oval (c) Sewing together the neighboring elevated edge (d)

Page 42: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.2 Painting on the Surface5.2 Painting on the Surface

Create surface line Projecting each line segment of the input stroke

onto the object’s surface polygon

Method 1. Calculate bounded plane

2. Find intersections between plane and polygon

Only nearest intersecting polygon is used

Page 43: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.3 Extrusion*5.3 Extrusion*

Creating new polygonal meshes Stroke: Closed base surface line (base ring)

Extruding stroke

Method Base ring sweep along the projected extruding stroke

Figure 17: Extrusion Algorithm

Page 44: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.3 Extrusion**5.3 Extrusion**

1. Producing 3D extruding stroke Find the plane for projection

Project 2D extruding stroke onto the plane

2. Pointer Advancing Create copy of the base ring along the extruding stroke

3. Delete original polygon surrounded by the base ring

4. Create new polygon by sewing adjacent rings

Page 45: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.3 Extrusion***5.3 Extrusion***

Point Advancing Advancing from two end pointer (left, right)

Three possibility

• Left pointer / Right pointer / both

Goodness value

• Increases angle between line connecting two pointers and direction of strokes

Figure 18: Sweeping the Base Ring

Page 46: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.3 Extrusion****5.3 Extrusion****

User draw unexpected extruding stroke or base surface is not sufficiently planar

Figure 19: Unintuitive Extrusions

Page 47: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.4 Cutting5.4 Cutting

Based on the painting algorithm

1. Projected onto the front and back facing polygon

2. Connects the corresponding end points of the projected edges to construct a planer polygon

3. Triangulating planer polygon

4. Removing all polygons to the left of the cutting strokes

Figure 20: Cutting

Page 48: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

5.5 Smoothing5.5 Smoothing

Determine of Z-value of Vertex Bazier curve between

two end-point of the ring on 2D plane

Figure 21: Smoothing Algorithm

Page 49: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

6. Implementation*6. Implementation*

Prototype : 13000 line Java program

Test Devices Display-integrated tablet (Mutoh MVT-14) Electric whiteboard (Xerox Liveboard) Standard mouse

Speed Mesh construction process is real-time if model becomes complicated, it causes a short pause

Page 50: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

6. Implementation**6. Implementation**

Figure 2 3D models created with Teddy

Painted using a commercial texture-map editor

• Chameleon

Results reflect the hand-drawn nature of the shape Quite different from 3D models created in other modeling

system

Page 51: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

7. User Experience7. User Experience

Feedback of Teddy Quite intuitive

Explore various 3D design

Observation of how first-time users learn teddy Create their own models fluently within 10 minutes

• 5 minutes : tutorial

• 5minutes : guided practices

It takes a few minutes to Create stuffed animal

Page 52: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

8. Future Work8. Future Work

Algorithms and Implementation are Robust, Efficient Intuitive result, when user draw unexpected strokes

Research Direction Develop additional modeling operation

• Support a wider variety of shapes with arbitrary topology

• Allow more precise control of the shape

Possible Operation

• Create crease

• Twisting the models

• Specifying the constraints between the separate parts for animation system

Page 53: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Further ResearchFurther Research

Chameleon : 3D Paint for Teddy Paint on 3D Model

System Makes 2D Texture Automatically

Application

Movies

Page 54: Teddy: A Sketching Interface for 3D Freeform Design Takeo Igarashi University of Tokyo Satoshi Matsuoka, Hidehiko Tanaka Tokyo Institute of Technology

Further ResearchFurther Research

SmoothTeddy 3D Modeling

and Painting System

Application

Movies