Struct ovr_sys::ovrLayerEyeFov
[−]
[src]
#[repr(C)]pub struct ovrLayerEyeFov { pub _align: [isize; 0], pub Header: ovrLayerHeader, pub ColorTexture: [ovrTextureSwapChain; 2], pub Viewport: [ovrRecti; 2], pub Fov: [ovrFovPort; 2], pub RenderPose: [ovrPosef; 2], pub SensorSampleTime: f64, }
Describes a layer that specifies a monoscopic or stereoscopic view.
This is the kind of layer that's typically used as layer 0 to ovr_SubmitFrame
,
as it is the kind of layer used to render a 3D stereoscopic view.
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.
Fields
_align: [isize; 0]
Header: ovrLayerHeader
Header.Type must be ovrLayerType_EyeFov
.
ColorTexture: [ovrTextureSwapChain; 2]
ovrTextureSwapChains
for the left and right eye respectively.
The second one of which can be NULL for cases described above.
Viewport: [ovrRecti; 2]
Specifies the ColorTexture sub-rect UV coordinates.
Both Viewport[0]
and Viewport[1]
must be valid.
Fov: [ovrFovPort; 2]
The viewport field of view.
RenderPose: [ovrPosef; 2]
Specifies the position and orientation of each eye view, with the position specified in meters.
RenderPose will typically be the value returned from ovr_CalcEyePoses
,
but can be different in special cases if a different head pose is used for rendering.
SensorSampleTime: f64
Specifies the timestamp when the source ovrPosef
(used in calculating RenderPose)
was sampled from the SDK. Typically retrieved by calling ovr_GetTimeInSeconds
around the instant the application calls ovr_GetTrackingState
The main purpose for this is to accurately track app tracking latency.
Trait Implementations
impl Debug for ovrLayerEyeFov
[src]
impl Copy for ovrLayerEyeFov
[src]
impl Clone for ovrLayerEyeFov
[src]
fn clone(&self) -> ovrLayerEyeFov
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more