[vtk-developers] problem with multiple offscreen render windows

Kathleen S. Biagas biagas2 at llnl.gov
Fri Mar 30 16:18:41 EDT 2018


Hello,

I used the Offscreen Renderer example from here:
https://lorensen.github.io/VTKExamples/site/Cxx/Utilities/OffScreenRendering/

But I modified it for use with VTK-8 by removing the Factory logic that
sets up Mesa classes.

This works great.

However, when I duplicate all the code (probably more than is strictly
necessary) to create a second render window, then it segv's in a call to
XQueryExtension during vtkXOpenGLRenderWindow::PopContext.

If I comment out the logic that turns on OffScreen Rendering, then it
doesn't crash.

I compiled VTK-8.1 with gcc 6.2, qt 5.10.1, python 2.7.14, and system
GL.

This *should* work, shouldn't it?

I've attached the OffScreenRendering source code I used, as well as
output from a call to 'ReportCapabilities' on the vtkRenderWindow.

Kathleen








-------------- next part --------------
A non-text attachment was scrubbed...
Name: OffScreenRendering.cxx
Type: text/x-c++src
Size: 2957 bytes
Desc: not available
URL: <https://vtk.org/pipermail/vtk-developers/attachments/20180330/40782a4d/attachment-0001.cxx>
-------------- next part --------------
server glx vendor string:  NVIDIA Corporation                                                                 
server glx version string:  1.4                                                 
server glx extensions:  GLX_EXT_visual_info GLX_EXT_visual_rating GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control GLX_EXT_swap_control GLX_EXT_swap_control_tear GLX_EXT_texture_from_pixmap GLX_EXT_buffer_age GLX_ARB_create_context GLX_ARB_create_context_profile GLX_EXT_create_context_es_profile GLX_EXT_create_context_es2_profile GLX_ARB_create_context_robustness GLX_NV_delay_before_swap GLX_EXT_stereo_tree GLX_ARB_context_flush_control GLX_ARB_multisample GLX_NV_float_buffer GLX_ARB_fbconfig_float GLX_EXT_framebuffer_sRGB GLX_NV_multisample_coverage GLX_NV_copy_image                                        
client glx vendor string:  NVIDIA Corporation                                   
client glx version string:  1.4                                                 
glx extensions:  GLX_EXT_visual_info GLX_EXT_visual_rating GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control GLX_EXT_swap_control GLX_EXT_swap_control_tear GLX_EXT_texture_from_pixmap GLX_EXT_buffer_age GLX_ARB_create_context GLX_ARB_create_context_profile GLX_EXT_create_context_es_profile GLX_EXT_create_context_es2_profile GLX_ARB_create_context_robustness GLX_NV_delay_before_swap GLX_EXT_stereo_tree GLX_ARB_context_flush_control GLX_ARB_multisample GLX_NV_float_buffer GLX_ARB_fbconfig_float GLX_EXT_framebuffer_sRGB GLX_NV_multisample_coverage GLX_NV_copy_image GLX_ARB_get_proc_address                      
OpenGL vendor string:  NVIDIA Corporation                                       
OpenGL renderer string:  GeForce GT 520/PCIe/SSE2                               
OpenGL version string:  4.5.0 NVIDIA 349.16                                     
OpenGL extensions:                                                              
  GL_AMD_multi_draw_indirect                                                    
  GL_ARB_arrays_of_arrays                                                       
  GL_ARB_base_instance                                                          
  GL_ARB_blend_func_extended                                                    
  GL_ARB_buffer_storage                                                         
  GL_ARB_clear_buffer_object                                                    
  GL_ARB_clear_texture                                                          
  GL_ARB_clip_control                                                           
  GL_ARB_color_buffer_float                                                     
  GL_ARB_compressed_texture_pixel_storage                                       
  GL_ARB_conservative_depth                                                     
  GL_ARB_compute_shader                                                         
  GL_ARB_compute_variable_group_size                                            
  GL_ARB_conditional_render_inverted                                            
  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_indirect                                                          
  GL_ARB_draw_elements_base_vertex                                              
  GL_ARB_draw_instanced                                                         
  GL_ARB_enhanced_layouts                                                       
  GL_ARB_ES2_compatibility                                                      
  GL_ARB_ES3_compatibility                                                      
  GL_ARB_ES3_1_compatibility                                                    
  GL_ARB_explicit_attrib_location                                               
  GL_ARB_explicit_uniform_location                                              
  GL_ARB_fragment_coord_conventions                                             
  GL_ARB_fragment_layer_viewport                                                
  GL_ARB_fragment_program                                                       
  GL_ARB_fragment_program_shadow                                                
  GL_ARB_fragment_shader                                                        
  GL_ARB_framebuffer_no_attachments                                             
  GL_ARB_framebuffer_object                                                     
  GL_ARB_framebuffer_sRGB                                                       
  GL_ARB_geometry_shader4                                                       
  GL_ARB_get_program_binary                                                     
  GL_ARB_get_texture_sub_image                                                  
  GL_ARB_gpu_shader5                                                            
  GL_ARB_gpu_shader_fp64                                                        
  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_NV_internalformat_sample_query                                             
  GL_ARB_invalidate_subdata                                                     
  GL_ARB_map_buffer_alignment                                                   
  GL_ARB_map_buffer_range                                                       
  GL_ARB_multi_bind                                                             
  GL_ARB_multi_draw_indirect                                                    
  GL_ARB_multisample                                                            
  GL_ARB_multitexture                                                           
  GL_ARB_occlusion_query                                                        
  GL_ARB_occlusion_query2                                                       
  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_robust_buffer_access_behavior                                          
  GL_ARB_robustness                                                             
  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_draw_parameters                                                 
  GL_ARB_shader_group_vote                                                      
  GL_ARB_shader_image_load_store                                                
  GL_ARB_shader_image_size                                                      
  GL_ARB_shader_objects                                                         
  GL_ARB_shader_precision                                                       
  GL_ARB_query_buffer_object                                                    
  GL_ARB_shader_storage_buffer_object                                           
  GL_ARB_shader_subroutine                                                      
  GL_ARB_shader_texture_image_samples                                           
  GL_ARB_shader_texture_lod                                                     
  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_object_rgb32                                            
  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_add                                                        
  GL_ARB_texture_env_combine                                                    
  GL_ARB_texture_env_crossbar                                                   
  GL_ARB_texture_env_dot3                                                       
  GL_ARB_texture_float                                                          
  GL_ARB_texture_gather                                                         
  GL_ARB_texture_mirror_clamp_to_edge                                           
  GL_ARB_texture_mirrored_repeat                                                
  GL_ARB_texture_multisample                                                    
  GL_ARB_texture_non_power_of_two                                               
  GL_ARB_texture_query_levels                                                   
  GL_ARB_texture_query_lod                                                      
  GL_ARB_texture_rectangle                                                      
  GL_ARB_texture_rg                                                             
  GL_ARB_texture_rgb10_a2ui                                                     
  GL_ARB_texture_stencil8                                                       
  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_transform_feedback_overflow_query                                      
  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                                                  
  GL_ARB_vertex_buffer_object                                                   
  GL_ARB_vertex_program                                                         
  GL_ARB_vertex_shader                                                          
  GL_ARB_vertex_type_10f_11f_11f_rev                                            
  GL_ARB_vertex_type_2_10_10_10_rev                                             
  GL_ARB_viewport_array                                                         
  GL_ARB_window_pos                                                             
  GL_ATI_draw_buffers                                                           
  GL_ATI_texture_float                                                          
  GL_ATI_texture_mirror_once                                                    
  GL_S3_s3tc                                                                    
  GL_EXT_texture_env_add                                                        
  GL_EXT_abgr                                                                   
  GL_EXT_bgra                                                                   
  GL_EXT_bindable_uniform                                                       
  GL_EXT_blend_color                                                            
  GL_EXT_blend_equation_separate                                                
  GL_EXT_blend_func_separate                                                    
  GL_EXT_blend_minmax                                                           
  GL_EXT_blend_subtract                                                         
  GL_EXT_compiled_vertex_array                                                  
  GL_EXT_Cg_shader                                                              
  GL_EXT_depth_bounds_test                                                      
  GL_EXT_direct_state_access                                                    
  GL_EXT_draw_buffers2                                                          
  GL_EXT_draw_instanced                                                         
  GL_EXT_draw_range_elements                                                    
  GL_EXT_fog_coord                                                              
  GL_EXT_framebuffer_blit                                                       
  GL_EXT_framebuffer_multisample                                                
  GL_EXTX_framebuffer_mixed_formats                                             
  GL_EXT_framebuffer_multisample_blit_scaled                                    
  GL_EXT_framebuffer_object                                                     
  GL_EXT_framebuffer_sRGB                                                       
  GL_EXT_geometry_shader4                                                       
  GL_EXT_gpu_program_parameters                                                 
  GL_EXT_gpu_shader4                                                            
  GL_EXT_multi_draw_arrays                                                      
  GL_EXT_packed_depth_stencil                                                   
  GL_EXT_packed_float                                                           
  GL_EXT_packed_pixels                                                          
  GL_EXT_pixel_buffer_object                                                    
  GL_EXT_point_parameters                                                       
  GL_EXT_polygon_offset_clamp                                                   
  GL_EXT_provoking_vertex                                                       
  GL_EXT_rescale_normal                                                         
  GL_EXT_secondary_color                                                        
  GL_EXT_separate_shader_objects                                                
  GL_EXT_separate_specular_color                                                
  GL_EXT_shader_image_load_store                                                
  GL_EXT_shader_integer_mix                                                     
  GL_EXT_shadow_funcs                                                           
  GL_EXT_stencil_two_side                                                       
  GL_EXT_stencil_wrap                                                           
  GL_EXT_texture3D                                                              
  GL_EXT_texture_array                                                          
  GL_EXT_texture_buffer_object                                                  
  GL_EXT_texture_compression_dxt1                                               
  GL_EXT_texture_compression_latc                                               
  GL_EXT_texture_compression_rgtc                                               
  GL_EXT_texture_compression_s3tc                                               
  GL_EXT_texture_cube_map                                                       
  GL_EXT_texture_edge_clamp                                                     
  GL_EXT_texture_env_combine                                                    
  GL_EXT_texture_env_dot3                                                       
  GL_EXT_texture_filter_anisotropic                                             
  GL_EXT_texture_integer                                                        
  GL_EXT_texture_lod                                                            
  GL_EXT_texture_lod_bias                                                       
  GL_EXT_texture_mirror_clamp                                                   
  GL_EXT_texture_object                                                         
  GL_EXT_texture_shared_exponent                                                
  GL_EXT_texture_sRGB                                                           
  GL_EXT_texture_sRGB_decode                                                    
  GL_EXT_texture_storage                                                        
  GL_EXT_texture_swizzle                                                        
  GL_EXT_timer_query                                                            
  GL_EXT_transform_feedback2                                                    
  GL_EXT_vertex_array                                                           
  GL_EXT_vertex_array_bgra                                                      
  GL_EXT_vertex_attrib_64bit                                                    
  GL_EXT_x11_sync_object                                                        
  GL_EXT_import_sync_object                                                     
  GL_IBM_rasterpos_clip                                                         
  GL_IBM_texture_mirrored_repeat                                                
  GL_KHR_context_flush_control                                                  
  GL_KHR_debug                                                                  
  GL_KHR_robust_buffer_access_behavior                                          
  GL_KHR_robustness                                                             
  GL_KTX_buffer_region                                                          
  GL_NV_bindless_multi_draw_indirect                                            
  GL_NV_bindless_multi_draw_indirect_count                                      
  GL_NV_blend_equation_advanced                                                 
  GL_NV_blend_square                                                            
  GL_NV_command_list                                                            
  GL_NV_compute_program5                                                        
  GL_NV_conditional_render                                                      
  GL_NV_copy_depth_to_color                                                     
  GL_NV_copy_image                                                              
  GL_NV_depth_buffer_float                                                      
  GL_NV_depth_clamp                                                             
  GL_NV_draw_texture                                                            
  GL_NV_ES1_1_compatibility                                                     
  GL_NV_ES3_1_compatibility                                                     
  GL_NV_explicit_multisample                                                    
  GL_NV_fence                                                                   
  GL_NV_float_buffer                                                            
  GL_NV_fog_distance                                                            
  GL_NV_fragment_program                                                        
  GL_NV_fragment_program_option                                                 
  GL_NV_fragment_program2                                                       
  GL_NV_framebuffer_multisample_coverage                                        
  GL_NV_geometry_shader4                                                        
  GL_NV_gpu_program4                                                            
  GL_NV_gpu_program4_1                                                          
  GL_NV_gpu_program5                                                            
  GL_NV_gpu_program5_mem_extended                                               
  GL_NV_gpu_program_fp64                                                        
  GL_NV_gpu_shader5                                                             
  GL_NV_half_float                                                              
  GL_NV_light_max_exponent                                                      
  GL_NV_multisample_coverage                                                    
  GL_NV_multisample_filter_hint                                                 
  GL_NV_occlusion_query                                                         
  GL_NV_packed_depth_stencil                                                    
  GL_NV_parameter_buffer_object                                                 
  GL_NV_parameter_buffer_object2                                                
  GL_NV_path_rendering                                                          
  GL_NV_pixel_data_range                                                        
  GL_NV_point_sprite                                                            
  GL_NV_primitive_restart
  GL_NV_register_combiners
  GL_NV_register_combiners2
  GL_NV_shader_atomic_counters
  GL_NV_shader_atomic_float
  GL_NV_shader_buffer_load
  GL_NV_shader_storage_buffer_object
  GL_NV_texgen_reflection
  GL_NV_texture_barrier
  GL_NV_texture_compression_vtc
  GL_NV_texture_env_combine4
  GL_NV_texture_multisample
  GL_NV_texture_rectangle
  GL_NV_texture_shader
  GL_NV_texture_shader2
  GL_NV_texture_shader3
  GL_NV_transform_feedback
  GL_NV_transform_feedback2
  GL_NV_uniform_buffer_unified_memory
  GL_NV_vdpau_interop
  GL_NV_vertex_array_range
  GL_NV_vertex_array_range2
  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_NVX_conditional_render
  GL_NVX_gpu_memory_info
  GL_NV_shader_thread_group
  GL_KHR_blend_equation_advanced
  GL_SGIS_generate_mipmap
  GL_SGIS_texture_lod
  GL_SGIX_depth_texture
  GL_SGIX_shadow
  GL_SUN_slice_accum
X Extensions:  Generic Event Extension, SHAPE, MIT-SHM, XInputExtension, XTEST, BIG-REQUESTS, SYNC, XKEYBOARD, XC-MISC, SECURITY, XFIXES, RENDER, RANDR, XINERAMA, Composite, DAMAGE, MIT-SCREEN-SAVER, DOUBLE-BUFFER, RECORD, DPMS, Present, X-Resource, XVideo, XFree86-VidModeExtension, XFree86-DGA, DRI2, GLX, NV-GLX, NV-CONTROL, XINERAMA



More information about the vtk-developers mailing list