07-17-2021 05:50 AM
I decided to give windows 11 a go and everything on my PC is working flawlessly apart from one big one... Oculus Link performance. Before I go back to windows 10 I wonder if anyone has figured this out already.
Oculus software works fine and the Quest 2 link connects, but it can never hit the required fps settings no matter what they are. So if I have link set to 90hz, then in game it will be about 82-85fps and stuttering, it never hits 90fps even though the game says its locked at 90 on my monitors no problem, and I have loads of headroom in performance monitor (I have a 5900x and RTX 3090!) - If i use the 120hz option then i will get about 105fps but never 120. Even if i choose 72hz ill get about 65fps. super annoying.
I went onto the beta channel on the software and got the latest updates but still no luck.
I dont mind going back to windows 10 and i get windows 11 might not be ready yet, but literally EVERYTHING else on my pc works fine, only the vr performance, so its a shame. Any ideas of things to try before I reinstall windows 10?
04-20-2022 02:27 AM
Alvr seems to be working well. I tried it on phasmophobia and it felt faster than virtual desktop.
04-22-2022 10:01 AM - edited 04-22-2022 10:01 AM
Lol guess it's dead here
04-27-2022 05:30 PM
Could anyone confirm if Cactus Cowboy's audio workaround still works for you? I tried it today and don't seem to be getting the same results as you all. Specifically:
1) I set system audio to something other than Oculus Virtual Audio: my Nvidia HD audio (routing through my monitor speakers);
2) Set Oculus app audio setting so the first option is enabled (Hear VR Audio From Computer) and the second is disabled (not sure that matters);
3) set steamVR audio to Manual (System Default) and Mirroring (System Default) on.
If I missed a step, let me know. Unlike the console trick, this didn't seem to produce any benefit and I still get stuttering, wobbling, and artifacting in games, often in SteamVr before launching a game, and sometimes even in the Oculus menu before launching SteamVr. Performing the console trick still seems to work most of the time, but it doesn't play nicely with all games and I was really hoping for a better solution.
i9-12900H
3080 TI (120W laptop version)
04-27-2022 05:40 PM
No solution worked for me. I had to install Windows 10 as a system for VR and everything works fine there.
04-29-2022 08:02 AM
Not sure what you did wrong. It works fine for me as development solution and I use it every day. One thing, you need to tick both Audio switches in the Oculus menu.
04-29-2022 10:14 AM
You're right, that did it! It's running great now, even without the console. Thank you so much!
05-01-2022 12:09 AM
Did they just delete the posts regarding the win11fix.exe file and it's source code? Hey Oculus, I do freelance work, the Cactus Studios will implement this fix into ovr_server for a small fee if you want to.
05-01-2022 12:15 AM
Holy crap, they did!! I just came here to download it and it is gone. So they are knowingly looking at this thread and refusing to do or say anything, despite these workarounds we are finding. Fascinating.
Its part of the FPSVR program on Steam, if you need to look it up. So it is legitimate and not a virus or anything.
05-01-2022 12:19 AM
#include <cstdio>
#include <windows.h>
#include <tlhelp32.h>
#include <iostream>
#include <processthreadsapi.h>
HANDLE GetProcessByName(PCSTR name)
{
DWORD pid = 0;
HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32 process;
ZeroMemory(&process, sizeof(process));
process.dwSize = sizeof(process);
char buf[MAX_PATH] = { 0 };
size_t charsConverted = 0;
if (Process32First(snapshot, &process))
{
do
{
wcstombs_s(&charsConverted, buf, process.szExeFile, MAX_PATH);
if (_stricmp(buf, name) == 0)
{
pid = process.th32ProcessID;
break;
}
} while (Process32Next(snapshot, &process));
}
CloseHandle(snapshot);
if (pid != 0)
{
return OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid);
}
// Not found
return NULL;
}
int main(int argc, char* argv[])
{
std::cout << "\n\n";
std::cout << "***************************************************************************************************\n";
std::cout << "fpsVR - https://store.steampowered.com/app/908520/fpsVR/ \n";
std::cout << "Windows 11 fix for VR : disables PROCESS_POWER_THROTTLING_IGNORE_TIMER_RESOLUTION for VR processes\n";
std::cout << "***************************************************************************************************\n";
PROCESS_POWER_THROTTLING_STATE PowerThrottling;
RtlZeroMemory(&PowerThrottling, sizeof(PowerThrottling));
PowerThrottling.Version = PROCESS_POWER_THROTTLING_CURRENT_VERSION;
PowerThrottling.ControlMask = PROCESS_POWER_THROTTLING_IGNORE_TIMER_RESOLUTION;
PowerThrottling.StateMask = 0;
HANDLE h1 = GetProcessByName("OVRServer_x64.exe");
if (h1 != NULL)
{
SetProcessInformation(h1, ProcessPowerThrottling, &PowerThrottling, sizeof(PowerThrottling));
std::cout << "OVRServer_x64.exe: Done\n";
}
else
{
std::cout << "OVRServer_x64.exe: not running\n";
}
HANDLE h2 = GetProcessByName("vrcompositor.exe");
if (h2 != NULL)
{
SetProcessInformation(h2, ProcessPowerThrottling, &PowerThrottling, sizeof(PowerThrottling));
std::cout << "vrcompositor.exe: Done\n";
}
else
{
std::cout << "vrcompositor.exe: not running\n";
}
HANDLE h3 = GetProcessByName("vrserver.exe");
if (h3 != NULL)
{
SetProcessInformation(h3, ProcessPowerThrottling, &PowerThrottling, sizeof(PowerThrottling));
std::cout << "vrserver.exe: Done\n";
}
else
{
std::cout << "vrserver.exe: not running\n";
}
HANDLE h4 = GetProcessByName("vrmonitor.exe");
if (h4 != NULL)
{
SetProcessInformation(h4, ProcessPowerThrottling, &PowerThrottling, sizeof(PowerThrottling));
std::cout << "vrmonitor.exe: Done\n";
}
else
{
std::cout << "vrmonitor.exe: not running\n";
}
std::cout << "***************************************************************************************************\n";
std::cout << "\n\n";
std::cout << "\n\n";
if (argc == 1)
{
system("pause");
};
}
05-01-2022 04:27 AM
The latest update (KB5012643) for windows 11 kills virtual desktop performance. Avoid it.