t3du - Restore VR code
This commit is contained in:
		
							
								
								
									
										52
									
								
								leenkx/Sources/iron/system/VR.hx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								leenkx/Sources/iron/system/VR.hx
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,52 @@ | ||||
| package iron.system; | ||||
|  | ||||
| import iron.math.Mat4; | ||||
|  | ||||
| #if lnx_vr | ||||
| class VR { | ||||
|  | ||||
| 	static var undistortionMatrix: Mat4 = null; | ||||
|  | ||||
| 	public function new() {} | ||||
|  | ||||
| 	public static function getUndistortionMatrix(): Mat4 { | ||||
| 		if (undistortionMatrix == null) { | ||||
| 			undistortionMatrix = Mat4.identity(); | ||||
| 		} | ||||
|  | ||||
| 		return undistortionMatrix; | ||||
| 	} | ||||
|  | ||||
| 	public static function getMaxRadiusSq(): Float { | ||||
| 		return 0.0; | ||||
| 	} | ||||
|  | ||||
| 	public static function initButton() { | ||||
| 		function vrDownListener(index: Int, x: Float, y: Float) { | ||||
| 			var vr = kha.vr.VrInterface.instance; | ||||
| 			if (vr == null || !vr.IsVrEnabled() || vr.IsPresenting()) return; | ||||
| 			var w: Float = iron.App.w(); | ||||
| 			var h: Float = iron.App.h(); | ||||
| 			if (x < w - 150 || y < h - 150) return; | ||||
| 			vr.onVRRequestPresent(); | ||||
| 		} | ||||
|  | ||||
| 		function vrRender2D(g: kha.graphics2.Graphics) { | ||||
| 			var vr = kha.vr.VrInterface.instance; | ||||
| 			if (vr == null || !vr.IsVrEnabled() || vr.IsPresenting()) return; | ||||
| 			var w: Float = iron.App.w(); | ||||
| 			var h: Float = iron.App.h(); | ||||
| 			g.color = 0xffff0000; | ||||
| 			g.fillRect(w - 150, h - 150, 140, 140); | ||||
| 		} | ||||
|  | ||||
| 		kha.input.Mouse.get().notify(vrDownListener, null, null, null); | ||||
| 		iron.App.notifyOnRender2D(vrRender2D); | ||||
|  | ||||
| 		var vr = kha.vr.VrInterface.instance; // Straight to VR (Oculus Carmel) | ||||
| 		if (vr != null && vr.IsVrEnabled()) { | ||||
| 			vr.onVRRequestPresent(); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
| #end | ||||
		Reference in New Issue
	
	Block a user