Bug 1793 - glxgears in Xorg trunk does not operate smoothly with Solaris's OpenGL 1.3 implementation
Summary: glxgears in Xorg trunk does not operate smoothly with Solaris's OpenGL 1.3 im...
Status: RESOLVED NOTABUG
Alias: None
Product: xorg
Classification: Unclassified
Component: App/other (show other bugs)
Version: git
Hardware: SPARC Solaris
: high critical
Assignee: Xorg Project Team
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-07 19:18 UTC by Roland Mainz
Modified: 2005-10-21 22:52 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Roland Mainz 2004-11-07 19:18:30 UTC
glxgears 2004-11-08-trunk jumps with Solaris OpenGL 1.3 implementation and is
pretty much unuseable, the gears move forth and back and are far far away from
rotating smoothly... ;-(

Same problem can be observed with other GL applications on the same kind of
hardware (m64) - on the same machine with Linux+Mesa (indirect rendering) almost
smooth operation can be reached.

Sounds pretty much like a problem in Sun's OpenGL implementation.

glxinfo output:
-- snip --
% (DISPLAY=:0.0 LD_LIBRARY_PATH=$PWD/../../exports/lib/ ./glxinfo)
name of display: :0.0
display: :0  screen: 0
direct rendering: No
server glx vendor string: Sun Microsystems, Inc.
server glx version string: 1.4 Sun OpenGL 1.3 patch 113886-20 for Solaris
server glx extensions:
    GLX_SUN_get_transparent_index, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 
    GLX_SGI_make_current_read, GLX_ARB_multisample, GLX_EXT_visual_info
client glx vendor string: SGI
client glx version string: 1.4
client glx extensions:
    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context, 
    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory, 
    GLX_MESA_swap_control, GLX_MESA_swap_frame_usage, GLX_OML_swap_method, 
    GLX_OML_sync_control, GLX_SGI_make_current_read, GLX_SGI_swap_control, 
    GLX_SGI_video_sync, GLX_SGIS_multisample, GLX_SGIX_fbconfig, 
    GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group
GLX extensions:
    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context, 
    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGI_make_current_read, 
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer
OpenGL vendor string: Sun Microsystems, Inc.
OpenGL renderer string: SUNWm64 mmap software renderer, VIS
OpenGL version string: 1.2 (1.3 Sun OpenGL 1.3 patch 113886-20 for Solaris)
OpenGL extensions:
    GL_ARB_imaging, GL_ARB_multitexture, GL_ARB_point_parameters, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_cube_map, 
    GL_ARB_texture_env_add, GL_ARB_texture_env_combine, 
    GL_ARB_texture_env_dot3, GL_ARB_transpose_matrix, GL_EXT_abgr, 
    GL_EXT_blend_color, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, 
    GL_EXT_blend_subtract, GL_EXT_draw_range_elements, 
    GL_EXT_multi_draw_arrays, GL_EXT_point_parameters, GL_EXT_polygon_offset, 
    GL_EXT_rescale_normal, GL_EXT_texture3D, GL_EXT_texture_env_add, 
    GL_EXT_texture_env_combine, GL_EXT_texture_filter_anisotropic, 
    GL_HP_convolution_border_modes, GL_SGIS_texture_border_clamp, 
    GL_SGIX_texture_lod_bias, GL_SGIX_texture_scale_bias, 
    GL_SUN_convolution_border_modes, GL_SUN_multi_draw_arrays
glu version: 1.3 Sun OpenGL 1.3 for Solaris
glu extensions:
    GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess

   visual  x  bf lv rg d st colorbuffer ax dp st accumbuffer  ms  cav
 id dep cl sp sz l  ci b ro  r  g  b  a bf th cl  r  g  b  a ns b eat
----------------------------------------------------------------------
0x23  8 pc  1  0  0 c  .  .  0  0  0  0  0  0  0  0  0  0  0  0 0 None
0x24  8 sc  1  0  0 c  .  .  0  0  0  0  0  0  0  0  0  0  0  0 0 None
0x25  8 sg  1  0  0 c  .  .  0  0  0  0  0  0  0  0  0  0  0  0 0 None
0x26  8 gs  1  0  0 c  .  .  0  0  0  0  0  0  0  0  0  0  0  0 0 None
0x27  8 dc  1  0  0 c  .  .  0  0  0  0  0  0  0  0  0  0  0  0 0 None
0x28 24 tc  0 24  0 r  y  .  8  8  8  0  0 32  8 16 16 16 16  1 0 None
-- snip --
Comment 1 Adam Jackson 2004-11-08 07:40:58 UTC
(In reply to comment #0)
> glxgears 2004-11-08-trunk jumps with Solaris OpenGL 1.3 implementation and is
> pretty much unuseable, the gears move forth and back and are far far away from
> rotating smoothly... ;-(

Is vsync on?  Are you using the smooth rotation patch?

Depending on the framerate and the vertical retrace rate, it's not unheard of
for glxgears to appear to be standing still, or rotating backwards.  This is not
a bug, the r200 and fglrx drivers show the same behaviour.

This is the same effect as watching car wheels spinning on TV.  As the car
speeds up they look to be rotating forward, then slowing down, then standing
still, then rotating backwards.  Time domain aliasing.
Comment 2 Alan Coopersmith 2005-05-08 16:34:50 UTC
Note that the SPARC graphics group that produces Sun's OpenGL implementation does
not provide a hardware-accelerated GL pipeline for the m64, only the software
implementation.  (For those not familiar with SPARC graphics, m64 was Sun's low
end 2-D board in previous generation machines, based on ATI Rage II chipset in
early models and Rage XL chipset in later ones.)

If you want smooth, usable OpenGL output, use a board with hardware acceleration.
Comment 3 Adam Jackson 2005-10-22 15:52:12 UTC
so if this is a bug in sun's opengl, then it doesn't belong here.

if it's a bug in glxgears, it's still not a bug, since gears is not expected to
rotate smoothly but rather to update as fast as possible, which may create
aliasing when not synced to vblank.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.