Thanks, that's great help.
KP> At this point, any time you can use core rendering routines in
KP> place of Render, you'll likely see significant performance benefits.
Noted. Shouldn't render transparently dispatch to GCOps whenever
possible? I can do that client-side, of course, but it feels dirty to
have to juggle with both pictures and GCs.
(Offtopic: very old papers about Xlib promise an X10-style stateless
rendering interface in a future release. Finally happened with render.)
>> In that method, I'm seeing rendering artifacts when the span is over
>> 256 pixels wide; the rendering appears to be cut at an abscissa of
>> 256.
KP> Hmm. I may not understand your rendering code; are you sending glyphs
KP> larger than 256x1 to the server?
Yes. If I draw an AA horizontal line through the page, my driver's
``create_compositor'' method gets called; as it's not implemented yet,
gs falls back to creating 8-bit-deep rasters and passing them to my
driver's``copy_alpha'' method. Every invocation of the latter
currently causes a glyph to be sent (glyphs are discarded so that
there is never more than 256 of them at one time).
I'll modify copy_alpha to use PutImage to a pixmap followed by
XRenderComposite when the raster is known to be never reused (gs is
kind enough to inform me of the fact).
What shall I do if the raster might be reused? For small rasters, I
should probably store them in a glyphset (so as to get a server-side
glyph cache), but do you recommend limiting the size of server-side
glyphs?
KP> I don't know that I've ever tried that before...
I'll try to isolate the code, then.
KP> Yes. You create the alpha channel pixmap, create a picture for that and
KP> then set the alpha-map of the RGB pixmap to the alph picture.
KP> This would also permit you to use XCopyArea from the pixmap and store the
KP> pixmap in off-screen memory.
Cool, I'll do that unconditionally, then, unless XRenderFindVisualFormat
returns a format with decent alpha (four bits or more).
Juliusz
_______________________________________________
Render mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/render