Page 1 of 1

Trivial changes to vertex shader sometimes change vertex positions

Posted: Sat Dec 15, 2018 2:49 am
by plygon
Image

I'm not at all an expert in OpenGL, but I am confident that this is a bug. When I remove this useless variable from my fragment shader, the vertex positions change. (The smaller triangle is the correct one)

I'm sorry if this has been posted before, I did a quick search and didn't see it.

Re: Trivial changes to vertex shader sometimes change vertex positions

Posted: Sat Dec 15, 2018 12:51 pm
by Kjell
Hi plygon,

Are you sure you're not getting any GLSL compilation errors in the log panel? Some GPU drivers are a bit particular when it comes to defining variables that don't actually get used for anything.

K

Re: Trivial changes to vertex shader sometimes change vertex positions

Posted: Sat Dec 15, 2018 5:16 pm
by plygon
I am not getting any GSL compilation errors (though that seems like the only explanation)

I do get an error that I think is unrelated, but it only happens when I switch to a different element while the preview is not running. I get "Access violation at address 569648C0 in module 'if75icd32.dll'.Read of address 00000024".

Two other things I noticed:
-The name of the variable does not matter.
-It will only render correctly if the variable has something to do with the "vertex" attribute. Setting it to "vertex.x - vertex.x" works, but setting it to "0.0" doesn't.

Re: Trivial changes to vertex shader sometimes change vertex positions

Posted: Mon Dec 17, 2018 8:17 am
by VilleK
Hi,

I can't really explain that other than the GLSL-compilation is entirely handled in the graphics driver. So it might be a bug/quirk in your Intel GPU driver.