Ergonomical 3D-World Human Interfaces
(Written by Stanislaw Y. Pusep, 10/May/2002, revision #1)
- Preface
- Doomed Fingers
- Practical Solution
- Ergonomical Ones
- Conclusion
- Notes

Preface
Many modern applications uses a concept of 3D Worlds. Some of them are
action games, others are simulation ambients. Most of them interacts
with human beings. 3D helmets, stereo glasses and sensor gloves are
considerated realistic and intuitive; almost perfect (IMHO, all those
hi-tech gadgets are just cute toys, pretty useless). But they're too
expensive. Few Quake players can buy such a thing "just for fun".
But why no one seems to get a simple truth: no matters how realistic is
representation of VR (Virtual Reality), it stills fake. Just abstraction
of what we call Real World. If so, using 3D cave isn't far from using
good old 14" monitor, keyboard & mouse. Why no one cares of how much
ergonomical are keyboard controls for 3D applications?

Doomed Fingers
If you thought that keys and mouse actions used today to control "avatars"
in "3D scenes" where made to allow you easy and almost total freedom of
moviments, you're damn wrong. I'll use Id Software's Doom as example
(being more precise, Doom Legacy). I hope most people
played it at least once in
a life. It's also pretty primitive, what makes easy to examplify my thoughts.
Take a look: key meanings are intuitive (arrows for moviments, < and >
for strafe, space bar to activate things, 0-7 to select weapons, etc.).
But what about their positions? Very, very bad! Just try to walk backward
strafing to right and firing... Can you do that? OK, now, jump! What?
'A' key is too far? One may think: "I don't need such complex moviments,
Real World doesn't have them!". Hey, this is not a real word, it's VR!
So you may do everything you want... But you just can't! Why?

Practical Solution
"Hah, gimme joystick and 3D glasses and I'll do that!". Yeah, you can add
extra hardware do gain more freedom. You can also pass several hours
training different key combinations until you get something useful. I heard
about people that adopted themselves well enough to use default key bindings.
Now, I am proposing a study of keyboard and mouse bindings that are
"compatible" with your normal motion "features". After several tests, I found
that some key combinations really gived me more power. I studied only basical
functions, but I hope that's enough to give you some idea. Well, that's not
exactly one might call "intuitive" key bindings, but they seems to work very
fine, at least for me (I know some hardcore players, but they refused my idea
with no further explanations). I'll list here some controls and explanation
why they might work better than others widely used.

Ergonomical Ones
First of all, how to control your sight. Arrow keys are crap, they don't
allow you to make fast and precise moviments. Joystick isn't better: it's
precise but still slower than expected. My choice is mouse or trackball.
The problem is resolution of that devices. Low resolution results in less
precise moviments. So, I suggest you PS/2 mouse or trackball with
"overclocked"
PS/2 bus and lowered sensibility/acceleration. Now, how to bind mouse buttons.
3-buttoned mouse are the best, as you can bind almost all moviments there.
My favourite scheme is:
- left button: walk forward
- middle button: walk backward
- right button: fire or other action that requires pointing
The main idea here is to use your forefinger to walk forward/backward. Why?
First, because human beings have much more precision when using this finger.
And second, forward/backward are mutually exclusive, so you use your forefinger
to select direction. Now, you don't need much finger control to fire. That's
why "secondary" middle finger is nice here.
And now, "the rest" of moviments. Strafe left/right are also mutually exclusive.
But I don't think that forefinger is solution here. You'll need it to many things
now, like jumping, selecting weapon, item, etc. I think ring and middle fingers
goes well here. I suggest 'A' (ring finger of left hand) to strafe left and 'S'
(middle finger of left hand) to strife right. 'D' is for jump or similar frequent
action, you use your forefinger primarely here. You can use forefinger on
neighbor keys ('E', 'R', 'F', 'C') for not-so-used-but-useful actions. I use 'E'
for rocketjump, 'C' for crawl and 'F' for "next weapon". Uuuh, weapons are
another story... I really dunno where to bind them as I'm not hardcore player.
I use 0-7 in Doom (bad choice!) and 'R' for rocket as it's my main killer
weapon ;)
Now, thumb and little finger. Thumb is cool for activating things using space bar.
In Doom, I open doors with it. And little finger... Sorry, I don't use it as I
don't have much control over it. I tried to use it to "swim down" in Quake 1
but it fails here. Any idea?

Conclusion
Are you in doubt of efficience of such binding? Well, it works very well for me.
I took about 1 week to "assimilate" new configuration, and after that, I got much
more freedom than anytime before. For example: now I can pass 1-st level of Doom 2
at Ultra-Violence skill killing all monsters and without taking one shoot! You
think it's few? Not for me, as I'm very very slow gamer ;)
So, any ideas about ergonomical and comfortable key bindings are welcome!

Notes
-
Some games doesn't have so bad keyboard binding. One pretty fine I
saw was
Counter-Strike
one. Although, mouse is a bit misused there...
-
Doom Legacy
is an "enhanced" version of Doom engine built by guys called
Fabrice Denis & Boris Pereira from source of original game
released by
iD Software.
-
Windows XP built-in PS/2 driver has this option.
New drivers from Logitech
also allows you to set higher frequencies of PS/2 bus. For other PS/2
mouses, you can try to install
Logitech MouseWare drivers
or use special
programs like this one.