GL3.txt revision 9a2943ddf28eee417b692d9338b81aa89a51dea8
1
2Status of OpenGL 3.x features in Mesa
3
4
5Note: when an item is marked as "DONE" it means all the core Mesa
6infrastructure is complete but it may be the case that few (if any) drivers
7implement the features.
8
9
10Feature                                               Status
11----------------------------------------------------- ------------------------
12
13GL 3.0:
14
15GLSL 1.30                                             DONE
16glBindFragDataLocation, glGetFragDataLocation         DONE
17Conditional rendering (GL_NV_conditional_render)      DONE (i965, r300, r600, swrast)
18Map buffer subranges (GL_ARB_map_buffer_range)        DONE (i965, r300, r600, swrast)
19Clamping controls (GL_ARB_color_buffer_float)         DONE (i965, r300, r600)
20Float textures, renderbuffers (GL_ARB_texture_float)  DONE (i965, r300, r600)
21GL_EXT_packed_float                                   DONE (i965, r600)
22GL_EXT_texture_shared_exponent                        DONE (i965, r600, swrast)
23Float depth buffers (GL_ARB_depth_buffer_float)       DONE (i965, r600)
24Framebuffer objects (GL_ARB_framebuffer_object)       DONE (i965, r300, r600, swrast)
25Half-float                                            DONE
26Non-normalized Integer texture/framebuffer formats    DONE (i965)
271D/2D Texture arrays                                  DONE
28Per-buffer blend and masks (GL_EXT_draw_buffers2)     DONE (i965, r600, swrast)
29GL_EXT_texture_compression_rgtc                       DONE (i965, r300, r600, swrast)
30Red and red/green texture formats                     DONE (i965, swrast, gallium)
31Transform feedback (GL_EXT_transform_feedback)        DONE (i965)
32Vertex array objects (GL_APPLE_vertex_array_object)   DONE (i965, r300, r600, swrast)
33sRGB framebuffer format (GL_EXT_framebuffer_sRGB)     DONE (i965, r600)
34glClearBuffer commands                                DONE
35glGetStringi command                                  DONE
36glTexParameterI, glGetTexParameterI commands          DONE
37glVertexAttribI commands                              ~50% done (converts int
38                                                                 values to floats)
39Depth format cube textures                            DONE
40GLX_ARB_create_context (GLX 1.4 is required)          DONE
41
42
43GL 3.1:
44
45GLSL 1.40                                             needs UBOs (in progress)
46Forward compatibile context support/deprecations      not started
47Instanced drawing (GL_ARB_draw_instanced)             DONE (i965, gallium, swrast)
48Buffer copying (GL_ARB_copy_buffer)                   DONE (i965, r300, r600, swrast)
49Primitive restart (GL_NV_primitive_restart)           DONE (i965, r600)
5016 vertex texture image units                         DONE
51Texture buffer objs (GL_ARB_texture_buffer_object)    needs GL3.1 enabling (i965)
52Rectangular textures (GL_ARB_texture_rectangle)       DONE (i965, r300, r600, swrast)
53Uniform buffer objs (GL_ARB_uniform_buffer_object)    DONE (i965)
54Signed normalized textures (GL_EXT_texture_snorm)     DONE (i965, r300, r600)
55
56
57GL 3.2:
58
59Core/compatibility profiles                           not started
60GLSL 1.50                                             not started
61Geometry shaders (GL_ARB_geometry_shader4)            partially done (Zack)
62BGRA vertex order (GL_ARB_vertex_array_bgra)          DONE (i965, r300, r600, swrast)
63Base vertex offset(GL_ARB_draw_elements_base_vertex)  DONE (i965, r300, r600, swrast)
64Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (i965, r300, r600, swrast)
65Provoking vertex (GL_ARB_provoking_vertex)            DONE (i965, r300, r600, swrast)
66Seamless cubemaps (GL_ARB_seamless_cube_map)          DONE (i965, r600)
67Multisample textures (GL_ARB_texture_multisample)     not started
68Frag depth clamp (GL_ARB_depth_clamp)                 DONE (i965, r600, swrast)
69Fence objects (GL_ARB_sync)                           DONE (i965, r300, r600, swrast)
70GLX_ARB_create_context_profile                        DONE
71
72
73GL 3.3:
74
75GLSL 3.30                                             new features in this version pretty much done
76GL_ARB_blend_func_extended                            DONE (i965, r600, softpipe)
77GL_ARB_explicit_attrib_location                       DONE (i915, i965, r300, r600, swrast)
78GL_ARB_occlusion_query2                               DONE (i965, r300, r600, swrast)
79GL_ARB_sampler_objects                                DONE (i965, r300, r600)
80GL_ARB_shader_bit_encoding                            DONE
81GL_ARB_texture_rgb10_a2ui                             DONE (i965, r600)
82GL_ARB_texture_swizzle                                DONE (same as EXT version) (i965, r300, r600, swrast)
83GL_ARB_timer_query                                    DONE
84GL_ARB_instanced_arrays                               DONE (i965, r300, r600)
85GL_ARB_vertex_type_2_10_10_10_rev                     DONE (r600)
86
87
88GL 4.0:
89
90GLSL 4.0                                             not started
91GL_ARB_texture_query_lod                             not started
92GL_ARB_draw_buffers_blend                            DONE (i965, r600, softpipe)
93GL_ARB_draw_indirect                                 not started
94GL_ARB_gpu_shader5                                   not started
95GL_ARB_gpu_shader_fp64                               not started
96GL_ARB_sample_shading                                not started
97GL_ARB_shader_subroutine                             not started
98GL_ARB_tessellation_shader                           not started
99GL_ARB_texture_buffer_object_rgb32                   not started
100GL_ARB_texture_cube_map_array                        not started
101GL_ARB_texture_gather                                not started
102GL_ARB_transform_feedback2                           DONE
103GL_ARB_transform_feedback3                           DONE
104
105
106GL 4.1:
107
108GLSL 4.1                                             not started
109GL_ARB_ES2_compatibility                             DONE (i965, r300, r600)
110GL_ARB_get_program_binary                            not started
111GL_ARB_separate_shader_objects                       some infrastructure done
112GL_ARB_shader_precision                              not started
113GL_ARB_vertex_attrib_64bit                           not started
114GL_ARB_viewport_array                                not started
115
116
117GL 4.2:
118
119GLSL 4.2                                             not started
120GL_ARB_texture_compression_bptc                      not started
121GL_ARB_compressed_texture_pixel_storage              not started
122GL_ARB_shader_atomic_counters                        not started
123GL_ARB_texture_storage                               DONE (r300, r600, swrast)
124GL_ARB_transform_feedback_instanced                  DONE
125GL_ARB_base_instance                                 DONE (nv50, nvc0, r600, radeonsi)
126GL_ARB_shader_image_load_store                       not started
127GL_ARB_conservative_depth                            DONE (softpipe)
128GL_ARB_shading_language_420pack                      not started
129GL_ARB_internalformat_query                          not started
130GL_ARB_map_buffer_alignment                          not started
131
132
133GL 4.3:
134
135GLSL 4.3                                             not started
136ARB_arrays_of_arrays                                 not started
137ARB_ES3_compatibility                                not started
138ARB_clear_buffer_object                              not started
139ARB_compute_shader                                   started (gallium)
140ARB_copy_image                                       not started
141ARB_debug_group                                      not started
142ARB_debug_label                                      not started
143ARB_debug_output                                     DONE
144ARB_debug_output2                                    not started
145ARB_explicit_uniform_location                        not started
146ARB_fragment_layer_viewport                          not started
147ARB_framebuffer_no_attachments                       not started
148ARB_internalformat_query2                            not started
149ARB_invalidate_subdata                               not started
150ARB_multi_draw_indirect                              not started
151ARB_program_interface_query                          not started
152ARB_robust_buffer_access_behavior                    not started
153ARB_shader_image_size                                not started
154ARB_shader_storage_buffer_object                     not started
155ARB_stencil_texturing                                not started
156ARB_texture_buffer_range                             not started
157ARB_texture_query_levels                             not started
158ARB_texture_storage_multisample                      not started
159ARB_texture_view                                     not started
160ARB_vertex_attrib_binding                            not started
161
162
163More info about these features and the work involved can be found at
164http://dri.freedesktop.org/wiki/MissingFunctionality
165