Merge remote branch 'origin/master' into pipe-video
[mesa.git] / docs / GL3.txt
1
2 Status of OpenGL 3.x features in Mesa
3
4
5 Note: when an item is marked as "DONE" it means all the core Mesa
6 infrastructure is complete but it may be the case that few (if any) drivers
7 implement the features.
8
9
10 Feature Status
11 ----------------------------------------------------- ------------------------
12
13 GL 3.0:
14
15 GLSL changes (GL_EXT_gpu_shader4, etc) not started
16 Conditional rendering (GL_NV_conditional_render) DONE (swrast & softpipe)
17 Map buffer subranges (GL_ARB_map_buffer_range) DONE
18 Float textures, renderbuffers some infrastructure done
19 (incl. GL_EXT_packed_float, GL_EXT_shared_exponent)
20 Framebuffer objects (GL_EXT_framebuffer_object) DONE
21 Half-float some infrastructure done
22 Multisample blit DONE
23 Non-normalized Integer texture/framebuffer formats not started
24 1D/2D Texture arrays core Mesa, swrast done
25 Packed depth/stencil formats DONE
26 Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE
27 GL_EXT_texture_compression_rgtc not started
28 Red and red/green texture formats DONE (swrast, i965, gallium)
29 Transform feedback (GL_EXT_transform_feedback) ~50% done
30 glBindFragDataLocation, glGetFragDataLocation,
31 glBindBufferRange, glBindBufferBase commands
32 Vertex array objects (GL_APPLE_vertex_array_object) DONE
33 sRGB framebuffer format (GL_EXT_framebuffer_sRGB) not started
34 glClearBuffer commands DONE, except for dispatch
35 glGetStringi command DONE, except for dispatch
36 glTexParameterI, glGetTexParameterI commands DONE, except for dispatch
37 glVertexAttribI commands not started
38
39
40 GL 3.1:
41
42 GLSL 1.30 and 1.40 not started
43 Instanced drawing (GL_ARB_draw_instanced) ~50% done
44 Buffer copying (GL_ARB_copy_buffer) DONE
45 Primitive restart (GL_NV_primitive_restart) DONE (gallium)
46 16 vertex texture image units not started
47 Texture buffer objs (GL_ARB_texture_buffer_object) not started
48 Rectangular textures (GL_ARB_texture_rectangle) DONE
49 Uniform buffer objs (GL_ARB_uniform_buffer_object) not started
50 Signed normalized texture formats ~50% done
51
52
53 GL 3.2:
54
55 Core/compatibility profiles not started
56 GLSL 1.50 not started
57 Geometry shaders (GL_ARB_geometry_shader4) partially done (Zack)
58 BGRA vertex order (GL_ARB_vertex_array_bgra) DONE
59 Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE
60 Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (swrast, gallium)
61 Provoking vertex (GL_ARB_provoking_vertex) DONE
62 Seamless cubemaps (GL_ARB_seamless_cube_map) DONE, mostly?
63 Multisample textures (GL_ARB_texture_multisample) not started
64 Frag depth clamp (GL_ARB_depth_clamp) DONE
65 Fence objects (GL_ARB_sync) DONE
66
67
68 GL 3.3:
69
70 GLSL 3.30 not started
71 GL_ARB_blend_func_extended not started
72 GL_ARB_explicit_attrib_location DONE (swrast, i915, i965)
73 GL_ARB_occlusion_query2 not started
74 GL_ARB_sampler_objects not started
75 GL_ARB_texture_rgb10_a2ui not started
76 GL_ARB_texture_swizzle DONE (same as EXT version)
77 GL_ARB_timer_query DONE (only Xlib sw driver)
78 GL_ARB_instanced_arrays not started
79 GL_ARB_vertex_type_2_10_10_10_rev not started
80
81
82 GL 4.0:
83
84 GLSL 4.0 not started
85 GL_ARB_texture_query_lod not started
86 GL_ARB_draw_buffers_blend not started
87 GL_ARB_draw_indirect not started
88 GL_ARB_gpu_shader_fp64 not started
89 GL_ARB_sample_shading not started
90 GL_ARB_shader_subroutine not started
91 GL_ARB_tessellation_shader not started
92 GL_ARB_texture_buffer_object_rgb32 not started
93 GL_ARB_texture_cube_map_array not started
94 GL_ARB_texture_gather not started
95 GL_ARB_transform_feedback2 not started
96
97
98
99
100 More info about these features and the work involved can be found at
101 http://dri.freedesktop.org/wiki/MissingFunctionality