All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.lwjgl.openxr.FBHandTrackingMesh Maven / Gradle / Ivy

Go to download

A royalty-free, open standard that provides high-performance access to Augmented Reality (AR) and Virtual Reality (VR)—collectively known as XR—platforms and devices.

There is a newer version: 3.3.6
Show newest version
/*
 * Copyright LWJGL. All rights reserved.
 * License terms: https://www.lwjgl.org/license
 * MACHINE GENERATED FILE, DO NOT EDIT
 */
package org.lwjgl.openxr;

import org.lwjgl.system.*;

import static org.lwjgl.system.Checks.*;
import static org.lwjgl.system.JNI.*;

/**
 * The XR_FB_hand_tracking_mesh extension.
 * 
 * 

The {@link EXTHandTracking XR_EXT_hand_tracking} extension provides a list of hand joint poses but no mechanism to render a skinned hand mesh.

* *

This extension allows:

* *
    *
  • An application to get a skinned hand mesh and a bind pose skeleton that can be used to render a hand object driven by the joints from the {@link EXTHandTracking XR_EXT_hand_tracking} extension.
  • *
  • Control the scale of the hand joints returned by {@link EXTHandTracking XR_EXT_hand_tracking}.
  • *
*/ public class FBHandTrackingMesh { /** The extension specification version. */ public static final int XR_FB_hand_tracking_mesh_SPEC_VERSION = 3; /** The extension name. */ public static final String XR_FB_HAND_TRACKING_MESH_EXTENSION_NAME = "XR_FB_hand_tracking_mesh"; /** * Extends {@code XrStructureType}. * *
Enum values:
* *
    *
  • {@link #XR_TYPE_HAND_TRACKING_MESH_FB TYPE_HAND_TRACKING_MESH_FB}
  • *
  • {@link #XR_TYPE_HAND_TRACKING_SCALE_FB TYPE_HAND_TRACKING_SCALE_FB}
  • *
*/ public static final int XR_TYPE_HAND_TRACKING_MESH_FB = 1000110001, XR_TYPE_HAND_TRACKING_SCALE_FB = 1000110003; protected FBHandTrackingMesh() { throw new UnsupportedOperationException(); } // --- [ xrGetHandMeshFB ] --- /** Unsafe version of: {@link #xrGetHandMeshFB GetHandMeshFB} */ public static int nxrGetHandMeshFB(XrHandTrackerEXT handTracker, long mesh) { long __functionAddress = handTracker.getCapabilities().xrGetHandMeshFB; if (CHECKS) { check(__functionAddress); } return callPPI(handTracker.address(), mesh, __functionAddress); } /** * Create a foveation profile. * *
C Specification
* *

The {@link #xrGetHandMeshFB GetHandMeshFB} function is defined as:

* *

     * XrResult xrGetHandMeshFB(
     *     XrHandTrackerEXT                            handTracker,
     *     XrHandTrackingMeshFB*                       mesh);
* *
Description
* *

The {@link #xrGetHandMeshFB GetHandMeshFB} function populates an {@link XrHandTrackingMeshFB} structure with enough information to render a skinned mesh driven by the hand joints. As discussed in the specification for that structure, the data enumerated by this call is constant during the lifetime of an {@code XrInstance}.

* *
Valid Usage (Implicit)
* *
    *
  • The {@link FBHandTrackingMesh XR_FB_hand_tracking_mesh} extension must be enabled prior to calling {@link #xrGetHandMeshFB GetHandMeshFB}
  • *
  • {@code handTracker} must be a valid {@code XrHandTrackerEXT} handle
  • *
  • {@code mesh} must be a pointer to an {@link XrHandTrackingMeshFB} structure
  • *
* *
Return Codes
* *
*
On success, this command returns
*
    *
  • {@link XR10#XR_SUCCESS SUCCESS}
  • *
  • {@link XR10#XR_SESSION_LOSS_PENDING SESSION_LOSS_PENDING}
  • *
*
On failure, this command returns
*
    *
  • {@link XR10#XR_ERROR_FUNCTION_UNSUPPORTED ERROR_FUNCTION_UNSUPPORTED}
  • *
  • {@link XR10#XR_ERROR_VALIDATION_FAILURE ERROR_VALIDATION_FAILURE}
  • *
  • {@link XR10#XR_ERROR_RUNTIME_FAILURE ERROR_RUNTIME_FAILURE}
  • *
  • {@link XR10#XR_ERROR_HANDLE_INVALID ERROR_HANDLE_INVALID}
  • *
  • {@link XR10#XR_ERROR_INSTANCE_LOST ERROR_INSTANCE_LOST}
  • *
  • {@link XR10#XR_ERROR_SESSION_LOST ERROR_SESSION_LOST}
  • *
  • {@link XR10#XR_ERROR_SIZE_INSUFFICIENT ERROR_SIZE_INSUFFICIENT}
  • *
  • {@link XR10#XR_ERROR_FEATURE_UNSUPPORTED ERROR_FEATURE_UNSUPPORTED}
  • *
*
* *
See Also
* *

{@link XrHandTrackingMeshFB}

* * @param handTracker the {@code XrHandTrackerEXT} that is associated with a particular hand. * @param mesh the {@link XrHandTrackingMeshFB} output structure. */ @NativeType("XrResult") public static int xrGetHandMeshFB(XrHandTrackerEXT handTracker, @NativeType("XrHandTrackingMeshFB *") XrHandTrackingMeshFB mesh) { return nxrGetHandMeshFB(handTracker, mesh.address()); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy