[Development] Platform maintainers: changes to OpenGL context creation required

Giuseppe D'Angelo giuseppe.dangelo at kdab.com
Sat Feb 23 15:45:59 CET 2013


Hello,

in a few days I would like to stage
     https://codereview.qt-project.org/48657
which will cause QOpenGLShaderProgram to ignore QT_OPENGL_ES (defined at 
build time) and rely on renderable type returned from the current 
context (via QOpenGLContext::format()).

This means that platform plugins must correctly set the renderable type 
on the surface format when they successfully create an OpenGL context. 
(A default constructed QSurfaceFormat will have DefaultRenderableType 
instead; you MUST NOT return that value any more. Return the actual 
default type.)

Failing to do so might result in QOpenGLShaderProgram breaking on your 
Desktop OpenGL platform, as it won't hide you the precision qualifiers 
any more. (Note that this also means breaking QQ2 on your platform.)

I have already patched the XCB, Windows (Desktop GL) and Cocoa platforms 
-- EGL (and Windows/ANGLE, which uses it) was already returning the 
right renderable type:
     https://codereview.qt-project.org/48653
     https://codereview.qt-project.org/48655
     https://codereview.qt-project.org/48654

If you're going to patch a platform plugin in order to fix this issue, 
please add me as a reviewer -- I will not stage my change until yours is in.

Thanks,
-- 
Giuseppe D'Angelo | giuseppe.dangelo at kdab.com | Software Engineer
KDAB (UK) Ltd., a KDAB Group company
Tel. UK +44-1738-450410, Sweden (HQ) +46-563-540090
KDAB - Qt Experts - Platform-independent software solutions



More information about the Development mailing list