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
Beispiel #2
0
 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)
Beispiel #3
0
 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)