Re: Some perspective from the cheap seats...
Havoc Pennington <[email protected]>
| Newsgroups | gmane.comp.xfree86.forum |
|---|---|
| Message-ID | <[email protected]> |
On Fri, Mar 21, 2003 at 04:38:21PM -0500, Mark Vojkovich wrote: > Anyhow, to sumarize. The requests coming from the desktop > people don't really line up with the way the hardware is heading. > So you either don't get everything you want, or you get it in > software. To me the desktop people don't generally have an opinion about RENDER on the level of detail that you're complaining about it. Most of us will never use the render API directly. What we would want are high level things like: - a way to alpha composite an image onto the current background without sucking the background off the server - a way to do vector graphics that produces the same results on both client and server side - a way to avoid redrawing the window manager frame and client window in two different visible steps - a way to keep a magnified region of the screen up-to-date without polling XGetImage() at some interval In general we're fine with "fast enough" rather than "blazingly fast," and "a way" instead of "a perfect way," so sometimes software is fine, sometimes somewhat odd APIs are fine. Oddness that we can bury in the toolkit is generally not an issue, oddness that leaks out to app developers is more of an issue, oddness that leaks out to users is a largish issue. As I said earlier, most things that feel clunky right now are more about client side performance or flicker/tearing/lack-of-animation than about raw server performance. Raw server performance is most important to people doing 3D and other dedicated apps, rather than the desktop. So performance isn't necessarily the primary issue for some of this stuff. Usually the things we're asking for on the desktop are things Windows or OS X already have, so they should at least be possible, I would think. And for things that are only possible with *some* hardware, feature tests can be fine too. (Just as you check for an extension.) In any case, the thing to do is probably to get more people involved in new designs. What does the hardware look like? What did it look like 3 years ago, what will it look like in 3 years? What API do we want? How does all that interact? etc. Engineering is about tradeoffs, just a matter of collecting all the data. Havoc