Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!wuarchive!uunet!ogicse!milton!hlab From: galt@dsd.es.com (Greg Alt - Perp) Newsgroups: sci.virtual-worlds Subject: Power Glove: Future Hi-Res Mode Message-ID: <1991Jun7.174904.19328@milton.u.washington.edu> Date: 7 Jun 91 17:37:57 GMT Article-I.D.: milton.1991Jun7.174904.19328 Sender: hlab@milton.u.washington.edu (Human Int. Technology Lab) Organization: Evans & Sutherland Computer Corp., Salt Lake City, UT Lines: 49 Approved: cyberoid@milton.u.washington.edu It looks like it might be a while before we get Power Glove Hi-res mode, so let's pretend that we have a function: typedef struct { float x1,y1,z1,x2,y2,z2; unsigned char finger; } PGloveRec; void PowerGlove(PGloveRec *pgr); Now, what will we do with this? I assume most of us want some kind of graphical object that looks like a hand, so we can pass this record to a function that moves the hand. But what about more interesting input? I plan on having a vehical similar to the wheelchair spaceship from BloomCounty comix. I was thinking I will have a virtual control panel on the right armrest (which will also be my (0,0,0) reference point. Whenever the glove is in a small neighborhood of the armrest, I will pass the data record to a function that interprets control panel operations and returns these commands. For movement, I thought a virtual joystick would be a good start--just return 1 of 8 different directions based on the tilt of the hand (pulling back would be done by position since it is difficult to tilt a joystick back when it is on an armrest. This mode would only be used if the hand was on the armrest, and a fist was made. Vertical movement could be accomplished by pointing with your thumb. (use the vector obtained by (x1-x2,y1-y2,z1-z2) ). Other finger positions could be used for pushing buttons either by using only the index finger and position, or have one button for each finger and ignore position. All of this would just be the small control panel, you would also have freedom to define any gesture controls for all the rest of the space. The more complicated input would be gestures that require a pattern of movement, such as grabbing and turning a door knob. What other gestures would be useful? What has already been done in the way of gesture input? I have seen picking up/carrying/throwing, is this all that has been implemented? What sort of gestures would be useful for creating new graphics objects in real-time? One thing that could be useful is to have a gesture for starting a polyline, then use rubber-banding to create wire-frame objects. This object could then be placed permanently to become part of the room/landscape/etc. If we can get Hi-res mode, I think much of this would be interesting even without goggles... Just using a moniter and maybe LCD 3D glasses... Greg