[haiku-development] Re: Cario and Skia

  • From: Adrien Destugues <pulkomandy@xxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Thu, 23 Feb 2012 19:33:45 +0100

Le 23/02/2012 19:20, Simon Taylor a écrit :


I'm planning on keeping the abstraction very low level - just wrap some memory as a surface, and not support concurrent BeAPI drawing access. There will be some investigation required as to the quickest way to get those surfaces into the app_server, but hopefully if there is any work required there it could be shared between Cairo and Skia and any other client-side rendering libraries.
You can use either BDirectWindow, set a background BBitmap on a BView, or use an overlay. Remember that working that way instead of using BeAPI and the app_server backend leads to : * code duplication (all the graphics algorithms are in the app, while we have working ones in the app_server) * integration problems (you can draw on a BBitmap and a BDirectWindow using the BeAPI, but it's not as good as the usual way)

It feels just like the way Linux is working : while X11 has support for drawing lines, curves, and so on, everyone just open a window and do their own stuff in it. This makes things like a remote X11 session or a remote app_server slower than needed (they need to carry the whole picture over the network, instead of just the drawing commands). So it will never be as good as a native implementation.

--
Adrien.

Other related posts: