(Ping) Does anybody have any insight into QOpenGLContext::currentContext() and why it might return nullptr on some machines?
(Aside: Is there something about the way I ask questions that make them confusing and/or difficult to answer? Too long? Not enough info? I find my "response received" rate is low and would like to improve it :-) Any suggestions welcome!) Thank you for your time. --- Andy Maloney // https://asmaloney.com twitter ~ @asmaloney <https://twitter.com/asmaloney> On Wed, Dec 21, 2016 at 10:00 AM, Andy <asmalo...@gmail.com> wrote: > I have some code in my application to get information about the machine's > OpenGL. For most of my customers I'm getting useful, reasonable info from > it. > > For example: > > "opengl": { > "format": { > "received": { > "profile": "1 [core]", > "version": "3.3" > }, > "requested": { > "profile": "1 [core]", > "version": "3.3" > } > }, > "vendor": "Intel", > "version": "3.3.0 - Build 20.19.15.4531", > "renderer": "Intel(R) Iris(TM) Pro Graphics 5200", > "shadingLanguage": "3.30 - Build 20.19.15.4531" > > > And: > > "opengl": { > "format": { > "received": { > "profile": "0 [none]", > "version": "3.0" > }, > "requested": { > "profile": "1 [core]", > "version": "3.3" > } > }, > "vendor": "Google Inc.", > "version": "OpenGL ES 3.0 (ANGLE 2.1.99f075dade7c)", > "renderer": "ANGLE ( Direct3D11 vs_5_0 ps_5_0)", > "shadingLanguage": "OpenGL ES GLSL ES 3.00 (ANGLE > 2.1.99f075dade7c)" > > > For some though, it's failing to get a context at all. Here's roughly what > I'm doing: > > QString openGLInfoString() > { > QGLFormat requestedFormat; > > requestedFormat.setVersion( 3, 3 ); > requestedFormat.setProfile( QGLFormat::CoreProfile ); > > QGLWidget widget( requestedFormat ); > > widget.makeCurrent(); > > QOpenGLFunctions *glFuncs = nullptr; > > if ( QOpenGLContext::currentContext() == nullptr ) > { > return "OpenGL Info Error: Could not get current context"; > } > > glFuncs = QOpenGLContext::currentContext()->functions(); > > // ... do some stuff to get some nice OpenGL info about what is > actually available > return infoString; > } > > > I'm using a downloaded Qt 5.6.2 (MinGW) installer. > > In what situations should I expect QOpenGLContext::currentContext() to > return a nullptr? I thought with the fallback/ANGLE stuff I could always > expect at least the ANGLE stuff to kick in - as in the second example. > > Thanks for any insight! > > --- > Andy Maloney // https://asmaloney.com > twitter ~ @asmaloney <https://twitter.com/asmaloney> > >
_______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest