Use GLSL 1.40 shaders as GLSL 300 es shaders for effects

Like for the scene shaders. Makes the effects work again when using
GLES 3.
remotes/origin/Plasma/5.0
Martin Gräßlin 13 years ago
parent 5c78f7eabe
commit 4f2f8bda11
  1. 9
      effects/coverswitch/coverswitch.cpp
  2. 9
      effects/cube/cube.cpp
  3. 9
      effects/invert/invert.cpp
  4. 9
      effects/lookingglass/lookingglass.cpp

@ -68,10 +68,13 @@ CoverSwitchEffect::CoverSwitchEffect()
captionFont.setPointSize(captionFont.pointSize() * 2);
QString shadersDir = "kwin/shaders/1.10/";
#ifndef KWIN_HAVE_OPENGLES
if (GLPlatform::instance()->glslVersion() >= kVersionNumber(1, 40))
shadersDir = "kwin/shaders/1.40/";
#ifdef KWIN_HAVE_OPENGLES
const qint64 coreVersionNumber = kVersionNumber(3, 0);
#else
const qint64 coreVersionNumber = kVersionNumber(1, 40);
#endif
if (GLPlatform::instance()->glslVersion() >= coreVersionNumber)
shadersDir = "kwin/shaders/1.40/";
const QString fragmentshader = KGlobal::dirs()->findResource("data", shadersDir + "coverswitch-reflection.glsl");
m_reflectionShader = ShaderManager::instance()->loadFragmentShader(ShaderManager::GenericShader, fragmentshader);
connect(effects, SIGNAL(windowClosed(KWin::EffectWindow*)), this, SLOT(slotWindowClosed(KWin::EffectWindow*)));

@ -100,10 +100,13 @@ CubeEffect::CubeEffect()
desktopNameFont.setBold(true);
desktopNameFont.setPointSize(14);
#ifndef KWIN_HAVE_OPENGLES
if (GLPlatform::instance()->glslVersion() >= kVersionNumber(1, 40))
m_shadersDir = "kwin/shaders/1.40/";
#ifdef KWIN_HAVE_OPENGLES
const qint64 coreVersionNumber = kVersionNumber(3, 0);
#else
const qint64 coreVersionNumber = kVersionNumber(1, 40);
#endif
if (GLPlatform::instance()->glslVersion() >= coreVersionNumber)
m_shadersDir = "kwin/shaders/1.40/";
const QString fragmentshader = KGlobal::dirs()->findResource("data", m_shadersDir + "cube-reflection.glsl");
m_reflectionShader = ShaderManager::instance()->loadFragmentShader(ShaderManager::GenericShader, fragmentshader);

@ -73,10 +73,13 @@ bool InvertEffect::loadData()
m_inited = true;
QString shadersDir = "kwin/shaders/1.10/";
#ifndef KWIN_HAVE_OPENGLES
if (GLPlatform::instance()->glslVersion() >= kVersionNumber(1, 40))
shadersDir = "kwin/shaders/1.40/";
#ifdef KWIN_HAVE_OPENGLES
const qint64 coreVersionNumber = kVersionNumber(3, 0);
#else
const qint64 coreVersionNumber = kVersionNumber(1, 40);
#endif
if (GLPlatform::instance()->glslVersion() >= coreVersionNumber)
shadersDir = "kwin/shaders/1.40/";
const QString fragmentshader = KGlobal::dirs()->findResource("data", shadersDir + "invert.frag");
m_shader = ShaderManager::instance()->loadFragmentShader(ShaderManager::GenericShader, fragmentshader);

@ -117,10 +117,13 @@ bool LookingGlassEffect::loadData()
}
QString shadersDir = "kwin/shaders/1.10/";
#ifndef KWIN_HAVE_OPENGLES
if (GLPlatform::instance()->glslVersion() >= kVersionNumber(1, 40))
shadersDir = "kwin/shaders/1.40/";
#ifdef KWIN_HAVE_OPENGLES
const qint64 coreVersionNumber = kVersionNumber(3, 0);
#else
const qint64 coreVersionNumber = kVersionNumber(1, 40);
#endif
if (GLPlatform::instance()->glslVersion() >= coreVersionNumber)
shadersDir = "kwin/shaders/1.40/";
const QString fragmentshader = KGlobal::dirs()->findResource("data", shadersDir + "lookingglass.frag");
m_shader = ShaderManager::instance()->loadFragmentShader(ShaderManager::SimpleShader, fragmentshader);
if (m_shader->isValid()) {

Loading…
Cancel
Save