summaryrefslogtreecommitdiff
path: root/src/graphicsmanager.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-06-15 01:37:01 +0300
committerAndrei Karas <akaras@inbox.ru>2014-06-15 01:37:01 +0300
commit0f208c6842ef13d8c68b179eb0ab88a37a0926b0 (patch)
treedc60df46116896fc362ac5067fbc464982ee2cc9 /src/graphicsmanager.cpp
parent8f9ffaa42e6fa11bb963fa9f1a1824d85a50b51b (diff)
downloadmv-0f208c6842ef13d8c68b179eb0ab88a37a0926b0.tar.gz
mv-0f208c6842ef13d8c68b179eb0ab88a37a0926b0.tar.bz2
mv-0f208c6842ef13d8c68b179eb0ab88a37a0926b0.tar.xz
mv-0f208c6842ef13d8c68b179eb0ab88a37a0926b0.zip
Add OpenGL extension GL_ARB_invalidate_subdata.
And use it for invalidate prepared for deletion images.
Diffstat (limited to 'src/graphicsmanager.cpp')
-rw-r--r--src/graphicsmanager.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/graphicsmanager.cpp b/src/graphicsmanager.cpp
index 938c0ccf1..4661563e2 100644
--- a/src/graphicsmanager.cpp
+++ b/src/graphicsmanager.cpp
@@ -1054,6 +1054,16 @@ void GraphicsManager::initOpenGLFunctions()
{
logger->log1("GL_ARB_vertex_attrib_binding not supported");
}
+ if (checkGLVersion(4, 3)
+ || supportExtension("GL_ARB_invalidate_subdata"))
+ {
+ logger->log1("found GL_ARB_invalidate_subdata");
+ assignFunction(glInvalidateTexImage, "glInvalidateTexImage");
+ }
+ else
+ {
+ logger->log1("GL_ARB_invalidate_subdata not supported");
+ }
if (checkGLVersion(4, 4) || supportExtension("GL_ARB_multi_bind"))
{
logger->log1("found GL_ARB_multi_bind");