2007-04-29 17:35:43 +00:00
|
|
|
This file describes how to set up kwin_composite. Note that since it is still
|
|
|
|
a work in progress, this file may possibly get out of date at times.
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
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:
|
2007-05-14 15:57:34 +00:00
|
|
|
===========
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2007-05-14 15:57:34 +00:00
|
|
|
8xxx drivers and newer work, only 9xxx and later drivers provide TFP (texture_from_pixmap)
|
2007-04-29 17:35:43 +00:00
|
|
|
functionality.
|
|
|
|
|
2007-10-31 16:42:59 +00:00
|
|
|
You need in xorg.conf (add to existing sections if they already exist)
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2007-10-31 16:42:59 +00:00
|
|
|
Section "Screen"
|
|
|
|
Option "AddARGBGLXVisuals" "True"
|
|
|
|
EndSection
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2007-10-31 16:42:59 +00:00
|
|
|
and also the XComposite extension enabled:
|
2007-04-29 17:35:43 +00:00
|
|
|
|
|
|
|
Section "Extensions"
|
|
|
|
Option "Composite" "Enable"
|
|
|
|
EndSection
|
|
|
|
|
2007-05-14 15:57:34 +00:00
|
|
|
Issues:
|
|
|
|
-------
|
|
|
|
|
|
|
|
When switching away from the X session KWin freezes in nvidia's OpenGL library
|
|
|
|
- turn off GLVSync option (see below)
|
2007-10-29 17:09:33 +00:00
|
|
|
- fixed with 100.14.23 drivers
|
2007-06-27 09:37:58 +00:00
|
|
|
TFP mode (see GLMode below) doesn't work with windows with certain sizes (32x32)
|
|
|
|
- already fixed in latest drivers
|
2007-05-14 15:57:34 +00:00
|
|
|
Refresh rate is slower than it should be
|
|
|
|
- nvidia drivers use refresh rate to work around some X limitations
|
|
|
|
- disable DynamicTwinView (see nvidia README)
|
2007-05-14 16:04:43 +00:00
|
|
|
- should(?) be fixed with drivers updated for xrandr1.2
|
2008-01-16 23:08:13 +00:00
|
|
|
AddARGBGLXVisuals option seems to work only with depth 24
|
|
|
|
- change your xorg.conf to use depth 24 (or use a configuration tool)
|
2008-01-28 11:11:12 +00:00
|
|
|
Xinerama works only when using TwinView, the Xinerama implementation provided by X.Org prevents compositing
|
2007-11-23 11:48:28 +00:00
|
|
|
|
|
|
|
check your X log (/var/log/X*.log) for warnings and errors if there are other problems
|
2007-05-14 15:57:34 +00:00
|
|
|
|
2007-04-29 17:35:43 +00:00
|
|
|
|
|
|
|
Intel:
|
2007-05-14 15:57:34 +00:00
|
|
|
=======
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2007-10-31 13:35:52 +00:00
|
|
|
It should work with both the i810 and intel drivers.
|
|
|
|
|
2007-10-31 16:42:59 +00:00
|
|
|
You need in xorg.conf the XComposite extension enabled
|
|
|
|
(add to existing sections if they already exist):
|
2007-10-31 13:35:52 +00:00
|
|
|
|
|
|
|
Section "Extensions"
|
|
|
|
Option "Composite" "Enable"
|
|
|
|
EndSection
|
|
|
|
|
|
|
|
Also in xorg.conf, you need the DRI module loaded, and AIGLX needs to be enabled:
|
|
|
|
|
|
|
|
Section "Module"
|
|
|
|
Load "dri"
|
|
|
|
EndSection
|
|
|
|
Section "ServerFlags"
|
|
|
|
Option "AIGLX"
|
|
|
|
EndSection
|
|
|
|
|
|
|
|
DRI also needs some options in xorg.conf (they should be there by default):
|
|
|
|
|
|
|
|
Section "DRI"
|
|
|
|
Group "video"
|
|
|
|
Mode 0660
|
|
|
|
EndSection
|
|
|
|
|
2007-10-31 16:42:59 +00:00
|
|
|
For SHM, the following in xorg.conf may improve performance:
|
|
|
|
|
|
|
|
Section "Screen"
|
|
|
|
Option "XaaNoOffscreenPixmaps" "true"
|
|
|
|
EndSection
|
|
|
|
|
2007-10-31 13:35:52 +00:00
|
|
|
|
|
|
|
Issues:
|
|
|
|
-------
|
|
|
|
|
2007-11-21 11:49:55 +00:00
|
|
|
With the i810 driver, DRI works only on the first running X (if you use secondary X session,
|
2007-10-31 13:35:52 +00:00
|
|
|
compositing won't work there), the intel driver doesn't seem to have this problem.
|
|
|
|
You may get only white rectangles if DRI is not enabled or fails to initialize
|
2007-11-23 11:48:28 +00:00
|
|
|
- check your X log (/var/log/X*.log) and your xorg.conf
|
2007-11-21 11:49:55 +00:00
|
|
|
Window contents updating may not work properly in secondary X session (likely X/driver bug)
|
2008-01-28 11:11:12 +00:00
|
|
|
Xinerama does not work with the Xinerama implementation in X.Org
|
|
|
|
- you need to use solutions like MergedFB
|
2007-10-31 13:35:52 +00:00
|
|
|
|
2007-11-23 11:48:28 +00:00
|
|
|
check your X log (/var/log/X*.log) for warnings and errors if there are other problems
|
|
|
|
|
2007-10-31 13:35:52 +00:00
|
|
|
|
2007-10-31 16:42:59 +00:00
|
|
|
ATI:
|
|
|
|
========
|
|
|
|
|
|
|
|
The radeon driver should work for R200 chips, it's worse with R300 chips.
|
|
|
|
The fglrx driver requires XGL for versions older than 8.42.3.
|
|
|
|
|
|
|
|
Refer to the Intel section, setting up should be similar.
|
|
|
|
|
2007-04-29 17:35:43 +00:00
|
|
|
|
|
|
|
|
|
|
|
Configuration options:
|
2007-05-14 15:57:34 +00:00
|
|
|
======================
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2007-10-31 16:42:59 +00:00
|
|
|
There is configuration module for most options. If you need to manually disable compositing,
|
|
|
|
use the following command:
|
|
|
|
kwriteconfig --file kwinrc --group Compositing --key Enabled --type bool false
|
2007-04-29 17:35:43 +00:00
|
|
|
|
|
|
|
ShowFPSEffect:
|
|
|
|
Options are in group [EffectShowFps] in kwinrc config file:
|
|
|
|
Alpha=<number 0.0-1.0> - transparency
|
|
|
|
X=<number> - X position, negative is from the right edge, -10000 is exactly right edge
|
|
|
|
Y=<number> = Y position, the same like X
|
|
|
|
|
|
|
|
|
|
|
|
Effects:
|
2007-05-14 15:57:34 +00:00
|
|
|
========
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2007-05-30 21:14:19 +00:00
|
|
|
Effects can be enabled/disabled in KConfig module accessible by right-clicking
|
|
|
|
on a window title, choosing "Configure Window Behaviour" and then
|
|
|
|
"Window Effects".
|