[Development] Failed assertion in QSGBatchRenderer::ShaderManager::prepareMaterial()

Bojan Petrović bojan85 at gmail.com
Tue Feb 17 18:23:19 CET 2015


Here's what I get:

qt.scenegraph.info: Animation Driver: using vsync: 16.67 ms
> qt.scenegraph.info: texture atlas dimensions: 512x512
> qt.scenegraph.info: R/G/B/A Buffers:    8 8 8 8
> qt.scenegraph.info: Depth Buffer:       24
> qt.scenegraph.info: Stencil Buffer:     8
> qt.scenegraph.info: Samples:            0
> qt.scenegraph.info: GL_VENDOR:          ATI Technologies Inc.
> qt.scenegraph.info: GL_RENDERER:        AMD Radeon HD 7470M
> qt.scenegraph.info: GL_VERSION:         4.2.11399 Compatibility Profile
> Context
> qt.scenegraph.info: GL_EXTENSIONS:      GL_ARB_texture_multisample
> GL_ARB_occlus
> ion_query GL_EXT_texture_compression_bptc GL_ARB_instanced_arrays
> GL_ATI_draw_bu
> ffers GL_NV_primitive_restart GL_EXT_blend_subtract GL_EXT_bgra
> GL_EXT_separate_
> specular_color GL_ARB_map_buffer_alignment GL_ATI_texture_compression_3dc
> GL_ARB
> _shader_image_load_store GL_ARB_vertex_shader
> GL_ARB_explicit_attrib_location GL
> _EXT_blend_func_separate GL_ARB_shader_texture_lod GL_ARB_shadow
> GL_AMD_seamless
> _cubemap_per_texture GL_EXT_point_parameters GL_NV_blend_square
> GL_ARB_draw_buff
> ers GL_EXT_packed_float GL_AMDX_vertex_shader_tessellator
> GL_ARB_vertex_buffer_o
> bject GL_EXT_fog_coord GL_EXT_texture_edge_clamp
> GL_EXT_framebuffer_multisample
> GL_EXT_blend_color GL_ARB_conservative_depth GL_ARB_depth_texture
> GL_EXT_draw_in
> stanced GL_AMD_transform_feedback3_lines_triangles
> GL_EXT_pixel_buffer_object GL
> _ARB_fragment_program GL_EXT_texture_rectangle GL_SGIS_texture_edge_clamp
> GL_EXT
> _timer_query GL_ARB_shading_language_packing GL_ARB_framebuffer_object
> GL_EXT_ve
> rtex_array_bgra GL_AMD_multi_draw_indirect GL_EXT_abgr
> GL_ARB_texture_env_crossb
> ar GL_ARB_multisample GL_AMD_pinned_memory GL_ARB_framebuffer_sRGB
> GL_ARB_geomet
> ry_shader4 GL_ARB_texture_rectangle GL_ARB_internalformat_query
> GL_ARB_sync GL_A
> RB_fragment_program_shadow GL_ARB_separate_shader_objects
> GL_AMD_texture_texture
> 4 GL_ARB_shadow_ambient GL_EXT_texture_cube_map GL_EXT_texgen_reflection
> GL_EXT_
> texture_lod_bias GL_ARB_draw_buffers_blend GL_ARB_half_float_vertex
> GL_EXT_direc
> t_state_access GL_EXT_texture_compression_latc GL_ATI_separate_stencil
> GL_EXT_te
> xture_storage GL_ARB_viewport_array GL_ARB_base_instance
> GL_EXT_draw_range_eleme
> nts GL_AMD_performance_monitor GL_EXT_rescale_normal
> GL_SGIS_generate_mipmap GL_
> ARB_texture_non_power_of_two GL_ARB_texture_compression_rgtc
> GL_ARB_sample_shadi
> ng GL_ARB_blend_func_extended GL_EXT_blend_equation_separate
> GL_EXT_texture_swiz
> zle GL_ARB_texture_cube_map GL_ARB_copy_buffer
> GL_ARB_texture_mirrored_repeat GL
> _AMD_shader_stencil_export GL_EXT_bindable_uniform
> GL_AMD_vertex_shader_tessella
> tor GL_ARB_vertex_array_object GL_EXT_provoking_vertex
> GL_ARB_tessellation_shade
> r GL_AMD_name_gen_delete GL_AMD_sample_positions GL_ARB_color_buffer_float
> GL_EX
> T_texture_shared_exponent GL_EXT_vertex_attrib_64bit
> GL_ARB_compressed_texture_p
> ixel_storage GL_EXT_compiled_vertex_array GL_EXT_texture_env_dot3
> GL_EXT_histogr
> am GL_ARB_half_float_pixel GL_ARB_texture_rgb10_a2ui
> GL_ARB_texture_storage GL_A
> RB_texture_rg GL_ARB_map_buffer_range GL_ATI_meminfo
> GL_ARB_transform_feedback_i
> nstanced GL_ARB_transpose_matrix GL_ARB_shading_language_100
> WGL_EXT_swap_contro
> l GL_SUN_multi_draw_arrays GL_ARB_vertex_program GL_EXT_texture3D
> GL_NV_explicit
> _multisample GL_AMDX_debug_output GL_WIN_swap_hint
> GL_ARB_texture_cube_map_array
>  GL_EXT_multi_draw_arrays GL_ARB_timer_query GL_EXT_secondary_color
> GL_ATI_textu
> re_env_combine3 GL_ATI_envmap_bumpmap GL_AMD_draw_buffers_blend
> GL_EXT_texture_e
> nv_combine GL_ARB_point_sprite GL_ARB_texture_compression_bptc
> GL_ARB_pixel_buff
> er_object GL_ARB_vertex_attrib_64bit GL_ARB_shader_objects
> GL_EXT_packed_pixels
> GL_EXT_subtexture GL_ARB_shader_bit_encoding
> GL_ARB_draw_elements_base_vertex GL
> _ARB_texture_env_add GL_ARB_texture_env_combine GL_AMD_shader_trace
> GL_ARB_verte
> x_type_2_10_10_10_rev GL_EXT_framebuffer_sRGB
> GL_EXT_texture_filter_anisotropic
> GL_ARB_shading_language_420pack GL_SGIS_texture_lod
> GL_IBM_texture_mirrored_repe
> at GL_ATI_texture_mirror_once GL_ARB_point_parameters GL_EXT_gpu_shader4
> GL_ARB_
> depth_clamp GL_ARB_provoking_vertex GL_EXT_packed_depth_stencil
> GL_ARB_draw_indi
> rect GL_NV_half_float GL_ATI_fragment_shader GL_ARB_texture_env_dot3
> GL_EXT_text
> ure_compression_s3tc GL_EXT_copy_buffer GL_ARB_uniform_buffer_object
> GL_EXT_text
> ure_array GL_EXT_texture_env_add GL_ARB_fragment_shader
> GL_ARB_ES2_compatibility
>  GL_EXT_texture_lod GL_NV_copy_image GL_ARB_fragment_coord_conventions
> GL_EXT_gp
> u_program_parameters GL_ARB_vertex_array_bgra GL_ARB_shader_subroutine
> GL_ARB_tr
> ansform_feedback2 GL_EXT_geometry_shader4 GL_ARB_draw_instanced
> GL_ARB_get_progr
> am_binary GL_EXT_transform_feedback GL_EXT_copy_texture
> GL_EXT_vertex_array GL_A
> RB_window_pos GL_EXT_texture_snorm GL_NV_texture_barrier
> GL_ARB_texture_border_c
> lamp GL_ARB_transform_feedback3 GL_NV_conditional_render
> GL_EXT_shader_image_loa
> d_store GL_EXT_texture_integer GL_ARB_seamless_cube_map
> GL_ARB_texture_snorm GL_
> AMD_texture_cube_map_array GL_NV_texgen_reflection GL_ATI_texture_float
> GL_ARB_s
> hader_precision GL_ARB_imaging GL_ARB_texture_buffer_object
> GL_EXT_framebuffer_b
> lit GL_EXT_shadow_funcs GL_ARB_gpu_shader_fp64 GL_ARB_occlusion_query2
> GL_ARB_te
> xture_compression GL_AMD_depth_clamp_separate GL_EXT_texture_mirror_clamp
> GL_ARB
> _texture_float GL_NV_float_buffer GL_ARB_shader_atomic_counters
> GL_ARB_sampler_o
> bjects GL_EXT_stencil_wrap GL_NV_copy_depth_to_color GL_ARB_gpu_shader5
> GL_EXT_b
> lend_minmax GL_EXT_texture_buffer_object GL_EXT_texture_compression_rgtc
> GL_EXT_
> draw_buffers2 GL_ARB_texture_buffer_object_rgb32 GL_EXT_framebuffer_object
> GL_EX
> T_texture_object GL_AMD_debug_output GL_EXT_texture_sRGB
> GL_ARB_multitexture GL_
> ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_shader_stencil_export
> GL_KTX_
> buffer_region GL_ARB_depth_buffer_float GL_AMD_conservative_depth
> qt.scenegraph.info: Max Texture Size:  16384
> qt.scenegraph.info: texture atlas dimensions: 512x512
> qt.scenegraph.info: texture atlas dimensions: 512x512
> qt.scenegraph.info: texture atlas dimensions: 512x512


