- 14 Mar, 2018 1 commit
-
-
Vlad Zahorodnii authored
Summary: Seems like this override/assignment was introduced in edb0751c. Following that commit, 450be6a3 introduced `levels` param so we could tell whether mipmaps are going to be used. And it seems like this assignment hadn't been deleted in that commit. Reviewers: #kwin, fredrik Reviewed By: fredrik Subscribers: kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D11301
-
- 14 Feb, 2018 1 commit
-
-
Summary: `QImage::Format_ARGB6666_Premultiplied` was missing from the image format table. This might have caused some bugs later on. See: http://doc.qt.io/qt-5/qimage.html#Format-enum Reviewers: fredrik, #kwin Reviewed By: fredrik Subscribers: cfeck, kwin, #kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D10497
-
- 13 Feb, 2018 1 commit
-
-
Summary: Added the option to turn on noise behind the blurred area. The lowest strength value disables it completely, so it is optional and is disabled by default. Test Plan: Edit: this new screenshot shows the updated noise generation. Edit2: separated the screenshots so you can flick through them to clearly see the differences {F5694024} {F5694031} {F5694025} {F5694028} Reviewers: #kwin, #vdg, fredrik Reviewed By: #vdg, fredrik Subscribers: davidedmundson, matheusm, romangg, ivan, zzag, ngraham, kwin, #kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D10281
-
- 25 Jan, 2016 1 commit
-
-
Martin Flöser authored
Old shader API no longer in use, so we don't need to setup the texture rendering.
-
- 05 Nov, 2015 1 commit
-
-
Nick Shaforostoff authored
-use qstringliteral only when necessary (i.e. not in concat or comparison) -use qbytearray instead of qstring when dealing with latin1 input and output (glplatform) -use qstringref to extract numbers from strings (glplatform) -define qt_use_qstringbuilder to optimize all string concatenations -anidata: use ctor init lists, add windowType member initialization REVIEW: 125933
-
- 11 May, 2015 1 commit
-
-
Martin Flöser authored
It's about GL not about Xlib, so use GL_NONE instead of None. Additional bonus: it compiles if the file does not include Xlib.
-
- 19 Feb, 2015 1 commit
-
-
Martin Flöser authored
REVIEW: 122617
-
- 18 Feb, 2015 1 commit
-
-
Martin Flöser authored
BUG: 344301 FIXED-IN: 5.2.1 REVIEW: 122615
-
- 11 Feb, 2015 1 commit
-
-
Martin Flöser authored
Resetting glPixelStore is bound to the variable useUnpack, but setting was only bound to a subset of the checks going into useUnpack variable. This could cause an assert if one updated with a QImage not in format ARGB32_Premultiplied. REVIEW: 122521
-
- 07 Jan, 2015 1 commit
-
-
Thomas Lübking authored
it makes no sense and there's a good chance that in this case m_vbo is still nullptr and it will not be created since d->m_cachedSize will be an empty size as well -> nullptr access -> crash BUG: 337090 FIXED-IN: 5.2
-
- 30 Dec, 2014 3 commits
-
-
Fredrik Höglund authored
Don't convert the QImage when the image format can be specified as a format/type combination to glTex(Sub)Image().
-
Fredrik Höglund authored
This method allows the caller to specify which component of a texel is placed in each respective component of the vector returned to the shader.
-
Fredrik Höglund authored
This parameter is ignored on GLES.
-
- 14 Dec, 2014 4 commits
-
-
Fredrik Höglund authored
Use glTexStorage2D() to allocate storage for the texture. The structure of the resulting texture becomes immutable and the texture is always mipmap complete. This allows the driver to skip the mipmap consistency checks when validating the texture at draw time.
-
Fredrik Höglund authored
Prior to this commit we didn't know if mipmaps were going to be used when we created the GL texture, which meant that we couldn't tell the driver whether to allocate storage for mipmaps or not. This resulted in one of two things happening depending on the driver; either it would allocate storage for mipmaps that in most cases would never be used, or it wouldn't and would later be forced to reallocate the texture when mipmaps were added. By adding this parameter we can now explicitly tell the driver how many mipmap levels will be used. The parameter is only added to the non-image constructor for now. The image constructor is changed to only allocate a single level, which matches how textures created from images are used in kwin. This may need to be revisited in the future.
-
Fredrik Höglund authored
GLTexture would set both the minification and magnification filters to GL_NEAREST if the texture filter was set to any mipmap filter other than GL_LINEAR_MIPMAP_LINEAR.
-
Fredrik Höglund authored
This code is broken in a number of different ways; firstly by assuming that the mipmaps need to be regenerated when the texture filter has changed. Secondly by preventing mipmaps from being specified by other means. This commit removes the code from bind() and adds a generateMipmaps() method instead.
-
- 26 Nov, 2014 4 commits
-
-
Fredrik Höglund authored
These virtual methods are not reimplemented anywhere.
-
Fredrik Höglund authored
This is the only place where it is called. There was also no need for this function to be virtual since it's not reimplemented anywhere. This also fixes the GLTexturePrivate being created only to be immediately deleted and replaced by a new GLTexturePrivate when the GLTexture(QImage) constructor was used. With this change the structure of the GLTexture effectively becomes immutable to the outside world; the contents of the texture images can change, but the texture images themselves cannot be reallocated.
-
Fredrik Höglund authored
These methods are only called from the GLTexture constructors, so inline them there.
-
Fredrik Höglund authored
QImage::Format_RGBA8888_Premultiplied is the equivalent of GL_RGBA/GL_UNSIGNED_BYTE, so use QImage::convertToFormat() instead. This commit also makes the texture upload code work correctly on big-endian systems.
-
- 25 Nov, 2014 1 commit
-
-
Fredrik Höglund authored
...and rely on KHR_debug/GL_ARB_debug_output instead.
-
- 23 Nov, 2014 2 commits
-
-
Fredrik Höglund authored
-
Fredrik Höglund authored
-
- 22 Nov, 2014 3 commits
-
-
Fredrik Höglund authored
We require OpenGL 2.0 which always supports NPOT textures.
-
Fredrik Höglund authored
We no longer use texture environment parameters to control saturation.
-
Fredrik Höglund authored
...and replace them with runtime checks. Reviewed-by:
Jeremy Whiting <jpwhiting@kde.org>
-
- 27 Sep, 2014 1 commit
-
-
Volker Krause authored
-
- 14 Jul, 2014 1 commit
-
-
Fredrik Höglund authored
It doesn't make sense to convert the extension names to QStrings. This also replaces the QString parameter in hasGLExtension() with a QByteArray and adjusts all callers.
-
- 14 Apr, 2014 1 commit
-
-
Martin Flöser authored
* add static cleanup handlers to GLTexturePrivate and GLRenderTarget * revert the runtime resolved features (e.g. RenderTargets are not supported once we run the cleanup code) * clear the extension lists * reset the version variables REVIEW: 117484
-
- 10 Mar, 2014 1 commit
-
-
Martin Flöser authored
KWin already has a de facto OpenGL 2 dependency through QML. Combined with the fact that the OpenGL 1 backend is basically unmaintained and also unused, it's better to remove it for the new major release. This change includes: * Removal of cmake option KWIN_BUILD_OPENGL_1_COMPOSITING * Removal of KWIN_HAVE_OPENGL_1 compile option and all code ifdef'ed with it (partially removal of if-else constructs) * Removal of CompositingType::OpenGL1Compositing (flags are kept as a core flag should get introduced) * Driver recommendation for OpenGL1Compositing changed to XRender (should be evaluated whether the drivers can provide GL2) * Removal of configuration option "GLLegacy" * Removal of fooMatrix function in kwinglutils * Removal of ARBBlurShader * Removal of legacy code path in GLVertexBuffer * Removal of GLShaderManager::disable * if-blocks with ShaderManager::instance()->isValid() removed REVIEW: 116042
-
- 24 Feb, 2014 1 commit
-
-
Martin Flöser authored
Thanks to delegating ctors that's quite easy to do without boilerplate code any more.
-
- 08 Jan, 2014 1 commit
-
-
Completing the task of replacing all NULL to nullptr in all the files in libkwineffects folder. (also substituting some "0" used as nullptr with nullptr) REVIEW: 114823
-
- 02 Dec, 2013 1 commit
-
-
Martin Flöser authored
Nothing from kwineffects.h used in this file.
-
- 23 Sep, 2013 1 commit
-
-
Thomas Lübking authored
also work around broken fbo texture clearing on fglrx so far supports FBO/glClear and resorts to glTexSubImage2D if the fbo cannot be created or is (in case of fglrx) known to break, resort to glTexImage2D loading of an argb array of zeros BUG: 323065 FIXED-IN: 4.11.2 REVIEW: 112526
-
- 24 Jul, 2013 1 commit
-
-
Martin Flöser authored
* "" needs to be wrapped in QStringLiteral * QString::fromUtf8 needed for const char* and QByteArray * QByteArray::constData() needed to get to the const char*
-
- 13 Jun, 2013 1 commit
-
-
Fredrik Höglund authored
m_wrapModeChanged and m_filterChanged were never set to false, causing the sampler parameters to be set every time a texture was bound.
-
- 28 May, 2013 1 commit
-
-
Fredrik Höglund authored
This method returns a matrix that transforms normalized or un-normalized texture coordinates, taking the texture target and y-inversion flag into account.
-
- 11 Mar, 2013 2 commits
-
-
Martin Flöser authored
If extension is present texture format BGRA_EXT is used for loading textures from QImages. REVIEW: 109090
-
Martin Flöser authored
Ownership of decoration textures is moved from SceneOpenGL::Window to OpenGLPaintRedirector. The PaintRedirector is responsible for updating the textures whenever they change. For this GLTexture is extended by an update(QImage, QPoint) method which uses glTexSubImage2D to update only the changed parts. The big advantage compared to before is that if e.g. only a button is animated only the button part is updated instead of the complete deco part.
-