Sketch-based modeling and interaction

Summary

Our sketching work has been dominated by an interest in allowing novice users to draw 3D shapes easily. The original SKETCH paper (from which the folks at Google SketchUp seem to have drawn some ideas, although I cannot confirm this for certain) let users build shapes similar to those easily created in CAD programs --- boxes, cylinders, cones, extrusions --- and sums and differences of these. It also let users sketch constraints on the motions of the resulting object, so that a drawer was constrained to slide in and out of a desk, for instance, or a door was constrained to rotate about its hinge.

More recently, we've been examining the very interesting question of how to create free-form shapes from sketches. Arguably, this is related to our earliest publication on the topic, on using a 3D input device to sketch shapes volumetrically, but the recent approach is completely different, involving methods from computer vision, stochastic differential equations, computational topology, and optimization.

At the same time, we've worked on multiple sketching interfaces for clothing, believing that having a concrete application helps to focus one's research. The two principal areas have been sketching the shape of clothing itself, and in sketching the way in which clothes are to be placed on a figure --- the "dressing problem."

Project goals

Our goal is to create sketch-based interfaces for particular applications (like clothing design and dressing virtual characters) and for more general tasks like the sketching of free-form shapes. The sketching, in each case, should feel natural and intuitive, and the collection of gestures and outside interactions be kept to a minimum.

Discussion

Open Questions

Some questions that have arisen as we studied sketching:

  • How can we effectively sketch animation?
  • What's the distribution of the Gaussian curvature for a randomly chosen point on a random surface in the world? What's the conditional distribution, given that the curvature in some direction is known to be k?
  • Oversketching is useful in drawing: just draw a curve over and over again until it seems right, and draw that last, "right" curve really dark. Given the limitations of the mouse and other computer-input devices, even tablets, can we somehow make an 'average' of the curves sketched so far, but in a way that doesn't annoy users? Just averaging all the points that are 30% along their respect curves, or 50%, or any other number between 0 and 100%, gives a really ugly result, with most features just "blurred out".

Papers