Recent AMD driver to fix voxels

Please do not mimic the behavior of the posts shown here.

Moderator: GZDoom Developers

MaximumDoom
Posts: 7
Joined: Thu Jan 19, 2023 9:57 am

Recent AMD driver to fix voxels

Post by MaximumDoom »

Hi there.

Can anyone confirm a recent AMD driver to fix the known voxel issue? Any AMD driver beyond 22.7?

Trying to fix this for a friend and searching online all the threads say to downgrade the driver to 21.3?

Please help us, cheers
yum13241
Posts: 550
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Recent AMD driver to fix voxels

Post by yum13241 »

What's wrong with 21.3?

Also, AMD + Windows + OpenGL is a BAD idea. Use Vulkan if you can.
MaximumDoom
Posts: 7
Joined: Thu Jan 19, 2023 9:57 am

Re: Recent AMD driver to fix voxels

Post by MaximumDoom »

Hi there.

They won't downgrade the driver because it's 2 years old, has no support on new titles and is apparently a security flaw. You are entitled to your opinion on AMD + Windows + OpenGL but you are incorrect, it has worked fine for years, I used to have an AMD laptop which was brilliant.

They said that AMD optimized DX, OpenGL and Vulkan within the last few years and a moderator of Zdoom posted on the Doomworld forum for the Voxel Doom mod saying to update the AMD driver or the voxels will be flat.

I am asking which version of the AMD driver works or how can I speak with the dev of Gzdoom Mr Graf Zahl on information on what AMD optimized for the driver, I think Gzdoom needs to be updated taking in account the new optimization.

Cheers
User avatar
Rachael
Admin
Posts: 13259
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: Recent AMD driver to fix voxels

Post by Rachael »

MaximumDoom wrote: Fri Jan 20, 2023 11:11 am I think Gzdoom needs to be updated taking in account the new optimization.
Pull requests welcome. ---> https://github.com/zdoom/gzdoom/pulls

If you aren't willing to code it yourself, don't bother. GZDoom has already deprecated OpenGL on AMD in favor of Vulkan, and we aren't going back on that decision. So unless a third party comes in with a fix, it's broken and it's staying broken and it won't be fixed.

AMD-GL issues are literally a monthly whack-a-mole for GZDoom. If one thing is fixed, another thing breaks, and it's a constant cycle that happens non-stop every month. AMD does not test GZDoom in its driver releases and has never felt that they should - so in turn, we do not feel the need to keep up with AMD's driver fuckery - because no matter what you do, it's just going to break next month anyway. Nobody has time to deal with that.

Vulkan does not suffer these issues, so if Vulkan works for you feel free to keep using that.
yum13241
Posts: 550
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Recent AMD driver to fix voxels

Post by yum13241 »

MaximumDoom wrote: Fri Jan 20, 2023 11:11 am Hi there.

They won't downgrade the driver because it's 2 years old, has no support on new titles and is apparently a security flaw. You are entitled to your opinion on AMD + Windows + OpenGL but you are incorrect, it has worked fine for years, I used to have an AMD laptop which was brilliant.

They said that AMD optimized DX, OpenGL and Vulkan within the last few years and a moderator of Zdoom posted on the Doomworld forum for the Voxel Doom mod saying to update the AMD driver or the voxels will be flat.

I am asking which version of the AMD driver works or how can I speak with the dev of Gzdoom Mr Graf Zahl on information on what AMD optimized for the driver, I think Gzdoom needs to be updated taking in account the new optimization.

Cheers
My opinion is a fact actually.


You used to have an AMD laptop on Windows. Back then their opengl was better. But nowadays AMD + OPENGL + WINDOWS is objectively bad, just ask Graf and the users who've had a bunch of shader miscompilations.
User avatar
wildweasel
Moderator Team Lead
Posts: 21620
Joined: Tue Jul 15, 2003 7:33 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): A lot of them
Graphics Processor: Not Listed

Re: Recent AMD driver to fix voxels

Post by wildweasel »

yum13241 wrote: Fri Jan 20, 2023 1:03 pmMy opinion is a fact actually.
This is, in itself, an opinion.

You do not necessarily need to reply to everything you see. Sometimes what you want to say has already been said by somebody else.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48598
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Recent AMD driver to fix voxels

