synchronous buffer swapping

David Gobbi dgobbi at irus.rri.on.ca
Thu Apr 6 00:00:13 EDT 2000


Thanks Lisa,

I'll commit the changes tomorrow.

 - David

On Wed, 5 Apr 2000, Lisa S. Avila wrote:

> Hello David,
> 
> I don't see any reason why you shouldn't make these changes. Definitely 
> MakeCurrent() should be called any place where the OpenGL context might not 
> be the intended one. I have been bitten by bugs related to having the wrong 
> context more times than I would care to admit!
> 
> Lisa
> 
> 
> At 03:40 PM 4/5/00, David Gobbi wrote:
> >Hi Will,
> >
> >We have an application with several render windows, and I'm using
> >the SwapBuffers flag to cause them to all update simultaneously,
> >like this (apologies to non-python users):
> >
> ># first turn off SwapBuffers and do the renders
> >for renWin in renderWindows:
> >   renWin.SwapBuffersOff()
> >   renWin.Render()
> ># swap the buffers
> >for renWin in renderWindows:
> >   renWin.SwapBuffersOn()
> >   renWin.Frame()
> >
> >This works nicely under UNIX, all the windows update in sync.
> >However, the vtkWin32OpenGLRenderWindow ignores the SwapBuffers
> >flag (it always swaps when Render or Frame is called).  Also unlike
> >UNIX, on Win32 the Frame command must be proceeded by MakeCurrent
> >in order to work properly.
> >
> >So, I was wondering if I could change vtkWin32OpenGLRenderWindow::Frame()
> >so that
> >   1) it checks this->SwapBuffers and
> >   2) it calls this->MakeCurrent() before SwapBuffers().
> >This would make it behave the same as UNIX, and (as far as I've
> >tested) won't break anything.  No one has messed with the Frame()
> >command for years, so I thought I should ask first...
> >
> >  - David
> >
> >--
> >   David Gobbi, MSc                    dgobbi at irus.rri.on.ca
> >   Advanced Imaging Research Group
> >   Robarts Research Institute, University of Western Ontario

--------------------------------------------------------------------
This is the private VTK discussion list. Please keep messages on-topic.
Check the FAQ at: <http://public.kitware.com/cgi-bin/vtkfaq>
To UNSUBSCRIBE, send message body containing "unsubscribe vtkusers" to
<majordomo at public.kitware.com>. For help, send message body containing
"info vtkusers" to the same address.
--------------------------------------------------------------------



More information about the vtkusers mailing list