Class VROverlay

java.lang.Object
org.lwjgl.openvr.VROverlay

public class VROverlay extends Object
Overlay management methods.
  • Method Details

    • nVROverlay_FindOverlay

      public static int nVROverlay_FindOverlay(long pchOverlayKey, long pOverlayHandle)
      Unsafe version of: FindOverlay
    • VROverlay_FindOverlay

      public static int VROverlay_FindOverlay(ByteBuffer pchOverlayKey, LongBuffer pOverlayHandle)
      Finds an existing overlay with the specified key.
    • VROverlay_FindOverlay

      public static int VROverlay_FindOverlay(CharSequence pchOverlayKey, LongBuffer pOverlayHandle)
      Finds an existing overlay with the specified key.
    • nVROverlay_CreateOverlay

      public static int nVROverlay_CreateOverlay(long pchOverlayKey, long pchOverlayName, long pOverlayHandle)
      Unsafe version of: CreateOverlay
    • VROverlay_CreateOverlay

      public static int VROverlay_CreateOverlay(ByteBuffer pchOverlayKey, ByteBuffer pchOverlayName, LongBuffer pOverlayHandle)
      Creates a new named overlay. All overlays start hidden and with default settings.
    • VROverlay_CreateOverlay

      public static int VROverlay_CreateOverlay(CharSequence pchOverlayKey, CharSequence pchOverlayName, LongBuffer pOverlayHandle)
      Creates a new named overlay. All overlays start hidden and with default settings.
    • VROverlay_DestroyOverlay

      public static int VROverlay_DestroyOverlay(long ulOverlayHandle)
      Destroys the specified overlay. When an application calls ShutdownInternal all overlays created by that app are automatically destroyed.
    • nVROverlay_GetOverlayKey

      public static int nVROverlay_GetOverlayKey(long ulOverlayHandle, long pchValue, int unBufferSize, long pError)
      Unsafe version of: GetOverlayKey
    • VROverlay_GetOverlayKey

      public static int VROverlay_GetOverlayKey(long ulOverlayHandle, @Nullable ByteBuffer pchValue, IntBuffer pError)
      Fills the provided buffer with the string key of the overlay. Returns the size of buffer required to store the key, including the terminating null character. VR.k_unVROverlayMaxKeyLength will be enough bytes to fit the string.
    • VROverlay_GetOverlayKey

      public static String VROverlay_GetOverlayKey(long ulOverlayHandle, int unBufferSize, IntBuffer pError)
      Fills the provided buffer with the string key of the overlay. Returns the size of buffer required to store the key, including the terminating null character. VR.k_unVROverlayMaxKeyLength will be enough bytes to fit the string.
    • nVROverlay_GetOverlayName

      public static int nVROverlay_GetOverlayName(long ulOverlayHandle, long pchValue, int unBufferSize, long pError)
      Unsafe version of: GetOverlayName
    • VROverlay_GetOverlayName

      public static int VROverlay_GetOverlayName(long ulOverlayHandle, @Nullable ByteBuffer pchValue, IntBuffer pError)
      Fills the provided buffer with the friendly name of the overlay. Returns the size of buffer required to store the key, including the terminating null character. VR.k_unVROverlayMaxNameLength will be enough bytes to fit the string.
    • VROverlay_GetOverlayName

      public static String VROverlay_GetOverlayName(long ulOverlayHandle, int unBufferSize, IntBuffer pError)
      Fills the provided buffer with the friendly name of the overlay. Returns the size of buffer required to store the key, including the terminating null character. VR.k_unVROverlayMaxNameLength will be enough bytes to fit the string.
    • nVROverlay_SetOverlayName

      public static int nVROverlay_SetOverlayName(long ulOverlayHandle, long pchName)
      Unsafe version of: SetOverlayName
    • VROverlay_SetOverlayName

      public static int VROverlay_SetOverlayName(long ulOverlayHandle, ByteBuffer pchName)
      Sets the name to use for this overlay.
    • VROverlay_SetOverlayName

      public static int VROverlay_SetOverlayName(long ulOverlayHandle, CharSequence pchName)
      Sets the name to use for this overlay.
    • nVROverlay_GetOverlayImageData

      public static int nVROverlay_GetOverlayImageData(long ulOverlayHandle, long pvBuffer, int unBufferSize, long punWidth, long punHeight)
      Unsafe version of: GetOverlayImageData
    • VROverlay_GetOverlayImageData

      public static int VROverlay_GetOverlayImageData(long ulOverlayHandle, ByteBuffer pvBuffer, IntBuffer punWidth, IntBuffer punHeight)
      Gets the raw image data from an overlay. Overlay image data is always returned as RGBA data, 4 bytes per pixel. If the buffer is not large enough, width and height will be set and VR.EVROverlayError_VROverlayError_ArrayTooSmall is returned.
    • nVROverlay_GetOverlayErrorNameFromEnum

      public static long nVROverlay_GetOverlayErrorNameFromEnum(int error)
      Unsafe version of: GetOverlayErrorNameFromEnum
    • VROverlay_GetOverlayErrorNameFromEnum

      @Nullable public static String VROverlay_GetOverlayErrorNameFromEnum(int error)
      Returns a string that corresponds with the specified overlay error. The string will be the name of the error enum value for all valid error codes.
      Parameters:
      error - one of:
      VR.EVROverlayError_VROverlayError_None
      VR.EVROverlayError_VROverlayError_UnknownOverlay
      VR.EVROverlayError_VROverlayError_InvalidHandle
      VR.EVROverlayError_VROverlayError_PermissionDenied
      VR.EVROverlayError_VROverlayError_OverlayLimitExceeded
      VR.EVROverlayError_VROverlayError_WrongVisibilityType
      VR.EVROverlayError_VROverlayError_KeyTooLong
      VR.EVROverlayError_VROverlayError_NameTooLong
      VR.EVROverlayError_VROverlayError_KeyInUse
      VR.EVROverlayError_VROverlayError_WrongTransformType
      VR.EVROverlayError_VROverlayError_InvalidTrackedDevice
      VR.EVROverlayError_VROverlayError_InvalidParameter
      VR.EVROverlayError_VROverlayError_ThumbnailCantBeDestroyed
      VR.EVROverlayError_VROverlayError_ArrayTooSmall
      VR.EVROverlayError_VROverlayError_RequestFailed
      VR.EVROverlayError_VROverlayError_InvalidTexture
      VR.EVROverlayError_VROverlayError_UnableToLoadFile
      VR.EVROverlayError_VROverlayError_KeyboardAlreadyInUse
      VR.EVROverlayError_VROverlayError_NoNeighbor
      VR.EVROverlayError_VROverlayError_TooManyMaskPrimitives
      VR.EVROverlayError_VROverlayError_BadMaskPrimitive
      VR.EVROverlayError_VROverlayError_TextureAlreadyLocked
      VR.EVROverlayError_VROverlayError_TextureLockCapacityReached
      VR.EVROverlayError_VROverlayError_TextureNotLocked
      VR.EVROverlayError_VROverlayError_TimedOut
    • VROverlay_SetOverlayRenderingPid

      public static int VROverlay_SetOverlayRenderingPid(long ulOverlayHandle, int unPID)
      Sets the pid that is allowed to render to this overlay (the creator pid is always allow to render), by default this is the pid of the process that made the overlay.
    • VROverlay_GetOverlayRenderingPid

      public static int VROverlay_GetOverlayRenderingPid(long ulOverlayHandle)
      Gets the pid that is allowed to render to this overlay.
    • VROverlay_SetOverlayFlag

      public static int VROverlay_SetOverlayFlag(long ulOverlayHandle, int eOverlayFlag, boolean bEnabled)
      Specify flag setting for a given overlay.
      Parameters:
      eOverlayFlag - one of:
      VR.VROverlayFlags_NoDashboardTabVR.VROverlayFlags_SendVRDiscreteScrollEvents
      VR.VROverlayFlags_SendVRTouchpadEventsVR.VROverlayFlags_ShowTouchPadScrollWheel
      VR.VROverlayFlags_TransferOwnershipToInternalProcessVR.VROverlayFlags_SideBySide_Parallel
      VR.VROverlayFlags_SideBySide_CrossedVR.VROverlayFlags_Panorama
      VR.VROverlayFlags_StereoPanoramaVR.VROverlayFlags_SortWithNonSceneOverlays
      VR.VROverlayFlags_VisibleInDashboardVR.VROverlayFlags_MakeOverlaysInteractiveIfVisible
      VR.VROverlayFlags_SendVRSmoothScrollEventsVR.VROverlayFlags_ProtectedContent
      VR.VROverlayFlags_HideLaserIntersectionVR.VROverlayFlags_WantsModalBehavior
      VR.VROverlayFlags_IsPremultipliedVR.VROverlayFlags_IgnoreTextureAlpha
      VR.VROverlayFlags_EnableControlBarVR.VROverlayFlags_EnableControlBarKeyboard
      VR.VROverlayFlags_EnableControlBarCloseVR.VROverlayFlags_Reserved
      VR.VROverlayFlags_EnableClickStabilizationVR.VROverlayFlags_MultiCursor
    • nVROverlay_GetOverlayFlag

      public static int nVROverlay_GetOverlayFlag(long ulOverlayHandle, int eOverlayFlag, long pbEnabled)
      Unsafe version of: GetOverlayFlag
    • VROverlay_GetOverlayFlag

      public static int VROverlay_GetOverlayFlag(long ulOverlayHandle, int eOverlayFlag, ByteBuffer pbEnabled)
      Gets flag setting for a given overlay.
      Parameters:
      eOverlayFlag - one of:
      VR.VROverlayFlags_NoDashboardTabVR.VROverlayFlags_SendVRDiscreteScrollEvents
      VR.VROverlayFlags_SendVRTouchpadEventsVR.VROverlayFlags_ShowTouchPadScrollWheel
      VR.VROverlayFlags_TransferOwnershipToInternalProcessVR.VROverlayFlags_SideBySide_Parallel
      VR.VROverlayFlags_SideBySide_CrossedVR.VROverlayFlags_Panorama
      VR.VROverlayFlags_StereoPanoramaVR.VROverlayFlags_SortWithNonSceneOverlays
      VR.VROverlayFlags_VisibleInDashboardVR.VROverlayFlags_MakeOverlaysInteractiveIfVisible
      VR.VROverlayFlags_SendVRSmoothScrollEventsVR.VROverlayFlags_ProtectedContent
      VR.VROverlayFlags_HideLaserIntersectionVR.VROverlayFlags_WantsModalBehavior
      VR.VROverlayFlags_IsPremultipliedVR.VROverlayFlags_IgnoreTextureAlpha
      VR.VROverlayFlags_EnableControlBarVR.VROverlayFlags_EnableControlBarKeyboard
      VR.VROverlayFlags_EnableControlBarCloseVR.VROverlayFlags_Reserved
      VR.VROverlayFlags_EnableClickStabilizationVR.VROverlayFlags_MultiCursor
    • nVROverlay_GetOverlayFlags

      public static int nVROverlay_GetOverlayFlags(long ulOverlayHandle, long pFlags)
      Unsafe version of: GetOverlayFlags
    • VROverlay_GetOverlayFlags

      public static int VROverlay_GetOverlayFlags(long ulOverlayHandle, IntBuffer pFlags)
      Gets all the flags for a given overlay.
    • VROverlay_SetOverlayColor

      public static int VROverlay_SetOverlayColor(long ulOverlayHandle, float fRed, float fGreen, float fBlue)
      Sets the color tint of the overlay quad. Use 0.0 to 1.0 per channel.
    • nVROverlay_GetOverlayColor

      public static int nVROverlay_GetOverlayColor(long ulOverlayHandle, long pfRed, long pfGreen, long pfBlue)
      Unsafe version of: GetOverlayColor
    • VROverlay_GetOverlayColor

      public static int VROverlay_GetOverlayColor(long ulOverlayHandle, FloatBuffer pfRed, FloatBuffer pfGreen, FloatBuffer pfBlue)
      Gets the color tint of the overlay quad.
    • VROverlay_SetOverlayAlpha

      public static int VROverlay_SetOverlayAlpha(long ulOverlayHandle, float fAlpha)
      Sets the alpha of the overlay quad. Use 1.0 for 100 percent opacity to 0.0 for 0 percent opacity.
    • nVROverlay_GetOverlayAlpha

      public static int nVROverlay_GetOverlayAlpha(long ulOverlayHandle, long pfAlpha)
      Unsafe version of: GetOverlayAlpha
    • VROverlay_GetOverlayAlpha

      public static int VROverlay_GetOverlayAlpha(long ulOverlayHandle, FloatBuffer pfAlpha)
      Gets the alpha of the overlay quad. By default overlays are rendering at 100 percent alpha (1.0).
    • VROverlay_SetOverlayTexelAspect

      public static int VROverlay_SetOverlayTexelAspect(long ulOverlayHandle, float fTexelAspect)
      Sets the aspect ratio of the texels in the overlay. 1.0 means the texels are square. 2.0 means the texels are twice as wide as they are tall.

      Defaults to 1.0.

    • nVROverlay_GetOverlayTexelAspect

      public static int nVROverlay_GetOverlayTexelAspect(long ulOverlayHandle, long pfTexelAspect)
      Unsafe version of: GetOverlayTexelAspect
    • VROverlay_GetOverlayTexelAspect

      public static int VROverlay_GetOverlayTexelAspect(long ulOverlayHandle, FloatBuffer pfTexelAspect)
      Gets the aspect ratio of the texels in the overlay. Defaults to 1.0.
    • VROverlay_SetOverlaySortOrder

      public static int VROverlay_SetOverlaySortOrder(long ulOverlayHandle, int unSortOrder)
      Sets the rendering sort order for the overlay. Overlays are rendered this order:
      • Overlays owned by the scene application
      • Overlays owned by some other application

      Within a category overlays are rendered lowest sort order to highest sort order. Overlays with the same sort order are rendered back to front base on distance from the HMD.

      Subview overlays are always drawn immediately on top of their parent overlay, and the sort order is only relative to their peer subviews for that overlay.

      Sort order defaults to 0.

    • nVROverlay_GetOverlaySortOrder

      public static int nVROverlay_GetOverlaySortOrder(long ulOverlayHandle, long punSortOrder)
      Unsafe version of: GetOverlaySortOrder
    • VROverlay_GetOverlaySortOrder

      public static int VROverlay_GetOverlaySortOrder(long ulOverlayHandle, IntBuffer punSortOrder)
      Gets the sort order of the overlay. See SetOverlaySortOrder for how this works.
    • VROverlay_SetOverlayWidthInMeters

      public static int VROverlay_SetOverlayWidthInMeters(long ulOverlayHandle, float fWidthInMeters)
      Sets the width of the overlay quad in meters. By default overlays are rendered on a quad that is 1 meter across.
    • nVROverlay_GetOverlayWidthInMeters

      public static int nVROverlay_GetOverlayWidthInMeters(long ulOverlayHandle, long pfWidthInMeters)
      Unsafe version of: GetOverlayWidthInMeters
    • VROverlay_GetOverlayWidthInMeters

      public static int VROverlay_GetOverlayWidthInMeters(long ulOverlayHandle, FloatBuffer pfWidthInMeters)
      Returns the width of the overlay quad in meters. By default overlays are rendered on a quad that is 1 meter across.
    • VROverlay_SetOverlayCurvature

      public static int VROverlay_SetOverlayCurvature(long ulOverlayHandle, float fCurvature)
      Use to draw overlay as a curved surface.

      Curvature is a percentage from (0..1] where 1 is a fully closed cylinder. For a specific radius, curvature can be computed as: overlay.width / (2 PI r).

    • nVROverlay_GetOverlayCurvature

      public static int nVROverlay_GetOverlayCurvature(long ulOverlayHandle, long pfCurvature)
      Unsafe version of: GetOverlayCurvature
    • VROverlay_GetOverlayCurvature

      public static int VROverlay_GetOverlayCurvature(long ulOverlayHandle, FloatBuffer pfCurvature)
      Returns the curvature of the overlay as a percentage from (0..1] where 1 is a fully closed cylinder.
    • VROverlay_SetOverlayPreCurvePitch

      public static int VROverlay_SetOverlayPreCurvePitch(long ulOverlayHandle, float fRadians)
    • nVROverlay_GetOverlayPreCurvePitch

      public static int nVROverlay_GetOverlayPreCurvePitch(long ulOverlayHandle, long pfRadians)
    • VROverlay_GetOverlayPreCurvePitch

      public static int VROverlay_GetOverlayPreCurvePitch(long ulOverlayHandle, FloatBuffer pfRadians)
    • VROverlay_SetOverlayTextureColorSpace

      public static int VROverlay_SetOverlayTextureColorSpace(long ulOverlayHandle, int eTextureColorSpace)
      Sets the colorspace the overlay texture's data is in. Defaults to 'auto'. If the texture needs to be resolved, you should call SetOverlayTexture with the appropriate colorspace instead.
      Parameters:
      eTextureColorSpace - one of:
      VR.EColorSpace_ColorSpace_AutoVR.EColorSpace_ColorSpace_Gamma
      VR.EColorSpace_ColorSpace_Linear
    • nVROverlay_GetOverlayTextureColorSpace

      public static int nVROverlay_GetOverlayTextureColorSpace(long ulOverlayHandle, long peTextureColorSpace)
      Unsafe version of: GetOverlayTextureColorSpace
    • VROverlay_GetOverlayTextureColorSpace

      public static int VROverlay_GetOverlayTextureColorSpace(long ulOverlayHandle, IntBuffer peTextureColorSpace)
      Gets the overlay's current colorspace setting.
    • nVROverlay_SetOverlayTextureBounds

      public static int nVROverlay_SetOverlayTextureBounds(long ulOverlayHandle, long pOverlayTextureBounds)
      Unsafe version of: SetOverlayTextureBounds
    • VROverlay_SetOverlayTextureBounds

      public static int VROverlay_SetOverlayTextureBounds(long ulOverlayHandle, VRTextureBounds pOverlayTextureBounds)
      Sets the part of the texture to use for the overlay. UV Min is the upper left corner and UV Max is the lower right corner.
    • nVROverlay_GetOverlayTextureBounds

      public static int nVROverlay_GetOverlayTextureBounds(long ulOverlayHandle, long pOverlayTextureBounds)
      Unsafe version of: GetOverlayTextureBounds
    • VROverlay_GetOverlayTextureBounds

      public static int VROverlay_GetOverlayTextureBounds(long ulOverlayHandle, VRTextureBounds pOverlayTextureBounds)
      Gets the part of the texture to use for the overlay. UV Min is the upper left corner and UV Max is the lower right corner.
    • nVROverlay_GetOverlayTransformType

      public static int nVROverlay_GetOverlayTransformType(long ulOverlayHandle, long peTransformType)
      Unsafe version of: GetOverlayTransformType
    • VROverlay_GetOverlayTransformType

      public static int VROverlay_GetOverlayTransformType(long ulOverlayHandle, IntBuffer peTransformType)
      Returns the transform type of this overlay.
    • nVROverlay_SetOverlayTransformAbsolute

      public static int nVROverlay_SetOverlayTransformAbsolute(long ulOverlayHandle, int eTrackingOrigin, long pmatTrackingOriginToOverlayTransform)
      Unsafe version of: SetOverlayTransformAbsolute
    • VROverlay_SetOverlayTransformAbsolute

      public static int VROverlay_SetOverlayTransformAbsolute(long ulOverlayHandle, int eTrackingOrigin, HmdMatrix34 pmatTrackingOriginToOverlayTransform)
      Sets the transform to absolute tracking origin.
      Parameters:
      eTrackingOrigin - one of:
      VR.ETrackingUniverseOrigin_TrackingUniverseSeated
      VR.ETrackingUniverseOrigin_TrackingUniverseStanding
      VR.ETrackingUniverseOrigin_TrackingUniverseRawAndUncalibrated
    • nVROverlay_GetOverlayTransformAbsolute

      public static int nVROverlay_GetOverlayTransformAbsolute(long ulOverlayHandle, long peTrackingOrigin, long pmatTrackingOriginToOverlayTransform)
      Unsafe version of: GetOverlayTransformAbsolute
    • VROverlay_GetOverlayTransformAbsolute

      public static int VROverlay_GetOverlayTransformAbsolute(long ulOverlayHandle, IntBuffer peTrackingOrigin, HmdMatrix34 pmatTrackingOriginToOverlayTransform)
      Gets the transform if it is absolute. Returns an error if the transform is some other type.
    • nVROverlay_SetOverlayTransformTrackedDeviceRelative

      public static int nVROverlay_SetOverlayTransformTrackedDeviceRelative(long ulOverlayHandle, int unTrackedDevice, long pmatTrackedDeviceToOverlayTransform)
    • VROverlay_SetOverlayTransformTrackedDeviceRelative

      public static int VROverlay_SetOverlayTransformTrackedDeviceRelative(long ulOverlayHandle, int unTrackedDevice, HmdMatrix34 pmatTrackedDeviceToOverlayTransform)
      Sets the transform to relative to the transform of the specified tracked device.
    • nVROverlay_GetOverlayTransformTrackedDeviceRelative

      public static int nVROverlay_GetOverlayTransformTrackedDeviceRelative(long ulOverlayHandle, long punTrackedDevice, long pmatTrackedDeviceToOverlayTransform)
    • VROverlay_GetOverlayTransformTrackedDeviceRelative

      public static int VROverlay_GetOverlayTransformTrackedDeviceRelative(long ulOverlayHandle, IntBuffer punTrackedDevice, HmdMatrix34 pmatTrackedDeviceToOverlayTransform)
      Gets the transform if it is relative to a tracked device. Returns an error if the transform is some other type.
    • nVROverlay_SetOverlayTransformTrackedDeviceComponent

      public static int nVROverlay_SetOverlayTransformTrackedDeviceComponent(long ulOverlayHandle, int unDeviceIndex, long pchComponentName)
    • VROverlay_SetOverlayTransformTrackedDeviceComponent

      public static int VROverlay_SetOverlayTransformTrackedDeviceComponent(long ulOverlayHandle, int unDeviceIndex, ByteBuffer pchComponentName)
      Sets the transform to draw the overlay on a rendermodel component mesh instead of a quad. This will only draw when the system is drawing the device. Overlays with this transform type cannot receive mouse events.
    • VROverlay_SetOverlayTransformTrackedDeviceComponent

      public static int VROverlay_SetOverlayTransformTrackedDeviceComponent(long ulOverlayHandle, int unDeviceIndex, CharSequence pchComponentName)
      Sets the transform to draw the overlay on a rendermodel component mesh instead of a quad. This will only draw when the system is drawing the device. Overlays with this transform type cannot receive mouse events.
    • nVROverlay_GetOverlayTransformTrackedDeviceComponent

      public static int nVROverlay_GetOverlayTransformTrackedDeviceComponent(long ulOverlayHandle, long punDeviceIndex, long pchComponentName, int unComponentNameSize)
    • VROverlay_GetOverlayTransformTrackedDeviceComponent

      public static int VROverlay_GetOverlayTransformTrackedDeviceComponent(long ulOverlayHandle, IntBuffer punDeviceIndex, ByteBuffer pchComponentName)
      Gets the transform information when the overlay is rendering on a component.
    • nVROverlay_SetOverlayTransformCursor

      public static int nVROverlay_SetOverlayTransformCursor(long ulCursorOverlayHandle, long pvHotspot)
      Unsafe version of: SetOverlayTransformCursor
    • VROverlay_SetOverlayTransformCursor

      public static int VROverlay_SetOverlayTransformCursor(long ulCursorOverlayHandle, HmdVector2 pvHotspot)
      Sets the hotspot for the specified overlay when that overlay is used as a cursor.

      These are in texture space with 0,0 in the upper left corner of the texture and 1,1 in the lower right corner of the texture.

    • nVROverlay_GetOverlayTransformCursor

      public static int nVROverlay_GetOverlayTransformCursor(long ulOverlayHandle, long pvHotspot)
      Unsafe version of: GetOverlayTransformCursor
    • VROverlay_GetOverlayTransformCursor

      public static int VROverlay_GetOverlayTransformCursor(long ulOverlayHandle, HmdVector2 pvHotspot)
      Gets cursor hotspot/transform for the specified overlay.
    • nVROverlay_SetOverlayTransformProjection

      public static int nVROverlay_SetOverlayTransformProjection(long ulOverlayHandle, int eTrackingOrigin, long pmatTrackingOriginToOverlayTransform, long pProjection, int eEye)
    • VROverlay_SetOverlayTransformProjection

      public static int VROverlay_SetOverlayTransformProjection(long ulOverlayHandle, int eTrackingOrigin, HmdMatrix34 pmatTrackingOriginToOverlayTransform, VROverlayProjection pProjection, int eEye)
      Sets the overlay as a projection overlay.
    • VROverlay_ShowOverlay

      public static int VROverlay_ShowOverlay(long ulOverlayHandle)
      Shows the VR overlay. Not applicable for Dashboard Overlays.
    • VROverlay_HideOverlay

      public static int VROverlay_HideOverlay(long ulOverlayHandle)
      Hides the VR overlay. Not applicable for Dashboard Overlays.
    • VROverlay_IsOverlayVisible

      public static boolean VROverlay_IsOverlayVisible(long ulOverlayHandle)
      Returns true if the overlay is currently visible, applicable for all overlay types except Dashboard Thumbnail overlays.

      VREvent_OverlayShown and VREvent_OverlayHidden reflect changes to this value.

    • nVROverlay_GetTransformForOverlayCoordinates

      public static int nVROverlay_GetTransformForOverlayCoordinates(long ulOverlayHandle, int eTrackingOrigin, long coordinatesInOverlay, long pmatTransform, long __functionAddress)
    • nVROverlay_GetTransformForOverlayCoordinates

      public static int nVROverlay_GetTransformForOverlayCoordinates(long ulOverlayHandle, int eTrackingOrigin, long coordinatesInOverlay, long pmatTransform)
    • VROverlay_GetTransformForOverlayCoordinates

      public static int VROverlay_GetTransformForOverlayCoordinates(long ulOverlayHandle, int eTrackingOrigin, HmdVector2 coordinatesInOverlay, HmdMatrix34 pmatTransform)
      Get the transform in 3d space associated with a specific 2d point in the overlay's coordinate space (where 0,0 is the lower left). -Z points out of the overlay.
      Parameters:
      eTrackingOrigin - one of:
      VR.ETrackingUniverseOrigin_TrackingUniverseSeated
      VR.ETrackingUniverseOrigin_TrackingUniverseStanding
      VR.ETrackingUniverseOrigin_TrackingUniverseRawAndUncalibrated
    • VROverlay_WaitFrameSync

      public static int VROverlay_WaitFrameSync(int nTimeoutMs)
    • nVROverlay_PollNextOverlayEvent

      public static boolean nVROverlay_PollNextOverlayEvent(long ulOverlayHandle, long pEvent, int uncbVREvent)
      Unsafe version of: PollNextOverlayEvent
    • VROverlay_PollNextOverlayEvent

      public static boolean VROverlay_PollNextOverlayEvent(long ulOverlayHandle, VREvent pEvent, int uncbVREvent)
      Returns true and fills the event with the next event on the overlay's event queue, if there is one.

      If there are no events this method returns false. uncbVREvent should be the size in bytes of the VREvent struct.

    • VROverlay_PollNextOverlayEvent

      public static boolean VROverlay_PollNextOverlayEvent(long ulOverlayHandle, VREvent pEvent)
      Returns true and fills the event with the next event on the overlay's event queue, if there is one.

      If there are no events this method returns false. uncbVREvent should be the size in bytes of the VREvent struct.

    • nVROverlay_GetOverlayInputMethod

      public static int nVROverlay_GetOverlayInputMethod(long ulOverlayHandle, long peInputMethod)
      Unsafe version of: GetOverlayInputMethod
    • VROverlay_GetOverlayInputMethod

      public static int VROverlay_GetOverlayInputMethod(long ulOverlayHandle, IntBuffer peInputMethod)
      Returns the current input settings for the specified overlay.
    • VROverlay_SetOverlayInputMethod

      public static int VROverlay_SetOverlayInputMethod(long ulOverlayHandle, int eInputMethod)
      Sets the input settings for the specified overlay.
      Parameters:
      eInputMethod - one of:
      VR.VROverlayInputMethod_NoneVR.VROverlayInputMethod_Mouse
    • nVROverlay_GetOverlayMouseScale

      public static int nVROverlay_GetOverlayMouseScale(long ulOverlayHandle, long pvecMouseScale)
      Unsafe version of: GetOverlayMouseScale
    • VROverlay_GetOverlayMouseScale

      public static int VROverlay_GetOverlayMouseScale(long ulOverlayHandle, HmdVector2 pvecMouseScale)
      Gets the mouse scaling factor that is used for mouse events. The actual texture may be a different size, but this is typically the size of the underlying UI in pixels.
    • nVROverlay_SetOverlayMouseScale

      public static int nVROverlay_SetOverlayMouseScale(long ulOverlayHandle, long pvecMouseScale)
      Unsafe version of: SetOverlayMouseScale
    • VROverlay_SetOverlayMouseScale

      public static int VROverlay_SetOverlayMouseScale(long ulOverlayHandle, HmdVector2 pvecMouseScale)
      Sets the mouse scaling factor that is used for mouse events. The actual texture may be a different size, but this is typically the size of the underlying UI in pixels (not in world space).
    • nVROverlay_ComputeOverlayIntersection

      public static boolean nVROverlay_ComputeOverlayIntersection(long ulOverlayHandle, long pParams, long pResults)
      Unsafe version of: ComputeOverlayIntersection
    • VROverlay_ComputeOverlayIntersection

      public static boolean VROverlay_ComputeOverlayIntersection(long ulOverlayHandle, VROverlayIntersectionParams pParams, VROverlayIntersectionResults pResults)
      Computes the overlay-space pixel coordinates of where the ray intersects the overlay with the specified settings. Returns false if there is no intersection.
    • VROverlay_IsHoverTargetOverlay

      public static boolean VROverlay_IsHoverTargetOverlay(long ulOverlayHandle)
      Returns true if the specified overlay is the hover target. An overlay is the hover target when it is the last overlay "moused over" by the virtual mouse pointer.
    • nVROverlay_SetOverlayIntersectionMask

      public static int nVROverlay_SetOverlayIntersectionMask(long ulOverlayHandle, long pMaskPrimitives, int unNumMaskPrimitives, int unPrimitiveSize)
      Unsafe version of: SetOverlayIntersectionMask
    • VROverlay_SetOverlayIntersectionMask

      public static int VROverlay_SetOverlayIntersectionMask(long ulOverlayHandle, VROverlayIntersectionMaskPrimitive.Buffer pMaskPrimitives)
      Sets a list of primitives to be used for controller ray intersection typically the size of the underlying UI in pixels (not in world space).
    • VROverlay_TriggerLaserMouseHapticVibration

      public static int VROverlay_TriggerLaserMouseHapticVibration(long ulOverlayHandle, float fDurationSeconds, float fFrequency, float fAmplitude)
      Triggers a haptic event on the laser mouse controller for the specified overlay.
    • VROverlay_SetOverlayCursor

      public static int VROverlay_SetOverlayCursor(long ulOverlayHandle, long ulCursorHandle)
      Sets the cursor to use for the specified overlay. This will be drawn instead of the generic blob when the laser mouse is pointed at the specified overlay.
    • nVROverlay_SetOverlayCursorPositionOverride

      public static int nVROverlay_SetOverlayCursorPositionOverride(long ulOverlayHandle, long pvCursor)
    • VROverlay_SetOverlayCursorPositionOverride

      public static int VROverlay_SetOverlayCursorPositionOverride(long ulOverlayHandle, HmdVector2 pvCursor)
      Sets the override cursor position to use for this overlay in overlay mouse coordinates.

      This position will be used to draw the cursor instead of whatever the laser mouse cursor position is.

    • VROverlay_ClearOverlayCursorPositionOverride

      public static int VROverlay_ClearOverlayCursorPositionOverride(long ulOverlayHandle)
      Clears the override cursor position for this overlay.
    • nVROverlay_SetOverlayTexture

      public static int nVROverlay_SetOverlayTexture(long ulOverlayHandle, long pTexture)
      Unsafe version of: SetOverlayTexture
    • VROverlay_SetOverlayTexture

      public static int VROverlay_SetOverlayTexture(long ulOverlayHandle, Texture pTexture)
      Texture to draw for the overlay. This function can only be called by the overlay's creator or renderer process (see SetOverlayRenderingPid).
    • VROverlay_ClearOverlayTexture

      public static int VROverlay_ClearOverlayTexture(long ulOverlayHandle)
      Use this to tell the overlay system to release the texture set for this overlay.
    • nVROverlay_SetOverlayRaw

      public static int nVROverlay_SetOverlayRaw(long ulOverlayHandle, long pvBuffer, int unWidth, int unHeight, int unBytesPerPixel)
      Unsafe version of: SetOverlayRaw
    • VROverlay_SetOverlayRaw

      public static int VROverlay_SetOverlayRaw(long ulOverlayHandle, ByteBuffer pvBuffer, int unWidth, int unHeight, int unBytesPerPixel)
      Separate interface for providing the data as a stream of bytes, but there is an upper bound on data that can be sent. This function can only be called by the overlay's renderer process.
    • nVROverlay_SetOverlayFromFile

      public static int nVROverlay_SetOverlayFromFile(long ulOverlayHandle, long pchFilePath)
      Unsafe version of: SetOverlayFromFile
    • VROverlay_SetOverlayFromFile

      public static int VROverlay_SetOverlayFromFile(long ulOverlayHandle, ByteBuffer pchFilePath)
      Separate interface for providing the image through a filename: can be png or jpg, and should not be bigger than 1920x1080. This function can only be called by the overlay's renderer process
    • VROverlay_SetOverlayFromFile

      public static int VROverlay_SetOverlayFromFile(long ulOverlayHandle, CharSequence pchFilePath)
      Separate interface for providing the image through a filename: can be png or jpg, and should not be bigger than 1920x1080. This function can only be called by the overlay's renderer process
    • nVROverlay_GetOverlayTexture

      public static int nVROverlay_GetOverlayTexture(long ulOverlayHandle, long pNativeTextureHandle, long pNativeTextureRef, long pWidth, long pHeight, long pNativeFormat, long pAPIType, long pColorSpace, long pTextureBounds)
      Unsafe version of: GetOverlayTexture
    • VROverlay_GetOverlayTexture

      public static int VROverlay_GetOverlayTexture(long ulOverlayHandle, PointerBuffer pNativeTextureHandle, long pNativeTextureRef, IntBuffer pWidth, IntBuffer pHeight, IntBuffer pNativeFormat, IntBuffer pAPIType, IntBuffer pColorSpace, VRTextureBounds pTextureBounds)
      Get the native texture handle/device for an overlay you have created.

      On windows this handle will be a ID3D11ShaderResourceView with a ID3D11Texture2D bound.

      The texture will always be sized to match the backing texture you supplied in SetOverlayTexture above.

      You MUST call ReleaseNativeOverlayHandle with pNativeTextureHandle once you are done with this texture.

      pNativeTextureHandle is an OUTPUT, it will be a pointer to a ID3D11ShaderResourceView *. pNativeTextureRef is an INPUT and should be a ID3D11Resource *. The device used by pNativeTextureRef will be used to bind pNativeTextureHandle.

    • VROverlay_ReleaseNativeOverlayHandle

      public static int VROverlay_ReleaseNativeOverlayHandle(long ulOverlayHandle, long pNativeTextureHandle)
      Release the pNativeTextureHandle provided from the GetOverlayTexture call, this allows the system to free the underlying GPU resources for this object, so only do it once you stop rendering this texture.
    • nVROverlay_GetOverlayTextureSize

      public static int nVROverlay_GetOverlayTextureSize(long ulOverlayHandle, long pWidth, long pHeight)
      Unsafe version of: GetOverlayTextureSize
    • VROverlay_GetOverlayTextureSize

      public static int VROverlay_GetOverlayTextureSize(long ulOverlayHandle, IntBuffer pWidth, IntBuffer pHeight)
      Get the size of the overlay texture.
    • nVROverlay_CreateDashboardOverlay

      public static int nVROverlay_CreateDashboardOverlay(long pchOverlayKey, long pchOverlayFriendlyName, long pMainHandle, long pThumbnailHandle)
      Unsafe version of: CreateDashboardOverlay
    • VROverlay_CreateDashboardOverlay

      public static int VROverlay_CreateDashboardOverlay(ByteBuffer pchOverlayKey, ByteBuffer pchOverlayFriendlyName, LongBuffer pMainHandle, LongBuffer pThumbnailHandle)
      Creates a dashboard overlay and returns its handle.
    • VROverlay_CreateDashboardOverlay

      public static int VROverlay_CreateDashboardOverlay(CharSequence pchOverlayKey, CharSequence pchOverlayFriendlyName, LongBuffer pMainHandle, LongBuffer pThumbnailHandle)
      Creates a dashboard overlay and returns its handle.
    • VROverlay_IsDashboardVisible

      public static boolean VROverlay_IsDashboardVisible()
      Returns true if the dashboard is visible.
    • VROverlay_IsActiveDashboardOverlay

      public static boolean VROverlay_IsActiveDashboardOverlay(long ulOverlayHandle)
      Returns true if the dashboard is visible and the specified overlay is the active system Overlay.
    • VROverlay_SetDashboardOverlaySceneProcess

      public static int VROverlay_SetDashboardOverlaySceneProcess(long ulOverlayHandle, int unProcessId)
      Sets the dashboard overlay to only appear when the specified process ID has scene focus.
    • nVROverlay_GetDashboardOverlaySceneProcess

      public static int nVROverlay_GetDashboardOverlaySceneProcess(long ulOverlayHandle, long punProcessId)
    • VROverlay_GetDashboardOverlaySceneProcess

      public static int VROverlay_GetDashboardOverlaySceneProcess(long ulOverlayHandle, IntBuffer punProcessId)
      Gets the process ID that this dashboard overlay requires to have scene focus.
    • nVROverlay_ShowDashboard

      public static void nVROverlay_ShowDashboard(long pchOverlayToShow)
      Unsafe version of: ShowDashboard
    • VROverlay_ShowDashboard

      public static void VROverlay_ShowDashboard(ByteBuffer pchOverlayToShow)
      Shows the dashboard.
    • VROverlay_ShowDashboard

      public static void VROverlay_ShowDashboard(CharSequence pchOverlayToShow)
      Shows the dashboard.
    • VROverlay_GetPrimaryDashboardDevice

      public static int VROverlay_GetPrimaryDashboardDevice()
      Returns the tracked device that has the laser pointer in the dashboard.
    • nVROverlay_ShowKeyboard

      public static int nVROverlay_ShowKeyboard(int eInputMode, int eLineInputMode, int unFlags, long pchDescription, int unCharMax, long pchExistingText, boolean bUseMinimalMode, long uUserValue)
      Unsafe version of: ShowKeyboard
    • VROverlay_ShowKeyboard

      public static int VROverlay_ShowKeyboard(int eInputMode, int eLineInputMode, int unFlags, ByteBuffer pchDescription, int unCharMax, ByteBuffer pchExistingText, boolean bUseMinimalMode, long uUserValue)
      Show the virtual keyboard to accept input.

      In most cases, you should pass VR.EKeyboardFlags_KeyboardFlag_Modal to enable modal overlay behavior on the keyboard itself. See EKeyboardFlags for more.

      Parameters:
      eInputMode - one of:
      VR.EGamepadTextInputMode_k_EGamepadTextInputModeNormal
      VR.EGamepadTextInputMode_k_EGamepadTextInputModePassword
      VR.EGamepadTextInputMode_k_EGamepadTextInputModeSubmit
      eLineInputMode - one of:
      VR.EGamepadTextInputLineMode_k_EGamepadTextInputLineModeSingleLine
      VR.EGamepadTextInputLineMode_k_EGamepadTextInputLineModeMultipleLines
    • VROverlay_ShowKeyboard

      public static int VROverlay_ShowKeyboard(int eInputMode, int eLineInputMode, int unFlags, CharSequence pchDescription, int unCharMax, CharSequence pchExistingText, boolean bUseMinimalMode, long uUserValue)
      Show the virtual keyboard to accept input.

      In most cases, you should pass VR.EKeyboardFlags_KeyboardFlag_Modal to enable modal overlay behavior on the keyboard itself. See EKeyboardFlags for more.

      Parameters:
      eInputMode - one of:
      VR.EGamepadTextInputMode_k_EGamepadTextInputModeNormal
      VR.EGamepadTextInputMode_k_EGamepadTextInputModePassword
      VR.EGamepadTextInputMode_k_EGamepadTextInputModeSubmit
      eLineInputMode - one of:
      VR.EGamepadTextInputLineMode_k_EGamepadTextInputLineModeSingleLine
      VR.EGamepadTextInputLineMode_k_EGamepadTextInputLineModeMultipleLines
    • nVROverlay_ShowKeyboardForOverlay

      public static int nVROverlay_ShowKeyboardForOverlay(long ulOverlayHandle, int eInputMode, int eLineInputMode, int unFlags, long pchDescription, int unCharMax, long pchExistingText, boolean bUseMinimalMode, long uUserValue)
      Unsafe version of: ShowKeyboardForOverlay
    • VROverlay_ShowKeyboardForOverlay

      public static int VROverlay_ShowKeyboardForOverlay(long ulOverlayHandle, int eInputMode, int eLineInputMode, int unFlags, ByteBuffer pchDescription, int unCharMax, ByteBuffer pchExistingText, boolean bUseMinimalMode, long uUserValue)
      Show the virtual keyboard to accept input for an overlay.

      In most cases, you should pass VR.EKeyboardFlags_KeyboardFlag_Modal to enable modal overlay behavior on the keyboard itself. See EKeyboardFlags for more.

      Parameters:
      eInputMode - one of:
      VR.EGamepadTextInputMode_k_EGamepadTextInputModeNormal
      VR.EGamepadTextInputMode_k_EGamepadTextInputModePassword
      VR.EGamepadTextInputMode_k_EGamepadTextInputModeSubmit
      eLineInputMode - one of:
      VR.EGamepadTextInputLineMode_k_EGamepadTextInputLineModeSingleLine
      VR.EGamepadTextInputLineMode_k_EGamepadTextInputLineModeMultipleLines
    • VROverlay_ShowKeyboardForOverlay

      public static int VROverlay_ShowKeyboardForOverlay(long ulOverlayHandle, int eInputMode, int eLineInputMode, int unFlags, CharSequence pchDescription, int unCharMax, CharSequence pchExistingText, boolean bUseMinimalMode, long uUserValue)
      Show the virtual keyboard to accept input for an overlay.

      In most cases, you should pass VR.EKeyboardFlags_KeyboardFlag_Modal to enable modal overlay behavior on the keyboard itself. See EKeyboardFlags for more.

      Parameters:
      eInputMode - one of:
      VR.EGamepadTextInputMode_k_EGamepadTextInputModeNormal
      VR.EGamepadTextInputMode_k_EGamepadTextInputModePassword
      VR.EGamepadTextInputMode_k_EGamepadTextInputModeSubmit
      eLineInputMode - one of:
      VR.EGamepadTextInputLineMode_k_EGamepadTextInputLineModeSingleLine
      VR.EGamepadTextInputLineMode_k_EGamepadTextInputLineModeMultipleLines
    • nVROverlay_GetKeyboardText

      public static int nVROverlay_GetKeyboardText(long pchText, int cchText)
      Unsafe version of: GetKeyboardText
    • VROverlay_GetKeyboardText

      public static int VROverlay_GetKeyboardText(@Nullable ByteBuffer pchText)
      Get the text that was entered into the text input.
    • VROverlay_GetKeyboardText

      public static String VROverlay_GetKeyboardText(int cchText)
      Get the text that was entered into the text input.
    • VROverlay_HideKeyboard

      public static void VROverlay_HideKeyboard()
      Hide the virtual keyboard.
    • nVROverlay_SetKeyboardTransformAbsolute

      public static void nVROverlay_SetKeyboardTransformAbsolute(int eTrackingOrigin, long pmatTrackingOriginToKeyboardTransform)
      Unsafe version of: SetKeyboardTransformAbsolute
    • VROverlay_SetKeyboardTransformAbsolute

      public static void VROverlay_SetKeyboardTransformAbsolute(int eTrackingOrigin, HmdMatrix34 pmatTrackingOriginToKeyboardTransform)
      Set the position of the keyboard in world space.
      Parameters:
      eTrackingOrigin - one of:
      VR.ETrackingUniverseOrigin_TrackingUniverseSeated
      VR.ETrackingUniverseOrigin_TrackingUniverseStanding
      VR.ETrackingUniverseOrigin_TrackingUniverseRawAndUncalibrated
    • nVROverlay_SetKeyboardPositionForOverlay

      public static void nVROverlay_SetKeyboardPositionForOverlay(long ulOverlayHandle, long avoidRect, long __functionAddress)
    • nVROverlay_SetKeyboardPositionForOverlay

      public static void nVROverlay_SetKeyboardPositionForOverlay(long ulOverlayHandle, long avoidRect)
    • VROverlay_SetKeyboardPositionForOverlay

      public static void VROverlay_SetKeyboardPositionForOverlay(long ulOverlayHandle, HmdRect2 avoidRect)
      Set the position of the keyboard in overlay space by telling it to avoid a rectangle in the overlay. Rectangle coords have (0,0) in the bottom left.
    • nVROverlay_ShowMessageOverlay

      public static int nVROverlay_ShowMessageOverlay(long pchText, long pchCaption, long pchButton0Text, long pchButton1Text, long pchButton2Text, long pchButton3Text)
      Unsafe version of: ShowMessageOverlay
    • VROverlay_ShowMessageOverlay

      public static int VROverlay_ShowMessageOverlay(ByteBuffer pchText, ByteBuffer pchCaption, ByteBuffer pchButton0Text, @Nullable ByteBuffer pchButton1Text, @Nullable ByteBuffer pchButton2Text, @Nullable ByteBuffer pchButton3Text)
      Show the message overlay. This will block and return you a result.
    • VROverlay_ShowMessageOverlay

      public static int VROverlay_ShowMessageOverlay(CharSequence pchText, CharSequence pchCaption, CharSequence pchButton0Text, @Nullable CharSequence pchButton1Text, @Nullable CharSequence pchButton2Text, @Nullable CharSequence pchButton3Text)
      Show the message overlay. This will block and return you a result.
    • VROverlay_CloseMessageOverlay

      public static void VROverlay_CloseMessageOverlay()
      If the calling process owns the overlay and it's open, this will close it.