Post by Graf Zahl »

yum13241 wrote: Fri Jan 20, 2023 1:03 pm Back then their opengl was better. But nowadays AMD + OPENGL + WINDOWS is objectively bad, just ask Graf and the users who've had a bunch of shader miscompilations.

OpenGL on AMD has always been bad.

Back in the OpenGL 1 pre-shader days it was their fog implementation that was horribly broken and never got fixed.
Then we had continuous performance issues with their drawcall throughput (1/20th of NVidia!)
And then the constant driver bugs came - there hasn't been a single year without a broken driver version.

Never mind how good their hardware is, I still play old OpenGL games a lot, and therefore stay as far away as possible from their offerings.
MaximumDoom
Posts: 7
Joined: Thu Jan 19, 2023 9:57 am

Re: Recent AMD driver to fix voxels

Post by MaximumDoom »

Hi there everyone.

Ok I've downloaded the Gzdoom source code from Github, were willing to do some work but I only know basic C# so I only hope to attempt to translate C++ we are just noobs compared to Graf. The AMD driver is not broken, they optimized OpenGL in 2021 and OpenGL has not been updated since 4.6 which was in 2017. This is the last optimization to AMD OpenGL so if it can be fixed, it wont need altering after this.

There are recent OpenGL Voxel renderers on Github from Aug 2022 which apparently work on both NVidia and AMD GPU's so it's possible to get working voxels with AMD GPU's.

I asked for some videos of this error and I've discovered that the actual voxels do render, I thought they didn't work at all seeing they said flat (As in a sprite) Well this is not the case, I can see that the X-Axis works, the Y-Axis works, but the Z-Axis only renders 1 pixel wide. This is what gives the impression that the voxel is flat'

So the only axis that needs altering is the Z-Axis, I'm looking through the Gzdoom source code right now trying to hunt down the voxel code.

Mr Graf Zahl it's great to see you here sir, wonderful job with Gzdoom, you have brought much joy to users worldwide with the modern Doom port, magnificent workmanship. I have always seen Gzdoom as high quality German Engineering and it's great.

Can we ask Mr Graf Zahl could you kindly take a look at the Z-Axis render for voxels, from what I've seen in the videos, the voxels do render.

X-Axis - Works correctly
Y-Axis - Works correctly
Z-Axis - Renders only 1 pixel depth

I'm studying the Gzdoom code right now and studying OpenGL voxel rendering, it's looks like right now, any AMD GPU new or legacy, using any driver from 2021 has the new OpenGL optimization, I'd like to try and fix this for the AMD community.

I told my friend to test Vulkan and this is what was said.

1. Setting Vsync and 60FPS in Video Settings, it only plays 30FPS
2. Random black screen flashing
3. FPS drops with lots of monsters (Works fine in OpenGL)
4. Stuttering mouse movement

That's why they play Doom in OpenGL.

Cheers.
User avatar
wildweasel
Moderator Team Lead
Posts: 21620
Joined: Tue Jul 15, 2003 7:33 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): A lot of them
Graphics Processor: Not Listed

Re: Recent AMD driver to fix voxels

Post by wildweasel »

The Z-Axis rendering of voxels on OpenGL works fine on all other graphics hardware, though, even on Intel Graphics, so there is something wrong on AMD's end.
User avatar
Rachael
Admin
Posts: 13259
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: Recent AMD driver to fix voxels

Post by Rachael »

The misoptimization occurs in the vertex shader. I don't know where the model code is exactly, but the AMD driver is miscompiling one axis (X or Y) as float Y = (Y - int(Y)) which causes every pixel above Y>1.0 to wrap around to 0.0 - at least that's how it looks, visually. The actual cause of this bug might be different. Microchanges within the 0.0-1.0 space work fine for these voxels/models - that is why they have a clearly defined front and back and a thin edge on the sides.

This was fixed in the July 2022 driver release, but sometime after that AMD released a new driver which broke OpenGL rendering even more. I don't know what the state of OpenGL is on AMD currently - I can't be assed to support something that has a very clear track record of breaking every couple of months. AMD used to be a lot more responsive to these and more willing to fix them - they hardly ever communicate with people from our community now, it seems.
MaximumDoom wrote: Sat Jan 21, 2023 10:59 amThe AMD driver is not broken
"AMD Driver" and "Not Broken" are factual mutual opposites which cannot occur together in a sentence to form a truthful statement. Sorry - but that's just the reality of it. NVidia drivers do not have this problem. Intel drivers do not have this problem. Even ARM chipset drivers which use similar functions do not have this problem. It's exclusive to AMD.

