Re: Why run xserver on the OpenGL API?
"Kendall Bennett" <[email protected]>
| Newsgroups | gmane.comp.freedesktop.xserver |
|---|---|
| Organization | SciTech Software, Inc. |
| Message-ID | <3FC36E5C.19741.156C5FE0@localhost> |
John McCutchan <ttb-/[email protected]> wrote: > On Tue, Nov 25, 2003 at 02:26:54PM -0800, Keith Packard wrote: > > I thought that was implicit in the plan to write a GL backend for the > > existing X server rendering infrastructure. The idea is that all core X > > and Render acceleration would be done with GL function calls, and that > > for ease of porting the existing code, a dumb frame buffer could be > > accessed where necessary. > > Why does an opengl extension need to be written to provide the > frame buffer access? what do you need that you can't accomplish > already with glReadPixels () and glDrawPixels ()? glReadPixels() and glDrawPixels() are horrendously slow for doing any kind of software rendering. Reading from framebuffer memory is a huge performance hit, so to expect the X server to read the framebuffer memory, do some software rendering and put it back again will cause a massive performance hit. The solution is to allow the X server software rendering engine to draw directly to the hardware framebuffer, so long as you provide the necessary access functions to ensure the engine is idle before you render to it and the software cache is flushed after you render to it. Regards, --- Kendall Bennett Chief Executive Officer SciTech Software, Inc. Phone: (530) 894 8400 http://www.scitechsoft.com ~ SciTech SNAP - The future of device driver technology! ~