//-------------------------------------------------------------------------------------------------
ALVR_RESULT Terminate()
{
    g_MouseInput.Terminate();

    g_pFenceD3D11.Release();


    g_pLvrDevice.Release();

    ::DestroyWindow(g_hWindow);

    g_D3DHelper.Terminate();

#if defined(AFFINITY_WORK_AROUND)
    m_pLvrAffinity.Release();
#endif

    g_pFactory = NULL;

    ::FreeLibrary(g_hLiquidVRDLL);

    return ALVR_OK;
}