imalerich / barvis

OpenGL Visualizer Bar Background Utility
12 stars 0 forks source link

"glsl 3.30 is not supported." #2

Open dixler opened 7 years ago

dixler commented 7 years ago

I'm really new at compiling from source and I don't want to inconvenience anyone too much, but I've been trying to get this working for a few hours on i3wm. I've tried changing the values for #version 330 to everything under the sun on and off the list of supported versions and it seems that it causes more errors. I installed the packages that were listed on the readme.

imalerich commented 7 years ago

Sorry for the late reply. I'm using some render to texture features to accomplish blur which the way I implemented require glsl 3.30. GLSL shaders are compiled at run time, so if gcc is throwing an error that's going to be something different. You're graphics drivers are responsible for compiling the shader code. My guess, either your graphics card does not support a high enough version of OpenGL, or you're drivers don't (Do you know if you're on the nouveau or proprietary drivers? It works for me on the proprietary drivers, but I haven't tested the open source drivers). Hope this helps.

dixler commented 7 years ago

fyi: I'm using i915 and I think it's called mesa(if this information is helpful)

glxinfo | grep OpenGL:
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2) 
OpenGL core profile version string: 4.5 (Core Profile) Mesa 17.0.1
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 17.0.1
OpenGL shading language version string: 1.30: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2) 
OpenGL core profile version string: 4.5 (Core Profile) Mesa 17.0.1
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile p
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 17.0.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
imalerich commented 7 years ago

OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20 This line says the maximum shader version supported is 320 if I'm reading it correctly, I believe shader version 330 is the minimum required for what I'm using. I'll consider playing around with it to see if I can get it to compile on older shader versions. But for now a quick google turned up this page https://www.opengl.org/discussion_boards/showthread.php/180321-Problem-with-layout-Syntax which suggests you might be able to use

version 320

extension GL_ARB_explicit_attrib_location : require

extension GL_ARB_explicit_uniform_location : require

or something similar to get it to work.