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

Recreating GL context for MFC window

Evan_O_
Beginner
1,118 Views

We're encountering a problem where when we try to re-create the OpenGL context for a window in an MFC application, the image in the window will no longer update. The pixel format should be exactly the same in both cases, and the context creation and MakeCurrent calls all seem to be succeeding (no other GL errors either during rendering). The image in the window is frozen with the last picture drawn by the old context. This seems to be specific to Intel graphics (verified with HD 4000 so far), the code works as expected (new window updates and is usable) on machines with Nvidia/AMD graphics. 

I've attempted to reproduce this in a simple application outside of our main code base but have not been successful so far. In the meantime I was just wondering if anyone might have some insight on what could be going on and some way to possibly work around the problem.

 

0 Kudos
11 Replies
Michael_C_Intel2
Employee
1,118 Views

Hi Evan,

What graphics driver are you using? Based on you description it certainly sounds like a driver problem we need to look at. I am seeing if this is a known issue and if there might be a workaround.

 

 

 

 

 

0 Kudos
Evan_O_
Beginner
1,118 Views

Driver version is 10.18.10.3945 according to the Device Manager. I'm running the Window 10 Technical Preview, I'll double check that it happens on Windows 8 as well. I can provide a binary test-case (application with a button you can click to reproduce the problem) if that would be useful.

0 Kudos
Evan_O_
Beginner
1,118 Views

Here's a link to a test program -- https://www.dropbox.com/sh/dav10qf7o515u2v/AAC9GPYY9AS4EoYUUU5F7XB-a?dl=0 that will show the problem. Open it and select the DEBUG -> Slot 1 menu option (which recreates the WGL context for the window) and then try to interact with the model by clicking and dragging in the window. The window will no longer update on systems with Intel graphics. On AMD/Nvidia systems the Slot 1 code can be run many times without any problem. 

I was also able to reproduce this on a Windows 7 machine with an HD 4600 GPU, driver version 9.18.10.3204.

 

0 Kudos
Michael_C_Intel2
Employee
1,118 Views

Thanks Evan,this will help a lot. I filed an internal ticket and see that it is investigated. I will update when I have some new information.

0 Kudos
Evan_O_
Beginner
1,118 Views

Just wondering if there's been any update on this? Even if a fix isn't coming anytime soon, any insight about what's happening so we can try to work around the problem would be really helpful.

Thanks,

Evan

0 Kudos
Michael_C_Intel2
Employee
1,118 Views

Hi Evan,

Our driver development team is looking into the issue, I don't have a ETA on the fix yet because we are still finding the root cause. I have reached out to our engineers looking at the problem to see if I can get more details for you.

-Michael

 

0 Kudos
Evan_O_
Beginner
1,118 Views

OK, thanks for the update.

0 Kudos
Michael_C_Intel2
Employee
1,118 Views

Hi Evan,

The root cause to your issue was found and the driver fix implemented. The next driver release on Intel.com will include said fix. The issue was caused by an invalid device context.

-Michael

0 Kudos
Evan_O_
Beginner
1,118 Views

That's great news, thanks!

0 Kudos
Evan_O_
Beginner
1,118 Views

Hi Michael,

I realize this is a bit late for this issue, but would you have any information about which version this fix first appeared in and possibly which hardware was affected by it? As it turns out we're going to need to implement a check in code to determine whether it's safe to rebind the GL context like this, and knowing the exact version to use as the cutoff would be preferable to trying to determine one through trial and error.

Thanks,

Evan

0 Kudos
Michael_C_Intel2
Employee
1,118 Views

Hi Evan,

It affected 4th, 5th, & 6th Generation Core Processors, my best on the driver is 15.36.4170 and newer drivers. I may have been in driver a version or 2 older.

-Michael

0 Kudos
Reply