Even then, I had trouble with even trying VMs as nothing supported the ahead of mainline kernel I needed for my video card. Now, 20.04 may be miles better and much more stable overall, still well behind the kernel I'd been running. Just saying it isn't a panacea at all.
NOTE: Since early march, I've been mostly on Windows in support of a couple legacy projects.
I had the exact same experience, but in December gave up on having linux play nicely with Navi for the time being. I will readily admit to being an AMD fanboy, but Nvidia is really besting them at the software game.
My 3700x CPU has been dreamy from day one.
Nvidia dont adhere to specs. Amd does.
Developers develop for nvidia.
Problems ensue for amd users.
I was forced to grab a 5700xt because of stock problems but it would have been around the same time.
I had one big deal breaker problem but i only had to run a mainline kernel build to tie me over.
In anycase, this sort of thing is standard for new hardware, always takes a couple months for linux to catch up.
Of course then I needed to do some work in windows, and couldn't get any VM software working with the ahead of mainline kernel I'd been using.
I understand the why, just was frustrating and less than ideal.
Nvidia even provide Linux support for the latest RTX cards.
The biggest problem I had was installing the latest proprietary drivers because the ones Ubuntu provide are lagging behind. Sometimes you need to do this via the console.
Nvidia also doesn't support some of the APIs that AMD and Intel do, which causes fragmentation in Linux desktop environments.
I am still waiting for OpenGL 4.1, the extensions listed here, and hardware video decoding, because from where I sitting glxinfo still reports OpenGL 3.0
https://www.geeks3d.com/20110609/asus-eee-pc-1215b-netbook-r...
So yeah, thanks very much for 2D and less than optimal 3D support.
I had trouble with the 5700 XT for the first few months though... Other than running out and buying a new graphics card series when it comes out, most people should be fine.