nuclear@0: #ifndef VR_IMPL_H_ nuclear@0: #define VR_IMPL_H_ nuclear@0: nuclear@0: #include nuclear@0: nuclear@0: using namespace OVR; nuclear@0: nuclear@0: struct VRContext { nuclear@0: DeviceManager *ovr_devman; nuclear@0: HMDDevice *ovr_hmd_dev; nuclear@0: SensorDevice *ovr_sensor_dev; nuclear@0: SensorFusion *ovr_sfusion; nuclear@0: nuclear@0: struct { nuclear@0: char *display; nuclear@0: int display_xoffs, display_yoffs; nuclear@0: nuclear@0: // the full width and height of the display (both eyes) nuclear@0: int width, height; nuclear@0: float fov; nuclear@0: // the full aspect ratio of the display (both eyes) nuclear@0: float aspect; nuclear@0: float ipd; nuclear@0: float distort[4]; nuclear@0: // the right lens center offset (negate for left) nuclear@0: float lens_center_offset; nuclear@0: float proj_center_offset; nuclear@0: float scale; // scaling to be applied to the two views to fill the screen nuclear@0: } info; nuclear@0: }; nuclear@0: nuclear@0: extern VRContext vr_ctx; nuclear@0: nuclear@0: bool vr_gl_init(); nuclear@0: nuclear@0: #endif // VR_IMPL_H_