If we work with object in virtual world in natural manner, we can interact easily only with objects, which are located within user's arm reach. Problem is coming up when user wants to interact with remote object. It happens when distance between object and user is larger than the (physical) length of user's arm. Under circumstances we must move more closely to object and grab it. Problem is solved using techniques, which are stated in literature as arm-extension or local selection techniques. These techniques use non-realistic selection when user's virtual arm is able to dynamically grow to desired length (opposite to user's physical arm). Thus the selection of remote object can be made by virtual hand that is always long enough. The technique with visual feedback provides natural mapping (though nonlinear) of physical movement to virtual movement of arm. Basically, we can say, that arm-extension technique makes remote objects manipulation simpler and faster, because we may interact with them by natural hand and arm motions.
One of these techniques is Go-Go technique (Figure 3) that was published in [4].
Around user there is defined a local region with perimeter . Until the user's hand
stays in this region the virtual hand moves in one to one correspondence
with physical hand (using some linear mapping). If the physical hand leaves
local region then the virtual hand begins to move outwards faster than the physical hand.
Go-Go technique allows the user to interact with remote objects (without precise manipulation)
and in a local
region it allows delicate manipulation. Length of virtual arm
is calculated
using non-linear mapping function
(see Figure 2), eg. that is explained in [4]:
where is length of physical arm,
is length of virtual arm and
is distance where a linear part of function is applied
This function is designed to ensure smooth transition between linear and
non-linear part.
![]() |
Modified version of previous method is technique "fast" Go-Go [2],
which has no local region and more rapidly growing mapping function.
However, Go-Go technique
has a finite range still, which is defined by mapping function. Then for
various VEs we must correct function so that it would be possible to
grab most of the objects in scene. This disadvantage is solved using other
modification, which is called "stretch" Go-Go, that divides
area surrounding user into three concentric regions. In the inner region, arm length is
retracted, in the middle region it remains the same and in the outermost
region arm stretches out with constant speed. The next modification can be
the installation of signal, which allows to stretch and retract arm length
(eg. using two buttons). This technique is called indirect stretch Go-Go.