X-Git-Url: https://git.sesse.net/?p=movit;a=blobdiff_plain;f=init.cpp;h=2bade83c782fbc1e7d2d152b6ff0b0004515f2bd;hp=55bddece75f74dc3a3a726a63e0cdd52baf454f7;hb=refs%2Fheads%2F1.3.x-release;hpb=f907b7bebd1085805d93124be5c16de29d3d63f7 diff --git a/init.cpp b/init.cpp index 55bddec..2bade83 100644 --- a/init.cpp +++ b/init.cpp @@ -18,7 +18,6 @@ float movit_texel_subpixel_precision; bool movit_srgb_textures_supported; bool movit_timer_queries_supported; int movit_num_wrongly_rounded; -bool movit_shader_rounding_supported; MovitShaderModel movit_shader_model; // The rules for objects with nontrivial constructors in static scope @@ -318,7 +317,6 @@ bool check_extensions() if (!epoxy_is_desktop_gl()) { if (epoxy_gl_version() >= 30) { movit_srgb_textures_supported = true; - movit_shader_rounding_supported = true; return true; } else { fprintf(stderr, "Movit system requirements: GLES version %.1f is too old (GLES 3.0 needed).\n", @@ -353,13 +351,6 @@ bool check_extensions() movit_srgb_textures_supported = (epoxy_gl_version() >= 21 || epoxy_has_gl_extension("GL_EXT_texture_sRGB")); - // We may want to use round() at the end of the final shader, - // if supported. We need either GLSL 1.30 or this extension to do that, - // and 1.30 brings with it other things that we don't want to demand - // for now. - movit_shader_rounding_supported = - (epoxy_gl_version() >= 30 || epoxy_has_gl_extension("GL_EXT_gpu_shader4")); - // The user can specify that they want a timing report for each // phase in an effect chain. However, that depends on this extension; // without it, we do cannot even create the query objects. @@ -388,7 +379,10 @@ double get_glsl_version() // Now we have something on the form X.YY. We convert it to a float, and hope // that if it's inexact (e.g. 1.30), atof() will round the same way the // compiler will. - float glsl_version = atof(glsl_version_str); + std::istringstream locale_convert(glsl_version_str); + locale_convert.imbue(std::locale("C")); + double glsl_version; + locale_convert >> glsl_version; free(glsl_version_str); return glsl_version;