[prev in list] [next in list] [prev in thread] [next in thread]
List: kwin
Subject: Re: XaaNoOffscreenPixmaps
From: Philip Falkner <philip.falkner () gmail ! com>
Date: 2006-11-21 19:55:21
Message-ID: 200611211455.21741.philip.falkner () gmail ! com
[Download RAW message or body]
On Tuesday 21 November 2006 10:23, Lubos Lunak wrote:
> On Monday 20 November 2006 16:31, Lubos Lunak wrote:
> > Hello,
> >
> > I've finally managed to get kwin_composite running on this ATI machine,
> > kind of :-/. It's with the radeon driver and this 9600 (RV350 AP) is
> > pretty slow with it. Moreover I get redraw problems with it from time to
> > time. However, unless you're more lucky with the performance than me, I'd
> > like to point out to you option "XaaNoOffscreenPixmaps", see "man
> > xorg.conf". It's somewhat more bearable with it, although still no match
> > even for my old Geforce2 with the NVidia driver.
> >
> > Does somebody use the fglrx driver? It does't seem to work for me with
> > X.Org 7.2. Also, how do you get AIGLX working? It seems I can get AIGLX
> > itself working, however I cannot use TFP because of it not being present
> > in the MESA libGL library. Have you built your own MESA library or
> > something?
>
> Ok, there was a bug in the code finding extensions, so now TFP works.
> Well, "works", TFP has problems with radeon driver and r300 chips it seems.
As of r606773 TFP still doesn't work here without the attached patch.
glXQueryExtensionsString() will never have GLX_EXT_texture_from_pixmap here,
but glXQueryServerString() will, and, from the way I understand things, the
server string should be what matters with indirect rendering.
--
Philip Falkner
["make_tfp_work.patch" (text/x-diff)]
Index: glutils.cpp
===================================================================
--- glutils.cpp (revision 606773)
+++ glutils.cpp (working copy)
@@ -9,6 +9,7 @@
******************************************************************/
#include "glutils.h"
+#include "client.h"
#include <dlfcn.h>
@@ -53,8 +54,12 @@
glXQueryVersion( display(), &major, &minor );
glXVersion = MAKE_GLX_VERSION( major, minor, 0 );
// Get list of supported GLX extensions. Simply add it to the list of OpenGL extensions.
- glExtensions += QString((const char*)glXQueryExtensionsString(
- display(), DefaultScreen( display()))).split(" ");
+ if( options->glDirect )
+ glExtensions += QString((const char*)glXQueryExtensionsString(
+ display(), DefaultScreen( display()))).split(" ");
+ else
+ glExtensions += QString((const char*)glXQueryServerString(
+ display(), DefaultScreen( display()), GLX_EXTENSIONS)).split(" ");
// handle OpenGL extensions functions
glXGetProcAddress = (glXGetProcAddress_func) getProcAddress( "glXGetProcAddress" );
@@ -84,7 +89,7 @@
glVersion = MAKE_OPENGL_VERSION(glversioninfo[0].toInt(), glversioninfo[1].toInt(),
glversioninfo.count() > 2 ? glversioninfo[2].toInt() : 0);
// Get list of supported OpenGL extensions
- glExtensions = QString((const char*)glGetString(GL_EXTENSIONS)).split(" ");
+ glExtensions += QString((const char*)glGetString(GL_EXTENSIONS)).split(" ");
// handle OpenGL extensions functions
if( hasGLExtension( "GL_ARB_multitexture" ))
_______________________________________________
Kwin mailing list
Kwin@kde.org
https://mail.kde.org/mailman/listinfo/kwin
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic