[Mesa-dev] [PATCH 7/8] Float fbconfigs frontend patch [1/2] Float configs extension strings.
Ian Romanick
idr at freedesktop.org
Mon Jul 15 13:33:12 PDT 2013
On 07/15/2013 07:28 AM, Tomasz Lis wrote:
> From: Tomasz Lis <tomasz.lis at intel.com>
>
> The patch defines fbconfig_float in tables of extensions and enables
> reporting the extension availability.
Since this patch enables the functionality, it should come after the
patch that implements the functionality.
> Signed-off-by: Tomasz Lis <listom at gmail.com>
> ---
> src/glx/glxextensions.c | 4 ++++
> src/glx/glxextensions.h | 6 +++++-
> 2 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/src/glx/glxextensions.c b/src/glx/glxextensions.c
> index caa6d99..27c6017 100644
> --- a/src/glx/glxextensions.c
> +++ b/src/glx/glxextensions.c
> @@ -74,6 +74,7 @@ static const struct extension_info known_glx_extensions[] = {
> { GLX(ARB_create_context), VER(0,0), Y, N, N, N },
> { GLX(ARB_create_context_profile), VER(0,0), Y, N, N, N },
> { GLX(ARB_create_context_robustness), VER(0,0), Y, N, N, N },
> + { GLX(ARB_fbconfig_float), VER(1,3), Y, N, Y, N },
None of these extensions are required for GLX 1.3. This should be VER(0,0).
> { GLX(ARB_framebuffer_sRGB), VER(0,0), Y, Y, N, N },
> { GLX(ARB_get_proc_address), VER(1,4), Y, N, Y, N },
> { GLX(ARB_multisample), VER(1,4), Y, Y, N, N },
> @@ -82,6 +83,7 @@ static const struct extension_info known_glx_extensions[] = {
> { GLX(EXT_visual_info), VER(0,0), Y, Y, N, N },
> { GLX(EXT_visual_rating), VER(0,0), Y, Y, N, N },
> { GLX(EXT_framebuffer_sRGB), VER(0,0), Y, Y, N, N },
> + { GLX(EXT_fbconfig_packed_float), VER(1,3), Y, N, Y, N },
> { GLX(EXT_create_context_es2_profile), VER(0,0), Y, N, N, Y },
> { GLX(MESA_copy_sub_buffer), VER(0,0), Y, N, N, N },
> { GLX(MESA_multithread_makecurrent),VER(0,0), Y, N, Y, N },
> @@ -132,6 +134,7 @@ static const struct extension_info known_gl_extensions[] = {
> { GL(ARB_vertex_buffer_object), VER(1,5), N, N, N, N },
> { GL(ARB_vertex_program), VER(0,0), Y, N, N, N },
> { GL(ARB_window_pos), VER(1,4), Y, N, N, N },
> + { GL(ARB_color_buffer_float), VER(3,0), Y, Y, Y, N },
Even though this is part of OpenGL 3.0, there is nothing else in libGL
to support indirect rendering for OpenGL 3.0. I would leave this as
VER(0,0).
It's also not alphabetized in the list.
Is there any code needed to support this functionality for indirect
rendering?
> { GL(EXT_abgr), VER(0,0), Y, N, N, N },
> { GL(EXT_bgra), VER(1,2), Y, N, N, N },
> { GL(EXT_blend_color), VER(1,4), Y, N, N, N },
> @@ -155,6 +158,7 @@ static const struct extension_info known_gl_extensions[] = {
> { GL(EXT_multi_draw_arrays), VER(1,4), Y, N, Y, N },
> { GL(EXT_packed_depth_stencil), VER(0,0), Y, N, N, N },
> { GL(EXT_packed_pixels), VER(1,2), Y, N, N, N },
> + { GL(EXT_packed_float), VER(1,1), Y, N, N, N },
The VER here is wrong too.
Same question about implementation.
Have you tested either one of these for indirect rendering?
> { GL(EXT_paletted_texture), VER(0,0), Y, N, N, N },
> { GL(EXT_pixel_buffer_object), VER(0,0), N, N, N, N },
> { GL(EXT_point_parameters), VER(1,4), Y, N, N, N },
> diff --git a/src/glx/glxextensions.h b/src/glx/glxextensions.h
> index 3c5d407..7d2bf96 100644
> --- a/src/glx/glxextensions.h
> +++ b/src/glx/glxextensions.h
> @@ -36,6 +36,7 @@ enum
> ARB_create_context_bit = 0,
> ARB_create_context_profile_bit,
> ARB_create_context_robustness_bit,
> + ARB_fbconfig_float_bit,
> ARB_get_proc_address_bit,
> ARB_multisample_bit,
> ATI_pixel_format_float_bit,
> @@ -43,6 +44,7 @@ enum
> EXT_visual_rating_bit,
> EXT_import_context_bit,
> EXT_framebuffer_sRGB_bit,
> + EXT_fbconfig_packed_float_bit,
> EXT_create_context_es2_profile_bit,
> MESA_copy_sub_buffer_bit,
> MESA_depth_float_bit,
> @@ -72,7 +74,8 @@ enum
>
> enum
> {
> - GL_ARB_depth_texture_bit = 0,
> + GL_ARB_color_buffer_float_bit = 0,
> + GL_ARB_depth_texture_bit,
> GL_ARB_draw_buffers_bit,
> GL_ARB_fragment_program_bit,
> GL_ARB_fragment_program_shadow_bit,
> @@ -122,6 +125,7 @@ enum
> GL_EXT_framebuffer_sRGB_bit,
> GL_EXT_multi_draw_arrays_bit,
> GL_EXT_packed_depth_stencil_bit,
> + GL_EXT_packed_float_bit,
> GL_EXT_packed_pixels_bit,
> GL_EXT_paletted_texture_bit,
> GL_EXT_pixel_buffer_object_bit,
>
More information about the mesa-dev
mailing list