Virgl renderer GLES3 on GLES3 -- missing extensions |
||||||
Issue descriptionWe're trying to run GLES3 (guest) on GLES3 (virglrenderer) for debugging purposes. To get a GLES context instead of a GL context, replace SDL_GL_CONTEXT_PROFILE_CORE with SDL_GL_CONTEXT_PROFILE_ES in ui/sdl2-gl.c and rebuild QEMU. We can't get a GLES3 guest context. To verify, try to run any GLES3 dEQP test. Here are the missing extensions, obtained by putting a breakpoint in compute_version_es2 in Mesa: (gdb) p extensions->EXT_texture_array $10 = 0 '\000' (gdb) p extensions->EXT_transform_feedback $12 = 0 '\000' (gdb) p extensions->ARB_uniform_buffer_object $14 = 0 '\000' (gdb) p extensions->OES_depth_texture_cube_map $16 = 0 '\000' (gdb) p extensions->NV_primitive_restart $17 = 0 '\000' (gdb) p extensions->OES_depth_texture_cube_map $18 = 0 '\000 Enjoy..!
,
Mar 31 2018
,
Apr 2 2018
Hello, We have a hack to select the context type (GL or GLES) at runtime. You can found it in our gitlab [1]. I'm planning to upstream this functionality in some better way. On our subject, GLES3 on GLES3, Jakob is currently working on it. This imply some work on mesa master too. Elie [1] https://gitlab.collabora.com/virgl-es/qemu/tree/gles-option
,
Apr 2 2018
,
Apr 2 2018
Okay, it sounds like Collabora is already looking the GLES3 on GLES3 situation and QEMU integration. Let me close this bug ...
,
Apr 2 2018
Actually, let's not close it since it's not fixed.
,
Apr 3 2018
Yeah I'm looking into this. The tricky part here is those extensions are desktop extensions and might require more features then what the GLES extension or version exposes. For example 'EXT_framebuffer_sRGB' requires you to be able to toggle sRGB conversion on and off. While the GLES version it's bound to the rendererbuffer format. Cheers, Jakob.
,
Apr 3 2018
I have sent out a patch to enable GL_ARB_uniform_buffer_object which brings the list of missing extensions down to four: GL_EXT_draw_buffers2 GL_EXT_framebuffer_sRGB GL_EXT_transform_feedback GL_OES_depth_texture_cube_map GL_EXT_framebuffer_sRGB seems impossible to fully support. I'm trying to figure out what from GL_EXT_draw_buffers2 is actually needed for GLES 3.0, I can't see any of the new functions in that extension that is exposed in GLES 3.x.
,
Apr 3 2018
Looks like I got my list from a old version of Mesa and GL_EXT_draw_buffers2 has been moved to GLES 3.2 where it belongs. That leaves: GL_EXT_framebuffer_sRGB GL_EXT_transform_feedback GL_OES_depth_texture_cube_map
,
Sep 6
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by gurcheta...@chromium.org
, Mar 31 2018