die folgenden einfachen Fragment-Shader-Code fehlschlägt, mich mit einer uninformativ Meldung im Protokoll zu verlassen: ERROR: 0:1: 'gl_Color' : syntax error syntax error
GLSL Fragment-Shader Syntaxfehler
void main()
{
vec4 myOutputColor(gl_Color);
gl_FragColor = myOutputColor;
}
während die eine folgende Arbeiten:
void main()
{
glFragColor = gl_Color;
}
Diese Boggles meine Meinung, wie in Lighthouse3D's tutorial gl_Color soll ein vec4 sein. Warum kann ich es nicht einem anderen vec4 zuweisen?
Ist die Fehlermeldung wirklich authentisch? Ist es normal/erwartet, dass die Spalten-/Zeilennummer fehlt und zweimal den Text "Syntaxfehler" enthält? – unwind
Ja, die Fehlermeldung ist authentisch (ich habe in den Beispielen einen Unterstrich weggelassen, daher die Änderung). Ich weiß nicht wirklich, was normal/erwartet mit GLSL-Info-Logs ist; In den meisten Fällen wurde der Fehlerort nicht angezeigt, sondern nur der Name der problematischen Variablen/Funktion. (Die Umgebung ist OS X, xcode, OpenGL 2.0 mit einem ATI-Treiber v1.5) – zyndor
* bump * bump * Hey Faulpelz! Hat es funktioniert? ;) – ralphtheninja