
|
[haiku-appserver]
||
[Date Prev]
[12-2005 Date Index]
[Date Next]
||
[Thread Prev]
[12-2005 Thread Index]
[Thread Next]
[haiku-appserver] Re: user needs to know about the clipping region?
- From: "Rudolf" <drivers.be-hold@xxxxxxxxxxxx>
- To: haiku-appserver@xxxxxxxxxxxxx
- Date: Mon, 05 Dec 2005 22:26:14 +0100 CET
Ah, last time :)
ADI wrote:
> There is a solution. Have you read what Rudolf said about allegro
> game
> library? AFAIRemember, it requires a frame buffer double the size of
> screen. The driver gives it, but it only uses the first half to
> display
> on screen. Then there are 2 choices: 1) you draw in the 2nd part and
> instruct the card to start retracing from it (swap buffers), then
> draw
> in the 1st part and swap again, and so on; 2) you could just use the
> first part, prepare things in the 2nd, then blit using 2D HW with of
> without transparency.
> I'm not sure about this: but I think you can even request a frame
> buffer 3 times the screen size.
My drivers support any size you want, as long as the hardware supports
it. Even when only partial support exist: you will get it.
With this I mean: the acceleration engine has smaller constraints than
the CRTC hardware. If your buffer gets too large the acceleration hooks
nolonger get exported if you request them.
Although I implemented this, it's quite complex to be precise, and
there's no means for you to know beforehand if you'll get acceleration.
Therefore I am thinking I should remove non-accelerated support at some
point.
Note also: I do not advice to use allegro's trick. The large screen is
meant to be used for a _virtual workspace_. If you alternatively use it
to trick a double-buffer-whatever solution, you nolonger have the
virtual workspace thing available (cleanly). Or things like the
pageflipper demo.
--------
Once more about overlay.
Axel's right: video overlays are not visibly transparant. Showing is
determined by a specific color on the background. So you loose the
background.
modern cursor overlay's however _are_ (AFAIK). the RGB32 cursor is of
course RGB24 with 8-bit alpha. RGB16 should be 1-bit alpha. Old cursors
are still transparant: you preset one of the four colors to be
transparant. Of course, this still means you only see the cursor image
OR the background: no mix. Unlike RGB16/32 cursors. AFAIK.
Bye!
Rudolf.
|

|