Daniel21
(Themenstarter)
Anmeldungsdatum: 6. Januar 2014
Beiträge: 68
|
Hier etwas mehr Infos:
OpenGL: Gallium 0.4 on AMD TURKS version 3.0 Mesa 10.1.3, X.Org
OpenGL Version: 3.0 Dieser Error kommt beim Laden des Shader Mods.
[14:29:42 INFO]: Client> Info log: /shaders/composite1.fsh
[14:29:42 INFO]: Client> 0:90(44): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[14:29:42 INFO]: Client> 0:90(49): error: type mismatch
[14:29:42 INFO]: Client> 0:212(92): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[14:29:42 INFO]: Client> 0:212(95): error: type mismatch
[14:29:42 INFO]: Client> 0:212(54): error: cannot construct `vec3' from a non-numeric data type
[14:29:42 INFO]: Client> 0:212(103): error: operands to arithmetic operators must be numeric
[14:29:42 INFO]: Client> 0:212(108): error: operands to arithmetic operators must be numeric
[14:29:42 INFO]: Client> 0:212(49): error: cannot construct `vec4' from a non-numeric data type
[14:29:42 INFO]: Client> 0:212(114): error: operands to arithmetic operators must be numeric
[14:29:42 INFO]: Client> 0:515(52): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[14:29:42 INFO]: Client> 0:515(65): error: no matching function for call to `pow(error, vec4)'; candidates are:
[14:29:42 INFO]: Client> 0:515(65): error: vec3 pow(vec3, vec3)
[14:29:42 INFO]: Client> 0:515(65): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:515(65): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:515(65): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:515(65): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:515(65): error: vec2 pow(vec2, vec2)
[14:29:42 INFO]: Client> 0:515(65): error: vec3 pow(vec3, vec3)
[14:29:42 INFO]: Client> 0:515(65): error: vec4 pow(vec4, vec4)
[14:29:42 INFO]: Client> 0:1145(61): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)'; candidates are:
[14:29:42 INFO]: Client> 0:1145(66): error: type mismatch
[14:29:42 INFO]: Client> 0:1145(78): error: no matching function for call to `pow(error, vec3)'; candidates are:
[14:29:42 INFO]: Client> 0:1145(78): error: vec3 pow(vec3, vec3)
[14:29:42 INFO]: Client> 0:1145(78): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:1145(78): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:1145(78): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:1145(78): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:1145(78): error: vec2 pow(vec2, vec2)
[14:29:42 INFO]: Client> 0:1145(78): error: vec3 pow(vec3, vec3)
[14:29:42 INFO]: Client> 0:1145(78): error: vec4 pow(vec4, vec4)
[14:29:42 INFO]: Client> 0:1145(79): error: operands to arithmetic operators must be numeric
[14:29:42 INFO]: Client> 0:1145(79): error: type mismatch
[14:29:42 INFO]: Client> 0:1209(57): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[14:29:42 INFO]: Client> 0:1209(62): error: type mismatch
[14:29:42 INFO]: Client> 0:1209(74): error: no matching function for call to `pow(error, vec3)'; candidates are:
[14:29:42 INFO]: Client> 0:1209(74): error: vec3 pow(vec3, vec3)
[14:29:42 INFO]: Client> 0:1209(74): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:1209(74): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:1209(74): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:1209(74): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:1209(74): error: vec2 pow(vec2, vec2)
[14:29:42 INFO]: Client> 0:1209(74): error: vec3 pow(vec3, vec3)
[14:29:42 INFO]: Client> 0:1209(74): error: vec4 pow(vec4, vec4)
[14:29:42 INFO]: Client>
[14:29:42 INFO]: Client>
[14:29:42 INFO]: Client> GL error 0x0502: Invalid operation at useProgram composite1
[14:29:42 INFO]: Client> GL error 0x0501: Invalid value at useProgram composite1
[14:29:42 INFO]: Client> [14:29:42] [Client thread/INFO]: [CHAT] [Shaders] Error : Invalid program composite1
[14:29:42 INFO]: Client> [Shaders] Error : Invalid program composite1
[14:29:42 INFO]: Client> gnormal mipmap enabled for /shaders/composite2.fsh
[14:29:42 INFO]: Client> Program composite2 loaded
[14:29:42 INFO]: Client> Info log: /shaders/final.fsh
[14:29:42 INFO]: Client> 0:87(43): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[14:29:42 INFO]: Client> 0:87(48): error: type mismatch
[14:29:42 INFO]: Client> 0:87(67): error: no matching function for call to `pow(error, vec3)'; candidates are:
[14:29:42 INFO]: Client> 0:87(67): error: vec3 pow(vec3, vec3)
[14:29:42 INFO]: Client> 0:87(67): error: float pow(float, float)
[14:29:42 INFO]: Client> 0:87(67): error: vec2 pow(vec2, vec2)
[14:29:42 INFO]: Client> 0:87(67): error: vec3 pow(vec3, vec3)
[14:29:42 INFO]: Client> 0:87(67): error: vec4 pow(vec4, vec4)
[14:29:42 INFO]: Client> 0:87(68): error: `return' with wrong type error, in function `GetTextureLod' returning vec3
[14:29:42 INFO]: Client>
[14:29:42 INFO]: Client>
[14:29:42 INFO]: Client> GL error 0x0502: Invalid operation at useProgram final
[14:29:42 INFO]: Client> GL error 0x0501: Invalid value at useProgram final
[14:29:42 INFO]: Client> [14:29:42] [Client thread/INFO]: [CHAT] [Shaders] Error : Invalid program final
[14:29:42 INFO]: Client> [Shaders] Error : Invalid program final Und dieser beim auswählen des eigentlichen Shaders:
[14:29:53 INFO]: Client> EE ../../../../../../src/gallium/drivers/r600/r600_shader.c:157 r600_pipe_shader_create - translation from TGSI failed !
[14:29:53 INFO]: Client> EE ../../../../../../src/gallium/drivers/r600/r600_state_common.c:745 r600_shader_select - Failed to build shader variant (type=1) -1 Also anscheinend gibt es viele Probleme beim Laden.
Ich habe den Shader angehängt, damit du bei den Dateien nachsehen kannst. Mir fiel auch auf, dass mein OpenGL nur auf Version 3.0 und nicht wie du geschrieben hast auf 3.1.
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Ich kenne mich zwar nicht mit GLSL aus, aber das ist wohl definitiv ein Fehler im Shader, der korrekte Typenaufruf der bemängelten Funktion scheint texture2DLod(sampler2D, vec2, float) anstelle von texture2DLod(sampler2D, vec2, int) zu sein. Nach dem was ich finden konnte ist dieses implizite Casting nur erlaubt, wenn der Shader als Version 1.20 oder höher gekennzeichnet ist, ohne eine solche Kennzeichnung wird aber von GLSL 1.10 ausgegangen. Dieses Verhalten ist genau so in den OpenGL Spezifikationen definiert. Dummerweise sind die proprietären Treiber nicht gerade die besten wenn es um das Einhalten der offiziellen Spezifikationen handelt, in diesem Falle sehen sie über diese Einschränkung wohl einfach hinweg, sodass solche Fehler gar nicht erst auffallen. Sowas kommt dabei raus wenn Treiber über etliche Jahre versuchen den schlampigen Umgang mit OpenGL in Spielen mit Workarounds selbst zu beheben. Wenn du den betroffenen Shader um die Versionsangabe in der ersten Zeile ergänzt (#version 120 ), umgehst du dieses Problem. Daniel21 schrieb: Mir fiel auch auf, dass mein OpenGL nur auf Version 3.0 und nicht wie du geschrieben hast auf 3.1.
Ab OpenGL 3 wird mit Core Profiles gearbeitet. Da bekommt man dann zB bei glxinfo zwar 3.0 als OpenGL Version String ausgespuckt, an anderer Stelle steht dann aber ein OpenGL Core Profile String mit 3.1. Der Treiber beherrscht mit der Karte inzwischen auch schon OpenGL 3.3, aber nicht mit der älteren Version von 14.04.
|
Daniel21
(Themenstarter)
Anmeldungsdatum: 6. Januar 2014
Beiträge: 68
|
Letalis Sonus schrieb: Wenn du den betroffenen Shader um die Versionsangabe in der ersten Zeile ergänzt (#version 120 ), umgehst du dieses Problem.
Bei dem Shader ist aber bei jeder Datei schon diese Versionsangabe oder meinst du das anders?
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Die Shader wurden übrigens nicht angehängt - du musst die Dateien dort schon explizit hochladen.
|
Daniel21
(Themenstarter)
Anmeldungsdatum: 6. Januar 2014
Beiträge: 68
|
Okay, neuer Upload versuch. // Ich versuche gerade die ganzen Fehler manuell zu beheben.
- SEUS-v10.1-Standard.zip (66.1 KiB)
- Download SEUS-v10.1-Standard.zip
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Weiß ich nun auch nicht was da genau schief läuft... sonst musst du das einfach per Hand machen: In der composite1.fsh überall wo texture2DLod aufgerufen wird aus der 0 eine 0.0 machen, den einen Aufruf mit einem r kannst du so lassen. In der final.fsh musst du bei einem Aufruf aus level ein float(level) machen, wenn ich das mit GLSL richtig verstanden habe.
|
Daniel21
(Themenstarter)
Anmeldungsdatum: 6. Januar 2014
Beiträge: 68
|
Danke, aber die Methode "texture2DLod" geht damit immer noch nicht. [19:51:09 INFO]: Client> gcolor mipmap enabled for /shaders/composite1.fsh
[19:51:09 INFO]: Client> composite mipmap enabled for /shaders/composite1.fsh
[19:51:09 INFO]: Client> Info log: /shaders/composite1.fsh
[19:51:09 INFO]: Client> 0:90(46): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)'; candidates are:
[19:51:09 INFO]: Client> 0:90(51): error: type mismatch
[19:51:09 INFO]: Client> 0:212(94): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)'; candidates are:
[19:51:09 INFO]: Client> 0:212(97): error: type mismatch
[19:51:09 INFO]: Client> 0:212(54): error: cannot construct `vec3' from a non-numeric data type
[19:51:09 INFO]: Client> 0:212(105): error: operands to arithmetic operators must be numeric
[19:51:09 INFO]: Client> 0:212(110): error: operands to arithmetic operators must be numeric
[19:51:09 INFO]: Client> 0:212(49): error: cannot construct `vec4' from a non-numeric data type
[19:51:09 INFO]: Client> 0:212(116): error: operands to arithmetic operators must be numeric
[19:51:09 INFO]: Client> 0:515(54): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)'; candidates are:
[19:51:09 INFO]: Client> 0:515(67): error: no matching function for call to `pow(error, vec4)'; candidates are:
[19:51:09 INFO]: Client> 0:515(67): error: vec3 pow(vec3, vec3)
[19:51:09 INFO]: Client> 0:515(67): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:515(67): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:515(67): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:515(67): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:515(67): error: vec2 pow(vec2, vec2)
[19:51:09 INFO]: Client> 0:515(67): error: vec3 pow(vec3, vec3)
[19:51:09 INFO]: Client> 0:515(67): error: vec4 pow(vec4, vec4)
[19:51:09 INFO]: Client> 0:1145(61): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)'; candidates are:
[19:51:09 INFO]: Client> 0:1145(66): error: type mismatch
[19:51:09 INFO]: Client> 0:1145(78): error: no matching function for call to `pow(error, vec3)'; candidates are:
[19:51:09 INFO]: Client> 0:1145(78): error: vec3 pow(vec3, vec3)
[19:51:09 INFO]: Client> 0:1145(78): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:1145(78): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:1145(78): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:1145(78): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:1145(78): error: vec2 pow(vec2, vec2)
[19:51:09 INFO]: Client> 0:1145(78): error: vec3 pow(vec3, vec3)
[19:51:09 INFO]: Client> 0:1145(78): error: vec4 pow(vec4, vec4)
[19:51:09 INFO]: Client> 0:1145(79): error: operands to arithmetic operators must be numeric
[19:51:09 INFO]: Client> 0:1145(79): error: type mismatch
[19:51:09 INFO]: Client> 0:1209(59): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)'; candidates are:
[19:51:09 INFO]: Client> 0:1209(64): error: type mismatch
[19:51:09 INFO]: Client> 0:1209(76): error: no matching function for call to `pow(error, vec3)'; candidates are:
[19:51:09 INFO]: Client> 0:1209(76): error: vec3 pow(vec3, vec3)
[19:51:09 INFO]: Client> 0:1209(76): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:1209(76): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:1209(76): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:1209(76): error: float pow(float, float)
[19:51:09 INFO]: Client> 0:1209(76): error: vec2 pow(vec2, vec2)
[19:51:09 INFO]: Client> 0:1209(76): error: vec3 pow(vec3, vec3)
[19:51:09 INFO]: Client> 0:1209(76): error: vec4 pow(vec4, vec4)
[19:51:09 INFO]: Client>
[19:51:09 INFO]: Client>
[19:51:09 INFO]: Client> GL error 0x0502: Invalid operation at useProgram composite1
[19:51:09 INFO]: Client> GL error 0x0501: Invalid value at useProgram composite1
[19:51:09 INFO]: Client> [19:51:09] [Client thread/INFO]: [CHAT] [Shaders] Error : Invalid program composite1
[19:51:09 INFO]: Client> [Shaders] Error : Invalid program composite1
[19:51:09 INFO]: Client> gnormal mipmap enabled for /shaders/composite2.fsh
[19:51:10 INFO]: Client> Program composite2 loaded
[19:51:10 INFO]: Client> Info log: /shaders/final.fsh
[19:51:10 INFO]: Client> 0:87(50): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)'; candidates are:
[19:51:10 INFO]: Client> 0:87(55): error: type mismatch
[19:51:10 INFO]: Client> 0:87(74): error: no matching function for call to `pow(error, vec3)'; candidates are:
[19:51:10 INFO]: Client> 0:87(74): error: vec3 pow(vec3, vec3)
[19:51:10 INFO]: Client> 0:87(74): error: float pow(float, float)
[19:51:10 INFO]: Client> 0:87(74): error: vec2 pow(vec2, vec2)
[19:51:10 INFO]: Client> 0:87(74): error: vec3 pow(vec3, vec3)
[19:51:10 INFO]: Client> 0:87(74): error: vec4 pow(vec4, vec4)
[19:51:10 INFO]: Client> 0:87(75): error: `return' with wrong type error, in function `GetTextureLod' returning vec3
[19:51:10 INFO]: Client>
[19:51:10 INFO]: Client>
[19:51:10 INFO]: Client> GL error 0x0502: Invalid operation at useProgram final
[19:51:10 INFO]: Client> GL error 0x0501: Invalid value at useProgram final
[19:51:10 INFO]: Client> [19:51:10] [Client thread/INFO]: [CHAT] [Shaders] Error : Invalid program final Soweit wie du war ich fast. Hatte die final.fsh noch nicht, aber es funktioniert leider nicht ☹.
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Sehr merkwürdig... Was ich noch dazu gefunden hab: Die Funktion wurde in GLSL 1.30 entfernt und gegen das neue textureLod ausgetauscht, welche anhand der Parameter entscheidet obs nun 2D oder 3D ist. Vielleicht geht da etwas schief. Wenn du experimentierfreudig bist kannst du es ja mal mit dem Xorg-Edgers PPA versuchen, dann hast du den aktuellen Entwicklungsstand von so ziemlich allem was mit der Grafik zu tun hat.
|
Daniel21
(Themenstarter)
Anmeldungsdatum: 6. Januar 2014
Beiträge: 68
|
Letalis Sonus schrieb: Was ich noch dazu gefunden hab: Die Funktion wurde in GLSL 1.30 entfernt und gegen das neue textureLod ausgetauscht, welche anhand der Parameter entscheidet obs nun 2D oder 3D ist. Vielleicht geht da etwas schief.
Gerade versucht, geht auch nicht.
Wenn du experimentierfreudig bist kannst du es ja mal mit dem Xorg-Edgers PPA versuchen, dann hast du den aktuellen Entwicklungsstand von so ziemlich allem was mit der Grafik zu tun hat.
Habe es hinzugefügt, mein Notebook aktualisiert und neugestartet, aber immer noch das gleiche Problem ☹. [20:18:30 INFO]: Client> gcolor mipmap enabled for /shaders/composite1.fsh
[20:18:30 INFO]: Client> composite mipmap enabled for /shaders/composite1.fsh
[20:18:31 INFO]: Client> Info log: /shaders/composite1.fsh
[20:18:31 INFO]: Client> 0:90(13): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[20:18:31 INFO]: Client> 0:90(13): error: type mismatch
[20:18:31 INFO]: Client> 0:212(66): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[20:18:31 INFO]: Client> 0:212(66): error: type mismatch
[20:18:31 INFO]: Client> 0:212(57): error: cannot construct `vec3' from a non-numeric data type
[20:18:31 INFO]: Client> 0:212(57): error: operands to arithmetic operators must be numeric
[20:18:31 INFO]: Client> 0:212(57): error: operands to arithmetic operators must be numeric
[20:18:31 INFO]: Client> 0:212(52): error: cannot construct `vec4' from a non-numeric data type
[20:18:31 INFO]: Client> 0:212(25): error: operands to arithmetic operators must be numeric
[20:18:31 INFO]: Client> 0:515(14): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[20:18:31 INFO]: Client> 0:515(10): error: no matching function for call to `pow(error, vec4)'; candidates are:
[20:18:31 INFO]: Client> 0:515(10): error: vec3 pow(vec3, vec3)
[20:18:31 INFO]: Client> 0:515(10): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:515(10): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:515(10): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:515(10): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:515(10): error: vec2 pow(vec2, vec2)
[20:18:31 INFO]: Client> 0:515(10): error: vec3 pow(vec3, vec3)
[20:18:31 INFO]: Client> 0:515(10): error: vec4 pow(vec4, vec4)
[20:18:31 INFO]: Client> 0:1145(29): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)'; candidates are:
[20:18:31 INFO]: Client> 0:1145(29): error: type mismatch
[20:18:31 INFO]: Client> 0:1145(25): error: no matching function for call to `pow(error, vec3)'; candidates are:
[20:18:31 INFO]: Client> 0:1145(25): error: vec3 pow(vec3, vec3)
[20:18:31 INFO]: Client> 0:1145(25): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:1145(25): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:1145(25): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:1145(25): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:1145(25): error: vec2 pow(vec2, vec2)
[20:18:31 INFO]: Client> 0:1145(25): error: vec3 pow(vec3, vec3)
[20:18:31 INFO]: Client> 0:1145(25): error: vec4 pow(vec4, vec4)
[20:18:31 INFO]: Client> 0:1145(4): error: operands to arithmetic operators must be numeric
[20:18:31 INFO]: Client> 0:1209(22): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[20:18:31 INFO]: Client> 0:1209(22): error: type mismatch
[20:18:31 INFO]: Client> 0:1209(18): error: no matching function for call to `pow(error, vec3)'; candidates are:
[20:18:31 INFO]: Client> 0:1209(18): error: vec3 pow(vec3, vec3)
[20:18:31 INFO]: Client> 0:1209(18): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:1209(18): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:1209(18): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:1209(18): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:1209(18): error: vec2 pow(vec2, vec2)
[20:18:31 INFO]: Client> 0:1209(18): error: vec3 pow(vec3, vec3)
[20:18:31 INFO]: Client> 0:1209(18): error: vec4 pow(vec4, vec4)
[20:18:31 INFO]: Client>
[20:18:31 INFO]: Client>
[20:18:31 INFO]: Client> GL error 0x0502: Invalid operation at useProgram composite1
[20:18:31 INFO]: Client> GL error 0x0501: Invalid value at useProgram composite1
[20:18:31 INFO]: Client> [20:18:31] [Client thread/INFO]: [CHAT] [Shaders] Error : Invalid program composite1
[20:18:31 INFO]: Client> [Shaders] Error : Invalid program composite1
[20:18:31 INFO]: Client> gnormal mipmap enabled for /shaders/composite2.fsh
[20:18:31 INFO]: Client> Program composite2 loaded
[20:18:31 INFO]: Client> Info log: /shaders/final.fsh
[20:18:31 INFO]: Client> 0:87(13): error: no matching function for call to `texture2DLod(sampler2D, vec2, int)'; candidates are:
[20:18:31 INFO]: Client> 0:87(13): error: type mismatch
[20:18:31 INFO]: Client> 0:87(9): error: no matching function for call to `pow(error, vec3)'; candidates are:
[20:18:31 INFO]: Client> 0:87(9): error: vec3 pow(vec3, vec3)
[20:18:31 INFO]: Client> 0:87(9): error: float pow(float, float)
[20:18:31 INFO]: Client> 0:87(9): error: vec2 pow(vec2, vec2)
[20:18:31 INFO]: Client> 0:87(9): error: vec3 pow(vec3, vec3)
[20:18:31 INFO]: Client> 0:87(9): error: vec4 pow(vec4, vec4)
[20:18:31 INFO]: Client> 0:87(2): error: `return' with wrong type error, in function `GetTextureLod' returning vec3
[20:18:31 INFO]: Client>
[20:18:31 INFO]: Client>
[20:18:31 INFO]: Client> GL error 0x0502: Invalid operation at useProgram final
[20:18:31 INFO]: Client> GL error 0x0501: Invalid value at useProgram final
[20:18:31 INFO]: Client> [20:18:31] [Client thread/INFO]: [CHAT] [Shaders] Error : Invalid program final
[20:18:31 INFO]: Client> [Shaders] Error : Invalid program final
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Okay, jetzt hab ich's: die *Lod Funktionen dürfen bei GLSL 1.20 nur in Vertex Shadern benutzt werden, man müsste schon die GL_ARB_shader_texture_lod oder die GL_ARB_gpu_shader4 Erweiterung aktivieren damit das auch in Fragment Shadern geht, letztere unterstützt der Treiber nicht. Die betroffenen Dateien sind Fragment Shader, keine Vertex Shader. Frag mich aber nicht wie man da nun vorgeht... Hast du beim Versuch mit textureLod auch die Versionsnummer in der ersten Zeile auf 130 geändert?
|
Daniel21
(Themenstarter)
Anmeldungsdatum: 6. Januar 2014
Beiträge: 68
|
Letalis Sonus schrieb: Hast du beim Versuch mit textureLod auch die Versionsnummer in der ersten Zeile auf 130 geändert?
Nein, ich habe es nur mit 'textureLod' versucht. Bei meinem zweiten Test habe ich beim originalen Shader in allen Dateien die Version auf 130 gestellt. Schon konnte der Shader geladen werden, aber es war alles weis mit Umrissen.. Sah komisch aus...
Ich teste mal beides zusammen. Aber eigentlich sollte das keinen Unterschied machen oder? // Also Erweiterungen kann man so aktivieren: #extension GL_ARB_shader_texture_lod:enable Ich teste das dann auch gleich danach. Muss das dann in alle Dateien?
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Daniel21 schrieb: Muss das dann in alle Dateien?
Ich hab zwar keine Ahnung von GLSL, aber ich denke sowohl die Sache mit den Versionen als auch das mit der Erweiterung sollte wohl bei den betroffenen Dateien schon reichen.
|
Daniel21
(Themenstarter)
Anmeldungsdatum: 6. Januar 2014
Beiträge: 68
|
Okay, also wenn ich die Extension bei Version 120 hinzufüge geht es nicht. Das gleiche wenn ich dies bei Version 130 mache.
Und wenn ich 130 mache mit "textureLod" dann funktioniert es auch nicht. Es kommt dieser Error: [14:38:47 INFO]: Client> EE ../../../../../../src/gallium/drivers/r600/r600_shader.c:2233 r600_shader_from_tgsi - GPR limit exceeded - shader requires 125 registers
[14:38:47 INFO]: Client> EE ../../../../../../src/gallium/drivers/r600/r600_shader.c:157 r600_pipe_shader_create - translation from TGSI failed !
[14:38:47 INFO]: Client> EE ../../../../../../src/gallium/drivers/r600/r600_state_common.c:750 r600_shader_select - Failed to build shader variant (type=1) -12
[14:38:47 INFO]: Client> EE ../../../../../../src/gallium/drivers/r600/r600_shader.c:157 r600_pipe_shader_create - translation from TGSI failed !
[14:38:47 INFO]: Client> EE ../../../../../../src/gallium/drivers/r600/r600_state_common.c:750 r600_shader_select - Failed to build shader variant (type=1) -1 Ich habe noch ein Bild angehängt, wo man den momentanen Shader mit der hinzugefügten Extension sehen kann.
- Bilder
|
Daniel21
(Themenstarter)
Anmeldungsdatum: 6. Januar 2014
Beiträge: 68
|
Musste die Treiber aus dem xorg-edgers PPA zurücksetzen, da es Probleme mit dem Starten von Ubuntu gab. Mit dem zurücksetzen konnte ich dies wieder beheben. Hast du vielleicht noch eine Idee?
|
Letalis_Sonus
Anmeldungsdatum: 13. April 2008
Beiträge: 12990
Wohnort: Oldenburg/Erlangen
|
Jetzt bin ich auch mit meinem Latein am Ende.
|