We have built a system that allows users to naturally manipulate virtual 3D models with both hands on the Responsive Workbench, a tabletop VR device. Our design is largely based upon Guiard's observations of how humans distribute work between the two hands in the real world. We show how to apply these principles for the workbench environment and describe many issues encountered during the design. We first develop a framework for two-handed interaction and then explore a variety of two-handed 3D tools and interactive techniques. Related issues include how constraints are implemented and controlled by the two hands and how transitions between one-handedand two-handed tasks occur seemlessly. Informal observations of the system in practice show that users can perform navigation and manipulation tasks easily and with little training using the two-handed environment. One of our interesting findings was that users often performed two-handed manipulations by combining two otherwise independent one-handed tools in a synergistic fashion. In these cases, we did not program two-handed behaviors explicitly into the system; instead they emerged naturally.
We present a kinematic system for creating art-directed wrinkles on costumes for CG characters. This system employs a curve-based method for creating wrinkles on reference poses, which are incorporated into a weighted matching algorithm that generates wrinkle deformations on an animated character. The wrinkle creation tool is intuitive to use and accommodates art direction. The user can easily transfer wrinkle patterns to different characters, costumes, and body types. The algorithm for evaluating wrinkles measures the local stress of a surface and creates weights that are used to interpolate between the reference wrinkle patterns during movement. This algorithm is robust and efficient, and fits well into a large-scale feature-film production environment.
Figure 1: Multicore evaluation of part of a single frame of animation for four hero characters on a 12 core machine. Vertical axis shows concurrent nodes in flight for various parts of the character. Horizontal axis is time. Colors indicate different character components. for example orange is face, green is clothing, purple is motion system. Each block is a single node in the graph. Note that parallelism within nodes is not shown here, so the true scalability is better than it appears. * We present the motivation, design choices and implementation of the graph engine itself, and then discuss production adoption considerations.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.