Top Description Classes
module lwjgl.openvr

Package org.lwjgl.openvr

Annotations
@NonnullDefault

Contains bindings to OpenVR.

OpenVR is an API and runtime that allows access to VR hardware from multiple vendors without requiring that applications have specific knowledge of the hardware they are targeting.

Class Summary

Modifier and TypeClass and Description
public class
AppOverrideKeys

Layout


struct AppOverrideKeys_t {
    char * pchKey;
    char * pchValue;
}
public class
CameraVideoStreamFrameHeader

Layout


struct CameraVideoStreamFrameHeader_t {
    EVRTrackedCameraFrameType eFrameType;
    uint32_t nWidth;
    uint32_t nHeight;
    uint32_t nBytesPerPixel;
    uint32_t nFrameSequence;
    TrackedDevicePose_t trackedDevicePose;
    uint64_t ulFrameExposureTime;
}
public class
Compositor_BenchmarkResults

Provides compositor benchmark results to the app.

public class
CompositorCumulativeStats

Cumulative stats for current application.

public class
CompositorFrameTiming

Provides a single frame's timing information to the app.

public class
CompositorStageRenderSettings

Layout


struct Compositor_StageRenderSettings {
    HmdColor_t m_PrimaryColor;
    HmdColor_t m_SecondaryColor;
    float m_flVignetteInnerRadius;
    float m_flVignetteOuterRadius;
    float m_flFresnelStrength;
    bool m_bBackfaceCulling;
    bool m_bGreyscale;
    bool m_bWireframe;
}
public class
DistortionCoordinates

Used to return the post-distortion UVs for each color channel.

public class
DriverDirectModeFrameTiming

Frame timing data provided by direct mode drivers.

public class
HiddenAreaMesh

The mesh to draw into the stencil (or depth) buffer to perform early stencil (or depth) kills of pixels that will never appear on the HMD.

public class
HmdColor

Layout


struct HmdColor_t {
    float r;
    float g;
    float b;
    float a;
}
public class
HmdMatrix33

Layout


struct HmdMatrix33_t {
    float m[9];
}
public class
HmdMatrix34

Layout


struct HmdMatrix34_t {
    float m[12];
}
public class
HmdMatrix44

Layout


struct HmdMatrix44_t {
    float m[16];
}
public class
HmdQuad

Layout


struct HmdQuad_t {
    HmdVector3_t vCorners[4];
}
public class
HmdQuaternion

Layout


struct HmdQuaternion_t {
    double w;
    double x;
    double y;
    double z;
}
public class
HmdQuaternionf

Layout


struct HmdQuaternionf_t {
    float w;
    float x;
    float y;
    float z;
}
public class
HmdRect2

Layout


struct HmdRect2_t {
    HmdVector2_t vTopLeft;
    HmdVector2_t vBottomRight;
}
public class
HmdVector2

Layout


struct HmdVector2_t {
    float v[2];
}
public class
HmdVector3

Layout


struct HmdVector3_t {
    float v[3];
}
public class
HmdVector3d

Layout


struct HmdVector3d_t {
    double v[3];
}
public class
HmdVector4

Layout


struct HmdVector4_t {
    float v[4];
}
public class
ImuSample

Layout


struct ImuSample_t {
    double fSampleTime;
    HmdVector3d_t vAccel;
    HmdVector3d_t vGyro;
    uint32_t unOffScaleFlags;
}
public class
InputAnalogActionData

Layout


struct InputAnalogActionData_t {
    bool bActive;
    VRInputValueHandle_t activeOrigin;
    float x;
    float y;
    float z;
    float deltaX;
    float deltaY;
    float deltaZ;
    float fUpdateTime;
}
public class
InputBindingInfo

Layout


struct InputBindingInfo_t {
    char rchDevicePathName[128];
    char rchInputPathName[128];
    char rchModeName[128];
    char rchSlotName[128];
    char rchInputSourceType[32];
}
public class
InputDigitalActionData

Layout


struct InputDigitalActionData_t {
    bool bActive;
    VRInputValueHandle_t activeOrigin;
    bool bState;
    bool bChanged;
    float fUpdateTime;
}
public class
InputOriginInfo

Layout


