Graphics
Intel® graphics drivers and software, compatibility, troubleshooting, performance, and optimization
20682 Discussions

OpenGL shader compiler bug with GL_ARB_explicit_attrib_location

idata
Employee
3,209 Views

Dear Support Team,

I don't know where to report bugs in Intel graphics drivers, so I try it here.

The GLSL shader compiler in the current driver for the HD 4000 graphics does not support explicit shader input locations in GLSL version 3.30. As a workaround it is possible to enable the extension GL_ARB_explicit_attrib_location, but this extension was added to GLSL and it should be implicitly enabled when # version 330 is used.

Thanks in advance,

Woodstock

Output from my log file:

OpenGL version: 3.3 ("3.3.0 - Build 8.15.10.2696")

OpenGL shading language version: 3.3 ("3.30 - Intel Build 8.15.10.2696")

OpenGL vendor: "Intel"

OpenGL renderer: "Intel(R) HD Graphics 4000"

OpenGL context: core profile, forward compatible

------------------------------------------------------------------------

# version 330

layout(location = 0) out vec4 fragment_color;

smooth in vec4 smooth_color;

void main()

{

fragment_color = smooth_color;

}

------------------------------------------------------------------------

Error: 0:2: 'GL_ARB_explicit_attrib_location' : extension is disabled

0 Kudos
4 Replies
idata
Employee
1,895 Views

Yes, it happens also in version 2761. The graphics report is below:

0 Kudos
ROBERT_U_Intel
Employee
1,895 Views

Hi Woodstock42

We were able to replicate the issue on the 15.26.2761 driver.

At the same time, this problem has been resolved and the fix is available in the Win8 15.28.2792 driver :

http://downloadcenter.intel.com/SearchResult.aspx?lang=eng&ProductFamily=Graphics&ProductLine=Processor+graphics&ProductProduct=3rd+Generation+Intel%C2%AE+Core%E2%84%A2+Processors+with+Intel%C2%AE+HD+Graphics+4000/2500 http://downloadcenter.intel.com/SearchResult.aspx?lang=eng&ProductFamily=Graphics&ProductLine=Processor+graphics&ProductProduct=3rd+Generation+Intel%C2%AE+Core%E2%84%A2+Processors+with+Intel%C2%AE+HD+Graphics+4000/2500

But if you wish to keep the currently installed driver there is a WA than can be done in the application.

The issue only occurs if an OpenGL core profile is created with the WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB flag set.

A simple fix would be not to enable the forward compatible flag while creating the rendering context.

From the functional standpoint enabling this flag does not have a significant effect if the core profile has been chosen.

However, it exposes an issue that is already resolved in the latest driver.

0 Kudos
idata
Employee
1,895 Views

Hi Robert,

Thank you for the quick help! I can confirm that your workaround not to use a forward compatible profile works for me, and also that it is fixed in the mentioned new driver (which shows here as version 9.17.10.2792).

By the way, I did not try this driver yet as it is only in the Windows 8 category on the website, and it also does not show up in the Intel Driver Update Utility. Only after downloading and extracting it shows in the Readme.txt that it can be used with Windows 7. Nice to have OpenGL 4.0 now. 🙂

0 Kudos
Reply