summaryrefslogtreecommitdiff
path: root/src/effects/GaussianBlur.qml
Commit message (Collapse)AuthorAgeFilesLines
* add qmlRegisterModule to QML plugins (QUIP 99)Shawn Rutledge2018-10-231-3/+3
| | | | | | | | | | | | | | | | Now it should always be possible to do import QtGraphicalEffects 1.m where m is Qt's minor version. [ChangeLog][Qt Graphical Effects] In Qt 5.12 and newer versions, this module is available with the same minor version as the Qt release minor version number. For example import QtGraphicalEffects 1.12 will work in Qt 5.12, even though there has been no API change, and the maximum possible import version will automatically increment in future Qt versions. This is intended to reduce confusion. Change-Id: I4fa13fa9a662933161ff726a3e2ba586b2f7f6ff Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix typosJarek Kobus2018-02-141-1/+1
| | | | | Change-Id: I333a33a65ce4ff2469f7eb66663808cb75d756a2 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Fix licensingJani Heikkinen2017-05-101-29/+28
| | | | | | | | | | | | | - Remove unused old license files - Unify licensing * Tools and tests are nowdays licensed under GPL-EXCEPT, update correct license header to those * Src is nowdays licensed under LGPL, update correct license header to there Task-number: QTBUG-57147 Change-Id: I9664c854108ca7c1e0be02fdae9e8d7c480dfd4c Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Document that the effects need OpenGLLaszlo Agocs2016-06-241-0/+2
| | | | | Change-Id: Ie42ce93850475c036b2bb4e1fa9068c597317c48 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Use fallback blur shader for radius * 2 + 1 != sampleCount.Gunnar Sletta2015-11-051-12/+9
| | | | | | | | The faster code path looks a lot worse in this case, so fall back to use the generic arbitrary large blur size for this case. Change-Id: I3984b3bf48732a83dd112b7beb0fb4c3f8d38568 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Rename uniform step->dirstep to avoid conflicts with built-inGunnar Sletta2015-08-281-2/+2
| | | | | Change-Id: Ifcffcaf3d057162bb6eb8af9cd3c2277bc5bf206 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Implement MaskedBlur in terms of the new GaussianBlur.Gunnar Sletta2015-03-241-12/+36
| | | | | | | | | | | | | | | | | | | | | The mask code uses the fallback shader which is equivalent, performance wise, to what we have in Qt 5.4, but in the interest of keeping one codebase for all the blurring, we'll replace it anyway. 'transparentBorder' doesn't do anything anymore because it never really worked to begin with and it doesn't make sense. See comment in code. 'fast' codepath has been removed because it isn't really all that fast. [ChangeLog] MaskedBlur has a new blur implementation. The default values of properties has been updated such that 'layer.effect: MaskedBlur { maskSource: myMask }' works out of the box. The 'fast' and 'transparentBorder' properties no longer have any effect. Change-Id: Ibc05442914b563c50c95212fb0d4578f02990504 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Implement Glow using the new gaussian blur.Gunnar Sletta2015-03-241-1/+1
| | | | | | | | | | | | The fast code path has been removed, same rationale as in the 'DropShadow' case. [ChangeLog] Glow has a new and faster blur implementation. Its default values have been updated so that 'layer.effect: Glow { }' produces sensibe output and 'fast' no longer has any effect. Change-Id: I88aa16baf294851531f414ec52095d46561dbea8 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Fix qdoc warnings in the new GaussianBlur implementation.Gunnar Sletta2015-03-131-12/+18
| | | | | Change-Id: Ia2e04f8d16fa90a56aad2eb65aa14eef34c7a3f0 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Improve Gaussian Blur.Gunnar Sletta2015-03-131-49/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The shader source generation has been moved to C++ and the following improvements have been made to the algorithm: - Rely on linear sampling to roughly halve the number of samples required to perform blurring, while still mathmatically accurate. - Avoid dependent texture reads by calculating the sample positions in the vertex shader. This only works if the vec2 is used in texture2D() directly from the varying without any arithmetic and no swizzle mask applied. The fragment shader can then in many cases prefetch the texture value. - Implement a fallback shader which is used when samples exceed the maximum number of varyings. The old implementation supported 32 samples. The new one switches to the fallback when the required samples / 2 exceeds the number of available varying registers on the GPU. The fallback shader is equivalent to the old code performance wise, but supports an arbitrary high number of samples. [ChangeLog] Gaussian Blur has a new implementation. Faster for smaller kernels, similar for larger kernels but allows arbitrarily large kernels. The fast version will support at least 15x15 kernels on OpenGL ES and 59x59 kernels on Desktop GL. GaussianBlur.deviation is now a very costly parameter to change. Change-Id: I1ac44633ec6b3b667ebfab2211fa53e706804787 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Move SourceProxy to C++ and introduce "private" module.Gunnar Sletta2015-03-101-1/+1
| | | | | | | | | | | This gives us a bit better control in terms of what we want to check for. It should also fix some subtle bugs when layer and ShaderEffectSource is used as input. Change-Id: I29de13598811623c31563ac6e88f070aee0bab54 Task-number: QTBUG-40849 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Update copyright headersv5.5.0-rc1v5.5.0-beta1v5.5.0-alpha1v5.5.05.5.0Antti Kokko2015-02-171-4/+4
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I8983b05749d75b438a314e7f385a85c612a04f6f Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* Remove unnecessary \inqmlmodule parameterAlejandro Exojo2014-12-081-1/+1
| | | | | Change-Id: Ib685e533a97bae865df5802c4f9e7399c8cfd078 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Document recursion limitations of the graphical effects.v5.2.0-rc1v5.2.0Gunnar Sletta2013-11-071-0/+3
| | | | | | | Task-number: QTBUG-31902 Change-Id: Id9d81ffddda3ee666840f602bb8c85ff00545547 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-101-1/+1
| | | | | | Change-Id: Idaf2ac8f4dc2a8586c6e148bd67a33e9bdd677e1 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Doc: Modularized documentation.Jerome Pasion2012-09-251-0/+185
| | | | | | | | | | -moved API documentation in QML files -moved snippets, images, and qdoc files to src/effects/doc -deleted old .pri and .qdocconf files -fixed relative paths Change-Id: I4e757e707b5f93a215506f8c2cbb7eb1f2321d4c Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-241-6/+6
| | | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: I06d9e8f818910ab9243afb73087f187a4b3b05f4 Reviewed-by: Janne Anttila <janne.anttila@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Renamed 'internal' folder to 'private'.Marko Niemelä2012-06-131-1/+1
| | | | | | | | Private is more widely used term for files that do not belong to public API. Change-Id: Ib4219a4026bc04f79f0803272f8af6a13b517ca8 Reviewed-by: Kim Gronholm <kim.1.gronholm@nokia.com>
* Fix outdated license headerSergio Ahumada2012-03-061-3/+3
| | | | | Change-Id: I210c10369f97ab8289bff3c3d7e6dc26d9215936 Reviewed-by: Jyri Tahtela <jyri.tahtela@nokia.com>
* Renamed DirectionaGaussianBlur -> GaussianDirectionalBlurMarko Niemelä2012-01-251-2/+2
|
* Faster transparentBorder functionality implementationto multiple effectsMarko Niemelä2012-01-241-5/+7
|
* Renamed property maximumRadius -> samples in many effectsMarko Niemelä2012-01-101-3/+3
|
* Moved non-API qml files into internal directoryMarko Niemelä2012-01-041-0/+1
|
* Initial commitKim Gronholm2011-12-271-0/+104