On Mon, Jun 30, 2003 at 07:58:31PM +0400, Yaroslav Rastrigin wrote: > Huh ? What do you call "translucency", then ? Do you think one couldn't > render surfaces (with alpha channel) on client, and supply full-screen > bitmaps to Xserver for output ?
Not if you want to see through to underlying windows that may also get updated. The server must maintain a backing store for the window and when an underlying window is draw on, combine it with this backing store using set alpha value. > Fonts and fontsets, then X(utf8|mb|wc)DrawString, whole load of GC ops > before and after. There's something inefficient or something that needs absolutely blazing speed here? How about using multiple GC:s if you switch them a lot? What if the hardware - even given the overhead of passing the commands to X through sockets - can do these operations faster than client-side rendering to a buffer and then asking X to blit that? BTW, do apps using Xrender have to store fonts in their own memory instead of e.g. asking X/font server to give access to the fonts in shared memory? If so, bloat alert! > How would you draw an arbitrarily rotated string ? Another GCValuesExt feature? Hmm.. OTOH an API in spirit of OpenGL would be elegant for all sorts of mangling... but better integrating OpenGL with X might a bit too much asked. -- Tuomo
