Bug 915

Summary: GLES2 and GLES3 contexts rejected on Mesa/AMD where ES3 is available since 2.1.1
Product: [JogAmp] Jogl Reporter: Mark Raynsford <org.jogamp>
Component: coreAssignee: Sven Gothel <sgothel>
Severity: normal CC: sgothel
Priority: ---    
Version: 2   
Hardware: pc_all   
OS: linux   
Workaround: ---
Attachments: Debug output for 2.1.3-rc-20131129 maven
Trivial test program
Debug output for 2.1.0 (successfully opening a GLES2 context)

Description Mark Raynsford 2013-12-02 01:13:15 CET
Created attachment 562 [details]
Debug output for 2.1.3-rc-20131129 maven

GLES2 and GLES3 can't be used on Mesa 9.2.3, on jogl >= 2.1.1.

Attempting to open a GLWindow with a GLES2 profile results in an error claiming
the profile is unavailable.
Comment 1 Mark Raynsford 2013-12-02 01:13:59 CET
Created attachment 563 [details]
Trivial test program
Comment 2 Mark Raynsford 2013-12-02 01:15:00 CET
Created attachment 564 [details]
Debug output for 2.1.0 (successfully opening a GLES2 context)
Comment 3 Mark Raynsford 2013-12-02 01:18:51 CET
GL_VERSION: OpenGL ES 3.0 Mesa 9.2.3
GL_RENDERER: Gallium 0.4 on AMD RV730

Linux viper 3.12.0-1-ARCH #1 SMP PREEMPT Wed Nov 6 09:06:27 CET 2013 x86_64 GNU/Linux
Comment 4 Sven Gothel 2013-12-02 02:51:22 CET
ES2 rejected, since context reports itself as ES 3.0:
main: GLContext.setGLFuncAvail: Pre version verification - expected 2.0 (ES profile, hardware), strictMatch true, glVersionsMapping false main: GLContext.setGLFuncAvail: Version verification (Int): String OpenGL ES 3.0 Mesa 9.2.3, Number(Int) 3.0.0 main: GLContext.setGLFuncAvail.X: FAIL, GL version mismatch (Int): 2.0 (ES profile, hardware) -> OpenGL ES 3.0 Mesa 9.2.3, 3.0.0 main: createImpl: setGLFunctionAvailability FAILED delete 0x7f5b9c67a440

No ES3 type bit set in EGLConfig, hence failed to create context:
EGLDrawableFactory.mapAvailableEGLESConfig: GLES3 ( 3 ), defaultSharedResourceSet false, mapsADeviceToDefaultDevice true (QUERY_EGL_ES_NATIVE_TK false, hasDesktopFactory true, isEGLGraphicsDevice true) EGLDrawableFactory.mapAvailableEGLESConfig() no pbuffer config available, detected !pbuffer config: false
Comment 5 Sven Gothel 2013-12-11 02:02:30 CET
Is this nig already filed w/ Mesa and/or it's AMD backend ?

May we say that desktop GL3 ctx is 'good enough' 
and hope on a Mesa/AMD fix ?

I would like that .. and close this issue for now,
i.e. users can still use GL2ES3, GL3ES3 .. etc ..

Please reopen, if you think we shall create a workaround for this issue.

Marked as ANNOTATION, since this is Mesa/AMD's bug!
Comment 6 Mark Raynsford 2013-12-11 13:49:09 CET
It's a bit of a pain, but if there's nothing we can do about it, then there's
nothing we can do!

I'll link the Mesa people to this bug so that they're aware there's a problem
Comment 7 Mark Raynsford 2013-12-11 16:47:29 CET
Issue filed with Mesa: