Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#258 compileProgram validates against opengl state

open
GL (74)
5
2014-07-08
2013-04-26
xwize
No

The compileProgram function calls check_validate on the newly linked program object which can lead to a situation where
validation fails due to an incompatible gl state, yet there are no errors reported in either compiling or linking.

Validation should only be performed before *using* the shader program - so as to check whether or not the shader will execute correctly with the current opengl state and not to be used as an indication of compilation success.

If validation fails due to an incompatible state, but shader compilation and linking succeeds, it causes a catch-22 because the function throws an error and you can't change the state if you aren't returned the linked program.

Discussion

  • xwize
    xwize
    2013-04-26

    "RuntimeError: Validation failure (0): Validation failed! - Different sampler types for same sample texture unit in fragment shader." <- Validation can fail despite there being nothing wrong with shader compilation or linking.