Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Qt QML Windows : UI skew issue in certain systems



  • Hi,

    We developed a Windows application using Qt5.11.2 using QML for UI. We are using MinGW compiler. We observe a UI skew issue and corruption issue at certain times in certain systems. The UI corruption is not persistent and it paints back correctly when we move the mouse. Unfortunately, I am not allowed to share a picture of the distorted UI.

    The issue is observed in systems with the following Intel Graphics drivers:
    Intel(R) HD Graphics 530
    Driver version: 26.20.100.7263

    Intel(R) HD Graphics 630
    4.6.0 - Build 26.20.100.7263

    Intel(R) UHD Graphics 620
    Driver version: 26.20.100.6888

    The issue is not reproducible in systems with below graphics configuration:
    Intel(R) HD Graphics 4400
    Driver version: 20.19.15.4531

    Could you please let me know if this is a known issue? Also, are there any workarounds for this?

    For reference, below is the rendering log from the application:

    qt.scenegraph.general: threaded render loop
    qt.scenegraph.general: Using sg animation driver
    qt.scenegraph.general: Animation Driver: using vsync: 16.67 ms
    qt.qpa.fonts: Unable to open default EUDC font: "EUDC.TTE"
    qt.scenegraph.general: Using sg animation driver
    qt.scenegraph.general: Animation Driver: using vsync: 16.67 ms
    qt.scenegraph.general: texture atlas dimensions: 2048x1024
    qt.scenegraph.general: R/G/B/A Buffers: 8 8 8 8
    qt.scenegraph.general: Depth Buffer: 24
    qt.scenegraph.general: Stencil Buffer: 8
    qt.scenegraph.general: Samples: 0
    qt.scenegraph.general: GL_VENDOR: Intel
    qt.scenegraph.general: GL_RENDERER: Intel(R) HD Graphics 630
    qt.scenegraph.general: GL_VERSION: 4.6.0 - Build 26.20.100.7263
    qt.scenegraph.general: GL_EXTENSIONS: GL_EXT_transform_feedback GL_ARB_fragment_shader GL_KHR_context_flush_control GL_ARB_get_texture_sub_image GL_ARB_shader_image_load_store GL_EXT_geometry_shader4 GL_ARB_fragment_program GL_ARB_draw_indirect GL_ARB_shader_atomic_counter_ops GL_ARB_conservative_depth GL_EXT_gpu_shader4 GL_ARB_shader_draw_parameters GL_ARB_shadow GL_ARB_shader_stencil_export GL_ARB_transpose_matrix GL_EXT_stencil_wrap GL_ARB_draw_instanced GL_EXT_packed_pixels GL_SGIS_texture_edge_clamp GL_ARB_tessellation_shader GL_ARB_texture_swizzle GL_EXT_texture_edge_clamp GL_ATI_separate_stencil GL_SUN_multi_draw_arrays GL_ARB_internalformat_query GL_ARB_buffer_storage GL_EXT_texture_lod_bias GL_ARB_occlusion_query GL_EXT_clip_volume_hint GL_NV_conditional_render GL_ARB_spirv_extensions GL_KHR_texture_compression_astc_hdr GL_EXT_texture_swizzle GL_EXT_blend_color GL_ARB_vertex_program GL_EXT_direct_state_access GL_SGIS_texture_lod GL_ARB_internalformat_query2 GL_ARB_debug_output GL_ARB_ES2_compatibility GL_EXT_texture3D GL_ARB_transform_feedback3 GL_ARB_vertex_array_bgra GL_ARB_fragment_program_shadow GL_ARB_gl_spirv GL_ARB_cull_distance GL_ARB_ES3_1_compatibility GL_ARB_texture_rg GL_ARB_vertex_attrib_64bit GL_ARB_texture_storage_multisample GL_EXT_gpu_program_parameters GL_ARB_shader_atomic_counters GL_ARB_texture_buffer_object GL_ARB_copy_buffer GL_EXT_secondary_color GL_ARB_texture_cube_map GL_ARB_compressed_texture_pixel_storage GL_ARB_framebuffer_no_attachments GL_ARB_transform_feedback_overflow_query GL_EXT_texture_sRGB_decode GL_ARB_shading_language_100 GL_ARB_timer_query GL_ARB_robustness_isolation GL_ARB_shader_storage_buffer_object GL_ARB_arrays_of_arrays GL_ARB_transform_feedback2 GL_ARB_texture_query_lod GL_ARB_cl_event GL_ARB_texture_compression GL_ARB_color_buffer_float GL_ARB_texture_view GL_EXT_abgr GL_ARB_multisample GL_IBM_texture_mirrored_repeat GL_ARB_gpu_shader5 GL_ARB_multi_draw_indirect GL_ARB_transform_feedback_instanced GL_EXT_shader_framebuffer_fetch GL_ARB_fragment_layer_viewport GL_EXT_texture_sRGB GL_ARB_half_float_pixel GL_ARB_texture_buffer_range GL_ARB_occlusion_query2 GL_ARB_texture_mirrored_repeat GL_ARB_framebuffer_sRGB GL_ARB_copy_image GL_ARB_shading_language_packing GL_ARB_vertex_shader GL_ARB_draw_buffers_blend GL_ARB_geometry_shader4 GL_EXT_multi_draw_arrays GL_EXT_texture_env_add GL_ARB_sync GL_ARB_pipeline_statistics_query GL_ARB_framebuffer_object GL_ARB_instanced_arrays GL_ARB_sample_shading GL_ARB_base_instance GL_SGIS_generate_mipmap GL_ARB_separate_shader_objects GL_ARB_shading_language_420pack GL_ARB_derivative_control GL_ARB_texture_non_power_of_two GL_EXT_texture_rectangle GL_ARB_multitexture GL_ARB_stencil_texturing GL_ARB_compute_shader GL_ARB_vertex_buffer_object GL_EXT_framebuffer_object GL_ARB_direct_state_access GL_EXT_texture_integer GL_KHR_no_error GL_ARB_texture_multisample GL_ARB_texture_cube_map_array GL_ARB_depth_texture GL_ARB_texture_mirror_clamp_to_edge GL_INTEL_conservative_rasterization GL_EXT_packed_float GL_ARB_uniform_buffer_object GL_NV_primitive_restart GL_ARB_shader_precision GL_ARB_texture_buffer_object_rgb32 GL_EXT_framebuffer_multisample GL_ARB_multi_bind GL_ARB_shader_bit_encoding GL_ARB_vertex_array_object GL_ARB_depth_buffer_float GL_EXT_texture_array GL_EXT_blend_equation_separate GL_ARB_texture_storage GL_INTEL_map_texture GL_ARB_post_depth_coverage GL_ARB_clear_buffer_object GL_ARB_depth_clamp GL_EXT_texture_storage GL_NV_blend_square GL_ARB_clear_texture GL_ARB_program_interface_query GL_EXT_stencil_two_side GL_ARB_fragment_shader_interlock GL_EXT_separate_specular_color GL_EXT_texture_env_combine GL_INTEL_fragment_shader_ordering GL_ARB_texture_env_add GL_EXT_rescale_normal GL_EXT_shadow_funcs GL_INTEL_multi_rate_fragment_shader GL_ARB_texture_rgb10_a2ui GL_ARB_explicit_attrib_location GL_ARB_window_pos GL_ARB_seamless_cube_map GL_ARB_texture_filter_anisotropic GL_EXT_texture_filter_anisotropic GL_ARB_enhanced_layouts GL_ARB_texture_env_combine GL_ARB_seamless_cubemap_per_texture GL_ARB_shader_objects WGL_EXT_swap_control GL_ARB_shader_texture_image_samples GL_ARB_texture_compression_bptc GL_ARB_gpu_shader_fp64 GL_ARB_indirect_parameters GL_EXT_polygon_offset_clamp GL_KHR_debug GL_EXT_compiled_vertex_array GL_EXT_texture_shared_exponent GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_polygon_offset_clamp GL_AMD_depth_clamp_separate GL_ARB_texture_gather GL_EXT_packed_depth_stencil GL_ARB_invalidate_subdata GL_ARB_blend_func_extended GL_EXT_blend_subtract GL_NV_texgen_reflection GL_EXT_bgra GL_ARB_texture_float GL_EXT_texture_compression_s3tc GL_AMD_vertex_shader_layer GL_AMD_vertex_shader_viewport_index GL_EXT_framebuffer_blit GL_INTEL_framebuffer_CMAA GL_ARB_texture_barrier GL_ARB_sampler_objects GL_ARB_half_float_vertex GL_ARB_draw_buffers GL_EXT_draw_buffers2 GL_ARB_texture_rectangle GL_KHR_blend_equation_advanced_coherent GL_ARB_texture_stencil8 GL_ARB_query_buffer_object GL_EXT_shader_integer_mix GL_ARB_get_program_binary GL_ARB_robust_buffer_access_behavior GL_ARB_texture_env_crossbar GL_3DFX_texture_compression_FXT1 GL_ARB_shader_subroutine GL_ARB_provoking_vertex GL_ARB_robustness GL_ARB_vertex_type_10f_11f_11f_rev GL_ARB_viewport_array GL_KHR_texture_compression_astc_ldr GL_ARB_map_buffer_range GL_ARB_bindless_texture GL_EXT_fog_coord GL_ARB_compatibility GL_ARB_point_parameters GL_ARB_texture_border_clamp GL_ARB_pixel_buffer_object GL_EXT_timer_query GL_ARB_clip_control GL_ARB_map_buffer_alignment GL_ARB_draw_elements_base_vertex GL_EXT_texture_snorm GL_KHR_blend_equation_advanced GL_ARB_conditional_render_inverted GL_INTEL_performance_query GL_EXT_draw_range_elements GL_ARB_shader_group_vote GL_ARB_ES3_compatibility GL_ARB_fragment_coord_conventions GL_ARB_shader_image_size GL_EXT_blend_func_separate GL_ARB_texture_query_levels GL_ARB_vertex_attrib_binding GL_ARB_texture_compression_rgtc GL_WIN_swap_hint GL_ARB_explicit_uniform_location GL_ARB_point_sprite GL_ARB_texture_env_dot3 GL_EXT_blend_minmax



  • The issue is not reproducible when we use Mesa llvmpipe software rasterizer, by setting QT_OPENGL environment variable as "software".


Log in to reply