GL3.txt revision 3dab2b1795e9f9ff3584f612397d118459b12731
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 changes (GL_EXT_gpu_shader4, etc)                not started
16Conditional rendering (GL_NV_conditional_render)      DONE (swrast & softpipe)
17Map buffer subranges (GL_ARB_map_buffer_range)        DONE
18Float textures, renderbuffers                         some infrastructure done
19 (incl. GL_EXT_packed_float, GL_EXT_shared_exponent)
20Framebuffer objects (GL_EXT_framebuffer_object)       DONE
21Half-float                                            some infrastructure done
22Multisample blit                                      DONE
23Non-normalized Integer texture/framebuffer formats    ~50% done
241D/2D Texture arrays                                  core Mesa, swrast done
25Packed depth/stencil formats                          DONE
26Per-buffer blend and masks (GL_EXT_draw_buffers2)     DONE
27GL_EXT_texture_compression_rgtc                       not started
28Red and red/green texture formats                     DONE (swrast, i965, gallium)
29Transform feedback (GL_EXT_transform_feedback)        ~50% done
30   glBindFragDataLocation, glGetFragDataLocation,
31   glBindBufferRange, glBindBufferBase commands
32Vertex array objects (GL_APPLE_vertex_array_object)   DONE
33sRGB framebuffer format (GL_EXT_framebuffer_sRGB)     not started
34glClearBuffer commands                                DONE
35glGetStringi command                                  DONE
36glTexParameterI, glGetTexParameterI commands          DONE
37glVertexAttribI commands                              DONE (but converts int
38                                                            values to floats)
39
40
41GL 3.1:
42
43GLSL 1.30 and 1.40                                    not started
44Instanced drawing (GL_ARB_draw_instanced)             DONE (gallium, swrast)
45Buffer copying (GL_ARB_copy_buffer)                   DONE
46Primitive restart (GL_NV_primitive_restart)           DONE (gallium)
4716 vertex texture image units                         not started
48Texture buffer objs (GL_ARB_texture_buffer_object)    not started
49Rectangular textures (GL_ARB_texture_rectangle)       DONE
50Uniform buffer objs (GL_ARB_uniform_buffer_object)    not started
51Signed normalized texture formats                     ~50% done
52
53
54GL 3.2:
55
56Core/compatibility profiles                           not started
57GLSL 1.50                                             not started
58Geometry shaders (GL_ARB_geometry_shader4)            partially done (Zack)
59BGRA vertex order (GL_ARB_vertex_array_bgra)          DONE
60Base vertex offset(GL_ARB_draw_elements_base_vertex)  DONE
61Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (swrast, gallium)
62Provoking vertex (GL_ARB_provoking_vertex)            DONE
63Seamless cubemaps (GL_ARB_seamless_cube_map)          DONE, mostly?
64Multisample textures (GL_ARB_texture_multisample)     not started
65Frag depth clamp (GL_ARB_depth_clamp)                 DONE
66Fence objects (GL_ARB_sync)                           DONE
67
68
69GL 3.3:
70
71GLSL 3.30                                             not started
72GL_ARB_blend_func_extended                            not started
73GL_ARB_explicit_attrib_location                       DONE (swrast, i915, i965)
74GL_ARB_occlusion_query2                               DONE (swrast, gallium)
75GL_ARB_sampler_objects                                not started
76GL_ARB_texture_rgb10_a2ui                             not started
77GL_ARB_texture_swizzle                                DONE (same as EXT version)
78GL_ARB_timer_query                                    DONE (only Xlib sw driver)
79GL_ARB_instanced_arrays                               DONE (gallium)
80GL_ARB_vertex_type_2_10_10_10_rev                     not started
81
82
83GL 4.0:
84
85GLSL 4.0                                             not started
86GL_ARB_texture_query_lod                             not started
87GL_ARB_draw_buffers_blend                            not started
88GL_ARB_draw_indirect                                 not started
89GL_ARB_gpu_shader_fp64                               not started
90GL_ARB_sample_shading                                not started
91GL_ARB_shader_subroutine                             not started
92GL_ARB_tessellation_shader                           not started
93GL_ARB_texture_buffer_object_rgb32                   not started
94GL_ARB_texture_cube_map_array                        not started
95GL_ARB_texture_gather                                not started
96GL_ARB_transform_feedback2                           not started
97GL_ARB_transform_feedback3                           not started
98
99
100GL 4.1:
101
102GLSL 4.1                                             not started
103GL_ARB_ES2_compatibility                             not started
104GL_ARB_get_program_binary                            not started
105GL_ARB_separate_shader_objects                       some infrastructure done
106GL_ARB_shader_precision                              not started
107GL_ARB_vertex_attrib_64bit                           not started
108GL_ARB_viewport_array                                not started
109
110
111
112
113More info about these features and the work involved can be found at
114http://dri.freedesktop.org/wiki/MissingFunctionality
115