From b0c7bc98a2d4afe16c7d9ce1c03921d35c842cde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Fri, 24 Nov 2006 22:20:14 +0000 Subject: [PATCH] Special file for howto on setting up kwin_composite. svn path=/branches/work/kwin_composite/; revision=607516 --- COMPOSITE_HOWTO | 97 +++++++++++++++++++++++++++++++++++++++++++++++++ COMPOSITE_TODO | 1 + HACKING | 33 ----------------- 3 files changed, 98 insertions(+), 33 deletions(-) create mode 100644 COMPOSITE_HOWTO diff --git a/COMPOSITE_HOWTO b/COMPOSITE_HOWTO new file mode 100644 index 0000000000..54f379ed00 --- /dev/null +++ b/COMPOSITE_HOWTO @@ -0,0 +1,97 @@ +This file describes how to set up kwin_composite. + +See file HACKING for details on developing KWin, including building + the kwin_composite branch. +See file COMPOSITE_TODO for a list of things that still need to be done. +See effects/howto.* for a HOWTO on writting effects. +See documentation in source (mainly in scene.cpp) for description + of the design of the compositing framework. + +Using kwin_composite branch: +============================ + +See the KDE trunk HOWTO at http://developer.kde.org/build/trunk.html . + +The simplest way to build the kwin_composite branch is to switch the trunk version +to the branch: + +$ cd kdebase/workspace/kwin +$ svn info +(prints the repository URL, for example https://svn.kde.org/home/kde/trunk/KDE/kdebase/workspace/kwin) +$ svn switch https://svn.kde.org/home/kde/branches/work/kwin_composite +(i.e. replace trunk/KDE/kdebase/workspace/kwin with branches/work/kwin_composite) +$ make +(i.e. build and use it as usually) + +After starting, KWin's debug output also says which compositing backend it uses, e.g. +"OpenGL compositing". If it does not, most probably your X is not configured properly. + + +nVidia: +----------- + +Both 9xxx and 8xxx drivers work, only 9xxx drivers provide TFP (texture_from_pixmap) +functionality. + +You need in xorg.conf + +Option "AddARGBGLXVisuals" "True" + +in 'Section "Screen"' and also the XComposite extension enabled: + +Section "Extensions" + Option "Composite" "Enable" +EndSection + + +ATI: +-------- + +The radeon driver should work for R200 chips, it's worse with R300 chips. +TODO - fglrx - no idea + +You need in xorg.conf the XComposite extension enabled: + +Section "Extensions" + Option "Composite" "Enable" +EndSection + +Also using + +Option "XaaNoOffscreenPixmaps" "true" + +in 'Section "Screen"' may improve performance for non-TFP (texture_from_pixmap) modes. + +For the TFP mode AIGLX needs to work. With AIGLX direct rendering should be be disabled +(export LIBGL_ALWAYS_INDIRECT=1 before running kwin). + + +Intel: +------- + +TODO - no idea. Possibly similar to ATI. + + +Configuration options: +---------------------- + +All general configuration option are in group [Translucency] in kwinrc config file: + +UseTranslucency= - enables/disables compositing support +GLMode= - selects texture creating mode +RefreshRate= - manually specified refresh rate, should be usually automatically detected +GLAlwaysRebind= - may increase speed with some graphics cards +GLDirect= - enables/disables direct rendering +GLVSync= - enables/disables synchronizing with monitor refresh + +ShowFPSEffect: +Options are in group [EffectShowFps] in kwinrc config file: +Alpha= - transparency +X= - X position, negative is from the right edge, -10000 is exactly right edge +Y= = Y position, the same like X + + +Effects: +-------- + +Effects can be currently enabled/disabled only by modifying effects.cpp source file. diff --git a/COMPOSITE_TODO b/COMPOSITE_TODO index 930f696da8..cd062bcf15 100644 --- a/COMPOSITE_TODO +++ b/COMPOSITE_TODO @@ -1,5 +1,6 @@ This file lists TODO items for the compositing code. +See file COMPOSITE_HOWTO for setting up kwin_composite. See file HACKING for details on developing KWin, including building the kwin_composite branch. See effects/howto.* for a HOWTO on writting effects. diff --git a/HACKING b/HACKING index 0950a4c76a..c8b4f6751c 100644 --- a/HACKING +++ b/HACKING @@ -10,39 +10,6 @@ The bugs.kde.org product for KWin is 'kwin'. Currently the components are 'gener There are also two kcontrol components 'kcmkwindecoration' and 'kcmkwinoptions' related to KWin's KControl modules. - -Using kwin_composite branch: -============================ - -See the KDE trunk HOWTO at http://developer.kde.org/build/trunk.html . - -The simplest way to build the kwin_composite branch is to switch the trunk version -to the branch: - -$ cd kdebase/workspace/kwin -$ svn info -(prints the repository URL, for example https://svn.kde.org/home/kde/trunk/KDE/kdebase/workspace/kwin) -$ svn switch https://svn.kde.org/home/kde/branches/work/kwin_composite -(i.e. replace trunk/KDE/kdebase/workspace/kwin with branches/work/kwin_composite) -$ make -(i.e. build and use it as usually) - -After starting, KWin's debug output also says which compositing backend it uses, e.g. -"OpenGL compositing". If it does not, most probably your X is not configured properly. - -For nVidia: ------------ -Both 9625 (beta) and 8776 drivers work. You need - -Option "AddARGBGLXVisuals" "True" - -in 'Section "Screen"' and also the Xcomposite extension enabled: - -Section "Extensions" - Option "Composite" "Enable" -EndSection - - KWin parts: ===========