[leveller] Re: Brush slowness mystery solved
- From: Ray Gardener <rayg@xxxxxxxxxxxxxxxxxx>
- To: leveller@xxxxxxxxxxxxx
- Date: Tue, 12 Apr 2005 11:09:53 -0700
Yeah, I don't want disabled vsync as a permanent solution; it shouldn't
even be an option. Just a temporary workaround until 2.5 gets out.
Fortunately I don't notice tearing since my edit render style is set to
show as little as possible in the scene pane (and I'm looking mostly at
the map pane when I brush draw anyway), and the other render styles tend
to be slow enough to be under the refresh rate. But my PC isn't the
fastest; others running at, say, 2.5 or 3GHz need a vsync-friendly option.
Ray
John D. Gwinner wrote:
> When you disable vsync, you are telling the vid hardware to flip the
> buffer halfway down the screen, so you are clearly getting tearing. You
> probably just don't notice it. 60 or 72hz has to be your screen refresh
> speed regardless of what OpenGL thinks.
>
> High performance timing API's should be available on anything Pentium
> and later. Anyone running Leveller on a 486 won't be worried about 800
> fps <G>.
>
> =3D=3D John =3D=3D=20
>
> -----Original Message-----
> From: leveller-bounce@xxxxxxxxxxxxx
> [mailto:leveller-bounce@xxxxxxxxxxxxx] On Behalf Of Ray Gardener
> Sent: Tuesday, April 12, 2005 12:32 AM
> To: leveller@xxxxxxxxxxxxx
> Subject: [leveller] Re: Brush slowness mystery solved
>
> I'm not sure a decoupled strategy works... in fact, tearing would be
> worse, because a buffer could be partially overwritten by an unblocked
> thread when the monitor got around to refreshing.
>
> Putting the render stuff on a seperate thread causes the same problem in
> reverse: now I need to block edits to avoid displaying frames with "half
> an edit", i.e., temporal sampling of whatever state the document happens
> to be in at display refresh time. You'd see mesh cracking and stuff.
>
> What I've done for now is that I keep track of how much time has passed
> since the last time an OpenGL scene was drawn, and if it's less than the
> vsync interval, to just not bother rendering. I've reenabled vsync and
> with this mod, it feels as if vsync is disabled. I get even more speed
> since I don't bother refreshing the 2D map pane either. :) The only
> caveat is that high-performance timing APIs have to be available on
> Windows; if your system doesn't have them, I fallback to older timer
> services which might cause more rendering than necessary, and disabling
> vsync is the only option then.
>
> Would be neat if a video card auto-blurred when frame rates went above
> display rates. Since we can now draw super fast, it'd be a cheap way to
> get motion blur.
>
> Ray
>
>
>
>
>
- References:
- [leveller] Re: Brush slowness mystery solved
- From: John D. Gwinner
Other related posts:
- » [leveller] Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- » [leveller] Re: Brush slowness mystery solved
- [leveller] Re: Brush slowness mystery solved
- From: John D. Gwinner