J'utilise OpenGL shader builder v2.2.2 et j'ai pris un exemple de code de book. Pour vertex shaderErreurs OpenGL shader builder lors de la compilation
#version 140
uniform float CoolestTemp;
uniform float TempRange;
uniform mat4 MVPMatrix;
in vec4 mcVertex;
in float VertexTemp;
out float Temperature;
void main() {
Temperature = (VertexTemp - CoolestTemp)/TempRange;
gl_Position = MVPMatrix * mcVertex;
}
Et pour shader fragment
#version 140
uniform vec3 CoolestColor;
uniform vec3 HottestColor;
in float Temperature;
out vec4 FragmentColor;
void main()
{
vec3 color = mix(CoolestColor, HottestColor, Temperature);
FragmentColor = vec4(color, 1.0);
}
Mon problème est d'exécuter ce code parce que la version 140 et 320 n'est pas pris en charge. Ensuite, j'ai essayé d'enlever les versions, le compilateur a dit "qualificatifs invalides" dans "contexte global variable" et même pour 'out', puis j'ai essayé de remplacer in/out par 'variant' mais dans fragment shader "Left-hand-side ne doit pas être en lecture seule "erreur apparaît. Pour le vertex shader, l'avertissement concernant les champs variables ne sera pas lu dans les étapes suivantes. Comment puis-je comprendre pour adapter un ancien code à nouveau? Donc, je suis absolument nouveau à GLSL
enfin une information claire, merci beaucoup! – dan