Meshes may be useful in XR applications when representing parts of the environment. In particular, application may provide the surfaces of real-world objects tagged manually to the runtime, or obtain automatically detected environment contents.
This extension allows:
In order to enable the functionality of this extension, the application must pass the name of the extension into CreateInstance via the XrInstanceCreateInfo::enabledExtensionNames parameter as indicated in the extensions section.
| Modifier and Type | Field and Description |
|---|---|
| public static final String | XR_FB_TRIANGLE_MESH_EXTENSION_NAME
The extension name. |
| public static final int | XR_FB_triangle_mesh_SPEC_VERSION
The extension specification version. |
| public static final int | XR_OBJECT_TYPE_TRIANGLE_MESH_FB
Extends |
| public static final int | XR_TRIANGLE_MESH_MUTABLE_BIT_FB
XrTriangleMeshFlagBitsFB - XrTriangleMeshFlagBitsFB Flag Descriptions
|
| public static final int | XR_TYPE_TRIANGLE_MESH_CREATE_INFO_FB
Extends |
| public static final int | XR_WINDING_ORDER_CCW_FB
XrWindingOrderFB - Triangle winding order Enumerant Descriptions
|
| public static final int | XR_WINDING_ORDER_CW_FB
XrWindingOrderFB - Triangle winding order Enumerant Descriptions
|
| public static final int | XR_WINDING_ORDER_UNKNOWN_FB
XrWindingOrderFB - Triangle winding order Enumerant Descriptions
|
| Access | Constructor and Description |
|---|---|
| protected |
| Modifier and Type | Method and Description |
|---|---|
| public static int | nxrCreateTriangleMeshFB(XrSession session, long createInfo, long outTriangleMesh)
Unsafe version of: |
| public static int | nxrTriangleMeshBeginVertexBufferUpdateFB(XrTriangleMeshFB mesh, long outVertexCount)
Unsafe version of: |
| public static int | nxrTriangleMeshGetIndexBufferFB(XrTriangleMeshFB mesh, long outIndexBuffer)
Unsafe version of: |
| public static int | nxrTriangleMeshGetVertexBufferFB(XrTriangleMeshFB mesh, long outVertexBuffer)
Unsafe version of: |
| public static int | xrCreateTriangleMeshFB(XrSession
the session, XrTriangleMeshCreateInfoFB XrSession to which the mesh will belong.a pointer to an createInfo, PointerBuffer XrTriangleMeshCreateInfoFB structure containing parameters to be used to create the mesh.a pointer to a handle in which the created outTriangleMesh)XrTriangleMeshFB is returned.Create a triangle mesh. |
| public static int | xrDestroyTriangleMeshFB(XrTriangleMeshFB
the mesh)XrTriangleMeshFB to destroy.Destroy a triangle mesh. |
| public static int | xrTriangleMeshBeginUpdateFB(XrTriangleMeshFB
the mesh)XrTriangleMeshFB to update.Begin an update of the mesh data. |
| public static int | xrTriangleMeshBeginVertexBufferUpdateFB(XrTriangleMeshFB
the mesh, IntBuffer XrTriangleMeshFB to update.a pointer to a value to populate with the current vertex count. The updated data must have the exact same number of vertices. outVertexCount)Begin an update of the vertex data. |
| public static int | xrTriangleMeshEndUpdateFB(XrTriangleMeshFB
the mesh, int XrTriangleMeshFB to update.the vertex count after the update. vertexCount, int the triangle count after the update. triangleCount)End an update of the mesh data. |
| public static int | xrTriangleMeshEndVertexBufferUpdateFB(XrTriangleMeshFB
the mesh)XrTriangleMeshFB to update.End an update of the vertex data. |
| public static int | xrTriangleMeshGetIndexBufferFB(XrTriangleMeshFB
the mesh, PointerBuffer XrTriangleMeshFB to get the index buffer for.a pointer to return the index buffer into. outIndexBuffer)Obtain the index buffer of a triangle mesh. |
| public static int | xrTriangleMeshGetVertexBufferFB(XrTriangleMeshFB
the mesh, PointerBuffer XrTriangleMeshFB to get the vertex buffer for.a pointer to return the vertex buffer into. outVertexBuffer)Obtain the vertex buffer of a triangle mesh. |
| XR_FB_TRIANGLE_MESH_EXTENSION_NAME | back to summary |
|---|---|
| public static final String XR_FB_TRIANGLE_MESH_EXTENSION_NAME The extension name. | |
| XR_FB_triangle_mesh_SPEC_VERSION | back to summary |
|---|---|
| public static final int XR_FB_triangle_mesh_SPEC_VERSION The extension specification version. | |
| XR_OBJECT_TYPE_TRIANGLE_MESH_FB | back to summary |
|---|---|
| public static final int XR_OBJECT_TYPE_TRIANGLE_MESH_FB Extends | |
| XR_TRIANGLE_MESH_MUTABLE_BIT_FB | back to summary |
|---|---|
| public static final int XR_TRIANGLE_MESH_MUTABLE_BIT_FB XrTriangleMeshFlagBitsFB - XrTriangleMeshFlagBitsFB Flag Descriptions
| |
| XR_TYPE_TRIANGLE_MESH_CREATE_INFO_FB | back to summary |
|---|---|
| public static final int XR_TYPE_TRIANGLE_MESH_CREATE_INFO_FB Extends | |
| XR_WINDING_ORDER_CCW_FB | back to summary |
|---|---|
| public static final int XR_WINDING_ORDER_CCW_FB XrWindingOrderFB - Triangle winding order Enumerant Descriptions
See Also | |
| XR_WINDING_ORDER_CW_FB | back to summary |
|---|---|
| public static final int XR_WINDING_ORDER_CW_FB XrWindingOrderFB - Triangle winding order Enumerant Descriptions
See Also | |
| XR_WINDING_ORDER_UNKNOWN_FB | back to summary |
|---|---|
| public static final int XR_WINDING_ORDER_UNKNOWN_FB XrWindingOrderFB - Triangle winding order Enumerant Descriptions
See Also | |
| FBTriangleMesh | back to summary |
|---|---|
| protected FBTriangleMesh() | |
| nxrCreateTriangleMeshFB | back to summary |
|---|---|
| public static int nxrCreateTriangleMeshFB(XrSession session, long createInfo, long outTriangleMesh) Unsafe version of: | |
| nxrTriangleMeshBeginVertexBufferUpdateFB | back to summary |
|---|---|
| public static int nxrTriangleMeshBeginVertexBufferUpdateFB(XrTriangleMeshFB mesh, long outVertexCount) Unsafe version of: | |
| nxrTriangleMeshGetIndexBufferFB | back to summary |
|---|---|
| public static int nxrTriangleMeshGetIndexBufferFB(XrTriangleMeshFB mesh, long outIndexBuffer) Unsafe version of: | |
| nxrTriangleMeshGetVertexBufferFB | back to summary |
|---|---|
| public static int nxrTriangleMeshGetVertexBufferFB(XrTriangleMeshFB mesh, long outVertexBuffer) Unsafe version of: | |
| xrCreateTriangleMeshFB | back to summary |
|---|---|
| public static int xrCreateTriangleMeshFB(XrSession session, XrTriangleMeshCreateInfoFB createInfo, PointerBuffer outTriangleMesh) Create a triangle mesh. C SpecificationThe
DescriptionThis creates an When the mesh is mutable (the Immutable meshes have no state machine; they may be considered to be in state fb_triangle_mesh_state_ready with no valid edges leaving that state. Valid Usage (Implicit)
Return Codes
See Also
| |
| xrDestroyTriangleMeshFB | back to summary |
|---|---|
| public static int xrDestroyTriangleMeshFB(XrTriangleMeshFB mesh) Destroy a triangle mesh. C SpecificationThe
Description
Valid Usage (Implicit)
Thread Safety
Return Codes
| |
| xrTriangleMeshBeginUpdateFB | back to summary |
|---|---|
| public static int xrTriangleMeshBeginUpdateFB(XrTriangleMeshFB mesh) Begin an update of the mesh data. C SpecificationThe
DescriptionBegins updating the mesh buffer data. The application must call this function before it makes any modifications to the buffers retrieved by The triangle mesh The triangle mesh
Valid Usage (Implicit)
Return Codes
See Also
| |
| xrTriangleMeshBeginVertexBufferUpdateFB | back to summary |
|---|---|
| public static int xrTriangleMeshBeginVertexBufferUpdateFB(XrTriangleMeshFB mesh, IntBuffer outVertexCount) Begin an update of the vertex data. C SpecificationThe
DescriptionBegins an update of the vertex positions of a mutable triangle mesh. The vertex count returned through The triangle mesh The triangle mesh A successful call moves Valid Usage (Implicit)
Return Codes
See Also
| |
| xrTriangleMeshEndUpdateFB | back to summary |
|---|---|
| public static int xrTriangleMeshEndUpdateFB(XrTriangleMeshFB mesh, int vertexCount, int triangleCount) End an update of the mesh data. C SpecificationThe
DescriptionSignals to the runtime that the application has finished initially populating or updating the mesh buffers. The triangle mesh The triangle mesh A successful call moves Valid Usage (Implicit)
Return Codes
See Also
| |
| xrTriangleMeshEndVertexBufferUpdateFB | back to summary |
|---|---|
| public static int xrTriangleMeshEndVertexBufferUpdateFB(XrTriangleMeshFB mesh) End an update of the vertex data. C SpecificationThe
DescriptionSignals to the runtime that the application has finished updating the vertex buffer data following a call to The triangle mesh The triangle mesh A successful call moves Valid Usage (Implicit)
Return Codes
See Also
| |
| xrTriangleMeshGetIndexBufferFB | back to summary |
|---|---|
| public static int xrTriangleMeshGetIndexBufferFB(XrTriangleMeshFB mesh, PointerBuffer outIndexBuffer) Obtain the index buffer of a triangle mesh. C SpecificationThe
DescriptionRetrieves a pointer to the index buffer that defines the topology of the triangle mesh. Each triplet of consecutive elements points to three vertices in the vertex buffer and thus form a triangle. The size of the buffer is A triangle mesh must be mutable and in state fb_triangle_mesh_state_defining_topology or fb_triangle_mesh_state_updating_mesh for the application to modify the contents and/or triangle count in the index buffer retrieved by this function. Valid Usage (Implicit)
Return Codes
See Also
| |
| xrTriangleMeshGetVertexBufferFB | back to summary |
|---|---|
| public static int xrTriangleMeshGetVertexBufferFB(XrTriangleMeshFB mesh, PointerBuffer outVertexBuffer) Obtain the vertex buffer of a triangle mesh. C SpecificationThe
DescriptionRetrieves a pointer to the vertex buffer. The vertex buffer is structured as an array of A mesh must be mutable and in a specific state for the application to modify it through the retrieved vertex buffer.
Valid Usage (Implicit)
Return Codes
See Also
| |