Re: using OpenGL to implement a window manager
Keith Packard <[email protected]> Fri, 23 Apr 2004 17:33:27 -0700
| Newsgroups | gmane.comp.freedesktop.xserver,gmane.comp.video.mesa3d.devel |
|---|---|
| Message-ID | <[email protected]> |
Around 16 o'clock on Apr 23, Jon Smirl wrote: > Suppose xserver is applying a trapezoidal transform to an application > window before displaying it. Now I want to set this trapezoidal transform > in OpenGL before letting the app draw the window. The app should be totally > unaware I set this transform and instead think it is drawing into a flat > rectangular buffer. I think there are four choices: 1) Application draws to a rectangular pixel buffer which is then transformed to the screen +) "correct" pixelization semantics for all operations, this is how X rendering must be done. +) No repaint needed when changing the transformation. -) ugly results 2) Graphics system applies transformation matrix to post-tesselation objects +) No change to X/GLX protocol needed Simple polygons look sharp -) pixelization dependent tesselation will still show artifacts (splines may look chunky at high magnification) -) still no solution for glyphs; they're images in the current protocols -) Changing the transformation requires repainting every window. I thought we wanted to avoid this. 3) Graphics system applies transformation matrix to high-level objects +) Everything looks sharp +) With display lists, redisplay at new transform would not involve the client -) Everything has to be rewritten. -) Tesselation policy is now fixed in the server -) Font support is now dependent on server capabilities, and more-or-less requires display list support -) Display lists in the X server is a "bad idea". 4) Graphics system hands transformation matrix to application +) Everything looks sharp -) Everything has to be redrawn each time the transform changes -) Global transformation changes will cause global repaint. I thought we wanted to avoid this. -keith _______________________________________________ xserver mailing list [email protected] http://freedesktop.org/mailman/listinfo/xserver
signature.asc
(application/pgp-signature, 228 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) Comment: Exmh version 2.3.1 11/28/2001 iD8DBQFAibXWQp8BWwlsTdMRAmm3AJ0Qy8+9iofFy+2XVOSw2idFEgvU+QCfVz7B o62vVWfN8qU9Fz2TDrTIUUM= =f5TW -----END PGP SIGNATURE-----