[gl] Dont flush on every sync wait (Needs improvement to sync after next call)

[gl] Increase index buffer size to 64M since some games draw excessive geometry
This commit is contained in:
kd-11 2017-01-11 15:50:44 +03:00 committed by Zangetsu38
parent 0190c0e9d3
commit ba53fe9cee
2 changed files with 5 additions and 2 deletions

View file

@ -556,7 +556,7 @@ void GLGSRender::on_init_thread()
m_attrib_ring_buffer->create(gl::buffer::target::texture, 256 * 0x100000);
m_uniform_ring_buffer->create(gl::buffer::target::uniform, 64 * 0x100000);
m_index_ring_buffer->create(gl::buffer::target::element_array, 16 * 0x100000);
m_index_ring_buffer->create(gl::buffer::target::element_array, 64 * 0x100000);
m_vao.element_array_buffer = *m_index_ring_buffer;
m_gl_texture_cache.initialize_rtt_cache();

View file

@ -601,10 +601,13 @@ namespace gl
verify(HERE), m_fence != nullptr;
bool done = false;
GLenum flag = GL_SYNC_FLUSH_COMMANDS_BIT;
while (!done)
{
//Check if we are finished, wait time = 1us
GLenum err = glClientWaitSync(m_fence, GL_SYNC_FLUSH_COMMANDS_BIT, 1000);
GLenum err = glClientWaitSync(m_fence, flag, 1000);
flag = 0;
switch (err)
{
default: