Update master list of GL extensions our code currently handles

* This list includes all extensions that we support all the entry points,
  tokens, etc for. It still needs to be unioned with the extensions that
  the implementation supports to determine what to return to the program.
* A couple of extensions are a little hazy as we implement everything in
  them that 'modern' GL includes, but the extension itself also specifies
  some old/outdated functions. Any extensions that are entirely old
  functions are omitted from this list.
This commit is contained in:
baldurk
2014-12-20 19:54:48 +00:00
parent 3e9c178c8b
commit 7f133d4b33
+118 -47
View File
@@ -330,62 +330,133 @@ WrappedOpenGL::WrappedOpenGL(const char *logfile, const GLHookSet &funcs)
{
if(RenderDoc::Inst().GetCrashHandler())
RenderDoc::Inst().GetCrashHandler()->RegisterMemoryRegion(this, sizeof(WrappedOpenGL));
glExts.push_back("GL_ARB_multitexture");
glExts.push_back("GL_ARB_arrays_of_arrays");
glExts.push_back("GL_ARB_base_instance");
glExts.push_back("GL_ARB_blend_func_extended");
glExts.push_back("GL_ARB_buffer_storage");
glExts.push_back("GL_ARB_clear_buffer_object");
glExts.push_back("GL_ARB_clear_texture");
glExts.push_back("GL_ARB_color_buffer_float");
glExts.push_back("GL_ARB_compute_shader");
glExts.push_back("GL_ARB_conservative_depth");
glExts.push_back("GL_ARB_copy_buffer");
glExts.push_back("GL_ARB_copy_image");
glExts.push_back("GL_ARB_debug_output");
glExts.push_back("GL_EXT_direct_state_access");
glExts.push_back("GL_ARB_depth_buffer_float");
glExts.push_back("GL_ARB_depth_clamp");
glExts.push_back("GL_ARB_depth_texture");
glExts.push_back("GL_ARB_draw_buffers");
glExts.push_back("GL_ARB_draw_buffers_blend");
glExts.push_back("GL_ARB_draw_elements_base_vertex");
glExts.push_back("GL_ARB_draw_indirect");
glExts.push_back("GL_ARB_draw_instanced");
glExts.push_back("GL_ARB_enhanced_layouts");
glExts.push_back("GL_ARB_ES2_compatibility");
glExts.push_back("GL_ARB_ES3_1_compatibility");
glExts.push_back("GL_ARB_ES3_compatibility");
glExts.push_back("GL_ARB_explicit_attrib_location");
glExts.push_back("GL_ARB_explicit_uniform_location");
glExts.push_back("GL_ARB_fragment_coord_conventions");
glExts.push_back("GL_ARB_fragment_layer_viewport");
glExts.push_back("GL_ARB_framebuffer_no_attachments");
glExts.push_back("GL_ARB_framebuffer_object");
glExts.push_back("GL_ARB_framebuffer_sRGB");
glExts.push_back("GL_ARB_get_program_binary");
glExts.push_back("GL_ARB_gpu_shader_fp64");
glExts.push_back("GL_ARB_gpu_shader5");
glExts.push_back("GL_ARB_half_float_pixel");
glExts.push_back("GL_ARB_half_float_vertex");
glExts.push_back("GL_ARB_indirect_parameters");
glExts.push_back("GL_ARB_internalformat_query");
glExts.push_back("GL_ARB_internalformat_query2");
glExts.push_back("GL_ARB_ES2_compatibility");
glExts.push_back("GL_ARB_ES3_compatibility");
glExts.push_back("GL_EXT_texture_filter_anisotropic");
glExts.push_back("GL_EXT_texture_sRGB_decode");
glExts.push_back("GL_EXT_texture_compression_s3tc");
glExts.push_back("GL_ARB_clear_buffer_object");
glExts.push_back("GL_ARB_vertex_attrib_binding");
glExts.push_back("GL_ARB_shader_storage_buffer_object");
glExts.push_back("GL_ARB_invalidate_subdata");
glExts.push_back("GL_ARB_framebuffer_no_attachments");
glExts.push_back("GL_ARB_shader_image_size");
glExts.push_back("GL_ARB_arrays_of_arrays");
glExts.push_back("GL_ARB_program_interface_query");
glExts.push_back("GL_ARB_multi_draw_indirect");
glExts.push_back("GL_ARB_compute_shader");
glExts.push_back("GL_ARB_explicit_uniform_location");
glExts.push_back("GL_ARB_texture_buffer_range");
glExts.push_back("GL_ARB_copy_image");
glExts.push_back("GL_ARB_texture_query_levels");
glExts.push_back("GL_ARB_texture_view");
glExts.push_back("GL_ARB_fragment_layer_viewport");
glExts.push_back("GL_ARB_buffer_storage");
glExts.push_back("GL_ARB_clear_texture");
glExts.push_back("GL_ARB_shader_group_vote");
glExts.push_back("GL_ARB_indirect_parameters");
glExts.push_back("GL_ARB_query_buffer_object");
glExts.push_back("GL_EXT_texture_mirror_clamp");
glExts.push_back("GL_ARB_seamless_cubemap_per_texture");
glExts.push_back("GL_ARB_multi_bind");
glExts.push_back("GL_KHR_debug");
glExts.push_back("GL_EXT_depth_bounds_test");
glExts.push_back("GL_EXT_pixel_buffer_object");
glExts.push_back("GL_ARB_pixel_buffer_object");
glExts.push_back("GL_ARB_sync");
glExts.push_back("GL_ARB_timer_query");
glExts.push_back("GL_EXT_timer_query");
glExts.push_back("GL_ARB_framebuffer_object");
glExts.push_back("GL_EXT_framebuffer_object");
glExts.push_back("GL_EXT_framebuffer_blit");
glExts.push_back("GL_ARB_texture_multisample");
glExts.push_back("GL_ARB_texture_compression");
glExts.push_back("GL_ARB_sampler_objects");
glExts.push_back("GL_ARB_map_buffer_range");
glExts.push_back("GL_ARB_draw_elements_base_vertex");
glExts.push_back("GL_ARB_get_program_binary");
glExts.push_back("GL_ARB_uniform_buffer_object");
glExts.push_back("GL_ARB_multi_bind");
glExts.push_back("GL_ARB_multi_draw_indirect");
glExts.push_back("GL_ARB_multisample");
glExts.push_back("GL_ARB_multitexture");
glExts.push_back("GL_ARB_occlusion_query");
glExts.push_back("GL_ARB_occlusion_query2");
glExts.push_back("GL_ARB_pixel_buffer_object");
glExts.push_back("GL_ARB_point_parameters");
glExts.push_back("GL_ARB_point_sprite");
glExts.push_back("GL_ARB_program_interface_query");
glExts.push_back("GL_ARB_provoking_vertex");
glExts.push_back("GL_ARB_query_buffer_object");
glExts.push_back("GL_ARB_robust_buffer_access_behavior");
glExts.push_back("GL_ARB_robustness");
glExts.push_back("GL_ARB_sample_shading");
glExts.push_back("GL_ARB_sampler_objects");
glExts.push_back("GL_ARB_seamless_cube_map");
glExts.push_back("GL_ARB_seamless_cubemap_per_texture");
glExts.push_back("GL_ARB_separate_shader_objects");
glExts.push_back("GL_ARB_shader_atomic_counters");
glExts.push_back("GL_ARB_shader_bit_encoding");
glExts.push_back("GL_ARB_shader_draw_parameters");
glExts.push_back("GL_ARB_shader_group_vote");
glExts.push_back("GL_ARB_shader_image_load_store");
glExts.push_back("GL_ARB_shader_image_size");
glExts.push_back("GL_ARB_shader_precision");
glExts.push_back("GL_ARB_shader_storage_buffer_object");
glExts.push_back("GL_ARB_shader_subroutine");
glExts.push_back("GL_ARB_shader_texture_lod");
glExts.push_back("GL_ARB_shading_language_100");
glExts.push_back("GL_ARB_shading_language_420pack");
glExts.push_back("GL_ARB_shading_language_packing");
glExts.push_back("GL_ARB_shadow");
glExts.push_back("GL_ARB_stencil_texturing");
glExts.push_back("GL_ARB_sync");
glExts.push_back("GL_ARB_tessellation_shader");
glExts.push_back("GL_ARB_texture_border_clamp");
glExts.push_back("GL_ARB_texture_buffer_object");
glExts.push_back("GL_ARB_texture_buffer_object_rgb32");
glExts.push_back("GL_ARB_texture_buffer_range");
glExts.push_back("GL_ARB_texture_compression");
glExts.push_back("GL_ARB_texture_compression_bptc");
glExts.push_back("GL_ARB_texture_compression_rgtc");
glExts.push_back("GL_ARB_texture_cube_map");
glExts.push_back("GL_ARB_texture_cube_map_array");
glExts.push_back("GL_ARB_texture_float");
glExts.push_back("GL_ARB_texture_gather");
glExts.push_back("GL_ARB_texture_mirror_clamp_to_edge");
glExts.push_back("GL_ARB_texture_mirrored_repeat");
glExts.push_back("GL_ARB_texture_multisample");
glExts.push_back("GL_ARB_texture_non_power_of_two");
glExts.push_back("GL_ARB_texture_query_levels");
glExts.push_back("GL_ARB_texture_query_lod");
glExts.push_back("GL_ARB_texture_rectangle");
glExts.push_back("GL_ARB_texture_rg");
glExts.push_back("GL_ARB_texture_rgb10_a2ui");
glExts.push_back("GL_ARB_texture_stencil8");
glExts.push_back("GL_ARB_texture_storage");
glExts.push_back("GL_ARB_texture_storage_multisample");
glExts.push_back("GL_ARB_texture_swizzle");
glExts.push_back("GL_ARB_texture_view");
glExts.push_back("GL_ARB_timer_query");
glExts.push_back("GL_ARB_transform_feedback_instanced");
glExts.push_back("GL_ARB_transform_feedback2");
glExts.push_back("GL_ARB_transform_feedback3");
glExts.push_back("GL_ARB_uniform_buffer_object");
glExts.push_back("GL_ARB_vertex_array_bgra");
glExts.push_back("GL_ARB_vertex_array_object");
glExts.push_back("GL_ARB_vertex_attrib_64bit");
glExts.push_back("GL_ARB_vertex_attrib_binding");
glExts.push_back("GL_ARB_vertex_buffer_object");
glExts.push_back("GL_ARB_vertex_program");
glExts.push_back("GL_ARB_vertex_type_10f_11f_11f_rev");
glExts.push_back("GL_ARB_vertex_type_2_10_10_10_rev");
glExts.push_back("GL_EXT_depth_bounds_test");
glExts.push_back("GL_EXT_direct_state_access");
glExts.push_back("GL_EXT_framebuffer_blit");
glExts.push_back("GL_EXT_framebuffer_object");
glExts.push_back("GL_EXT_pixel_buffer_object");
glExts.push_back("GL_EXT_texture_compression_s3tc");
glExts.push_back("GL_EXT_texture_filter_anisotropic");
glExts.push_back("GL_EXT_texture_mirror_clamp");
glExts.push_back("GL_EXT_texture_sRGB_decode");
glExts.push_back("GL_EXT_timer_query");
glExts.push_back("GL_KHR_debug");
#if !defined(_RELEASE)
CaptureOptions &opts = (CaptureOptions &)RenderDoc::Inst().GetCaptureOptions();