Package org.lwjgl.ovr

Class OVRLayerEyeMatrix

All Implemented Interfaces:
AutoCloseable, NativeResource, Pointer

public class OVRLayerEyeMatrix extends Struct<OVRLayerEyeMatrix> implements NativeResource
Describes a layer that specifies a monoscopic or stereoscopic view.

This uses a direct 3x4 matrix to map from view space to the UV coordinates. It is essentially the same thing as OVRLayerEyeFov but using a much lower level. This is mainly to provide compatibility with specific apps. Unless the application really requires this flexibility, it is usually better to use ovrLayerEyeFov.

Three options exist with respect to mono/stereo texture usage:

  • ColorTexture[0] and ColorTexture[1] contain the left and right stereo renderings, respectively. Viewport[0] and Viewport[1] refer to ColorTexture[0] and ColorTexture[1], respectively.
  • ColorTexture[0] contains both the left and right renderings, ColorTexture[1] is NULL, and Viewport[0] and Viewport[1] refer to sub-rects with ColorTexture[0].
  • ColorTexture[0] contains a single monoscopic rendering, and Viewport[0] and Viewport[1] both refer to that rendering.

Layout


 struct ovrLayerEyeMatrix {
     ovrLayerHeader Header();
     ovrTextureSwapChain ColorTexture()[ovrEye_Count];
     ovrRecti Viewport()[ovrEye_Count];
     ovrPosef RenderPose()[ovrEye_Count];
     ovrMatrix4f Matrix()[ovrEye_Count];
     double SensorSampleTime();
 }