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

Bojan Petrović bojan85 at gmail.com
Thu Feb 19 03:29:48 CET 2015


Should I open a bug report?

On 18 February 2015 at 00:23, Bojan Petrović <bojan85 at gmail.com> wrote:

> 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/20150219/f2f05d5d/attachment.html>


More information about the Development mailing list