struct InputOriginInfo_t {
    VRInputValueHandle_t devicePath;
    TrackedDeviceIndex_t trackedDeviceIndex;
    char rchRenderModelComponentName[128];
}
public class
InputPoseActionData

Layout


struct InputPoseActionData_t {
    bool bActive;
    VRInputValueHandle_t activeOrigin;
    TrackedDevicePose_t pose;
}
public class
InputSkeletalActionData

Layout


struct InputSkeletalActionData_t {
    bool bActive;
    VRInputValueHandle_t activeOrigin;
}
public class
IntersectionMaskCircle

Layout


struct IntersectionMaskCircle_t {
    float m_flCenterX;
    float m_flCenterY;
    float m_flRadius;
}
public class
IntersectionMaskRectangle

Layout


struct IntersectionMaskRectangle_t {
    float m_flTopLeftX;
    float m_flTopLeftY;
    float m_flWidth;
    float m_flHeight;
}
public class
NotificationBitmap

Used for passing graphic data.

public class
OpenVR

The OpenVR function tables.

public class
PathRead

Layout


struct PathRead_t {
    PathHandle_t ulPath;
    void * pvBuffer;
    uint32_t unBufferSize;
    PropertyTypeTag_t unTag;
    uint32_t unRequiredBufferSize;
    ETrackedPropertyError eError;
    char * pszPath;
}
public class
PathWrite

Layout


struct PathWrite_t {
    PathHandle_t ulPath;
    EPropertyWriteType writeType;
    ETrackedPropertyError eSetError;
    void * pvBuffer;
    uint32_t unBufferSize;
    PropertyTypeTag_t unTag;
    ETrackedPropertyError eError;
    char * pszPath;
}
public class
PropertyRead

Layout


struct PropertyRead_t {
    ETrackedDeviceProperty prop;
    void * pvBuffer;
    uint32_t unBufferSize;
    PropertyTypeTag_t unTag;
    uint32_t unRequiredBufferSize;
    ETrackedPropertyError eError;
}
public class
PropertyWrite

Layout


struct PropertyWrite_t {
    ETrackedDeviceProperty prop;
    EPropertyWriteType writeType;
    ETrackedPropertyError eSetError;
    void * pvBuffer;
    uint32_t unBufferSize;
    PropertyTypeTag_t unTag;
    ETrackedPropertyError eError;
}
public class
RenderModel

Layout


struct RenderModel_t {
    RenderModel_Vertex_t const * rVertexData;
    uint32_t unVertexCount;
    uint16_t const * IndexData;
    uint32_t unTriangleCount;
    TextureID_t diffuseTextureId;
}
public class
RenderModelComponentState

Describes state information about a render-model component, including transforms and other dynamic properties.

public class
RenderModelControllerModeState

Layout


struct RenderModel_ControllerMode_State_t {
    bool bScrollWheelVisible;
}
public class
RenderModelTextureMap

A texture map for use on a render model.

public class
RenderModelVertex

A single vertex in a render model.

public class
SpatialAnchorPose

Layout


struct SpatialAnchorPose_t {
    HmdMatrix34_t mAnchorToAbsoluteTracking;
}
public class
Texture

Layout


struct Texture_t {
    void * handle;
    ETextureType eType;
    EColorSpace eColorSpace;
}
public class
TrackedDevicePose

Describes a single pose for a tracked object.

public class
VR

Because the OpenVR API causes the game to connect to any attached VR hardware, it is not initialized automatically.

public class
VRActiveActionSet

Layout


struct VRActiveActionSet_t {
    VRActionSetHandle_t ulActionSet;
    VRInputValueHandle_t ulRestrictedToDevice;
    VRActionSetHandle_t ulSecondaryActionSet;
    char[4];
    int32_t nPriority;
}
public class
VRApplications

Application management.

public class
public class
VRBoneTransform

Holds the transform for a single bone.

public class
VRChaperone

HIGH LEVEL TRACKING SPACE ASSUMPTIONS:

  • 0,0,0 is the preferred standing area center.
  • 0Y is the floor height.
  • -Z is the preferred forward facing direction.
public class
VRChaperoneSetup

Manages the working copy of the chaperone info.

public class
VRCompositor

Allows the application to interact with the compositor.

public class
VRControllerAxis

Contains information about one axis on the controller.

public class
VRControllerState

