DO NOT REPLY TO THIS MESSAGE.  INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.

[STR New]

Link: http://www.fltk.org/str.php?L2663
Version: 1.4-feature


OK, I think  i might be closer to the problem: It relay seems like a bug of
Intel drivers with this old 9xx graphics. Unfortunately the drivers are are
not updated any more and remain buggy.

The problem is that some of the current transformation matrices are not
remembered and swapped with the context switch (also which is current
matrix might not be remembered so glLoadIdentity could be eg applied on
color matrix). That means that if you leave GL_MODELVIEW or GL_PROJECTION
in non-non-identity state, after changing context using
fl_set_gl_context() following call to glRasterPos2i(0,0) might not be
invoked with identity transform matrices, might fell outside clipping
region, become invalid  and following glCopyPixels() does nothing.

Anyway, although this is a driver bug, there is plenty of 9xx Intel
hardware still around. The code below (which solves the problem) might be
little bit paranoiac but assures that, *BOTH* matrices (GL_PROJECTION and
GL_MODELVIEW) are set to identity  before call to glRasterPos2i() 

   glMatrixMode( GL_PROJECTION );
   glLoadIdentity();
   glMatrixMode( GL_MODELVIEW );
   glLoadIdentity();

   glViewport(0, 0, w(), h());
   glOrtho(0, w(), 0, h(), -1, 1);
   glRasterPos2i(0,0);

Roman


Link: http://www.fltk.org/str.php?L2663
Version: 1.4-feature

_______________________________________________
fltk-bugs mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-bugs

Reply via email to