Skip to content

Commit

Permalink
cpp: added some more OpenGL extensions that BoxedWine can support
Browse files Browse the repository at this point in the history
  • Loading branch information
danoon2 committed Oct 24, 2019
1 parent 893b092 commit 8e5295c
Show file tree
Hide file tree
Showing 3 changed files with 99 additions and 2 deletions.
6 changes: 6 additions & 0 deletions changeLog.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Next Release

* fixed Browse button in BoxedWine UI to show Folder chooser instead of File chooser when installing by coping a directory
* fixed issue in BoxedWine UI where the install option for a setup file didn't work if the path had a space in it.
* 64-bit Windows installer will now default to the correct Programe Files to install to.
* Added about 30 more supported extensions to OpenGL.
14 changes: 12 additions & 2 deletions source/opengl/glcommon.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -149,11 +149,21 @@ void glcommon_glGetString(CPU* cpu) {
}
index = STRING_GL_EXTENSIONS;
if (ext[0]==0) {
std::vector<std::string> hardwareExt;
std::vector<std::string> supportedExt;
stringSplit(hardwareExt, result, ' ');
for (U32 i=0;i<sizeof(extentions)/sizeof(char*);i++) {
if (strstr(result, extentions[i]) && (!glExt || strstr(glExt, extentions[i]))) {
supportedExt.push_back(extentions[i]);
}
for (U32 i=0;i<hardwareExt.size();i++) {
if (std::find(supportedExt.begin(), supportedExt.end(), hardwareExt[i]) == supportedExt.end()) {
continue;
}

if (!glExt || strstr(glExt, hardwareExt[i].c_str())) {
if (ext[0]!=0)
strcat(ext, " ");
strcat(ext, extentions[i]);
strcat(ext, hardwareExt[i].c_str());
}
}
}
Expand Down
81 changes: 81 additions & 0 deletions source/opengl/glfunctions_ext_def.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
"GL_APPLE_vertex_array_range",
"GL_APPLE_vertex_program_evaluators",
"GL_ARB_ES2_compatibility",
"GL_ARB_ES3_compatibility",
"GL_ARB_ES3_1_compatibility",
"GL_ARB_ES3_2_compatibility",
"GL_ARB_base_instance",
Expand All @@ -33,29 +34,44 @@
"GL_ARB_color_buffer_float",
"GL_ARB_compute_shader",
"GL_ARB_compute_variable_group_size",
"GL_ARB_conservative_depth,"
"GL_ARB_copy_buffer",
"GL_ARB_copy_image",
"GL_ARB_cull_distance",
"GL_ARB_debug_output",
"GL_ARB_depth_buffer_float",
"GL_ARB_depth_clamp",
"GL_ARB_depth_texture",
"GL_ARB_derivative_control",
"GL_ARB_direct_state_access",
"GL_ARB_draw_buffers",
"GL_ARB_draw_buffers_blend",
"GL_ARB_draw_elements_base_vertex",
"GL_ARB_draw_indirect",
"GL_ARB_draw_instanced",
"GL_ARB_explicit_attrib_location",
"GL_ARB_fragment_coord_conventions",
"GL_ARB_fragment_layer_viewport",
"GL_ARB_fragment_program",
"GL_ARB_fragment_shader",
"GL_ARB_framebuffer_no_attachments",
"GL_ARB_framebuffer_object",
"GL_ARB_framebuffer_sRGB",
"GL_ARB_geometry_shader4",
"GL_ARB_gpu_shader5",
"GL_ARB_get_program_binary",
"GL_ARB_get_texture_sub_image",
"GL_ARB_gpu_shader_fp64",
"GL_ARB_gpu_shader_int64",
"GL_ARB_half_float_pixel",
"GL_ARB_half_float_vertex",
"GL_ARB_imaging",
"GL_ARB_indirect_parameters",
"GL_ARB_instanced_arrays",
"GL_ARB_internalformat_query",
"GL_ARB_internalformat_query2",
"GL_ARB_invalidate_subdata",
"GL_ARB_map_buffer_alignment",
"GL_ARB_map_buffer_range",
"GL_ARB_matrix_palette",
"GL_ARB_multi_bind",
Expand All @@ -64,38 +80,72 @@
"GL_ARB_multitexture",
"GL_ARB_occlusion_query",
"GL_ARB_parallel_shader_compile",
"GL_ARB_pipeline_statistics_query",
"GL_ARB_pixel_buffer_object",
"GL_ARB_point_parameters",
"GL_ARB_point_sprite",
"GL_ARB_program_interface_query",
"GL_ARB_provoking_vertex",
"GL_ARB_query_buffer_object",
"GL_ARB_robustness",
"GL_ARB_sample_locations",
"GL_ARB_sample_shading",
"GL_ARB_sampler_objects",
"GL_ARB_seamless_cube_map",
"GL_ARB_separate_shader_objects",
"GL_ARB_shader_atomic_counters",
"GL_ARB_shader_bit_encoding",
"GL_ARB_shader_image_load_store",
"GL_ARB_shader_image_size",
"GL_ARB_shader_objects",
"GL_ARB_shader_storage_buffer_object",
"GL_ARB_shader_subroutine",
"GL_ARB_shader_texture_image_samples",
"GL_ARB_shader_texture_lod",
"GL_ARB_shader_viewport_layer_array",
"GL_ARB_shading_language_100",
"GL_ARB_shading_language_420pack",
"GL_ARB_shading_language_include",
"GL_ARB_shading_language_packing",
"GL_ARB_shadow",
"GL_ARB_sparse_buffer",
"GL_ARB_sparse_texture",
"GL_ARB_stencil_texturing",
"GL_ARB_sync",
"GL_ARB_tessellation_shader",
"GL_ARB_texture_barrier",
"GL_ARB_texture_border_clamp",
"GL_ARB_texture_buffer_object",
"GL_ARB_texture_buffer_range",
"GL_ARB_texture_compression",
"GL_ARB_texture_compression_bptc",
"GL_ARB_texture_compression_rgtc",
"GL_ARB_texture_cube_map",
"GL_ARB_texture_cube_map_array",
"GL_ARB_texture_env_combine",
"GL_ARB_texture_env_dot3",
"GL_ARB_texture_filter_anisotropic",
"GL_ARB_texture_float",
"GL_ARB_texture_gather",
"GL_ARB_texture_mirrored_repeat",
"GL_ARB_texture_mirror_clamp_to_edge",
"GL_ARB_texture_multisample",
"GL_ARB_texture_non_power_of_two",
"GL_ARB_texture_query_levels",
"GL_ARB_texture_rectangle",
"GL_ARB_texture_rg",
"GL_ARB_texture_rgb10_a2ui",
"GL_ARB_texture_storage",
"GL_ARB_texture_storage_multisample",
"GL_ARB_texture_swizzle",
"GL_ARB_texture_view",
"GL_ARB_timer_query",
"GL_ARB_transform_feedback2",
"GL_ARB_transform_feedback3",
"GL_ARB_transform_feedback_instanced",
"GL_ARB_transpose_matrix",
"GL_ARB_uniform_buffer_object",
"GL_ARB_vertex_array_bgra",
"GL_ARB_vertex_array_object",
"GL_ARB_vertex_attrib_64bit",
"GL_ARB_vertex_attrib_binding",
Expand All @@ -113,6 +163,9 @@
"GL_ATI_map_object_buffer",
"GL_ATI_pn_triangles",
"GL_ATI_separate_stencil",
"GL_ATI_texture_compression_3dc",
"GL_ATI_texture_env_combine3",
"GL_ATI_texture_mirror_once",
"GL_ATI_vertex_array_object",
"GL_ATI_vertex_attrib_array_object",
"GL_ATI_vertex_streams",
Expand All @@ -121,6 +174,7 @@
"GL_EXT_blend_equation_separate",
"GL_EXT_blend_func_separate",
"GL_EXT_blend_minmax",
"GL_EXT_blend_subtract",
"GL_EXT_color_subtable",
"GL_EXT_compiled_vertex_array",
"GL_EXT_convolution",
Expand All @@ -147,6 +201,8 @@
"GL_EXT_light_texture",
"GL_EXT_multi_draw_arrays",
"GL_EXT_multisample",
"GL_EXT_packed_depth_stencil",
"GL_EXT_packed_float",
"GL_EXT_paletted_texture",
"GL_EXT_pixel_transform",
"GL_EXT_point_parameters",
Expand All @@ -159,16 +215,29 @@
"GL_EXT_shader_image_load_store",
"GL_EXT_stencil_clear_tag",
"GL_EXT_stencil_two_side",
"GL_EXT_stencil_wrap",
"GL_EXT_subtexture",
"GL_EXT_texture3D",
"GL_EXT_texture_array",
"GL_EXT_texture_buffer_object",
"GL_EXT_texture_compression_rgtc",
"GL_EXT_texture_compression_s3tc",
"GL_EXT_texture_env_combine",
"GL_EXT_texture_env_dot3",
"GL_EXT_texture_filter_anisotropic",
"GL_EXT_texture_integer",
"GL_EXT_texture_lod_bias",
"GL_EXT_texture_mirror_clamp",
"GL_EXT_texture_object",
"GL_EXT_texture_perturb_normal",
"GL_EXT_texture_shared_exponent",
"GL_EXT_texture_snorm",
"GL_EXT_texture_sRGB",
"GL_EXT_texture_sRGB_decode",
"GL_EXT_timer_query",
"GL_EXT_transform_feedback",
"GL_EXT_vertex_array",
"GL_EXT_vertex_array_bgra",
"GL_EXT_vertex_attrib_64bit",
"GL_EXT_vertex_shader",
"GL_EXT_vertex_weighting",
Expand Down Expand Up @@ -205,15 +274,19 @@
"GL_NV_evaluators",
"GL_NV_explicit_multisample",
"GL_NV_fence",
"GL_NV_fog_distance",
"GL_NV_fragment_coverage_to_color",
"GL_NV_fragment_program",
"GL_NV_fragment_program2",
"GL_NV_fragment_program_option",
"GL_NV_framebuffer_mixed_samples",
"GL_NV_framebuffer_multisample_coverage",
"GL_NV_geometry_program4",
"GL_NV_gpu_program4",
"GL_NV_gpu_program5",
"GL_NV_half_float",
"GL_NV_internalformat_sample_query",
"GL_NV_light_max_exponent",
"GL_NV_occlusion_query",
"GL_NV_parameter_buffer_object",
"GL_NV_path_rendering",
Expand All @@ -225,15 +298,23 @@
"GL_NV_register_combiners2",
"GL_NV_sample_locations",
"GL_NV_shader_buffer_load",
"GL_NV_texgen_reflection",
"GL_NV_texture_barrier",
"GL_NV_texture_env_combine4",
"GL_NV_texture_multisample",
"GL_NV_texture_shader",
"GL_NV_texture_shader2",
"GL_NV_transform_feedback",
"GL_NV_transform_feedback2",
"GL_NV_vdpau_interop",
"GL_NV_vertex_array_range",
"GL_NV_vertex_attrib_integer_64bit",
"GL_NV_vertex_buffer_unified_memory",
"GL_NV_vertex_program",
"GL_NV_vertex_program1_1",
"GL_NV_vertex_program2",
"GL_NV_vertex_program2_option",
"GL_NV_vertex_program3",
"GL_NV_vertex_program4",
"GL_NV_video_capture",
"GL_OES_byte_coordinates",
Expand Down

0 comments on commit 8e5295c

Please sign in to comment.