Holds all the state of a controller at one moment in time.

public class
public class
public class
VREvent

An event posted by the server to all running applications.

public class
VREventApplicationLaunch

Layout


struct VREvent_ApplicationLaunch_t {
    uint32_t pid;
    uint32_t unArgsHandle;
}
public class
VREventChaperone

Layout


struct VREvent_Chaperone_t {
    uint64_t m_nPreviousUniverse;
    uint64_t m_nCurrentUniverse;
}
public class
VREventController

Used for controller button events.

public class
VREventData

Layout


union VREvent_Data_t {
    VREvent_Reserved_t reserved;
    VREvent_Controller_t controller;
    VREvent_Mouse_t mouse;
    VREvent_Scroll_t scroll;
    VREvent_Process_t process;
    VREvent_Notification_t notification;
    VREvent_Overlay_t overlay;
    VREvent_Status_t status;
    VREvent_Keyboard_t keyboard;
    VREvent_Ipd_t ipd;
    VREvent_Chaperone_t chaperone;
    VREvent_PerformanceTest_t performanceTest;
    VREvent_TouchPadMove_t touchPadMove;
    VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset;
    VREvent_Screenshot_t screenshot;
    VREvent_ScreenshotProgress_t screenshotProgress;
    VREvent_ApplicationLaunch_t applicationLaunch;
    VREvent_EditingCameraSurface_t cameraSurface;
    VREvent_MessageOverlay_t messageOverlay;
    VREvent_Property_t property;
    VREvent_HapticVibration_t hapticVibration;
    VREvent_WebConsole_t webConsole;
    VREvent_InputBindingLoad_t inputBinding;
    VREvent_InputActionManifestLoad_t actionManifest;
    VREvent_SpatialAnchor_t spatialAnchor;
}
public class
VREventEditingCameraSurface

Layout


struct VREvent_EditingCameraSurface_t {
    uint64_t overlayHandle;
    uint32_t nVisualMode;
}
public class
VREventHapticVibration

Layout


struct VREvent_HapticVibration_t {
    uint64_t containerHandle;
    uint64_t componentHandle;
    float fDurationSeconds;
    float fFrequency;
    float fAmplitude;
}
public class
VREventHDCPError

Layout


struct VREvent_HDCPError_t {
    EHDCPError eCode;
}
public class
VREventInputActionManifestLoad

Layout


struct VREvent_InputActionManifestLoad_t {
    uint64_t pathAppKey;
    uint64_t pathMessage;
    uint64_t pathMessageParam;
    uint64_t pathManifestPath;
}
public class
VREventInputBindingLoad

Layout


struct VREvent_InputBindingLoad_t {
    PropertyContainerHandle_t ulAppContainer;
    uint64_t pathMessage;
    uint64_t pathUrl;
    uint64_t pathControllerType;
}
public class
VREventIpd

Layout


struct VREvent_Ipd_t {
    float ipdMeters;
}
public class
VREventKeyboard

Used for keyboard events.

public class
VREventMessageOverlay

Layout


struct VREvent_MessageOverlay_t {
    uint32_t unVRMessageOverlayResponse;
}
public class
VREventMouse

Used for simulated mouse events in overlay space.

public class
VREventNotification

Notification related events.

public class
VREventOverlay

Used for a few events about overlays.

public class
VREventPerformanceTest

Layout


struct VREvent_PerformanceTest_t {
    uint32_t m_nFidelityLevel;
}
public class
VREventProcess

Used for events about processes.

public class
VREventProgressUpdate

Layout


struct VREvent_ProgressUpdate_t {
    uint64_t ulApplicationPropertyContainer;
    uint64_t pathDevice;
    uint64_t pathInputSource;
    uint64_t pathProgressAction;
    uint64_t pathIcon;
    float fProgress;
}
public class
VREventProperty

Layout


struct VREvent_Property_t {
    PropertyContainerHandle_t container;
    ETrackedDeviceProperty prop;
}
public class
VREventReserved

Not actually used for any events.

public class
VREventScreenshot

Layout


struct VREvent_Screenshot_t {
    uint32_t handle;
    uint32_t type;
}
public class
VREventScreenshotProgress

Layout


struct VREvent_ScreenshotProgress_t {
    float progress;
}
public class
VREventScroll

