
|
[haiku-appserver]
||
[Date Prev]
[11-2004 Date Index]
[Date Next]
||
[Thread Prev]
[11-2004 Thread Index]
[Thread Next]
[haiku-appserver] Re: drawing thread
- From: "Rudolf" <drivers.be-hold@xxxxxxxxxxxx>
- To: haiku-appserver@xxxxxxxxxxxxx
- Date: Mon, 01 Nov 2004 16:08:40 +0100 CET
Hi Adi,
> > I guess you have to make sure the shown buffer is upto date in both
> > setups. So it doesn't matter then if you update the same buffer
> > over
> > and over again, or if you do both alternatively (it's needed never
> > at
> > the same time)
>
> I'd dare to say you're wrong.
> If you don't update/blit with the same area/rectangle after the
> page flip, surely you won't be
> having the same image next time when you flip.
Indeed. So if flipping would be done on every retrace you are right:
the same image must be blitted to both the two buffers.
> Again, I don't see the usefulness in having three buffers. Either
> way, you have to blit from the
> back buffer to flippsurface #2, and if the flip occurs at this time,
> it is exactly the situation
> with simple double buffering - page flipping is not useful anymore.
Yes, correct. However I was thinking to blit somewhere during mid-
screen on the currently offscreen buffer. So synced somehow to retrace
indeed.
But, lets' forget about the triple buffer thing. As I already agreed
with you just two buffers, and blitting during retrace is fine: as long
as it's a hardware accelerated blit: otherwise it will be too slow.
(and in _this_ case only, the triple buffer thing would be needed)
> > No: back buffer. As far as they are concerned this _is_ the
> > framebuffer
> > I'd say. It's up to 'another process' to make that buffer shown
> > after
> > the next upcoming retrace.
> I'm not entirely sure, but app_server does not know when to blit
> when a BDirectWindow is at use.
That's true. So it would be possible that the blit works on a partly
updated BDirectWindow window, which would show a partly updated screen
then: so an 'artifact'. However, on the next screen drawing it will be
blitted again, and then it will be completed. (at least no change is
executed during mid-screen on-screen, which should at least minimize
the distortion for this particular thing)
> Dunno, seems complicated when it could be done easy...
Yep, every advantage also has it's downsides I guess. Anyway: don't set
this up (or whatever other non-R5 feature that sounds complicated) for
R1 anyway ;-)
I was merely suggesting options that exist in theory, and surely you
can see both downsides _and_ upsides of both double- and triple
buffering.
Hey: shall we drop the subject now?
I've mumbled everything I had to say by now ;-)
BTW: Keep up the good job! I just also saw that Axel has the echo of
the shell stuff working now, and that Haiku works on real hardware.
Nice to see improvements happening 8-)
(congrats Axel)
Rudolf.
|

|