Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorr.kuznetsov <r.kuznetsov@corp.mail.ru>2015-12-28 14:10:24 +0300
committerr.kuznetsov <r.kuznetsov@corp.mail.ru>2015-12-28 14:10:24 +0300
commit5d3e7f84c669942455bf80dabe8a4a855632fd61 (patch)
tree25dee0bfc830692d8ce07c45d71fda5f4c7e8777 /drape/vertex_array_buffer.cpp
parent21136cf2b4600b2e297a0738eb38690a065be43d (diff)
Adreno 200 rendering workaround
Diffstat (limited to 'drape/vertex_array_buffer.cpp')
-rw-r--r--drape/vertex_array_buffer.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/drape/vertex_array_buffer.cpp b/drape/vertex_array_buffer.cpp
index 62a0c3566f..ea1d353477 100644
--- a/drape/vertex_array_buffer.cpp
+++ b/drape/vertex_array_buffer.cpp
@@ -2,6 +2,7 @@
#include "drape/glfunctions.hpp"
#include "drape/glextensions_list.hpp"
#include "drape/index_storage.hpp"
+#include "drape/support_manager.hpp"
#include "base/stl_add.hpp"
#include "base/assert.hpp"
@@ -17,6 +18,10 @@ VertexArrayBuffer::VertexArrayBuffer(uint32_t indexBufferSize, uint32_t dataBuff
, m_moveToGpuOnBuild(false)
{
m_indexBuffer = make_unique_dp<IndexBuffer>(indexBufferSize);
+
+ // Adreno 200 GPUs aren't able to share OpenGL resources between 2 OGL-contexts correctly,
+ // so we have to create and destroy VBO on one context.
+ m_moveToGpuOnBuild = SupportManager::Instance().IsAdreno200Device();
}
VertexArrayBuffer::~VertexArrayBuffer()