Package org.lwjgl.ovr
Class OVRLayerEyeMatrix
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.ovr.OVRLayerEyeMatrix
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class OVRLayerEyeMatrix extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceDescribes a layer that specifies a monoscopic or stereoscopic view.This uses a direct 3x4 matrix to map from view space to the UV coordinates. It is essentially the same thing as
OVRLayerEyeFovbut using a much lower level. This is mainly to provide compatibility with specific apps. Unless the application really requires this flexibility, it is usually better to useovrLayerEyeFov.Three options exist with respect to mono/stereo texture usage:
ColorTexture[0]andColorTexture[1]contain the left and right stereo renderings, respectively.Viewport[0]andViewport[1]refer toColorTexture[0]andColorTexture[1], respectively.ColorTexture[0]contains both the left and right renderings,ColorTexture[1]isNULL, andViewport[0]andViewport[1]refer to sub-rects withColorTexture[0].ColorTexture[0]contains a single monoscopic rendering, andViewport[0]andViewport[1]both refer to that rendering.
Layout
struct ovrLayerEyeMatrix {ovrLayerHeaderHeader(); ovrTextureSwapChainColorTexture()[ovrEye_Count];ovrRectiViewport()[ovrEye_Count];ovrPosefRenderPose()[ovrEye_Count];ovrMatrix4fMatrix()[ovrEye_Count]; doubleSensorSampleTime(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classOVRLayerEyeMatrix.BufferAn array ofOVRLayerEyeMatrixstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intCOLORTEXTURE
HEADER
MATRIX
RENDERPOSE
SENSORSAMPLETIMEThe struct member offsets.static intSIZEOFThe struct size in bytes.static intVIEWPORTThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description OVRLayerEyeMatrix(java.nio.ByteBuffer container)Creates aOVRLayerEyeMatrixinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static OVRLayerEyeMatrixcalloc()Returns a newOVRLayerEyeMatrixinstance allocated withmemCalloc.static OVRLayerEyeMatrix.Buffercalloc(int capacity)Returns a newOVRLayerEyeMatrix.Bufferinstance allocated withmemCalloc.static OVRLayerEyeMatrix.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newOVRLayerEyeMatrix.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static OVRLayerEyeMatrixcalloc(org.lwjgl.system.MemoryStack stack)Returns a newOVRLayerEyeMatrixinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static OVRLayerEyeMatrixcallocStack()Deprecated.static OVRLayerEyeMatrix.BuffercallocStack(int capacity)Deprecated.static OVRLayerEyeMatrix.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Deprecated.static OVRLayerEyeMatrixcallocStack(org.lwjgl.system.MemoryStack stack)Deprecated.org.lwjgl.PointerBufferColorTexture()ovrTextureSwapChainsfor the left and right eye respectively.longColorTexture(int index)ovrTextureSwapChainsfor the left and right eye respectively.OVRLayerEyeMatrixColorTexture(int index, long value)Sets the specified value at the specified index of theColorTexture()field.OVRLayerEyeMatrixColorTexture(org.lwjgl.PointerBuffer value)Copies the specifiedPointerBufferto theColorTexture()field.static OVRLayerEyeMatrixcreate()Returns a newOVRLayerEyeMatrixinstance allocated withBufferUtils.static OVRLayerEyeMatrix.Buffercreate(int capacity)Returns a newOVRLayerEyeMatrix.Bufferinstance allocated withBufferUtils.static OVRLayerEyeMatrixcreate(long address)Returns a newOVRLayerEyeMatrixinstance for the specified memory address.static OVRLayerEyeMatrix.Buffercreate(long address, int capacity)Create aOVRLayerEyeMatrix.Bufferinstance at the specified memory.static OVRLayerEyeMatrixcreateSafe(long address)static OVRLayerEyeMatrix.BuffercreateSafe(long address, int capacity)OVRLayerHeaderHeader()Header.Typemust beLayerType_EyeMatrixOVRLayerEyeMatrixHeader(java.util.function.Consumer<OVRLayerHeader> consumer)Passes theHeader()field to the specifiedConsumer.OVRLayerEyeMatrixHeader(OVRLayerHeader value)Copies the specifiedOVRLayerHeaderto theHeader()field.static OVRLayerEyeMatrixmalloc()Returns a newOVRLayerEyeMatrixinstance allocated withmemAlloc.static OVRLayerEyeMatrix.Buffermalloc(int capacity)Returns a newOVRLayerEyeMatrix.Bufferinstance allocated withmemAlloc.static OVRLayerEyeMatrix.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newOVRLayerEyeMatrix.Bufferinstance allocated on the specifiedMemoryStack.static OVRLayerEyeMatrixmalloc(org.lwjgl.system.MemoryStack stack)Returns a newOVRLayerEyeMatrixinstance allocated on the specifiedMemoryStack.static OVRLayerEyeMatrixmallocStack()Deprecated.static OVRLayerEyeMatrix.BuffermallocStack(int capacity)Deprecated.static OVRLayerEyeMatrix.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Deprecated.static OVRLayerEyeMatrixmallocStack(org.lwjgl.system.MemoryStack stack)Deprecated.OVRMatrix4f.BufferMatrix()specifies the mapping from a view-space vector to a UV coordinate on the textures given above.OVRMatrix4fMatrix(int index)specifies the mapping from a view-space vector to a UV coordinate on the textures given above.OVRLayerEyeMatrixMatrix(int index, java.util.function.Consumer<OVRMatrix4f> consumer)OVRLayerEyeMatrixMatrix(int index, OVRMatrix4f value)Copies the specifiedOVRMatrix4fat the specified index of theMatrix()field.OVRLayerEyeMatrixMatrix(java.util.function.Consumer<OVRMatrix4f.Buffer> consumer)Passes theMatrix()field to the specifiedConsumer.OVRLayerEyeMatrixMatrix(OVRMatrix4f.Buffer value)Copies the specifiedOVRMatrix4f.Bufferto theMatrix()field.static org.lwjgl.PointerBuffernColorTexture(long struct)Unsafe version ofColorTexture().static longnColorTexture(long struct, int index)Unsafe version ofColorTexture.static voidnColorTexture(long struct, int index, long value)Unsafe version ofColorTexture.static voidnColorTexture(long struct, org.lwjgl.PointerBuffer value)Unsafe version ofColorTexture.static OVRLayerHeadernHeader(long struct)Unsafe version ofHeader().static voidnHeader(long struct, OVRLayerHeader value)Unsafe version ofHeader.static OVRMatrix4f.BuffernMatrix(long struct)Unsafe version ofMatrix().static OVRMatrix4fnMatrix(long struct, int index)Unsafe version ofMatrix.static voidnMatrix(long struct, int index, OVRMatrix4f value)Unsafe version ofMatrix.static voidnMatrix(long struct, OVRMatrix4f.Buffer value)Unsafe version ofMatrix.static OVRPosef.BuffernRenderPose(long struct)Unsafe version ofRenderPose().static OVRPosefnRenderPose(long struct, int index)Unsafe version ofRenderPose.static voidnRenderPose(long struct, int index, OVRPosef value)Unsafe version ofRenderPose.static voidnRenderPose(long struct, OVRPosef.Buffer value)Unsafe version ofRenderPose.static doublenSensorSampleTime(long struct)Unsafe version ofSensorSampleTime().static voidnSensorSampleTime(long struct, double value)Unsafe version ofSensorSampleTime.static OVRRecti.BuffernViewport(long struct)Unsafe version ofViewport().static OVRRectinViewport(long struct, int index)Unsafe version ofViewport.static voidnViewport(long struct, int index, OVRRecti value)Unsafe version ofViewport.static voidnViewport(long struct, OVRRecti.Buffer value)Unsafe version ofViewport.OVRPosef.BufferRenderPose()specifies the position and orientation of each eye view, with the position specified in meters.OVRPosefRenderPose(int index)specifies the position and orientation of each eye view, with the position specified in meters.OVRLayerEyeMatrixRenderPose(int index, java.util.function.Consumer<OVRPosef> consumer)OVRLayerEyeMatrixRenderPose(int index, OVRPosef value)Copies the specifiedOVRPosefat the specified index of theRenderPose()field.OVRLayerEyeMatrixRenderPose(java.util.function.Consumer<OVRPosef.Buffer> consumer)Passes theRenderPose()field to the specifiedConsumer.OVRLayerEyeMatrixRenderPose(OVRPosef.Buffer value)Copies the specifiedOVRPosef.Bufferto theRenderPose()field.doubleSensorSampleTime()specifies the timestamp when the sourceovrPosef(used in calculatingRenderPose) was sampled from the SDK.OVRLayerEyeMatrixSensorSampleTime(double value)Sets the specified value to theSensorSampleTime()field.OVRLayerEyeMatrixset(OVRLayerEyeMatrix src)Copies the specified struct data to this struct.OVRLayerEyeMatrixset(OVRLayerHeader Header, org.lwjgl.PointerBuffer ColorTexture, OVRRecti.Buffer Viewport, OVRPosef.Buffer RenderPose, OVRMatrix4f.Buffer Matrix, double SensorSampleTime)Initializes this struct with the specified values.intsizeof()static voidvalidate(long struct)Validates pointer members that should not beNULL.OVRRecti.BufferViewport()specifies theColorTexturesub-rect UV coordinates.OVRRectiViewport(int index)specifies theColorTexturesub-rect UV coordinates.OVRLayerEyeMatrixViewport(int index, java.util.function.Consumer<OVRRecti> consumer)OVRLayerEyeMatrixViewport(int index, OVRRecti value)Copies the specifiedOVRRectiat the specified index of theViewport()field.OVRLayerEyeMatrixViewport(java.util.function.Consumer<OVRRecti.Buffer> consumer)Passes theViewport()field to the specifiedConsumer.OVRLayerEyeMatrixViewport(OVRRecti.Buffer value)Copies the specifiedOVRRecti.Bufferto theViewport()field.
-
-
-
Constructor Detail
-
OVRLayerEyeMatrix
public OVRLayerEyeMatrix(java.nio.ByteBuffer container)
Creates aOVRLayerEyeMatrixinstance at the current position of the specifiedByteBuffercontainer. 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
-
sizeof
public int sizeof()
- Specified by:
sizeofin classorg.lwjgl.system.Struct
-
Header
public OVRLayerHeader Header()
Header.Typemust beLayerType_EyeMatrix
-
ColorTexture
public org.lwjgl.PointerBuffer ColorTexture() public long ColorTexture(int index)
ovrTextureSwapChainsfor the left and right eye respectively. The second one of which can beNULLfor cases described above.
-
Viewport
public OVRRecti.Buffer Viewport() public OVRRecti Viewport(int index)
specifies theColorTexturesub-rect UV coordinates. BothViewport[0]andViewport[1]must be valid.
-
RenderPose
public OVRPosef.Buffer RenderPose() public OVRPosef RenderPose(int index)
specifies the position and orientation of each eye view, with the position specified in meters.RenderPosewill typically be the value returned from_CalcEyePoses, but can be different in special cases if a different head pose is used for rendering.
-
Matrix
public OVRMatrix4f.Buffer Matrix() public OVRMatrix4f Matrix(int index)
specifies the mapping from a view-space vector to a UV coordinate on the textures given above.P = (x,y,z,1)*Matrix TexU = P.x/P.z TexV = P.y/P.z
-
SensorSampleTime
public double SensorSampleTime()
specifies the timestamp when the sourceovrPosef(used in calculatingRenderPose) was sampled from the SDK. Typically retrieved by callingGetTimeInSecondsaround the instant the application callsGetTrackingStateThe main purpose for this is to accurately track app tracking latency.
-
Header
public OVRLayerEyeMatrix Header(OVRLayerHeader value)
Copies the specifiedOVRLayerHeaderto theHeader()field.
-
Header
public OVRLayerEyeMatrix Header(java.util.function.Consumer<OVRLayerHeader> consumer)
Passes theHeader()field to the specifiedConsumer.
-
ColorTexture
public OVRLayerEyeMatrix ColorTexture(org.lwjgl.PointerBuffer value)
Copies the specifiedPointerBufferto theColorTexture()field.
-
ColorTexture
public OVRLayerEyeMatrix ColorTexture(int index, long value)
Sets the specified value at the specified index of theColorTexture()field.
-
Viewport
public OVRLayerEyeMatrix Viewport(OVRRecti.Buffer value)
Copies the specifiedOVRRecti.Bufferto theViewport()field.
-
Viewport
public OVRLayerEyeMatrix Viewport(int index, OVRRecti value)
Copies the specifiedOVRRectiat the specified index of theViewport()field.
-
Viewport
public OVRLayerEyeMatrix Viewport(java.util.function.Consumer<OVRRecti.Buffer> consumer)
Passes theViewport()field to the specifiedConsumer.
-
Viewport
public OVRLayerEyeMatrix Viewport(int index, java.util.function.Consumer<OVRRecti> consumer)
-
RenderPose
public OVRLayerEyeMatrix RenderPose(OVRPosef.Buffer value)
Copies the specifiedOVRPosef.Bufferto theRenderPose()field.
-
RenderPose
public OVRLayerEyeMatrix RenderPose(int index, OVRPosef value)
Copies the specifiedOVRPosefat the specified index of theRenderPose()field.
-
RenderPose
public OVRLayerEyeMatrix RenderPose(java.util.function.Consumer<OVRPosef.Buffer> consumer)
Passes theRenderPose()field to the specifiedConsumer.
-
RenderPose
public OVRLayerEyeMatrix RenderPose(int index, java.util.function.Consumer<OVRPosef> consumer)
-
Matrix
public OVRLayerEyeMatrix Matrix(OVRMatrix4f.Buffer value)
Copies the specifiedOVRMatrix4f.Bufferto theMatrix()field.
-
Matrix
public OVRLayerEyeMatrix Matrix(int index, OVRMatrix4f value)
Copies the specifiedOVRMatrix4fat the specified index of theMatrix()field.
-
Matrix
public OVRLayerEyeMatrix Matrix(java.util.function.Consumer<OVRMatrix4f.Buffer> consumer)
Passes theMatrix()field to the specifiedConsumer.
-
Matrix
public OVRLayerEyeMatrix Matrix(int index, java.util.function.Consumer<OVRMatrix4f> consumer)
-
SensorSampleTime
public OVRLayerEyeMatrix SensorSampleTime(double value)
Sets the specified value to theSensorSampleTime()field.
-
set
public OVRLayerEyeMatrix set(OVRLayerHeader Header, org.lwjgl.PointerBuffer ColorTexture, OVRRecti.Buffer Viewport, OVRPosef.Buffer RenderPose, OVRMatrix4f.Buffer Matrix, double SensorSampleTime)
Initializes this struct with the specified values.
-
set
public OVRLayerEyeMatrix set(OVRLayerEyeMatrix src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static OVRLayerEyeMatrix malloc()
Returns a newOVRLayerEyeMatrixinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static OVRLayerEyeMatrix calloc()
Returns a newOVRLayerEyeMatrixinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static OVRLayerEyeMatrix create()
Returns a newOVRLayerEyeMatrixinstance allocated withBufferUtils.
-
create
public static OVRLayerEyeMatrix create(long address)
Returns a newOVRLayerEyeMatrixinstance for the specified memory address.
-
createSafe
@Nullable public static OVRLayerEyeMatrix createSafe(long address)
-
malloc
public static OVRLayerEyeMatrix.Buffer malloc(int capacity)
Returns a newOVRLayerEyeMatrix.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static OVRLayerEyeMatrix.Buffer calloc(int capacity)
Returns a newOVRLayerEyeMatrix.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static OVRLayerEyeMatrix.Buffer create(int capacity)
Returns a newOVRLayerEyeMatrix.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static OVRLayerEyeMatrix.Buffer create(long address, int capacity)
Create aOVRLayerEyeMatrix.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static OVRLayerEyeMatrix.Buffer createSafe(long address, int capacity)
-
mallocStack
@Deprecated public static OVRLayerEyeMatrix mallocStack()
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead.
-
callocStack
@Deprecated public static OVRLayerEyeMatrix callocStack()
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead.
-
mallocStack
@Deprecated public static OVRLayerEyeMatrix mallocStack(org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead.
-
callocStack
@Deprecated public static OVRLayerEyeMatrix callocStack(org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead.
-
mallocStack
@Deprecated public static OVRLayerEyeMatrix.Buffer mallocStack(int capacity)
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead.
-
callocStack
@Deprecated public static OVRLayerEyeMatrix.Buffer callocStack(int capacity)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead.
-
mallocStack
@Deprecated public static OVRLayerEyeMatrix.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead.
-
callocStack
@Deprecated public static OVRLayerEyeMatrix.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead.
-
malloc
public static OVRLayerEyeMatrix malloc(org.lwjgl.system.MemoryStack stack)
Returns a newOVRLayerEyeMatrixinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static OVRLayerEyeMatrix calloc(org.lwjgl.system.MemoryStack stack)
Returns a newOVRLayerEyeMatrixinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static OVRLayerEyeMatrix.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newOVRLayerEyeMatrix.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static OVRLayerEyeMatrix.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newOVRLayerEyeMatrix.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
nHeader
public static OVRLayerHeader nHeader(long struct)
Unsafe version ofHeader().
-
nColorTexture
public static org.lwjgl.PointerBuffer nColorTexture(long struct)
Unsafe version ofColorTexture().
-
nColorTexture
public static long nColorTexture(long struct, int index)Unsafe version ofColorTexture.
-
nViewport
public static OVRRecti.Buffer nViewport(long struct)
Unsafe version ofViewport().
-
nRenderPose
public static OVRPosef.Buffer nRenderPose(long struct)
Unsafe version ofRenderPose().
-
nRenderPose
public static OVRPosef nRenderPose(long struct, int index)
Unsafe version ofRenderPose.
-
nMatrix
public static OVRMatrix4f.Buffer nMatrix(long struct)
Unsafe version ofMatrix().
-
nMatrix
public static OVRMatrix4f nMatrix(long struct, int index)
Unsafe version ofMatrix.
-
nSensorSampleTime
public static double nSensorSampleTime(long struct)
Unsafe version ofSensorSampleTime().
-
nHeader
public static void nHeader(long struct, OVRLayerHeader value)Unsafe version ofHeader.
-
nColorTexture
public static void nColorTexture(long struct, org.lwjgl.PointerBuffer value)Unsafe version ofColorTexture.
-
nColorTexture
public static void nColorTexture(long struct, int index, long value)Unsafe version ofColorTexture.
-
nViewport
public static void nViewport(long struct, OVRRecti.Buffer value)Unsafe version ofViewport.
-
nViewport
public static void nViewport(long struct, int index, OVRRecti value)Unsafe version ofViewport.
-
nRenderPose
public static void nRenderPose(long struct, OVRPosef.Buffer value)Unsafe version ofRenderPose.
-
nRenderPose
public static void nRenderPose(long struct, int index, OVRPosef value)Unsafe version ofRenderPose.
-
nMatrix
public static void nMatrix(long struct, OVRMatrix4f.Buffer value)Unsafe version ofMatrix.
-
nMatrix
public static void nMatrix(long struct, int index, OVRMatrix4f value)Unsafe version ofMatrix.
-
nSensorSampleTime
public static void nSensorSampleTime(long struct, double value)Unsafe version ofSensorSampleTime.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-
-