Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!cs.utexas.edu!usc!sdd.hp.com!uakari.primate.wisc.edu!dali.cs.montana.edu!milton!cphoenix@csli.Stanford.EDU From: cphoenix@csli.Stanford.EDU (Chris Phoenix) Newsgroups: sci.virtual-worlds Subject: Many-dimensional input devices Message-ID: <7985@milton.u.washington.edu> Date: 20 Sep 90 23:10:51 GMT Sender: hlab@milton.u.washington.edu Organization: Center for the Study of Language and Information, Stanford U. Lines: 43 Approved: hitl@hardy.u.washington.edu So far, I've heard people talking about input devices mainly in terms of moving the user's viewpoint around the "space". But there are many other things that can be done as well. For example, a VR artist may draw a picture and want to be able to change several things quickly until it is "just right". An architect may have hundreds or thousands of variables to specify a building. A statistician needs to specify how to map a data set onto an N-dimensional graph. All of these tasks involve many variables which can change independently. As long as we're dealing with many dimensions anyway, it seems like VR could be quite useful to allow people to develop a good fit to a problem with many variables. But input devices have a limited number of degrees of freedom, so they can only specify a few dimensions at a time. What kind of transformation could you apply to, say, a dataglove to allow specification of coordinates in arbitrarily large dimensions? Perhaps you could use one DF to specify which dimensions the others controlled. As you bend your finger, different parts of the building you're designing become highlighted, and then moving your hand changes their parameters. However, this seems clumsy and it still won't let you change many dimensions at a time. Perhaps some functions could be specified to derive some coordinate values from others--you could specify that windows should always end 2 feet below the ceiling, and then when you changed the ceiling height the windows would change too. But these functions would be impossible to guess in advance, and awkward to specify at runtime. Perhaps you could use "intelligent" software to allow you to change dimensions by reaching for their manifestations in the picture, so that you could just grab a windowframe and move it. But this only works for attributes that you can touch in some sense, and it would be hard to make it intuitive for very many things. (Picture a point in a graph. When you grab it, does that mean you want to change the shape or the color?) Does anyone else have any suggestions for ways to build such input devices, either hardware or software? -- War is a little naked kid running along a road and screaming because the napalm hurts so bad. War is young men in body bags -- theirs and ours. And the dying doesn't necessarily have anything to do with baseball, apple pie and the Grand Old Flag. -- Mike Royko