OVR_PUBLIC_FUNCTION(ovrResult) ovr_Initialize(const ovrInitParams* params) { MH_QueueDisableHook(LoadLibraryW); MH_QueueDisableHook(OpenEventW); MH_ApplyQueued(); g_hXInputLib = LoadLibraryW(L"xinput1_3.dll"); if (!g_hXInputLib) return ovrError_LibLoad; g_pXInputGetState = (_XInputGetState)GetProcAddress(g_hXInputLib, "XInputGetState"); if (!g_pXInputGetState) return ovrError_LibLoad; g_pXInputSetState = (_XInputSetState)GetProcAddress(g_hXInputLib, "XInputSetState"); if (!g_pXInputSetState) return ovrError_LibLoad; g_VRSystem = vr::VR_Init(&g_InitError, vr::VRApplication_Scene); MH_QueueEnableHook(LoadLibraryW); MH_QueueEnableHook(OpenEventW); MH_ApplyQueued(); return REV_InitErrorToOvrError(g_InitError); }
OVR_PUBLIC_FUNCTION(ovrResult) ovr_Initialize(const ovrInitParams* params) { MH_QueueDisableHook(LoadLibraryW); MH_QueueDisableHook(OpenEventW); MH_ApplyQueued(); g_VRSystem = vr::VR_Init(&g_InitError, vr::VRApplication_Scene); MH_QueueEnableHook(LoadLibraryW); MH_QueueEnableHook(OpenEventW); MH_ApplyQueued(); return REV_InitErrorToOvrError(g_InitError); }