Class KHRVisibilityMask

java.lang.Object
org.lwjgl.openxr.KHRVisibilityMask

public class KHRVisibilityMask extends Object
The XR_KHR_visibility_mask extension.

This extension support the providing of a per-view drawing mask for applications. The primary purpose of this is to enable performance improvements that result from avoiding drawing on areas that are not visible to the user. A common occurrence in head-mounted VR hardware is that the optical system’s frustum does not intersect precisely with the rectangular display it is viewing. As a result, it may be that there are parts of the display that are not visible to the user, such as the corners of the display. In such cases it would be unnecessary for the application to draw into those parts.

  • Field Details

    • XR_KHR_visibility_mask_SPEC_VERSION

      public static final int XR_KHR_visibility_mask_SPEC_VERSION
      The extension specification version.
      See Also:
    • XR_KHR_VISIBILITY_MASK_EXTENSION_NAME

      public static final String XR_KHR_VISIBILITY_MASK_EXTENSION_NAME
      The extension name.
      See Also:
    • XR_TYPE_VISIBILITY_MASK_KHR

      public static final int XR_TYPE_VISIBILITY_MASK_KHR
      See Also:
    • XR_TYPE_EVENT_DATA_VISIBILITY_MASK_CHANGED_KHR

      public static final int XR_TYPE_EVENT_DATA_VISIBILITY_MASK_CHANGED_KHR
      See Also:
    • XR_VISIBILITY_MASK_TYPE_HIDDEN_TRIANGLE_MESH_KHR

      public static final int XR_VISIBILITY_MASK_TYPE_HIDDEN_TRIANGLE_MESH_KHR
      XrVisibilityMaskTypeKHR - Visibility Mask Type
      Enumerant Descriptions
      • VISIBILITY_MASK_TYPE_HIDDEN_TRIANGLE_MESH_KHR refers to a two dimensional triangle mesh on the view surface which should not be drawn to by the application. XrVisibilityMaskKHR refers to a set of triangles identified by vertices and vertex indices. The index count will thus be a multiple of three. The triangle vertices will be returned in counter-clockwise order as viewed from the user perspective.
      • VISIBILITY_MASK_TYPE_VISIBLE_TRIANGLE_MESH_KHR refers to a two dimensional triangle mesh on the view surface which should be drawn to by the application. XrVisibilityMaskKHR refers to a set of triangles identified by vertices and vertex indices. The index count will thus be a multiple of three. The triangle vertices will be returned in counter-clockwise order as viewed from the user perspective.
      • VISIBILITY_MASK_TYPE_LINE_LOOP_KHR refers to a single multi-segmented line loop on the view surface which encompasses the view area which should be drawn by the application. It is the border that exists between the visible and hidden meshes identified by VISIBILITY_MASK_TYPE_HIDDEN_TRIANGLE_MESH_KHR and VISIBILITY_MASK_TYPE_VISIBLE_TRIANGLE_MESH_KHR. The line is counter-clockwise, contiguous, and non-self crossing, with the last point implicitly connecting to the first point. There is one vertex per point, the index count will equal the vertex count, and the indices will refer to the vertices.
      See Also

      GetVisibilityMaskKHR

      See Also:
    • XR_VISIBILITY_MASK_TYPE_VISIBLE_TRIANGLE_MESH_KHR

      public static final int XR_VISIBILITY_MASK_TYPE_VISIBLE_TRIANGLE_MESH_KHR
      XrVisibilityMaskTypeKHR - Visibility Mask Type
      Enumerant Descriptions
      • VISIBILITY_MASK_TYPE_HIDDEN_TRIANGLE_MESH_KHR refers to a two dimensional triangle mesh on the view surface which should not be drawn to by the application. XrVisibilityMaskKHR refers to a set of triangles identified by vertices and vertex indices. The index count will thus be a multiple of three. The triangle vertices will be returned in counter-clockwise order as viewed from the user perspective.
      • VISIBILITY_MASK_TYPE_VISIBLE_TRIANGLE_MESH_KHR refers to a two dimensional triangle mesh on the view surface which should be drawn to by the application. XrVisibilityMaskKHR refers to a set of triangles identified by vertices and vertex indices. The index count will thus be a multiple of three. The triangle vertices will be returned in counter-clockwise order as viewed from the user perspective.
      • VISIBILITY_MASK_TYPE_LINE_LOOP_KHR refers to a single multi-segmented line loop on the view surface which encompasses the view area which should be drawn by the application. It is the border that exists between the visible and hidden meshes identified by VISIBILITY_MASK_TYPE_HIDDEN_TRIANGLE_MESH_KHR and VISIBILITY_MASK_TYPE_VISIBLE_TRIANGLE_MESH_KHR. The line is counter-clockwise, contiguous, and non-self crossing, with the last point implicitly connecting to the first point. There is one vertex per point, the index count will equal the vertex count, and the indices will refer to the vertices.
      See Also

      GetVisibilityMaskKHR

      See Also:
    • XR_VISIBILITY_MASK_TYPE_LINE_LOOP_KHR

      public static final int XR_VISIBILITY_MASK_TYPE_LINE_LOOP_KHR
      XrVisibilityMaskTypeKHR - Visibility Mask Type
      Enumerant Descriptions
      • VISIBILITY_MASK_TYPE_HIDDEN_TRIANGLE_MESH_KHR refers to a two dimensional triangle mesh on the view surface which should not be drawn to by the application. XrVisibilityMaskKHR refers to a set of triangles identified by vertices and vertex indices. The index count will thus be a multiple of three. The triangle vertices will be returned in counter-clockwise order as viewed from the user perspective.
      • VISIBILITY_MASK_TYPE_VISIBLE_TRIANGLE_MESH_KHR refers to a two dimensional triangle mesh on the view surface which should be drawn to by the application. XrVisibilityMaskKHR refers to a set of triangles identified by vertices and vertex indices. The index count will thus be a multiple of three. The triangle vertices will be returned in counter-clockwise order as viewed from the user perspective.
      • VISIBILITY_MASK_TYPE_LINE_LOOP_KHR refers to a single multi-segmented line loop on the view surface which encompasses the view area which should be drawn by the application. It is the border that exists between the visible and hidden meshes identified by VISIBILITY_MASK_TYPE_HIDDEN_TRIANGLE_MESH_KHR and VISIBILITY_MASK_TYPE_VISIBLE_TRIANGLE_MESH_KHR. The line is counter-clockwise, contiguous, and non-self crossing, with the last point implicitly connecting to the first point. There is one vertex per point, the index count will equal the vertex count, and the indices will refer to the vertices.
      See Also

      GetVisibilityMaskKHR

      See Also:
  • Method Details