Well, I’m starting to see why ATI gets a bad rap for their drivers. I’ve had more problems with them in the past three weeks than I have with NVIDIA in three years, which sucks because I think their hardware is great.
Onto my current problem.
Here is my water simulation using Catalyst 3.0 drivers:
And here is a screengrab of the simulation using Catalyst 3.2 drivers:
These pictures are taken from the same executable. I have no idea what’s gone wrong. It would be great if someone from ATI could chime in and list the changes that they made so I know where to start looking. I assume the problem is in ARB_fragment_program.
Looks like you’re using a temp register that doesn’t have a value assigned to it…
Could you either send an app reproducing the issue to email@example.com, or if you think you may have something wrong with your shader like Nitro suggested, you could mail me the shader.
PS: Sorry for the slow response, I just got back from an extended GDC trip.
Nitro - I checked the program over quickly on Friday and didn’t see any temps that were read before being written to. I’ll check more closely on Monday.
Hi Evan. Thanks for responding. Unfortunately, I can’t send you the code or post the shader. I would if it were my program, but I made it for my employer.
I will narrow down the exact problem and send a demo app eventually, but since I usually have to do that on my own time it might be a while I’m really busy this month.
Your employer should sign up for ATI developer relations. It’s free, and it involves an NDA where ATI promises not to give out your code, and vice versa. Once that’s done, it’s much easier to get help from them.
Being able to send your code to ATI so they can actually debug it (and to nVIDIA, and to Matrox, and …) is very helpful, and well worth it having whomever is empowered to do that, sign up for you.
I had some time to look into this problem tonight. It turns out that using GL_GENERATE_MIPMAP_SGIS on a 1D texture produces incorrect mipmaps in Cat 3.2.
I made a little demo app for ATI developer relations and am awaiting a response.
I think some of your demos have the same problem as that shown by Zeno ( with Cat3.2 ).
Most of them. The reflection/refraction demo had some artifacts on the sphere. Basically, all the demos with advanced shaders ( not the R200 demos ).
I just tried that one, seems ok here (Cat 3.2, Rad9700Pro).
I got a response already! Apparently this issue was known to them and they had been fixed internally. I was given a new dll to use that does not exhibit the problem.
Thanks for the fast turnaround, ATI
Did they tell you the cause of the problem? Is it a certain combination of settings or what?
Is it a certain combination of settings or what?
No, they didn’t give any more details. I didn’t try all the combinations in my demo app either…only the one that affected me.
Specifically GL_GENERATE_MIPMAP_SGIS will produce incorrect mipmaps on a one dimensional texture of internal and external format GL_ALPHA when uploaded as GL_FLOAT. I did try different texture sizes - all exhibited the issue. I did not try different dimensionality, formats, or types.
If you are curious about it, I can put the test app on my web site tonight and you can play around with it to find exactly what goes wrong when.
If you´re so kind, then please do it. But I´m more interested in seeing the moving waves than to look for bugs
I discovered that automatic mipmap generation sometimes fails, too… And additionally textures sometimes don´t survive a screenresolution switch (though colordepth remains the same), even for manually uploaded textures/mipmaps
And switching between desktop and my fullscreen app takes ages (it even didn´t work at all before I switched to the leaked updated Dell drivers)
Well, lets hope that the official Catalyst3.3 will become much better. ATI really should update their (downloadable) drivers more often. I have no problems with taking the risk to try out new, uncertified beta drivers if they solve urgent problems.