OpenGL ES 2.0 und GLSL

Für Fragen zu Grafik APIs wie DirectX und OpenGL sowie Shaderprogrammierung.

OpenGL ES 2.0 und GLSL

Beitragvon alexander_ro » 30.01.2017, 16:23

Hallo Mädels ... Jungs ...

ich weiß momentan nicht warum der Shader nicht kompilierbar ist.

So sieht der aus:
Code: Ansicht erweitern :: Alles auswählen

#version 100
precision highp float;

uniform vec4 vPosition;

uniform vec2 uvCoord;
uniform mat4 transMatrix;

out vec2 UV;

void main ()
{
gl_Position = vPosition * transMatrix;
UV = uvCoord;
}


der sagt dann folgendes:
Code: Ansicht erweitern :: Alles auswählen

0:9(1): error: `out' qualifier in declaration of `UV' only valid for function parameters in GLSL ES 1.00


Ist für OpenGL 2.0 ES nicht die GLSL Version 100?

Grüße
Alexander
alexander_ro
 
Beiträge: 18
Registriert: 14.03.2005, 09:48

Re: OpenGL ES 2.0 und GLSL

Beitragvon waigie » 31.01.2017, 12:41

Wenn ich das richtig im Kopf habe, ist out an der Stelle in GL ES 2 nicht erlaubt, das muss ein varying sein. Siehe dazu https://www.khronos.org/files/opengles_ ... nguage.pdf Seite 31.

Wenn ich den Wikipedia https://de.wikipedia.org/wiki/OpenGL_ES ... g_Language richtig interpretiere, ist out wohl ab GL ES 3.0 an der Stelle wieder richtig.
waigie
 
Beiträge: 81
Registriert: 20.05.2009, 19:37

Re: OpenGL ES 2.0 und GLSL

Beitragvon alexander_ro » 31.01.2017, 18:38

Ja so kann man die Meldung auch verstehen. Habe ich wohl falsch verstanden. Ich hatte schon mal in der khronos Doku nach gelesen aber irgendwie nicht verstanden das hier nur Funktionen gemeint sind. Ich dachte wenn man das Schlüsselwort für in/out verwendet würde es für alle Variablen gehen. Bisschen in konsequent ...

Leider geben die ganzen Leute die im Netz zu OpenGL schreiben meist nicht an für welche Version die das machten. Mag ja sein das es jemand der den ganzen Tag nichts anderes macht leicht erkennen kann ... der braucht aber vermutlich die Beispiel nicht. Die Khronos Doku ist ja auch nicht gerade der Renner. Wenn man das mal mit gemacht hat wundert es nicht das kein Mensch OpenGL benutzen mag. Die Plattform Unabhängigkeit ist ja wie immer bei so etwas nur Marketing Geschwätz. Die OpenGL Programmteile von mir unter Linux entwickelt funktionieren ohne Anpassung nicht unter z.B. Windows.
alexander_ro
 
Beiträge: 18
Registriert: 14.03.2005, 09:48


Zurück zu Grafikprogrammierung

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot], Exabot [Bot] und 1 Gast