Re: [AD] Current SVN on OS X

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


On Sun, 2009-02-22 at 10:40 -0800, Evert Glebbeek wrote:
> On 22-Feb-09, at 10:08 AM, Elias Pschernig wrote:
> > I don't think I can get shearing with my current drivers even if I
> > wanted to. Especially in a non-fullscreen application.
> 
> I didn't get any before either.
> 
> > One thing to check out for, is the new visual scoring system used by  
> > the
> > OSX code?
> 
> I guess not, if non one else updated it. It's one of the things I was  
> going to look into.
> But: shouldn't that just mean it's just using the old selection methods?
> 
> > If so, it might now selects a single-buffer OpenGL instead of
> > double buffer, in which case all kinds of graphical artifacts will
> > happen.
> 
> Yes...
> 
> > In A5, we probably want this on by default, and maybe add another
> > display option to enable shearing.
> 
> That would basically be switching vsync on/off, right?
> 

Yes. With GLX, there is no way to control it, the specification says:

"""
    If dpy and draw are the display and drawable for the calling thread’s cur-
rent context, glXSwapBuffers performs an implicit glFlush. Subsequent OpenGL
commands can be issued immediately, but will not be executed until the buffer
swapping has completed, typically during vertical retrace of the display monitor.
"""

So essentially the same you get with NSOpenGLContext::flushBuffer if
that flag is specified.

With D3D, IDirect3DDevice9::Present also seems to never allow shearing,
unless you specify an extra flag of DoNotWait (if I understand the docs
correctly): http://msdn.microsoft.com/en-us/library/ms858301.aspx

So, for OSX and D3D, we could have a flag which tries to prevent
vsyncing. WGL may or may not have something similar as well. Under GLX
it would be ignored.

-- 
Elias Pschernig <elias@xxxxxxxxxx>





Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/