Commit Graph

23 Commits

Author SHA1 Message Date
Zhigang Gong c97d4533f2 glamor: Silent compilation warnings due to some deprecated APIs.
those xcalloc/xfree/xalloc/XNFprintf/... are deprecated. Replace
then with the new one. And fix some other minor problems.
2011-09-26 16:46:34 +08:00
Zhigang Gong eb3487a448 glamor: Add new feature which is to flip output on y axis.
Due to the coordinate system on EGL is different from FBO
object. To support EGL surface well, we add this new feature.
When calling glamor_init from EGL ddx driver, it should use
the new flag GLAMOR_INVERTED_Y_AXIS.
2011-09-26 16:46:34 +08:00
Eric Anholt 60775e21e3 glamor: Use a VBO to accumulate multiple glyph quads at once.
This increases us from 23000 to 27000/sec on rgb24text.
2011-09-26 16:46:34 +08:00
Eric Anholt 8ce312e619 glamor: Use glamor_composite_with_shader once per group of glyphs.
This shaves CPU time in GL setup.  Performance of rgb24text went from
18400/sec to 23500/sec.
2011-09-26 16:46:34 +08:00
Eric Anholt 6ce05e0b28 glamor: Convert the shaders path to handling glamor_composite_rect_t. 2011-09-26 16:46:34 +08:00
Eric Anholt 858ce0c192 glamor: Add support for component alpha rendering.
Brings x11perf -rgb24text from 230/sec to 18400/sec
2011-09-26 16:46:34 +08:00
Eric Anholt d07fc66a05 glamor: Rework shader setup to make extending the IN types easier. 2011-09-26 16:46:33 +08:00
Eric Anholt 5f5c35b56d glamor: Fix up the fallback message for no texture present on compositing. 2011-09-26 16:46:33 +08:00
Eric Anholt 2fa95725d8 glamor: Add support for a1 composite sources.
They're stored just like a8, but the values are set to either 0.0 or
1.0.  Because they're a8 with only two legal values, we can't use them
as destinations, but nobody's rendering to a1 dests anyway (we hope).
2011-09-26 16:46:33 +08:00
Eric Anholt 2ba634fab9 glamor: Fix render source transforms.
Fixes (except for small bit differences) cairo source-pattern.
2011-09-26 16:46:33 +08:00
Eric Anholt be82a06242 glamor: Fix screen_x/screen_y handling for compositing.
It's not an offset from pixmap coords to composited pixmap coords,
it's an offset from screen-relative window drawable coords to
composited pixmap coords.
2011-09-26 16:46:33 +08:00
Eric Anholt 0565c1d789 glamor: Add support for accel of x8r8g8b8 source pictures.
There's a limitation still for RepeatNone, but this fixes a bunch of
fallbacks for gnome-terminal.
2011-09-26 16:46:33 +08:00
Eric Anholt be64167fea glamor: Don't try to CopyArea from a Solid source picture.
Fixes failure with rendercheck.
2011-09-26 16:46:33 +08:00
Eric Anholt 126fc09cb5 glamor: Rework the Render shader setup to be easily modified, like cairo-gl. 2011-09-26 16:46:33 +08:00
Eric Anholt f4a3194837 glamor: Add the glyph cache from UXA (de-camelCased).
This doesn't yet have an optimized glamor_composite_rects()
implementation, but it does triple the speed of x11perf -aa10text.
2011-09-26 16:46:33 +08:00
Eric Anholt 7e6432e7b9 glamor: Fix up and enable accelerated composite. 2011-09-26 16:46:33 +08:00
Eric Anholt 15e58b5ffb glamor: Split the copy path out into its own function. 2011-09-26 16:46:33 +08:00
Eric Anholt ad67299fa2 glamor: Provide more information about the operands to fallback composites. 2011-09-26 16:46:33 +08:00
Eric Anholt 4811e428a9 glamor: Pull in UXA code for dumping some composites down to copy_n_to_n.
Window dragging with metacity+gnome-terminal+xcompmgr is almost credible.
2011-09-26 16:46:33 +08:00
Eric Anholt d8d3fa1034 glamor: All the fallbacks in the world.
Bringup is really not flying when I can't see anything.  So dump back
to all software so I can turn on a bit at a time.
2011-09-26 16:46:32 +08:00
Eric Anholt e9d4794cd0 glamor: Add fallbacks for Render. 2011-09-26 16:46:32 +08:00
Eric Anholt 5915b4c0cf glamor: Add support for solid source pictures. 2011-09-26 16:46:32 +08:00
Eric Anholt aa13306974 glamor: Start adding render acceleration support.
This brings in idr's glu3 code.  We'll probably want to move to linking to
it as a library, once an ABI-stable release is out.
2011-09-26 16:46:31 +08:00