Jump to content
  • Advertisement
Sign in to follow this  
bene81

Overview of specific behaviour on ATI/nVidia Cards

This topic is 3884 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

So I did have a lot of trouble with shaders in the past because of some "different" implementations of ATI and Nvidia, or implementations deviating from the standard. Example: gl_ClipVertex, using LINE_SMOOTH causing fallback to software rendering, only specific buffer formats for FBOs are accelerated. I found some solutions by try and error, some in forums, some in documents around the web. But not all on the official vendor sites. So the question is if somebody has done a tabular overview of common mistakes or specializations for use with shaders. E.g. tips for special hardware acceleration features like ATIs HiZ, or states causing fallback to software mode and so on. Such a list would greatly improve shader performance and drecrease debugging time. A notation referring to affected hw would be nice either. Somebody knows of such an overview or has interest in contributing with his/her own experience to create one? [Edited by - bene81 on October 31, 2007 5:17:40 AM]

Share this post


Link to post
Share on other sites
Advertisement
Seconded...

But does anyone know what the differences in implementations are?

– and are there any other graphics hardware manufacturers doing more odd things with what I thought was a clearly defined specification?

Share this post


Link to post
Share on other sites
Some info can be found here:

http://ati.amd.com/developer/SDK/AMD_SDK_Samples_May2007/Documentations/ATI_OpenGL_Programming_and_Optimization_Guide.pdf
http://ati.amd.com/developer/SDK/AMD_SDK_Samples_May2007/Documentations/Depth_in-depth.pdf
http://download.nvidia.com/developer/GLSL/GLSL%20Release%20Notes%20for%20Release%2060.pdf

Share this post


Link to post
Share on other sites
Except for the official performance guidelines, such advice is difficult to give, because it isn't 'stable'. A trick that worked well and fast on one driver revision might be completely broken or inefficient after the next driver update. Even the best performance guidelines issued by NV or ATI are only valid for the GPU type they were written for. Using them on anything else can even decrease performance. Best example is GF7 vs. GF8 series. A lot of the GLSL performance tricks that worked well on a GF7 will decrease performance on a GF8. Because the former is a vector GPU and the latter a scalar.

Conclusion: be careful with performance tricks. They can backfire.

BTW: and while we're on the topic of weird OpenGL behaviour, let me relink to my good and well trusted partial ATI OpenGL buglist. If anyone feels like extending it, go ahead.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!