Used for simulated mouse wheel scroll.

public class
VREventSeatedZeroPoseReset

Layout


struct VREvent_SeatedZeroPoseReset_t {
    bool bResetBySystemMenu;
}
public class
VREventShowDevTools

Layout


struct VREvent_ShowDevTools_t {
    int32_t nBrowserIdentifier;
}
public class
VREventShowUI

Layout


struct VREvent_ShowUI_t {
    EShowUIType eType;
}
public class
VREventSpatialAnchor

Layout


struct VREvent_SpatialAnchor_t {
    SpatialAnchorHandle_t unHandle;
}
public class
VREventStatus

Used for a few events about overlays.

public class
VREventTouchPadMove

When in mouse input mode you can receive data from the touchpad, these events are only sent if the users finger is on the touchpad (or just released from it).

public class
VREventWebConsole

Layout


struct VREvent_WebConsole_t {
    WebConsoleHandle_t webConsoleHandle;
}
public class
public class
public class
public class
public class
VRNativeDevice

Layout


struct VRNativeDevice_t {
    void * handle;
    EDeviceType eType;
}
public class
public class
VROverlay

Overlay management methods.

public class
VROverlayIntersectionMaskPrimitive

Layout


struct VROverlayIntersectionMaskPrimitive_t {
    EVROverlayIntersectionMaskPrimitiveType m_nPrimitiveType;
    VROverlayIntersectionMaskPrimitive_Data_t m_Primitive;
}
public class
VROverlayIntersectionMaskPrimitiveData

Layout


union VROverlayIntersectionMaskPrimitive_Data_t {
    IntersectionMaskRectangle_t m_Rectangle;
    IntersectionMaskCircle_t m_Circle;
}
public class
VROverlayIntersectionParams

Layout


struct VROverlayIntersectionParams_t {
    HmdVector3_t vSource;
    HmdVector3_t vDirection;
    ETrackingUniverseOrigin eOrigin;
}
public class
VROverlayIntersectionResults

Layout


struct VROverlayIntersectionResults_t {
    HmdVector3_t vPoint;
    HmdVector3_t vNormal;
    HmdVector2_t vUVs;
    float fDistance;
}
public class
VROverlayProjection

Defines the project used in an overlay that is using SetOverlayTransformProjection.

public class
public class
VROverlayView_t

Layout


struct VROverlayView_t {
    VROverlayHandle_t overlayHandle;
    Texture_t texture;
    VRTextureBounds_t textureBounds;
}
public class
public class
public class
public class
VRResources

Shared Resource Methods.

public class
VRScreenshots

Allows the application to generate screenshots.

public class
public class
VRSkeletalSummaryData

Contains summary information about the current skeletal pose.

public class
public class
VRSystem

Main interface for display, distortion, tracking, controller, and event access.

public class
VRTextureBounds

Allows the application to control what part of the provided texture will be used in the frame buffer.

public class
VRTextureDepthInfo

Layout


struct VRTextureDepthInfo_t {
    void * handle;
    HmdMatrix44_t mProjection;
    HmdVector2_t vRange;
}
public class
VRTextureWithDepth

Layout


struct VRTextureWithDepth_t {
    void * handle;
    ETextureType eType;
    EColorSpace eColorSpace;
    VRTextureDepthInfo_t depth;
}
public class
VRTextureWithPose

Allows specifying pose used to render provided scene texture (if different from value returned by WaitGetPoses).

public class
VRTextureWithPoseAndDepth

Layout


struct VRTextureWithPoseAndDepth_t {
    void * handle;
    ETextureType eType;
    EColorSpace eColorSpace;
    HmdMatrix34_t mDeviceToAbsoluteTracking;
    VRTextureDepthInfo_t depth;
}
public class
public class
VRVulkanDevice

Layout


struct VRVulkanDevice_t {
    VkInstance_T * m_pInstance;
    VkDevice_T * m_pDevice;
    VkPhysicalDevice_T * m_pPhysicalDevice;
    VkQueue_T * m_pQueue;
    uint32_t m_uQueueFamilyIndex;
}
public class
VRVulkanTextureArrayData

Data required for passing Vulkan textures to Submit.

public class
VRVulkanTextureData

Data required for passing Vulkan textures to Submit.