The translation part of the head motion has not been addressed. Ideally, the head should be the same height in the virtual world as in the real world. This can be handled by the translation part of the matrix (3.36).
We must also account for the fact that as the head rotates, the eyes change their positions. For example, in a yaw head movement (nodding ``no''), the pupils displace a few centimeters in the direction. More accurately, they travel along a circular arc in a horizontal plane. To more closely mimic the real world, the movements of the eyes through space can be simulated by changing the center of rotation according to a fictitious head model [3]. This trick is needed until Section 9.3, where position is instead estimated from more sensors.
Recall from Section 3.5 that the cyclopean viewpoint was first considered and then modified to handle left and right eyes by applying horizontal offsets by inserting (3.50) and (3.52). In a similar way, offsets in the and directions can be added to account for displacement that would come from a rotating head. The result is to insert the following before or after and :
An issue also exists with the height of the head center. The user may be seated in the real world, but standing in the virtual world. This mismatch might be uncomfortable. The brain knows that the body is seated because of proprioception, regardless of the visual stimuli provided by VR. If the user is standing, then the head-center height could be set so that the eyes are at the same height as in the real world. This issue even exists for the case of full six-DOF tracking, which is covered next; the user might be sitting, and a vertical offset is added to make him appear to be standing in VR.
Steven M LaValle 2020-11-11