Top Description Inners Fields Constructors Methods
org.lwjgl.openxr

public Class XrFoveatedViewConfigurationViewVARJO

extends Struct<XrFoveatedViewConfigurationViewVARJO>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Foveated view configuration views.
Valid Usage (Implicit)

For example:


XrInstance instance; // previously populated
XrSystemId systemId; // previously populated
XrViewConfigurationType viewConfigType; // Select XR_VIEW_CONFIGURATION_TYPE_PRIMARY_QUAD_VARJO

XrSystemFoveatedRenderingPropertiesVARJO foveatedRenderingProperties{XR_TYPE_SYSTEM_FOVEATED_RENDERING_PROPERTIES_VARJO};
XrSystemProperties systemProperties{XR_TYPE_SYSTEM_PROPERTIES, &foveatedRenderingProperties};
CHK_XR(xrGetSystemProperties(instance, systemId, &systemProperties));

uint32_t viewCount;
CHK_XR(xrEnumerateViewConfigurationViews(instance, systemId, viewConfigType, 0, &viewCount, nullptr));
// Non-foveated rendering views dimensions
std::vector<XrViewConfigurationView> configViews(viewCount, {XR_TYPE_VIEW_CONFIGURATION_VIEW});
CHK_XR(xrEnumerateViewConfigurationViews(instance, systemId, viewConfigType, viewCount, &viewCount, configViews.data()));

// Foveated rendering views dimensions
std::vector<XrViewConfigurationView> foveatedViews;
if (foveatedRenderingProperties.supportsFoveatedRendering && viewConfigType == XR_VIEW_CONFIGURATION_TYPE_PRIMARY_QUAD_VARJO) {
  std::vector<XrFoveatedViewConfigurationViewVARJO> requestFoveatedConfig{4, {XR_TYPE_FOVEATED_VIEW_CONFIGURATION_VIEW_VARJO, nullptr, XR_TRUE}};
  foveatedViews = std::vector<XrViewConfigurationView>{4, {XR_TYPE_VIEW_CONFIGURATION_VIEW}};
  for (size_t i = 0; i < 4; i++) {
    foveatedViews[i].next = &requestFoveatedConfig[i];
  }
  CHK_XR(xrEnumerateViewConfigurationViews(instance, systemId, viewConfigType, viewCount, &viewCount, foveatedViews.data()));
}
Note

Applications using this extension are encouraged to create two sets of swapchains or one big enough set of swapchains and two sets of viewports. One set will be used when rendering gaze is not available and other one will be used when foveated rendering and rendering gaze is available. Using foveated textures may not provide optimal visual quality when rendering gaze is not available.

See Also

XrViewConfigurationView

Layout


