summaryrefslogtreecommitdiff
path: root/Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
diff options
context:
space:
mode:
authorRachel Bryk <RachelBryk@gmail.com>2013-08-15 09:00:04 -0400
committerRachel Bryk <RachelBryk@gmail.com>2013-08-15 09:00:04 -0400
commit6d67ea2fdabab5b4daff88409dcb746fab52b483 (patch)
treebec0234d1b07915570ca3296b109ab4eb2fd2868 /Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
parentf51cb0b7eb9c0f261abd3f5d68707ba1f93e3888 (diff)
parentd16f089e88f63931d792cb4b2fca05747ed8c90a (diff)
Merge remote-tracking branch 'origin/master' into wiimote-netplay
Diffstat (limited to 'Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp')
-rw-r--r--Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp b/Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
index b381cd2375..140dbd4d78 100644
--- a/Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
+++ b/Source/Plugins/Plugin_VideoOGL/Src/FramebufferManager.cpp
@@ -226,8 +226,13 @@ FramebufferManager::FramebufferManager(int targetWidth, int targetHeight, int ms
" ocol0 = float4(dst6) / 63.f;\n"
"}";
- ProgramShaderCache::CompileShader(m_pixel_format_shaders[0], vs, ps_rgb8_to_rgba6);
- ProgramShaderCache::CompileShader(m_pixel_format_shaders[1], vs, ps_rgba6_to_rgb8);
+ if(g_ogl_config.eSupportedGLSLVersion != GLSL_120)
+ {
+ // HACK: This shaders aren't glsl120 compatible as glsl120 don't support bit operations
+ // it could be workaround by floor + frac + tons off additions, but I think it isn't worth
+ ProgramShaderCache::CompileShader(m_pixel_format_shaders[0], vs, ps_rgb8_to_rgba6);
+ ProgramShaderCache::CompileShader(m_pixel_format_shaders[1], vs, ps_rgba6_to_rgb8);
+ }
}
@@ -359,6 +364,11 @@ GLuint FramebufferManager::ResolveAndGetDepthTarget(const EFBRectangle &source_r
void FramebufferManager::ReinterpretPixelData(unsigned int convtype)
{
+ if(g_ogl_config.eSupportedGLSLVersion == GLSL_120) {
+ // This feature isn't supported by glsl120
+ return;
+ }
+
g_renderer->ResetAPIState();
GLuint src_texture = 0;