forked from LeenkxTeam/LNXSDK
39 lines
1.3 KiB
Haxe
39 lines
1.3 KiB
Haxe
|
package kha.vr;
|
||
|
|
||
|
import kha.Image;
|
||
|
import kha.math.Matrix4;
|
||
|
|
||
|
class TimeWarpImage {
|
||
|
// If TexId == 0, this image is disabled.
|
||
|
// Most applications will have the overlay image
|
||
|
// disabled.
|
||
|
//
|
||
|
// Because OpenGL ES doesn't support clampToBorder,
|
||
|
// it is the application's responsibility to make sure
|
||
|
// that all mip levels of the texture have a black border
|
||
|
// that will show up when time warp pushes the texture partially
|
||
|
// off screen.
|
||
|
//
|
||
|
// Overlap textures will only show through where alpha on the
|
||
|
// primary texture is not 1.0, so they do not require a border.
|
||
|
// unsigned TexId;
|
||
|
public var Image: Image;
|
||
|
|
||
|
// Experimental separate R/G/B cube maps
|
||
|
// unsigned PlanarTexId[3];
|
||
|
// Points on the screen are mapped by a distortion correction
|
||
|
// function into ( TanX, TanY, 1, 1 ) vectors that are transformed
|
||
|
// by this matrix to get ( S, T, Q, _ ) vectors that are looked
|
||
|
// up with texture2dproj() to get texels.
|
||
|
public var TexCoordsFromTanAngles: Matrix4;
|
||
|
|
||
|
// The sensor state for which ModelViewMatrix is correct.
|
||
|
// It is ok to update the orientation for each eye, which
|
||
|
// can help minimize black edge pull-in, but the position
|
||
|
// must remain the same for both eyes, or the position would
|
||
|
// seem to judder "backwards in time" if a frame is dropped.
|
||
|
public var Pose: PoseState;
|
||
|
|
||
|
public function new() {}
|
||
|
}
|