def oculus(): """initializes ovrsdk and starts tracking oculus""" ovr.ovr_Initialize() hmd = ovr.ovrHmd_Create(0) try: hmd.contents except ValueError as _: print('Failed to initialize Oculus, is it connected?') if args.oculus: sys.exit() hmdDesc = ovr.ovrHmdDesc() ovr.ovrHmd_GetDesc(hmd, ovr.byref(hmdDesc)) ovr.ovrHmd_StartSensor( hmd, ovr.ovrSensorCap_Orientation | ovr.ovrSensorCap_YawCorrection, 0 ) # The device dimensions; should we use them for width/height? _ = ovr.ovrHmd_GetFovTextureSize( hmd, ovr.ovrEye_Left, hmdDesc.MaxEyeFov[0], 1.0 ) _ = ovr.ovrHmd_GetFovTextureSize( hmd, ovr.ovrEye_Right, hmdDesc.MaxEyeFov[1], 1.0 ) return hmd
def __initialize_ovr(self): """ Dentro de un bloque try se inicializa el OVR, si este bloque no consigue ejecutarse se informa el error y el programa termina, en caso de éxito se imprime el nombre del OVR y se devuelve el objeto que nos permite interactuar con el OVR """ try: ovrsdk.ovr_Initialize() hmd = ovrsdk.ovrHmd_Create(0) hmdDesc = ovrsdk.ovrHmdDesc() ovrsdk.ovrHmd_GetDesc(hmd, ovrsdk.byref(hmdDesc)) print ("OVR inicializado correctamente, versión: " + hmdDesc.ProductName) ovrsdk.ovrHmd_StartSensor( \ hmd, ovrsdk.ovrSensorCap_Orientation | ovrsdk.ovrSensorCap_YawCorrection, 0 ) return hmd except: print("Error al inicializar el OVR") exit(1)