NVidia vs AMD: Shader differences

Around Christmas last year I made quite some changes to the shaders that ModelConverterX uses to be able to implement the PBR materials. Around that time I also optimized the code of the ModelConverterX preview to have better performance and less memory usage.

This week it turned out that these new shaders did not give consistent results however. It turned out that on some graphics cards not all output was visible in the preview. For example the grid was sometimes missing or in worse cases no model did show at all.

I have tracked this down to differences in how different graphics cards work with the OpenGL shaders. Although they all compiled the shader code fine, the results were not the same. In general it seems NVidia was a bit more tolerant, which results in most items showing there. AMD cards seemed a bit more strict and therefore had more issues.

I have modified my OpenGL and shader code now so that it should work more consistent over different graphics cards. Luckily my new development laptop has both an integrated AMD and a NVidia graphics cards. So at least I can easily test with two different cards.

The current development release of MCX does contain these fixes. But if you still encounter issues with the preview please let me know. I guess some of you must have been having issues for the last two months, but only this week it was reported on the ModelConverterX forum.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.