Re: Why run xserver on the OpenGL API?
Sean Middleditch <[email protected]>
| Newsgroups | gmane.comp.freedesktop.xserver |
|---|---|
| Organization | AwesomePlay Productions, Inc. |
| Message-ID | <[email protected]> |
On Tue, 2003-11-25 at 15:21, Jon Smirl wrote: > --- Keith Packard <[email protected]> wrote: > > The latter is a much stronger statement that encourages/forces application > > developers to migrate to a strange and possibly inappropriate graphics > > model. Far better is to provide appropriate glue between the API they want > > to use and the graphics hardware, let them use GL where appropriate, and > > also provide support for cairo and xlib. Cairo is a clean 2D API that can > > live atop either xlib, Render or GL, and exposes a full PDF 1.4 rendering > > model which is as close to 'complete' as we've seen in a 2D API. > > My understanding is that Cairo is a retained mode interface and OpenGL is an > immediate mode one. So we are comparing apples and oranges. Maybe someone can > elighten me, why is Cario being designed instead of just using the SVG API? Is > Cairo going to be integrated with stylesheets like SVG? If not, what good is > this to the browser developers? it's good the same way OpenGL is good to 3D programmers, even tho models aren't stored as a stream of OpenGL commands. cairo provides a powerful, flexible rendering API that could potentially allow much easier and more efficient rendering of web-pages, even if the browser still has to interpreter SVG/CSS/HTML/etc like they always had to. i'm also not sure on the retained mode bit - i think it depends on the backend. you *could* render to a pixmap then send that to X, or you have each individual operation work on the final (perhaps hidden) server-side pixmap, using accelerated architecture. just like OpenGL. > > > Let the application developer select their API, and just make sure that > > reasonable APIs map as directly to the hardware as feasible. > > My goal is to ensure that OpenGL is available on every Linux desktop as soon as > possible. A big reason we don't have Linux games is that the status of OpenGL > support under Linux is pretty chaotic. A pervasive OpenGL API is the key to > getting mainstream apps to use it, but it will take years of deployments before > this happens. This says nothing about using the Cairo API, Cairo is retained > mode which is a different beast, This is a bit of a side-discussion, but I'd have to heartily disagree. Every problem I've had with Linux gaming has had nothign to do with graphics drivers, and everything to do with that Linux/UNIX is a pain in the ass for a non-technical. Just try to get any recent game installed without opening a terminal, hacking a shell script, or manually replacing a .so file. Good luck. Probably the only thing most users *will* have working easily is the graphics driver (assuming their OS installed it). -- Sean Middleditch <[email protected]> AwesomePlay Productions, Inc.