cancel
Showing results for 
Search instead for 
Did you mean: 

OpenGL & Vulkan

a_devaykin
Adept I

Texture sampling is different on RX 5700 XT?

Hello.

It looks like the RX 5700 XT with the latest driver (19.9.2, 19.9.3) do not react on texture LOD bias (GL_TEXTURE_LOD_BIAS) param. We have a number of GPUs, both AMD and Nvidia here in CI rack. Since we have got the RX 5700 XT it has produced slightly different renderings, so after tracking down the problem it is obvious that LOD bias has no effect on this GPU. Without setting LOD bias all GPUs including RX 5700 XT give the same results. With LOD bias set RX 5700 XT still samples textures on an unbiased mip level.

I wonder if it is a known issue or not yet. Before I start creating a repro case for dedicated bug report...

Thank you.

0 Likes
6 Replies
dorisyan
Staff

Thanks for your report, we don't receive similar issues, it would be better if you can peovide a minimal code to reproduce this problem.

Hello. I was not able to reproduce our problem with LOD bias in an artificial repro example - LOD bias works as it should.
But there is still some significant difference in how textures are sampled on RX5700 compared to previous generations and Nvidia cards which breaks our CI apart. I understand that such changes may happen between GPUs generation, but it would be good to know if what I see is expected behavior or a bug, and a hint what could be tweaked to get results almost equal to reference as we have with all the other GPUs here. Let me demonstrate my findings.

Sample scene looks as follows:

new-1.png

First: mipmap level selection is pretty different from what I see on the other GPUs. Mipmap level queried via textureQueryLod(), encoded as a color: white for level <1.0, red for levels between 1.0 and 2.0, green for 2.0 <= level < 3.0, etc.
"All other" GPUs:

old-2.png

RX 5700 XT:

new-2.png

I understanda that mipmap level selection is not standardized, but combined with the next finding sampling in a different manner on a different mipmap level gives a good visible diff.

This diff between pre-RX5700 and RX5700 XT renderings shows some radial pattern, even in the areas where mipmap levels are equal betwenn RX5700 and non-RX5700:

diff-1.png

Interresting that this difference is not present on the planes orthogonal to the camera view direction - look that there is almost no diff pixels on the far plane orthogonal to the camera view, whereas plane with a slope has significant differences  texture sampling:

new-2.png

diff-2.png

It would be great to have comments on if this behavior is expected or not.

Please let me know if you need more materials.

0 Likes

Sounds like a bug which only RX5700 has, could you please provide me a minimal code which can reproduce this issue?  Thanks very much!! 

0 Likes

0 Likes

Thanks for the provided code, I'll try to find a RX5700 to reproduce your problem!

Hi. Any news on this one?

0 Likes