That isn't to say other vendors never release botched drivers - they do - NVidia has had some spectacular fails in the past few years that even outright fried GPU's. But their drivers are never *persistently* broken like AMD's are. Unlike AMD, when NVidia fixes a bug it takes a little while longer for a new one to appear. With AMD, the new bug is almost immediate. If not within the same driver release, it's guaranteed a month or two down the road.
yum13241
Posts: 550
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Recent AMD driver to fix voxels

Post by yum13241 »

And on Linux, AMD does not develop the drivers. So OpenGL should be clear there.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48598
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Recent AMD driver to fix voxels

Post by Graf Zahl »

They should see that they get the Linux drivers ported to Windows then. :twisted:
MaximumDoom
Posts: 7
Joined: Thu Jan 19, 2023 9:57 am

Re: Recent AMD driver to fix voxels

Post by MaximumDoom »

Hi there.

Ok we'll send this info to AMD dev group and try and get some answers, I'm sure it's an optimization change but only speculating. It's a shame that you won't support AMD, literally millions of people use AMD and they won't get the chance to see working voxels.

There's some links here on open source OpenGL Voxel Engines apparently working with AMD, NVidia and Intel GPU's maybe you could take a look.

https://github.com/JamesRandall/SimpleVoxelEngine

https://github.com/topics/voxel-engine?l=c%2B%2B

I'm sure they already tried 22.7 which is July 2022 and the voxels still the same. Looks like any driver past March 2021 is the same, voxels don't render correctly.

Cheers.
User avatar
Rachael
Admin
Posts: 13259
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: Recent AMD driver to fix voxels

Post by Rachael »

MaximumDoom wrote: Sun Jan 22, 2023 12:38 pm Ok we'll send this info to AMD dev group and try and get some answers, I'm sure it's an optimization change but only speculating.
Good luck.

But you should know the voxel issue was fixed in a driver update last July. Before you contact AMD let me make one thing clear: The only thing we know about AMD and GZDoom is OpenGL is constantly breaking - some way, some how, and far more often with niche features than with oft-used features. The feature you are ranting about right now has, to the best of our knowledge, been fixed and is no longer broken in recent drivers. If that is not the case, I have not been informed of it breaking again in more recent drivers.
MaximumDoom wrote: Sun Jan 22, 2023 12:38 pm literally millions of people use AMD and they won't get the chance to see working voxels.
That is implying that millions of people using AMD never use Vulkan.

The voxels work perfectly fine, there, and unlike with OpenGL, have never been broken by a driver update from AMD.

That is why, on Windows, OpenGL is deprecated for AMD. There already exists an alternative and it works great - Vulkan. AMD supports this really well, and all models and voxels work perfectly on it. GZDoom supports Vulkan, and Vulkan works great on modern AMD cards, and that is how you can get GZDoom to run well on an AMD card.

I do not know the reason for your insistence on OpenGL for AMD - I am beginning to think GZDoom should actively refuse to run this backend on AMD cards while running in Windows or Mac, asking the user to choose Vulkan or OpenGLES instead. There are alternatives available out-of-the-box and they do not have those problems. At the very least it would save a whole lot of headache for affected users, and a whole lot of headache for us with users trying to get us to revive this long-dead horse.

On the flip side though - if some AMD driver dev happened to take up GZDoom coding as a hobby - which is unlikely, but hey, wishful thinking, eh? - I definitely would not complain. :)
User avatar
axredneck
Posts: 304
Joined: Mon Dec 11, 2017 2:09 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Arch
Graphics Processor: nVidia with Vulkan support
Location: Russia

Re: Recent AMD driver to fix voxels

Post by axredneck »

yum13241 wrote: Sun Jan 22, 2023 11:47 amAnd on Linux, AMD does not develop the drivers. So OpenGL should be clear there.
Wrong. Yes, they don't develop RADV, but they still develop other parts of their Linux graphics driver, including OpenGL one (radeonsi).

Return to “Hall of Unpleasantness”