Re: Problem with X forwarding GL/Glut app
Re: Problem with X forwarding GL/Glut app
- Subject: Re: Problem with X forwarding GL/Glut app
- From: "Philip J. Schneider" <email@hidden>
- Date: Fri, 20 May 2011 08:13:37 -0700
Running a gl-using X program over ssh, or even setting the DISPLAY
variable to a non-local display, will often fail for programs that
are run and displayed locally.
There can be (at least?) two reasons for this:
1. The remote machine's GL version and/or its graphics card do not
support some particular GL command (usually an extension), and the
extension is being used without a proper check for its presence.
2. Some GL calls, for various other reasons, don't work correctly
across a network connection (failure of proper wrapping in X
protocol, etc.)
(My apologies to the "real" X and GL experts who might find my
terminology a little casual :-) )
Both of these can be hard to track down in any program of any size.
You can probably distinguish which case it is: if the failing program
works when run locally on the remote machine, then it's #1;
otherwise, it's case #2 (and also maybe case #1).
For case #1, I'd recommend gDEBugger, and set it to break on gl
errors. Your program may be "fixable" by adding an alternate code
path(s) for commands that aren't supported. GLEW (or any of its
alternatives) might be good to utilize here...
For case #2: I'm not sure if gDEBugger will be of any help, but you
could try it. Using GLEW to check for support might work, as well.
Alternatively, add in a check for gl errors after every gl command
(not a fun task in a very large program).
Hopefully, other folks might volunteer with better ideas...I've run
into either/both of these any number of times, and it's never been an
easy fix. GL across a network can't necessarily be assumed to work
the same as GL locally...
-- Philip
At 3:45 PM +0200 5/20/11, Laurens Timmermans wrote:
I am experiencing the same problem described here:
http://lists.apple.com/archives/X11-users/2010/Jan/msg00028.html
when I try to remotely run an application using X forwarding via SSH.
The remote side (running the application) is a Ubuntu 11.04 machine.
Some applications
run without problems (glxgears for example), but some quit immediately :
freeglut (./glapp): ERROR: Internal error <FBConfig with necessary
capabilities not found> in function fgOpenWindow
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 4 (X_DestroyWindow)
Resource id in failed request: 0x0
Serial number of failed request: 25
Current serial number in output stream: 28
What confuses me is where to look for the cause of this problem: is
it my macbook or the remote machine?
The following is the output of glxinfo (note that direct rendering
is automatically disabled):
name of display: localhost:10.0
Xlib: extension "NV-GLX" missing on display "localhost:10.0".
Xlib: extension "NV-GLX" missing on display "localhost:10.0".
display: localhost:10 screen: 0
direct rendering: No (If you want to find out why, try setting
LIBGL_DEBUG=verbose)
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_OML_swap_method,
GLX_SGI_make_current_read, GLX_SGIX_fbconfig, GLX_MESA_copy_sub_buffer
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_EXT_import_context, GLX_SGI_video_sync,
GLX_NV_swap_group, GLX_NV_video_out, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGI_swap_control, GLX_EXT_swap_control, GLX_ARB_create_context,
GLX_ARB_create_context_profile, GLX_NV_float_buffer,
GLX_ARB_fbconfig_float, GLX_EXT_fbconfig_packed_float,
GLX_EXT_texture_from_pixmap, GLX_EXT_framebuffer_sRGB,
GLX_NV_present_video, GLX_NV_copy_image, GLX_NV_multisample_coverage,
GLX_NV_video_capture, GLX_EXT_create_context_es2_profile,
GLX_ARB_create_context_robustness
GLX version: 1.2
GLX extensions:
GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_SGIX_fbconfig,
GLX_ARB_get_proc_address
OpenGL vendor string: Intel Inc.
OpenGL renderer string: Intel HD Graphics OpenGL Engine
OpenGL version string: 1.4 (2.1 APPLE-1.6.26)
OpenGL extensions:
GL_ARB_transpose_matrix, GL_ARB_vertex_program, GL_ARB_window_pos,
GL_EXT_multi_draw_arrays, GL_EXT_rescale_normal,
GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_NV_texgen_reflection,
GL_NV_light_max_exponent, GL_SGIS_generate_mipmap,
GL_ARB_point_parameters, GL_ARB_texture_env_crossbar,
GL_ARB_texture_border_clamp, GL_ARB_multitexture, GL_ARB_texture_env_add,
GL_ARB_texture_cube_map, GL_ARB_texture_env_dot3,
GL_ARB_texture_env_combine, GL_ARB_texture_compression,
GL_ARB_texture_mirrored_repeat, GL_ARB_shadow, GL_ARB_depth_texture,
GL_ARB_fragment_program, GL_ARB_fragment_program_shadow,
GL_ARB_occlusion_query, GL_ARB_point_sprite,
GL_ARB_texture_non_power_of_two, GL_ARB_draw_buffers,
GL_EXT_framebuffer_object, GL_EXT_texture_env_add, GL_EXT_blend_color,
GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_texture_lod_bias,
GL_EXT_abgr, GL_EXT_bgra, GL_EXT_stencil_wrap,
GL_EXT_separate_specular_color, GL_EXT_secondary_color,
GL_EXT_blend_func_separate, GL_EXT_shadow_funcs, GL_EXT_stencil_two_side,
GL_EXT_texture_compression_s3tc, GL_EXT_texture_compression_dxt1,
GL_EXT_blend_equation_separate, GL_NV_blend_square, GL_NV_fog_distance,
GL_SGIS_texture_lod
_______________________________________________
Do not post admin requests to the list. They will be ignored.
X11-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
X11-users mailing list (email@hidden)
This email sent to email@hidden