docs: update gl3.txt for ARB_vertex_type_2_10_10_10_rev
[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 1.30 (GL_EXT_gpu_shader4, etc.) started
16 Conditional rendering (GL_NV_conditional_render) DONE (swrast, softpipe, i965)
17 Map buffer subranges (GL_ARB_map_buffer_range) DONE
18 Clamping controls (GL_ARB_color_buffer_float) DONE
19 Float textures, renderbuffers (GL_ARB_texture_float) DONE (gallium r300)
20 GL_EXT_packed_float DONE (gallium r600)
21 GL_EXT_texture_shared_exponent DONE (gallium, swrast)
22 Float depth buffers (GL_ARB_depth_buffer_float) DONE
23 Framebuffer objects (GL_EXT_framebuffer_object) DONE
24 Half-float DONE
25 Multisample blit DONE
26 Non-normalized Integer texture/framebuffer formats ~50% done
27 1D/2D Texture arrays core Mesa, swrast done
28 Packed depth/stencil formats DONE
29 Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE
30 GL_EXT_texture_compression_rgtc DONE (swrast, gallium r600)
31 Red and red/green texture formats DONE (swrast, i965, gallium)
32 Transform feedback (GL_EXT_transform_feedback) ~50% done
33 glBindFragDataLocation, glGetFragDataLocation,
34 glBindBufferRange, glBindBufferBase commands
35 Vertex array objects (GL_APPLE_vertex_array_object) DONE
36 sRGB framebuffer format (GL_EXT_framebuffer_sRGB) core GL done (i965, gallium), GLX todo
37 glClearBuffer commands DONE
38 glGetStringi command DONE
39 glTexParameterI, glGetTexParameterI commands DONE
40 glVertexAttribI commands DONE (but converts int
41 values to floats)
42 Depth format cube textures 0% done
43 GLX_ARB_create_context (GLX 1.4 is required) not started
44
45
46 GL 3.1:
47
48 GLSL 1.40 not started
49 Instanced drawing (GL_ARB_draw_instanced) DONE (gallium, swrast)
50 Buffer copying (GL_ARB_copy_buffer) DONE
51 Primitive restart (GL_NV_primitive_restart) DONE (gallium)
52 16 vertex texture image units DONE
53 Texture buffer objs (GL_ARB_texture_buffer_object) not started
54 Rectangular textures (GL_ARB_texture_rectangle) DONE
55 Uniform buffer objs (GL_ARB_uniform_buffer_object) not started
56 Signed normalized textures (GL_EXT_texture_snorm) DONE (gallium)
57
58
59 GL 3.2:
60
61 Core/compatibility profiles not started
62 GLSL 1.50 not started
63 Geometry shaders (GL_ARB_geometry_shader4) partially done (Zack)
64 BGRA vertex order (GL_ARB_vertex_array_bgra) DONE
65 Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE
66 Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (swrast, gallium)
67 Provoking vertex (GL_ARB_provoking_vertex) DONE
68 Seamless cubemaps (GL_ARB_seamless_cube_map) DONE
69 Multisample textures (GL_ARB_texture_multisample) not started
70 Frag depth clamp (GL_ARB_depth_clamp) DONE
71 Fence objects (GL_ARB_sync) DONE
72 GLX_ARB_create_context_profile not started
73
74
75 GL 3.3:
76
77 GLSL 3.30 not started
78 GL_ARB_blend_func_extended not started
79 GL_ARB_explicit_attrib_location DONE (swrast, i915, i965)
80 GL_ARB_occlusion_query2 DONE (swrast, gallium)
81 GL_ARB_sampler_objects DONE (gallium)
82 GL_ARB_texture_rgb10_a2ui not started
83 GL_ARB_texture_swizzle DONE (same as EXT version)
84 GL_ARB_timer_query ~60% done (the EXT variant)
85 GL_ARB_instanced_arrays DONE (gallium)
86 GL_ARB_vertex_type_2_10_10_10_rev DONE (gallium)
87
88
89 GL 4.0:
90
91 GLSL 4.0 not started
92 GL_ARB_texture_query_lod not started
93 GL_ARB_draw_buffers_blend DONE (gallium softpipe)
94 GL_ARB_draw_indirect not started
95 GL_ARB_gpu_shader_fp64 not started
96 GL_ARB_sample_shading not started
97 GL_ARB_shader_subroutine not started
98 GL_ARB_tessellation_shader not started
99 GL_ARB_texture_buffer_object_rgb32 not started
100 GL_ARB_texture_cube_map_array not started
101 GL_ARB_texture_gather not started
102 GL_ARB_transform_feedback2 not started
103 GL_ARB_transform_feedback3 not started
104
105
106 GL 4.1:
107
108 GLSL 4.1 not started
109 GL_ARB_ES2_compatibility DONE (i965)
110 GL_ARB_get_program_binary not started
111 GL_ARB_separate_shader_objects some infrastructure done
112 GL_ARB_shader_precision not started
113 GL_ARB_vertex_attrib_64bit not started
114 GL_ARB_viewport_array not started
115
116
117 GL 4.2:
118 GLSL 4.2 not started
119 GL_ARB_texture_compression_bptc not started
120 GL_ARB_compressed_texture_pixel_storage not started
121 GL_ARB_shader_atomic_counters not started
122 GL_ARB_texture_storage not started
123 GL_ARB_transform_feedback_instanced not started
124 GL_ARB_base_instance not started
125 GL_ARB_shader_image_load_store not started
126 GL_ARB_conservative_depth DONE (compiler)
127 GL_ARB_shading_language_420pack not started
128 GL_ARB_internalformat_query not started
129 GL_ARB_map_buffer_alignment not started
130
131
132 More info about these features and the work involved can be found at
133 http://dri.freedesktop.org/wiki/MissingFunctionality