Go to the source code of this file.
Data Structures | |
struct | varjo_Matrix |
Double precision 4x4 matrix. More... | |
struct | varjo_Matrix3x3 |
Double precision 3x3 matrix. More... | |
struct | varjo_Ray |
Ray is a vector starting from an origin. More... | |
struct | varjo_Vector2Df |
32bit floating point 2D vector. More... | |
struct | varjo_Vector3D |
struct | varjo_Vector3Df |
struct | varjo_Vector3Di |
struct | varjo_Size3D |
64bit floating point size of a 3D object. More... | |
struct | varjo_Mesh2Df |
2D triangle list mesh. More... | |
struct | varjo_AlignedView |
Axis aligned tangents from a projection matrix. More... | |
struct | varjo_ViewInfo |
View information for a frame. More... | |
struct | varjo_FrameInfo |
Per-frame information. More... | |
struct | varjo_ViewDescription |
View description. More... | |
struct | varjo_Gaze |
Gaze tracker vectors and tracking state. More... | |
struct | varjo_EyeMeasurements |
Gaze tracker estimates of user's eye measurements. More... | |
struct | varjo_SwapChainLimits |
Minimum and maximum limits for swap chain texture count and size. More... | |
struct | varjo_Viewport |
Viewport rectangle that defines viewport area. More... | |
struct | varjo_Texture |
API-agnostic texture handle. More... | |
struct | varjo_InterPupillaryDistanceParameters |
Parameters passed to varjo_SetInterPupillaryDistanceParameters function. More... | |
struct | varjo_GazeParameters |
Parameters passed to varjo_GazeInitWithParameters function. More... | |
struct | varjo_GazeCalibrationParameters |
Parameters passed to varjo_RequestGazeCalibrationWithParameters function. More... | |
struct | varjo_FovTangents |
struct | varjo_FoveatedFovTangents_Hints |
struct | varjo_ShadingRateTable |
struct | varjo_StructureExtension |
struct | varjo_VariableRateShadingConfig |
Typedefs | |
typedef int64_t | varjo_Error |
typedef int32_t | varjo_Bool |
typedef int64_t | varjo_Nanoseconds |
Time in nanoseconds. More... | |
typedef int64_t | varjo_GazeStatus |
Gaze statuses. More... | |
typedef int64_t | varjo_GazeEyeStatus |
typedef int32_t | varjo_GazeEyeCalibrationQuality |
typedef int64_t | varjo_RotationReset |
Rotation reset types. More... | |
typedef int64_t | varjo_PropertyKey |
System status properties. More... | |
typedef int64_t | varjo_PoseType |
typedef int64_t | varjo_DisplayType |
typedef int64_t | varjo_Eye |
typedef int64_t | varjo_WindingOrder |
typedef int64_t | varjo_TextureFormat |
typedef int64_t | varjo_RenderAPI |
Render API flags. More... | |
typedef int64_t | varjo_EulerOrder |
typedef int64_t | varjo_RotationDirection |
typedef int64_t | varjo_Handedness |
typedef int64_t | varjo_ClipRange |
typedef int64_t | varjo_SubmitFlags |
Submit flags. More... | |
typedef int64_t | varjo_TextureSize_Type |
typedef int64_t | varjo_TextureSize_Type_Mask |
typedef int64_t | varjo_VariableRateShadingFlags |
typedef int | varjo_ShadingRate |
typedef int64_t | varjo_StructureType |
struct varjo_Matrix |
Double precision 4x4 matrix.
The matrix usage convention is that they are stored in column-major order and transforms are stacked before column-vector points when multiplying. That is, a pure translation matrix will have the position offset in elements 12..14.
Unless otherwise specified, the coordinate system is right-handed: X goes right, Y goes up and negative Z goes forward.
Data Fields | ||
---|---|---|
double | value[16] |
struct varjo_Matrix3x3 |
struct varjo_Ray |
struct varjo_Vector2Df |
struct varjo_Vector3D |
struct varjo_Vector3Df |
struct varjo_Vector3Di |
struct varjo_Size3D |
struct varjo_Mesh2Df |
2D triangle list mesh.
Data Fields | ||
---|---|---|
int32_t | vertexCount | Number of vertices. |
struct varjo_Vector2Df * | vertices | Vertex data. |
struct varjo_AlignedView |
Axis aligned tangents from a projection matrix.
The tangents are between the edge planes and projection centre and defined so that if the projection is centered, all of them are positive.
struct varjo_ViewInfo |
View information for a frame.
Data Fields | ||
---|---|---|
varjo_Bool | enabled | Whether this view should be rendered during current frame. |
int32_t | preferredHeight | Preferred height of the viewport. |
int32_t | preferredWidth | Preferred width of the viewport. |
double | projectionMatrix[16] | The projection matrix. See varjo_Matrix for conventions. |
int32_t | reserved | Unused. |
double | viewMatrix[16] | The view matrix, world-to-eye. See varjo_Matrix for conventions. |
struct varjo_FrameInfo |
Per-frame information.
Data Fields | ||
---|---|---|
varjo_Nanoseconds | displayTime | When the frame is estimated to be displayed. |
int64_t | frameNumber | Current frame number. |
struct varjo_ViewInfo * | views | Views for the frame. Array size is varjo_GetViewCount. |
struct varjo_ViewDescription |
View description.
Information about the associated eye, display and resolution.
Data Fields | ||
---|---|---|
varjo_DisplayType | display | Which display the view is for. |
varjo_Eye | eye | Which eye the view is for. |
int32_t | height | Default view height in pixels. |
int32_t | width | Default view width in pixels. |
struct varjo_Gaze |
Gaze tracker vectors and tracking state.
Data Fields | ||
---|---|---|
varjo_Nanoseconds | captureTime | Varjo time when this data was captured, see varjo_GetCurrentTime() |
double | focusDistance | Estimated gaze direction focus point distance. |
int64_t | frameNumber | Frame number, increases monotonically. |
struct varjo_Ray | gaze | Normalized gaze direction ray. |
struct varjo_Ray | leftEye | Left eye gaze ray. |
VARJORUNTIME_DEPRECATED double | leftPupilSize | Normalized [0..1] left eye pupil size. |
varjo_GazeEyeStatus | leftStatus | Status of left eye data. |
struct varjo_Ray | rightEye | Right eye gaze ray. |
VARJORUNTIME_DEPRECATED double | rightPupilSize | Normalized [0..1] right eye pupil size. |
varjo_GazeEyeStatus | rightStatus | Status of right eye data. |
double | stability | Focus point stability. |
varjo_GazeStatus | status | Tracking main status. |
struct varjo_EyeMeasurements |
Gaze tracker estimates of user's eye measurements.
Data Fields | ||
---|---|---|
varjo_Nanoseconds | captureTime | Varjo time when this data was captured, see varjo_GetCurrentTime() |
int64_t | frameNumber | Frame number, increases monotonically. |
float | interPupillaryDistanceInMM | Estimate of user's IPD in mm. |
float | leftEyeOpenness | Estimate of the openness ratio of the left eye; 1 corresponds to a fully open eye and 0 to a fully closed eye. |
float | leftIrisDiameterInMM | Estimate of left eye iris diameter in mm. |
float | leftPupilDiameterInMM | Estimate of left eye pupil diameter in mm. |
float | leftPupilIrisDiameterRatio | Ratio of left pupil to iris diameter in mm. In range [0..1]. |
float | rightEyeOpenness | Estimate of the openness ratio of the right eye; 1 corresponds to a fully open eye and 0 to a fully closed eye. |
float | rightIrisDiameterInMM | Estimate of right eye iris diameter in mm. |
float | rightPupilDiameterInMM | Estimate of right eye pupil diameter in mm. |
float | rightPupilIrisDiameterRatio | Ratio of right pupil to iris diameter in mm. In range [0..1]. |
struct varjo_SwapChainLimits |
Minimum and maximum limits for swap chain texture count and size.
struct varjo_Viewport |
struct varjo_Texture |
API-agnostic texture handle.
Use varjo_FromD3D11Texture, varjo_ToD3D11Texture, varjo_FromD3D12Texture, varjo_ToD3D12Texture, varjo_FromGLTexture, varjo_ToGLTexture, varjo_FromVkTexture and varjo_ToVkTexture to convert textures between Varjo and graphics APIs.
Data Fields | ||
---|---|---|
int64_t | reserved[4] |
struct varjo_InterPupillaryDistanceParameters |
Parameters passed to varjo_SetInterPupillaryDistanceParameters function.
Data Fields | ||
---|---|---|
const char * | key | |
const char * | value |
struct varjo_GazeParameters |
Parameters passed to varjo_GazeInitWithParameters function.
Data Fields | ||
---|---|---|
const char * | key | |
const char * | value |
struct varjo_GazeCalibrationParameters |
Parameters passed to varjo_RequestGazeCalibrationWithParameters function.
Data Fields | ||
---|---|---|
const char * | key | |
const char * | value |
struct varjo_ShadingRateTable |
Data Fields | ||
---|---|---|
varjo_ShadingRate | shadingRates[16] |
struct varjo_StructureExtension |
Data Fields | ||
---|---|---|
struct varjo_StructureExtension * | next | |
varjo_StructureType | type |
struct varjo_VariableRateShadingConfig |
Data Fields | ||
---|---|---|
varjo_VariableRateShadingFlags | flags | |
struct varjo_Gaze | gaze | Valid gaze, returned by varjo_GetRenderingGaze(). |
float | innerRadius |
Radius of the best quality shading rate of the foveated circle if gaze is enabled and calibrated (flags should contain varjo_VariableRateShadingFlag_Gaze). Normalized value between 0 and 1 where 1 is half width of the viewport. |
struct varjo_StructureExtension * | next | |
float | outerRadius |
Radius of the outer edge of foveated circle. Medium quality shading rate is generated between range [innerRadius, outerRadius]. Should be bigger than innerRadius. Normalized value between 0 and 1 where 1 is half width of the viewport. |
int32_t | viewIndex | View for which VRS map should be generated. |
struct varjo_Viewport | viewport | Viewport where VRS map should be generated inside given texture (can be whole texture or a part of it). |
typedef int32_t varjo_Bool |
typedef int64_t varjo_ClipRange |
typedef int64_t varjo_DisplayType |
typedef int64_t varjo_Error |
typedef int64_t varjo_EulerOrder |
typedef int64_t varjo_Eye |
typedef int32_t varjo_GazeEyeCalibrationQuality |
typedef int64_t varjo_GazeEyeStatus |
typedef int64_t varjo_GazeStatus |
Gaze statuses.
typedef int64_t varjo_Handedness |
typedef int64_t varjo_Nanoseconds |
Time in nanoseconds.
Absolute times are relative to an epoch which is constant during execution of the program.
typedef int64_t varjo_PoseType |
typedef int64_t varjo_PropertyKey |
System status properties.
typedef int64_t varjo_RenderAPI |
Render API flags.
typedef int64_t varjo_RotationDirection |
typedef int64_t varjo_RotationReset |
Rotation reset types.
typedef int varjo_ShadingRate |
typedef int64_t varjo_StructureType |
typedef int64_t varjo_SubmitFlags |
Submit flags.
typedef int64_t varjo_TextureFormat |
typedef int64_t varjo_TextureSize_Type |
typedef int64_t varjo_TextureSize_Type_Mask |
typedef int64_t varjo_VariableRateShadingFlags |
typedef int64_t varjo_WindingOrder |
|
static |
|
static |
|
static |
24-bit UNORM depth and 8-bit UINT stencil format
|
static |
32-bit floating point depth format
|
static |
32-bit FLOAT depth abd 8-bit UINT stencil format
|
static |
Context display.
|
static |
Focus display.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
Left eye.
|
static |
Right eye.
|
static |
|
static |
Gaze calibration parameters.
Gaze calibration type.
|
static |
Controls behavior of headset alignment guidance user interface during calibration process.
|
static |
|
static |
UI should continue automatically to actual calibration after headset alignment has been accepted.
|
static |
Fast (5-dot) gaze calibration.
|
static |
Deprecated. Don't use in new code. This will just trigger a fallback to 'Fast' calibration.
|
static |
One dot gaze calibration.
|
static |
|
static |
|
static |
UI should wait for user input to continue even after headset alignment has been detected as acceptable.
This is default mode.
|
static |
Quality of performed gaze calibration assessed as high.
|
static |
Gaze calibration was not performed or failed.
|
static |
Quality of performed gaze calibration assessed as low.
|
static |
Quality of performed gaze calibration assessed as medium.
|
static |
Eye is tracked but quality compromised (e.g. headset has moved after calibration).
|
static |
Eye is not tracked. (e.g. not visible or is shut).
|
static |
Eye is tracked.
|
static |
Eye is visible but not reliably tracked (e.g. saccade or blink).
|
static |
Gaze parameters.
Gaze output filter type.
|
static |
Gaze output update frequency.
|
static |
Output filter disabled.
|
static |
Standard smoothing output filter.
|
static |
100Hz output frequency.
|
static |
200Hz output frequency.
|
static |
Maximum output frequency supported by connected HMD.
This is the default mode. Currently it is 200Hz for all supported Varjo devices.
|
static |
User is wearing the device but gaze tracking is in middle of adjustment.
|
static |
Data is not available, user is not wearing the device or eyes can not be found.
|
static |
Data is valid.
|
static |
|
static |
|
static |
Interpupillary distance (IPD) parameters.
Interpupillary distance adjustment mode.
|
static |
Requested interpupillary distance position in millimeters in manual adjustment mode.
E.g. if pointer to "64.5" string is passed, manual IPD position will be adjusted to 64.5 mm. Passed string must be NUL-terminated, and must represent non-negative finite floating point value, optionally with decimal point for sub-millimeter accuracy (but not decimal comma). Values out of supported IPD range by current HMD will be clamped to the supported range. Applications could pass true measured user IPD value for getting optimal manual IPD adjustment in HMD.
|
static |
Interpupillary distance is adjusted automatically.
|
static |
Interpupillary distance is adjusted manually.
|
static |
8-bit alpha mask
|
static |
|
static |
Pose for the head (in the middle of the eyes).
|
static |
Pose for the left eye.
|
static |
Pose for the right eye.
|
static |
boolean. Is the HMD gaze tracker allowed.
|
static |
boolean. Is the HMD gaze tracker calibrated.
|
static |
boolean. Is system currently calibrating the HMD gaze tracker.
|
static |
float [0.0-1.0]. Quality of the gaze calibration.
|
static |
float [0.0-1.0]. Quality assessment of the left eye gaze calibration.
|
static |
float [0.0-1.0]. Quality assessment of the right eye gaze calibration.
|
static |
float. User interpupillary distance estimate in millimeters.
|
static |
boolean. Is HMD connected.
|
static |
string. Product name.
|
static |
string. Product serial number.
|
static |
Invalid property key.
|
static |
string. Current interpupillary distance adjustment mode.
|
static |
float. HMD interpupillary distance position in millimeters.
|
static |
boolean. Is Mixed Reality capable hardware present.
|
static |
boolean. Is user wearing the HMD.
|
static |
Direct3D11 rendering API.
|
static |
Direct3D12 rendering API.
|
static |
OpenGL rendering API.
|
static |
Vulkan rendering API.
|
static |
|
static |
|
static |
All rotation axes are reset.
|
static |
Rotation is not reset.
|
static |
Yaw rotation (around up Y axis) is reset.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
sRgb 8-bit BGRA format
|
static |
Rgb 8-bit BGRA format.
|
static |
Invalid format.
|
static |
YUV 4:2:0 semi-planar in NV12 format (8bit Y plane, 8+8bit interleaved UV plane in half resolution)
|
static |
Single channel 32-bit float format.
|
static |
Single channel 32-bit uint format.
|
static |
sRgb 8-bit RGBA format
|
static |
Rgb 8-bit RGBA format.
|
static |
RGBA 16 bit floating point.
|
static |
8-bit Y plane only
|
static |
YUV 4:2:2 semi-planar, 8bit Y plane, 8+8bit interleaved UV plane.
VARJORUNTIME_DEPRECATED const varjo_TextureSize_Type varjo_TextureSize_Type_BestQuality = 0 |
Maximum resolution which provides best possible quality.
VARJORUNTIME_DEPRECATED const varjo_TextureSize_Type_Mask varjo_TextureSize_Type_BestQuality_Mask = 0x1 |
Bitmask for BestQuality texture size type.
const varjo_TextureSize_Type varjo_TextureSize_Type_DynamicFoveation = 2 |
Best resolution for foveation mode.
const varjo_TextureSize_Type_Mask varjo_TextureSize_Type_DynamicFoveation_Mask = 0x4 |
Bitmask for DynamicFoveation texture size type.
const varjo_TextureSize_Type varjo_TextureSize_Type_Quad = 1 |
Resolution for static quad rendering mode.
const varjo_TextureSize_Type_Mask varjo_TextureSize_Type_Quad_Mask = 0x2 |
Bitmask for Quad texture size type.
VARJORUNTIME_DEPRECATED const varjo_TextureSize_Type varjo_TextureSize_Type_Recommended |
Recommended resolution, may not be as large as best quality but still provides great visual results.
VARJORUNTIME_DEPRECATED const varjo_TextureSize_Type_Mask varjo_TextureSize_Type_Recommended_Mask = 0x2 |
Bitmask for Recommended texture size type.
const varjo_TextureSize_Type varjo_TextureSize_Type_Stereo = 3 |
Resolution for stereo mode.
const varjo_TextureSize_Type_Mask varjo_TextureSize_Type_Stereo_Mask = 0x8 |
Bitmask for Stereo texture size type.
|
static |
const varjo_VariableRateShadingFlags varjo_VariableRateShadingFlag_Gaze = 2 |
Generates VRS map taking gaze into account.
const varjo_VariableRateShadingFlags varjo_VariableRateShadingFlag_GazeCombined |
Generates VRS map taking gaze into account with left and right gaze on one viewport.
const varjo_VariableRateShadingFlags varjo_VariableRateShadingFlag_None = 0 |
const varjo_VariableRateShadingFlags varjo_VariableRateShadingFlag_OcclusionMap |
Generates VRS with coarsest shading rate in corners which are not visible.
const varjo_VariableRateShadingFlags varjo_VariableRateShadingFlag_Stereo = 1 |
Generates VRS map for stereo mode (2 views).
|
static |
Two 16-bit integers packed into 4 bytes.
|
static |
Clockwise triangle winding.
|
static |
Counter-clockwise triangle winding.