Example #1
0
    def _startOculus(self):
        from oculusvr import (
            Hmd,
            cast,
            POINTER,
            ovrHmdDesc,
            ovrVector3f,
        )

        try:
            Hmd.initialize()
        except SystemError as err:
            self.logger.error(
                "Oculus initialization failed, check the physical connections and run again"
            )

        if Hmd.detect() == 1:
            self._hmd = Hmd()
            self._description = cast(self._hmd.hmd,
                                     POINTER(ovrHmdDesc)).contents
            self._frame = 0
            self._eyes_offset = [ovrVector3f(), ovrVector3f()]
            self._eyes_offset[0] = 0.0, 0.0, 0.0
            self._eyes_offset[1] = 0.0, 0.0, 0.0

            self._hmd.configure_tracking()
            self.logger.info(self._description.ProductName)

        else:
            self.logger.error("Oculus not connected")
            raise Exception