1
0
mirror of https://github.com/blawar/GLideN64.git synced 2024-07-04 10:03:36 +00:00

Added check for GL_EXT_draw_elements_base_vertex

This commit is contained in:
dankcushions 2020-11-16 14:51:36 +00:00 committed by Sergey Lipskiy
parent 0e228e9109
commit cb76d2f39d
3 changed files with 4 additions and 1 deletions

View File

@ -67,7 +67,7 @@ void ContextImpl::init()
} }
{ {
if ((m_glInfo.isGLESX && m_glInfo.bufferStorage) || !m_glInfo.isGLESX) if (!m_glInfo.isGLESX || (m_glInfo.bufferStorage && m_glInfo.drawElementsBaseVertex))
m_graphicsDrawer.reset(new BufferedDrawer(m_glInfo, m_cachedFunctions->getCachedVertexAttribArray(), m_cachedFunctions->getCachedBindBuffer())); m_graphicsDrawer.reset(new BufferedDrawer(m_glInfo, m_cachedFunctions->getCachedVertexAttribArray(), m_cachedFunctions->getCachedBindBuffer()));
else else
m_graphicsDrawer.reset(new UnbufferedDrawer(m_glInfo, m_cachedFunctions->getCachedVertexAttribArray())); m_graphicsDrawer.reset(new UnbufferedDrawer(m_glInfo, m_cachedFunctions->getCachedVertexAttribArray()));

View File

@ -104,6 +104,8 @@ void GLInfo::init() {
config.generalEmulation.enableHybridFilter = 0; config.generalEmulation.enableHybridFilter = 0;
} }
drawElementsBaseVertex = !isGLESX || Utils::isExtensionSupported(*this, "GL_EXT_draw_elements_base_vertex");
bufferStorage = (!isGLESX && (numericVersion >= 44)) || Utils::isExtensionSupported(*this, "GL_ARB_buffer_storage") || bufferStorage = (!isGLESX && (numericVersion >= 44)) || Utils::isExtensionSupported(*this, "GL_ARB_buffer_storage") ||
Utils::isExtensionSupported(*this, "GL_EXT_buffer_storage"); Utils::isExtensionSupported(*this, "GL_EXT_buffer_storage");

View File

@ -21,6 +21,7 @@ struct GLInfo {
bool isGLESX = false; bool isGLESX = false;
bool imageTextures = false; bool imageTextures = false;
bool bufferStorage = false; bool bufferStorage = false;
bool drawElementsBaseVertex = false;
bool texStorage = false; bool texStorage = false;
bool shaderStorage = false; bool shaderStorage = false;
bool msaa = false; bool msaa = false;