On 3/21/07, Cedric BAIL <[EMAIL PROTECTED]> wrote:
> Hi everybody,
>
>         I finally got a SDL Engine running and starting to look correct. I 
> did split
> it in 3 patch.
>
> - evas_cache_image.diff: Add a global cache for image mechanism.
>         I hope it could be shared with other engine and reduce their code 
> complexity.
> This cache works more like the one from FreeType, you request image/operation
> from the cache, and the cache forwards it if needed to the right callback
> function. This need to be carefully reviewed, even if it seems correct.
>         I also included in this patch a new 
> 'evas_common_load_image_module_from_file'
> function that just create the RGBA_Image without any cache manipulation. I
> also updated 'evas_common_load_image_from_file' function to use it.
>
> - evas_sdl_engine.diff: This patch really provides the SDL engine.
>         You must not expect other colorspace than EVAS_COLORSPACE_ARGB8888 to 
> work. I
> have no plan to fix this now as I think it will be easier to test that with
> emotion. So I first need an Ecore_SDL to fix this.
>         It doesn't use evas_pipe (and never will) as it need to use SDL 
> thread to do
> that same task, and I am really not planing to do it soon.
>
> - evas_sdl_test.diff: Add an old style evas test for SDL engine.
>         Every test must work, if not please report bugs to me :)

Great to see it happen.

I'm about to write an engine to carry operations in 16bpp and had
already noticed this code duplication, so this helps me a bit :-)

My idea is similar to SDL_ConvertSurface(), however I plan to handle
alpha transparency too... we do it with Canola/SDL and performance is
incredible faster[*] than 32bpp->16bpp at every blit.

My aim is to have a pure-x11 engine, fixed for 16bpp, avoiding
overheads. However, with your engine at hand it should be much easier
to evaluate how well it work. Do you plan to add this bit-depth
support for it?

[*] http://lists.libsdl.org/pipermail/sdl-libsdl.org/2001-April/016483.html
Blit565to565SurfaceAlpha(): If you opt to drop quality in favor of
performance, you can pack r5g6b5 inside one 32bits word and use
5bit-Alpha, doing add or multiply of 3 channels with one operation.

-- 
Gustavo Sverzut Barbieri
--------------------------------------
Jabber: [EMAIL PROTECTED]
   MSN: [EMAIL PROTECTED]
  ICQ#: 17249123
 Skype: gsbarbieri
Mobile: +55 (81) 9927 0010

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to