Biomedical Engineering Reference
In-Depth Information
the previous and current frame did not exceed 180 in each dimension, which is a
reasonable assumption in real-time simulations. Therefore, we compute the smaller
of the two angles in each direction that can lead from the previous orientation angle
to the current angle (i.e., rotating clockwise or counterclockwise). The computed
Δ ˜
y ( n )
p ( n )
r ( n )
,
Δ ˜
and
Δ ˜
angles are in the interval
[−
180
,
180
)
.
r
r
r
Mapping Relative Changes
Linear and angular changes of the user's head pose in tracking coordinates have
to be mapped to the virtual environment for each rendering frame, i.e., the virtual
position and orientation result from accumulation of relative differences measured
in the physical tracking volume. We can describe a one-to-one relative mapping for
all linear and angular movements from the tracking volume to virtual coordinates in
pseudo code as follows:
Algorithm 3 Relative mapping from tracked head to camera coordinates
for all rendering frames n N do
// Get current head tracking state:
(
x ( n )
y ( n )
z ( n )
3 )
,
,
)
tracked head position (in R
r
r
r
( y ( n )
, p ( n )
, r ( n )
3 )
)
[
,
)
tracked head orientation (in
0
360
r
r
r
// Compute relative changes:
(
x ( n )
y ( n )
z ( n )
3 )
,
,
)
head position change (in R
r
r
r
y ( n )
r
p ( n )
r
r ( n )
r
3 )
( ˜
, ˜
, ˜
)
head orientation change (in
[−
180
,
180
)
// Set virtual camera state:
(
x ( n )
y ( n )
z ( n )
x ( n 1 )
y ( n 1 )
z ( n 1 )
x ( n )
y ( n )
z ( n )
,
,
) (
,
,
) + (
,
,
)
// position
v
v
v
v
v
v
r
r
r
( y ( n )
, p ( n )
, r ( n )
) ( y ( n 1 )
, p ( n 1 )
, r ( n 1 )
) + ( y ( n )
, p ( n )
, r ( n )
)
// orientation
v
v
v
v
v
v
r
r
r
end for
This approach describes relative transformations from one rendering frame to the
next, i.e., it is reasonable to initialize the virtual position and orientation of the user
at the beginning of the VR experience with the identical state as in the tracking
volume, or to define an initial offset using reference coordinates as described for
isometric mappings (see Sect. 10.3.2 ).
Local Frames of Reference
In contrast to the absolute position and orientation of the user in tracking coordinates,
such relative changes are independent of a specific origin defined in the tracking vol-
ume. However, the relative changes are not independent of the specific axes defined in
the tracking space. In particular, amovement of a user's head is described as a position
change for frame n
x ( n )
y ( n )
z ( n )
3 along the x -, y - and z -axes
∈ N
) ∈ R
as
r
r
r
 
Search WWH ::




Custom Search