Есть ли способ определить в исходном коде шейдера, что шейдер компилируется для OpenGL ES? Я хочу иметь возможность определить версию с помощью директивы препроцессора #version
как 100 для OpenGL ES (чтобы шейдер компилировался для OpenGL ES 2.0), но был версии 110 для OpenGL 2.1).
Лучший способ сделать это - поместить #version как отдельную строку, которая вводится на уровне приложения, или есть способ сделать это внутри шейдера?
Другая полезная, связанная с этим вещь, которую можно было бы сделать, это сказать что-то вроде
#if version == 100
скомпилировать этот код, else
скомпилировать этот код. Возможно ли это в GLSL?
Спасибо.