CauldronDevelopmentLLC / CAMotics

Open-Source Simulation & Computer Aided Machining - A 3-axis CNC GCode simulator
Other
622 stars 143 forks source link

"Failed to load OpenGL" when QT_OPENGL=angle is set. [SOLVED] #301

Closed mjknoll closed 1 year ago

mjknoll commented 5 years ago

So I read the 2 other issues with opengl and I am receiving a similar error but I am using a 1060 with the newest Nvidia driver and still getting an error about opengl 2.0. I also got the opengl extentions viewer tool and see that it shows 3.0+. Must be something 2.0 specific it needs?

image

image

jcoffland commented 5 years ago

It's likely CAMotics is finding another opengl.dll file somewhere on your system that does not support 2.0. Do a search for opengl.dll to see how many of them can be found.

mjknoll commented 5 years ago

Nothing but these. image

jcoffland commented 5 years ago

You could try running CAMotics under http://dependencywalker.com/ to see which dlls it's actually loading.

mjknoll commented 5 years ago

Not very familiar with that software but the only reference to opengl I am finding after loading and profiling is below. On the previous version of camotics I would get a similar opengl error but it wouldn't crash the program, this version crash/closes.

versionFunctions: Not supported on OpenGL ES

jcoffland commented 5 years ago

Does it work if you set the environment variable QT_OPENGL=desktop? CORRECT SOLUTION

mjknoll commented 5 years ago

Yes it runs with it set to desktop, was set to angle. Thanks.

jcoffland commented 5 years ago

If I understand you correctly, QT_OPENGL=angle was already set on your system?

mjknoll commented 5 years ago

Yes it was set to angle that seems to break camotics. I can put anything else in there, even invalid arguments and it will run fine. I am assuming it was set by another piece of software that is using qt opengl, but I couldn't say which.

jcoffland commented 5 years ago

Yes, I think you are right. QT_OPENGL=angle tells Qt to use OpenGL ES2.0 for everything. CAMotics is not yet compatible with OpenGL ES2.0. However, I plan to convert it to ES2.0.