ich spiele mich zur Zeit ein wenig mit OpenGL Shadern.
Hier mal der Vertex Shader
Code: Alles auswählen
#version 420
layout(location = 0) in vec3 Position3;
out vec4 vertexColor;
void main ()
{
gl_Position = gl_ModelViewProjectionMatrix * vec4(Position3, 1.0);
vertexColor = vec4(1.0, 0.0, 0.0, 1.0);
}
Code: Alles auswählen
#version 420
in vec4 vertexColor;
out vec4 outputColor;
void main()
{
outputColor = vertexColor;
}
Leider erscheint das Dreieck zwar an der richtigen Stelle, allerdings ist es tiefschwarz anstatt rot. Setze ich im Fragmentprogramm die Ausgabefarbe direkt funktioniert dies.
Es scheint mir fast so als würde der Vertexshader-Output nicht richtig an den Fragmentshader weitergegeben :(
Beim Compilieren bekomme ich weder Fehler noch Warnings.
Muss ich die Komponenten noch irgendwie manuell binden? Sämtliche Turoials die ich so gefunden habe sprechen davon dass das nicht notwendig ist.