Commit graph

15 commits

Author SHA1 Message Date
Philip Falkner
aa6d8eabc5 Add GLTexture class. This is a convenient wrapper around managing an OpenGL texture, as well as loading an image into it. Includes support for loading from QImage, QPixmap, and a file. Defaults to a GL_TEXTURE_2D target, and will scale image if necessary.
Also add SceneOpenGL::Texture class, based on GLTexture.  Optimised for SceneOpenGL::Window, this adds support for loading from an X Pixmap, as well as taking advantage of texture_from_pixmap/shm when available.  Automatically detects what texture target should be used, so be sure to enableUnnormalizedTexCoords() before painting.

Make SceneOpenGL::Window, BoxSwitchEffect, and ExplosionEffect use the new classes.

svn path=/branches/work/kwin_composite/; revision=645125
2007-03-21 18:14:09 +00:00
Rivo Laks
d72a9239b4 Add static bool fragmentShaderSupported() and vertexShaderSupported() methods to GLShader.
Make sure shaders are supported before trying to load them.

svn path=/branches/work/kwin_composite/; revision=645060
2007-03-21 16:17:19 +00:00
Philip Falkner
8299541652 Add build checks for XComposite, XDamage, XRender, OpenGL, and XShm.
KWin should now build and run with/without any or all of the above.

svn path=/branches/work/kwin_composite/; revision=633387
2007-02-13 23:28:36 +00:00
Rivo Laks
1cdcd8956f Move OpenGL defines, function prototypes and function resolving to a separate file.
Update copyright years.

svn path=/branches/work/kwin_composite/; revision=630583
2007-02-05 19:57:05 +00:00
Rivo Laks
66d8c5030b Add GLSL shader support and GLShader class.
Add two preprocessor macros to simplify resolving of OpenGL functions.

svn path=/branches/work/kwin_composite/; revision=630553
2007-02-05 18:11:15 +00:00
Philip Falkner
1e2d811cea Add support for GL_EXT_framebuffer_object, needed for mipmaps.
svn path=/branches/work/kwin_composite/; revision=629450
2007-02-02 19:55:17 +00:00
Philip Falkner
949c71490b Add some missing texture_from_pixmap defines.
svn path=/branches/work/kwin_composite/; revision=628843
2007-01-31 17:56:08 +00:00
Rivo Laks
26e907c210 Merge MAKE_*_VERSION macros into MAKE_GL_VERSION and move it to .cpp file
svn path=/branches/work/kwin_composite/; revision=628353
2007-01-29 21:06:56 +00:00
Philip Falkner
0341a3e8b5 Add support for GL_ARB_texture_non_power_of_two. Use GL_TEXTURE_2D wherever possible, even when that extension isn't available.
svn path=/branches/work/kwin_composite/; revision=626897
2007-01-24 21:35:58 +00:00
Luboš Luňák
9c4218d4bf Sync to vblank, patch by Philip Falkner.
svn path=/branches/work/kwin_composite/; revision=606795
2006-11-21 20:59:59 +00:00
Luboš Luňák
930a9248c9 Repainting of only changed areas, now also for OpenGL.
svn path=/branches/work/kwin_composite/; revision=606272
2006-11-19 20:29:41 +00:00
Luboš Luňák
1be2c4ed32 Detect and check GLX version/extensions.
svn path=/branches/work/kwin_composite/; revision=604805
2006-11-14 11:52:20 +00:00
Luboš Luňák
e86e1cf88f Detect GLX version, patch by Philip Falkner.
svn path=/branches/work/kwin_composite/; revision=604801
2006-11-14 11:41:52 +00:00
Luboš Luňák
53422c734c Add one more fallback #define.
svn path=/branches/work/kwin_composite/; revision=604568
2006-11-13 10:19:25 +00:00
Luboš Luňák
aeafa63a94 Move some OpenGL code to glutils.* .
Add support for changing window brightness.
Add DialogParent effect that makes windows that are unaccessible because
of modal dialogs darker.
Patch by Rivo Laks.


svn path=/branches/work/kwin_composite/; revision=603384
2006-11-08 19:10:07 +00:00