struct XrFoveatedViewConfigurationViewVARJO {
    XrStructureType type;
    void * next;
    XrBool32 foveatedRenderingActive;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
FOVEATEDRENDERINGACTIVE

The struct member offsets.

public static final int
NEXT

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
TYPE

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
public
XrFoveatedViewConfigurationViewVARJO(ByteBuffer container)

Creates a XrFoveatedViewConfigurationViewVARJO instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static XrFoveatedViewConfigurationViewVARJO
calloc()

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated with memCalloc.

public static XrFoveatedViewConfigurationViewVARJO.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated with memCalloc.

public static XrFoveatedViewConfigurationViewVARJO
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static XrFoveatedViewConfigurationViewVARJO.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

protected XrFoveatedViewConfigurationViewVARJO
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static XrFoveatedViewConfigurationViewVARJO
create()

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated with BufferUtils.

public static XrFoveatedViewConfigurationViewVARJO
create(long address)

Returns a new XrFoveatedViewConfigurationViewVARJO instance for the specified memory address.

public static XrFoveatedViewConfigurationViewVARJO.Buffer
create(int
the buffer capacity
capacity
)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated with BufferUtils.

public static XrFoveatedViewConfigurationViewVARJO.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a XrFoveatedViewConfigurationViewVARJO.Buffer instance at the specified memory.

public static XrFoveatedViewConfigurationViewVARJO
createSafe(long address)

Like create, but returns null if address is NULL.

public static XrFoveatedViewConfigurationViewVARJO.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public boolean
foveatedRenderingActive()

an XrBool32, indicating if the runtime should return foveated view configuration view.

public XrFoveatedViewConfigurationViewVARJO
foveatedRenderingActive(boolean value)

Sets the specified value to the foveatedRenderingActive field.

public static XrFoveatedViewConfigurationViewVARJO
malloc()

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated with memAlloc.

public static XrFoveatedViewConfigurationViewVARJO.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated with memAlloc.

public static XrFoveatedViewConfigurationViewVARJO
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated on the specified MemoryStack.

public static XrFoveatedViewConfigurationViewVARJO.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated on the specified MemoryStack.

public long
next()

NULL or a pointer to the next structure in a structure chain.

public XrFoveatedViewConfigurationViewVARJO
next(long value)

Sets the specified value to the next field.

public static int
nfoveatedRenderingActive(long struct)

Unsafe version of foveatedRenderingActive.

public static void
nfoveatedRenderingActive(long struct, int value)

Unsafe version of foveatedRenderingActive.

public static long
nnext(long struct)

Unsafe version of next.

public static void
nnext(long struct, long value)

Unsafe version of next.

public static int
ntype(long struct)

Unsafe version of type.

public static void
ntype(long struct, int value)

Unsafe version of type.

public XrFoveatedViewConfigurationViewVARJO
set(int type, long next, boolean foveatedRenderingActive)

Initializes this struct with the specified values.

public XrFoveatedViewConfigurationViewVARJO

Returns:

this struct
set
(XrFoveatedViewConfigurationViewVARJO
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public int
type()

the XrStructureType of this structure.

public XrFoveatedViewConfigurationViewVARJO
type(int value)

Sets the specified value to the type field.

public XrFoveatedViewConfigurationViewVARJO
Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate

Field Detail

ALIGNOFback to summary
public static final int ALIGNOF

The struct alignment in bytes.

FOVEATEDRENDERINGACTIVEback to summary
public static final int FOVEATEDRENDERINGACTIVE

The struct member offsets.

NEXTback to summary
public static final int NEXT

The struct member offsets.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

TYPEback to summary
public static final int TYPE

The struct member offsets.

Constructor Detail

XrFoveatedViewConfigurationViewVARJOback to summary
protected XrFoveatedViewConfigurationViewVARJO(long address, ByteBuffer container)
XrFoveatedViewConfigurationViewVARJOback to summary
public XrFoveatedViewConfigurationViewVARJO(ByteBuffer container)

Creates a XrFoveatedViewConfigurationViewVARJO instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

The created instance holds a strong reference to the container object.

Method Detail

callocback to summary
public static XrFoveatedViewConfigurationViewVARJO calloc()

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated with memCalloc. The instance must be explicitly freed.

callocback to summary
public static XrFoveatedViewConfigurationViewVARJO.Buffer calloc(int capacity)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated with memCalloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

callocback to summary
public static XrFoveatedViewConfigurationViewVARJO calloc(MemoryStack stack)

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated on the specified MemoryStack and initializes all its bits to zero.

Parameters
stack:MemoryStack

the stack from which to allocate

callocback to summary
public static XrFoveatedViewConfigurationViewVARJO.Buffer calloc(int capacity, MemoryStack stack)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

createback to summary
protected XrFoveatedViewConfigurationViewVARJO create(long address, ByteBuffer container)

Implements abstract org.lwjgl.system.Struct.create.

Doc from org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.

Effectively, every Struct instance is a factory for more instances of the same type. This is used by StructBuffer.

Parameters
address:long

the struct memory address

container:ByteBuffer

an optional container buffer, to be referenced strongly by the struct instance.

Annotations
@Override
createback to summary
public static XrFoveatedViewConfigurationViewVARJO create()

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated with BufferUtils.

createback to summary
public static XrFoveatedViewConfigurationViewVARJO create(long address)

Returns a new XrFoveatedViewConfigurationViewVARJO instance for the specified memory address.

createback to summary
public static XrFoveatedViewConfigurationViewVARJO.Buffer create(int capacity)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated with BufferUtils.

Parameters
capacity:int

the buffer capacity

createback to summary
public static XrFoveatedViewConfigurationViewVARJO.Buffer create(long address, int capacity)

Create a XrFoveatedViewConfigurationViewVARJO.Buffer instance at the specified memory.

Parameters
address:long

the memory address

capacity:int

the buffer capacity

createSafeback to summary
public static XrFoveatedViewConfigurationViewVARJO createSafe(long address)

Like create, but returns null if address is NULL.

Annotations
@Nullable
createSafeback to summary
public static XrFoveatedViewConfigurationViewVARJO.Buffer createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

Annotations
@Nullable
foveatedRenderingActiveback to summary
public boolean foveatedRenderingActive()

an XrBool32, indicating if the runtime should return foveated view configuration view.

Annotations
@NativeType:XrBool32
foveatedRenderingActiveback to summary
public XrFoveatedViewConfigurationViewVARJO foveatedRenderingActive(boolean value)

Sets the specified value to the foveatedRenderingActive field.

mallocback to summary
public static XrFoveatedViewConfigurationViewVARJO malloc()

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated with memAlloc. The instance must be explicitly freed.

mallocback to summary
public static XrFoveatedViewConfigurationViewVARJO.Buffer malloc(int capacity)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated with memAlloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

mallocback to summary
public static XrFoveatedViewConfigurationViewVARJO malloc(MemoryStack stack)

Returns a new XrFoveatedViewConfigurationViewVARJO instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

mallocback to summary
public static XrFoveatedViewConfigurationViewVARJO.Buffer malloc(int capacity, MemoryStack stack)

Returns a new XrFoveatedViewConfigurationViewVARJO.Buffer instance allocated on the specified MemoryStack.

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

nextback to summary
public long next()

NULL or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.

Annotations
@NativeType:void *
nextback to summary
public XrFoveatedViewConfigurationViewVARJO next(long value)

Sets the specified value to the next field.

nfoveatedRenderingActiveback to summary
public static int nfoveatedRenderingActive(long struct)

Unsafe version of foveatedRenderingActive.

nfoveatedRenderingActiveback to summary
public static void nfoveatedRenderingActive(long struct, int value)

Unsafe version of foveatedRenderingActive.

nnextback to summary
public static long nnext(long struct)

Unsafe version of next.

nnextback to summary
public static void nnext(long struct, long value)

Unsafe version of next.

ntypeback to summary
public static int ntype(long struct)

Unsafe version of type.

ntypeback to summary
public static void ntype(long struct, int value)

Unsafe version of type.

setback to summary
public XrFoveatedViewConfigurationViewVARJO set(int type, long next, boolean foveatedRenderingActive)

Initializes this struct with the specified values.

setback to summary
public XrFoveatedViewConfigurationViewVARJO set(XrFoveatedViewConfigurationViewVARJO src)

Copies the specified struct data to this struct.

Parameters
src:XrFoveatedViewConfigurationViewVARJO

the source struct

Returns:XrFoveatedViewConfigurationViewVARJO

this struct

sizeofback to summary
public int sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Doc from org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).

Annotations
@Override
typeback to summary
public int type()

the XrStructureType of this structure.

Annotations
@NativeType:XrStructureType
typeback to summary
public XrFoveatedViewConfigurationViewVARJO type(int value)

Sets the specified value to the type field.

type$Defaultback to summary
public XrFoveatedViewConfigurationViewVARJO type$Default()

Sets the TYPE_FOVEATED_VIEW_CONFIGURATION_VIEW_VARJO value to the type field.

org.lwjgl.openxr back to summary

public Class XrFoveatedViewConfigurationViewVARJO.Buffer

extends StructBuffer<XrFoveatedViewConfigurationViewVARJO, XrFoveatedViewConfigurationViewVARJO.Buffer>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable

An array of XrFoveatedViewConfigurationViewVARJO structs.

Field Summary

Modifier and TypeField and Description
private static final XrFoveatedViewConfigurationViewVARJO

Constructor Summary

AccessConstructor and Description
public
Buffer(ByteBuffer container)

Creates a new XrFoveatedViewConfigurationViewVARJO.Buffer instance backed by the specified container.

public
Buffer(long address, int cap)

pack-priv
Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Summary

Modifier and TypeMethod and Description
public boolean
public XrFoveatedViewConfigurationViewVARJO.Buffer
protected XrFoveatedViewConfigurationViewVARJO
public long

Returns:

the value of the XrFoveatedViewConfigurationViewVARJO#next field.
next
()

public XrFoveatedViewConfigurationViewVARJO.Buffer
next(long value)

Sets the specified value to the XrFoveatedViewConfigurationViewVARJO#next field.

protected XrFoveatedViewConfigurationViewVARJO.Buffer
public int

Returns:

the value of the XrFoveatedViewConfigurationViewVARJO#type field.
type
()

public XrFoveatedViewConfigurationViewVARJO.Buffer
type(int value)

Sets the specified value to the XrFoveatedViewConfigurationViewVARJO#type field.

public XrFoveatedViewConfigurationViewVARJO.Buffer
Inherited from org.lwjgl.system.StructBuffer:
applyapplyforEachgetgetgetgetiteratorparallelStreamputputsizeofspliteratorstream

Field Detail

ELEMENT_FACTORYback to summary
private static final XrFoveatedViewConfigurationViewVARJO ELEMENT_FACTORY

Constructor Detail

Bufferback to summary
public Buffer(ByteBuffer container)

Creates a new XrFoveatedViewConfigurationViewVARJO.Buffer instance backed by the specified container.

Changes to the container's content will be visible to the struct buffer instance and vice versa. The two buffers' position, limit, and mark values will be independent. The new buffer's position will be zero, its capacity and its limit will be the number of bytes remaining in this buffer divided by XrFoveatedViewConfigurationViewVARJO#SIZEOF, and its mark will be undefined.

The created buffer instance holds a strong reference to the container object.

Bufferback to summary
public Buffer(long address, int cap)
Bufferback to summary
pack-priv Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Detail

foveatedRenderingActiveback to summary
public boolean foveatedRenderingActive()
Returns:boolean

the value of the XrFoveatedViewConfigurationViewVARJO#foveatedRenderingActive field.

Annotations
@NativeType:XrBool32
foveatedRenderingActiveback to summary
public XrFoveatedViewConfigurationViewVARJO.Buffer foveatedRenderingActive(boolean value)

Sets the specified value to the XrFoveatedViewConfigurationViewVARJO#foveatedRenderingActive field.

getElementFactoryback to summary
protected XrFoveatedViewConfigurationViewVARJO getElementFactory()

Implements abstract org.lwjgl.system.StructBuffer.getElementFactory.

Annotations
@Override
nextback to summary
public long next()
Returns:long

the value of the XrFoveatedViewConfigurationViewVARJO#next field.

Annotations
@NativeType:void *
nextback to summary
public XrFoveatedViewConfigurationViewVARJO.Buffer next(long value)

Sets the specified value to the XrFoveatedViewConfigurationViewVARJO#next field.

selfback to summary
protected XrFoveatedViewConfigurationViewVARJO.Buffer self()

Implements abstract org.lwjgl.system.CustomBuffer.self.

Annotations
@Override
typeback to summary
public int type()
Returns:int

the value of the XrFoveatedViewConfigurationViewVARJO#type field.

Annotations
@NativeType:XrStructureType
typeback to summary
public XrFoveatedViewConfigurationViewVARJO.Buffer type(int value)

Sets the specified value to the XrFoveatedViewConfigurationViewVARJO#type field.

type$Defaultback to summary
public XrFoveatedViewConfigurationViewVARJO.Buffer type$Default()

Sets the TYPE_FOVEATED_VIEW_CONFIGURATION_VIEW_VARJO value to the XrFoveatedViewConfigurationViewVARJO#type field.