From: Sven G. <ga...@ps...> - 2001-01-30 13:19:33
|
Hi there, I have just started Mesa/OpenGL programming and I am wondering about some things. First, how do I enable fullscreen rendering with hardware acceleration with my Mesa programs and DRI? I have not found any information about that in the docs. And can I use the DGA 2 extensions with OpenGL and DRI? I'm asking this because DGA 2 enables tripple buffering on some hardware e.g. G400 (which is a great improvement over double buffering) and direct video memory access. Some system information: Kernel 2.4.0, XFree 4.0.2, Matrox G400, dri and agp modules work correctly, Debian Box. Regards, Sven |
From: Nathan H. <na...@ma...> - 2001-01-30 14:13:40
|
On Tue, Jan 30, 2001 at 02:22:28PM +0100, Sven Garbade wrote: > Hi there, > > I have just started Mesa/OpenGL programming and I am wondering about > some things. First, how do I enable fullscreen rendering with hardware > acceleration with my Mesa programs and DRI? There's a DRI Fullscreen patch on the way but it's not finished yet. In the meantime you have three choices. - SDL, which does all the hard work for you - XVidMode extension - DGA2 extension SDL is the easiest. > information about that in the docs. And can I use the DGA 2 extensions > with OpenGL and DRI? To a certain extent. > I'm asking this because DGA 2 enables tripple > buffering on some hardware e.g. G400 (which is a great improvement over > double buffering) and direct video memory access. DRI already has direct memory access. The DRI doesn't do triple buffering. It does have double buffering. I would honestly like to see a sensible justification of triple buffering. Explanations I've seen before have struck me as half quackery and half hand-waving. If you are rendering faster than the vsync then triple buffering gets you nothing. If you render slower than the vsync then triple buffering cant save you. The only winning case I see is when sometimes you render faster than vsync and sometimes slower. And even then you need to have perfect conditions because triple buffering is implemented with only 1 frame "in reserve" (1 frontbuffer, 2 backbuffers, always with 1 backbuffer completed and waiting on the vsync). |
From: Sven G. <ga...@ps...> - 2001-01-30 15:17:20
|
Nathan Hand wrote: > There's a DRI Fullscreen patch on the way but it's not finished > yet. In the meantime you have three choices. > > - SDL, which does all the hard work for you > > - XVidMode extension > > - DGA2 extension > > SDL is the easiest. Many thanks for your reply. Just one question: SDL is the Simple DirectMedia Layer on http://www.libsdl.org/ ? Sven |