On 17 February 2015 at 20:21, Gunnar Sletta <gunnar at sletta.org> wrote:

> What is the output when you run with QSG_INFO=1 in the environment?
>
> cheers,
> Gunnar
>
> On 17 Feb 2015, at 13:07, Bojan Petrović <bojan85 at gmail.com> wrote:
>
> Hi Gunnar,
>
> It's the official dynamic build for VS 2013. I am working on a laptop
> with AMD Radeon HD 7470M card. Driver is 8.93-111205a-131054C (OpenGL
> version 6.14.10.11399).
>
> Bojan
>
> On 17 February 2015 at 16:56, Gunnar Sletta <gunnar at sletta.org> wrote:
>
>> The renderer will give that assertion if your OpenGL context isn’t
>> working correctly. For instance, if you compiled Qt with desktop gl, but
>> you don’t have up to date drivers. Though this should have been caught by
>> the error checking in the render loop already, so it is a bit puzzling.
>>
>> What kind of Qt build is this? dynamic, desktop GL, Angle? What kind of
>> driver / hardware?
>>
>> cheers,
>> Gunnar
>>
>>
>> On 17 Feb 2015, at 07:22, Bojan Petrović <bojan85 at gmail.com> wrote:
>>
>> Hi,
>>
>> I am using Qt 5.4 on Windows. I have encountered a failed assertion
>> in QSGBatchRenderer::ShaderManager::prepareMaterial(QSGMaterial *
>> material), line 158 C++. It happens when I start my application, but not
>> every time. This is the message I got in the console:
>>
>> uniform highp float _qt_zRange;
>>> void main()
>>> {
>>>     gl_Position = matrix * vertexCoord;
>>>     color = vertexColor * opacity;
>>>     gl_Position.z = (gl_Position.z * _qt_zRange + _qt_order) *
>>> gl_Position.w;
>>> }
>>> ***
>>> QOpenGLShader::compile(Fragment): Fragment shader failed to compile with
>>> the fol
>>> lowing errors:
>>> *** Problematic Fragment shader source code ***
>>> #define lowp
>>> #define mediump
>>> #define highp
>>> varying lowp vec4 color;
>>> void main()
>>> {
>>>     gl_FragColor = color;
>>> }
>>> ***
>>> ASSERT: "shader->id_zRange >= 0" in file
>>> scenegraph\coreapi\qsgbatchrenderer.cpp
>>> , line 158
>>
>>
>> Am I failing to respect some restriction or could this be a Qt bug?
>>
>> I created a debugger dump and I;m downloading Qt source now so I can see
>> it in debugger, but I am not familiar with that code so I doubt that I will
>> help me too much.
>>
>> Bojan
>> _______________________________________________
>> Development mailing list
>> Development at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/development
>>
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20150218/afeec6b7/attachment.html>


More information about the Development mailing list