Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-76359

Enable ANGLE's OpenGL backend via QT_ANGLE_PLATFORM on Windows

    XMLWordPrintable

Details

    • Suggestion
    • Resolution: Won't Do
    • Not Evaluated
    • None
    • None
    • GUI: OpenGL
    • None
    • Windows

    Description

      Currently only three of the supported ANGLE backends are supported on Windows: D3D11, D3D9 and WARP.

      While this is sufficient for most applications, sometimes it is nice to see an OpenGL trace of the GLES code running in your application for debugging puposes, especially if you're using tools like Nvidia Nsight, or if you're currently running your application on Windows, but also deploy to native GL platforms like Linux and don't want go to a VM or boot up Linux before you're able to check the GL implementation.

      Having a GL trace is also very helpful if you aren't as versed in D3D as you are in OpenGL (ES) and you want to verify that your ES code provokes the expected ANGLE behavior. The alternative is to use vendor specific GLES over WGL contexts, as provided by Intel and NVidia - which we also do, but not every (major) vendor supports this on Windows. We rely heavily on ANGLE because we're effectively bound to it on Windows, when using the Emscripten build of our 3D engine in a browser and our Qt tools are currently only working on Windows.

       

      The effort to do this, AFAICS, is low because one only needs to

      // provide an additional field like
      QWindowsOpenGLTester::AngleRendererOpenGL
      
      // then adapt
      QWindowsOpenGLTester
      QWindowsIntegration
      QWindowsEGLStaticContext
      
      // especially use the appropriate platform for EGL when creating the platform display
      EGL_PLATFORM_ANGLE_TYPE_OPENGL_ANGLE

       

      There are no additional dependencies that need to be shipped and the GL backend is just as viable as the D3D backends. Also, if you're building ANGLE with default settings (i.e. you don't explicitly disable the GL backend) it is deployed with Qt's ANGLE build already.

      We could of course do this ourselves but I'd rather see this in the official build.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            lagocs Laszlo Agocs
            thokra Thomas Kranz
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes