On Thu, Jan 25, 2007 at 06:54:02PM +0000, Mark Adams wrote:
> > But now I've a real strange situation:
> > For clearing the OSD (full transparent) I've to use Clear(r, b, g, a) with
> > Clear(0, 0, 0, 0) which is "normal" transparent black.
> >
> > But for OSD drawing into the surface I've to invert alpha:
> > transparent black is (0, 0, 0, 0xff) solid black is (0, 0, 0, 0) .
> 
> I was just looking into that, thinking it was probably an obvious typo
> on my part but I'm not sure it is.
> 
> What's puzzling me is that
> 
>   Clear(r,g,b,a)
> 
> is equivalent to
> 
>   SetColor(r,g,b,a)
>   SetDrawingFlags(DSDRAW_NOFX)
>   FillRectangle(...)
> 
> If you're seeing a difference, I can only assume that you're using
> some other drawing flags, e.g. DSDRAW_BLEND.  If that's the case then
> your drawing operations will be using the software fallback since we
> can't do hardware accelerated blending on AiRGB surfaces.
> 
> So it looks to me like the problem is in the software renderer, which
> is not my area of expertise I'm afraid.

I found a bug in AiRGB color handling in the sw rendering code, and 
commited a fix to CVS. Stefan, let me know if the problem still 
persists.

-- 
Ville Syrjälä
[EMAIL PROTECTED]
http://www.sci.fi/~syrjala/

_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev

Reply via email to